Linux监控平台介绍
- 常见开源监控软件:cacti、nagios、zabbix、smokeping、open-falcon等等
- cacti、smokeping偏向于基础监控,成图非常漂亮
- cacti、nagios、zabbix服务端监控中心,需要php环境支持,其中zabbix和cacti都需要mysql作为数据存储,nagios不用存储历史数据,注重服务或者监控项的状态,zabbix会获取服务或者监控项目的数据,会把数据记录到数据库里,从而可以成图
- open-falcon为小米公司开发,开源后受到诸多大公司和运维工程师的追捧,适合大企业,滴滴、360、新浪微博、京东等大公司在使用这款监控软件,值得研究
- 后续以介绍zabbix为主
zabbix监控介绍
- C/S架构,基于C 开发,监控中心支持web界面配置和管理
- 单server节点可以支持上万台客户端
- 最新版本3.4,官方文档https://www.zabbix.com/manuals
- 5个组件
- zabbix-server 监控中心,接收客户端上报信息,负责配置、统计、操作数据
- 数据存储 存放数据,比如mysql
- web界面 也叫web UI,在web界面下操作配置是zabbix简单易用的主要原因
- zabbix-proxy 可选组件,它可以代替zabbix-server的功能,减轻server的压力
- zabbix-agent 客户端软件,负责采集各个监控服务或项目的数据,并上报 10.zabbix监控流程图
安装zabbix
服务端
官网下载地址 www.zabbix.com/download
下载安装包: wget repo.zabbix.com/zabbix/3.2/rhel/7/x86_64/zabbix-release-3.2-1.el7.noarch.rpm
安装rpm包: rpm -ivh zabbix-release-3.2-1.el7.noarch.rpm
安装zabbix的一些包: yum install -y zabbix-agent zabbix-get zabbix-server-mysql zabbix-web zabbix-web-mysql 会连带安装httpd和php 如果mysql之前没有安装的话,需要根据lamp那一章的mysql安装方法安装mysql
vim /etc/my.cnf 需要增加配置 character_set_server = utf8
重启mysqld服务后,进入mysql命令行,创建zabbix库 create database zabbix character set utf8;
再创建用户 grant all on zabbix.* to ‘zabbix’@’127.0.0.1’ identified by ‘aming-zabbix’;
导入数据 cd /usr/share/doc/zabbix-server-mysql-3.2.11 gzip -d create.sql.gz mysql -uroot -pxxx zabbix < create.sql
启动zabbix-server(如果启动不了可能是你防火墙没有关): systemctl start zabbix-server
查看80端口是否是httpd,如果不是就启动,有Nginx的话就需要先停掉再启动httpd。
设置开机启动: systemctl enable httpd 设置Nginx不开机启动: systemctl disable nginx 从服务列表中去掉Nginx: chkconfig nginx off
打开配置文件: vim /etc/zabbix/zabbix_server.conf 修改或增加 DBHost=127.0.0.1 //在DBName=zabbix上面增加,这里写的是mysql所在的地址,因为mysql装在本机,所以填的是本机的IP,填localhost也可以
DBPassword=aming-zabbix //在DBuser下面增加,之前授权创建用户时的密码
修改之后重启zabbix-server,查看监听端口,zabbix的监听端口时10051: netstat -lntp |grep zabbix
浏览器访问http://192.168.85.132/zabbix/ //这里的IP是你监控中心的IP地址 web界面下面配置zabbix 这里会出现一个错误,是要你去配置时区
进入PHP的配置文件vim /etc/php.ini,修改timezone
保存退出后要重启httpd,systemctl restart httpd,然后再去刷新网页就可以了
Database port默认是0就是mysql的3306端口,密码就是我们创建zabbix用户时的密码
默认的登录用户名Admin 密码zabbix
进入后台第一件事情就是修改密码
这就是zabbix的web界面
客户端
在客户端上也需要下载zabbix的yum源
wget repo.zabbix.com/zabbix/3.2/rhel/7/x86_64/zabbix-release-3.2-1.el7.noarch.rpm
rpm -ivh zabbix-release-3.2-1.el7.noarch.rpm
yum install -y zabbix-agent
vim /etc/zabbix/zabbix_agentd.conf 修改如下配置
代码语言:javascript复制//可以搜server
Server=127.0.0.1修改为Server=192.168.85.132 //定义服务端的ip(被动模式)
ServerActive=127.0.0.1修改为ServerActive=192.168.85.132 //定义服务端的ip(主动模式)
Hostname=Zabbix server修改为Hostname=xie-02 //这是自定义的主机名,一会还需要在web界面下设置同样的主机名
启动zabbix: systemctl start zabbix-agent
设置开机启动: systemctl enable zabbix-agent
忘记Admin密码如何做
进入mysql命令行,选择zabbix库 use zabbix
修改Admin密码: update users set passwd=md5(‘newpasswd’) where alias=‘Admin’; 这样就更改了Admin用户的密码