常见开源监控软件
•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节点可以支持上万台客户端
•5个组件
•zabbix-server 监控中心,接收客户端上报信息,负责配置、统计、操作数据
•数据存储 存放数据,比如mysql
•web界面 也叫web UI,在web界面下操作配置是zabbix简单易用的主要原因
•zabbix-proxy 可选组件,它可以代替zabbix-server的功能,减轻server的压力
•zabbix-agent 客户端软件,负责采集各个监控服务或项目的数据,并上报
安装zabbix
准备两台机器,一台作为服务端,另外一台为客户端,提前已安装Mysql
均下载安装包wget http://repo.zabbix.com/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-2.el7.noarch.rpm
两台机器都安装rpm包rpm -ivh zabbix-release-3.4-2.el7.noarch.r
服务端安装包yum install -y zabbix-agent zabbix-get zabbix-server-mysql zabbix-web zabbix-web-mysql
编辑mysql的配置文件呢,设置默认的字符集vim /etc/my.cnf
在配置文件中添加如下的内容character_set_server = utf8
重启mysqlsystemctl restart mysqld
进入mysql创建库以及用户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
在这个目录下有个create.sql.gz压缩包,需要解压gzip -d create.sql.gz
导入数据mysql -uroot -ptestpasswd1.3 zabbix < create.sql
启动zabbixsystemctl start zabbix-server
systemctl start httpd
编辑zabbix配置文件vim /etc/zabbix/zabbix_server.conf
搜索关键字DBHost
,定义IP和passwdDBHost=127.0.0.1
DBPassword=aming-zabbix
更改完成后重启服务systemctl restart zabbix-server
zabbix已经安装完成,接下来进入配置,
在浏览器输入http://ip/zabbix/,进入web界面配置zabbix
在界面点击next step
然后查看哪一项是fail掉的,显示ok表示没问题
我的是 PHP option "date.timezone" 这一选项Fail,表示需要设置时区 vim /etc/php.ini
搜索关键字date.timezone 更改为如下的内容date.timezone = Asia/Shanghai
重启http服务systemctl restart httpd
然后再刷新页面,查看是否ok
按照提示进入zabbix,默认登陆用户和密码都为zabbix
进入后台第一件事情就是修改密码
忘记Admin密码如何做
登陆mysql,使用zabbix库use zabbix
执行一下命令即可,密码更改为zxcvbupdate users set passwd=md5('zxcvb') where alias= 'testuser';
客户端安装zabbix
客户端安装包yum install -y zabbix-agent
编辑配置文件vim /etc/zabbix/zabbix_agentd.conf
Server=127.0.0.1修改为Server=192.168.177.7 定义服务端的ip(被动模式)
ServerActive=127.0.0.1修改为ServerActive=192.168.177.7 定义服务端的ip(主动模式)
Hostname=Zabbix server修改为Hostname=lx-01 这是自定义的主机名,一会还需要在web界面下设置同样的主机名
启动zabbix-agentsystemctl start zabbix-agent