常见开源监控软件

•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

重启mysql systemctl 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

启动zabbix systemctl start zabbix-server systemctl start httpd

编辑zabbix配置文件 vim /etc/zabbix/zabbix_server.conf

搜索关键字DBHost,定义IP和passwd DBHost=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

执行一下命令即可,密码更改为zxcvb update 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-agent systemctl start zabbix-agent