一:监控软件介绍

cacti、nagios、zabbix、smokeping、open-falcon等等
cacti、smokeping偏向于基础监控,成图非常漂亮
cacti、nagios、zabbix服务端监控中心,需要php环境支持,其中zabbix和cacti都需要mysql作为数据存储,nagios不用存储历史数据,注重服务或者监控项的状态,zabbix会获取服务或者监控项目的数据,会把数据记录到数据库里,从而可以成图
open-falcon为小米公司开发,开源后受到诸多大公司和运维工程师的追捧,适合大企业,滴滴、360、新浪微博、京东等大公司在使用这款监控软件,值得研究

二: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 客户端软件,负责采集各个监控服务或项目的数据,并上报
监控软件介绍、安装zabbix_第1张图片

三:zabbix 安装

1.服务端安装:
zabbix 需要 apache+php 的支持,多一个mysql,因为它有数据需要存储。所以,安装zabbix,必须要安装 mysql。
在安装zabbix之前,也需要安装 epel扩展源,因为 centos自带 yum源是没有 zabbix的。
#yum install -y epel-release
安装rpm包的lamp 环境
yum install -y httpd mysql mysql-libs php php-mysql mysql-server php-bcmath php-gd php-mbstring
安装zabbix服务端
#yum install zabbix20 zabbix20-agent zabbix20-server zabbix20-server-mysql zabbix20-web zabbix20-web-mysql net-snmp-devel
安装好之后就可以启动服务了

#/etc/init.d/httpd start;
修改一下mysql配置文件
#vim /etc/my.cnf
修改或增加如下内容
[mysql]
default-character-set = utf8
[mysqld]
character_set_server = utf8

然后启动mysql服务
#/etc/init.d/mysqld start
然后建库,导入数据
mysql -uroot -e "create database zabbix"
mysql -uroot --default-character-set=utf8 zabbix < /usr/share/zabbix-mysql/schema.sql
mysql -uroot --default-character-set=utf8 zabbix < /usr/share/zabbix-mysql/images.sql
mysql -uroot --default-character-set=utf8 zabbix < /usr/share/zabbix-mysql/data.sql
mysql -uroot -e "grant all on . to 'zabbix'@'localhost' identified by 'zabbix';"
vim /etc/zabbix/zabbix_server.conf
修改DBName=zabbix
DBHost=127.0.0.1 #在DBName上面增加
DBPassword=zabbix #在DBuser下面增加
systemctl start zabbix-server
systemctl enable zabbix-server
验证sock的路径
ls /var/lib/mysql/mysql.sock
#/etc/init.d/zabbix-server start
#/etc/init.d/zabbix-agent start
下面我们通过网页安装 zabbix
浏览器访问 http://ip/zabbix 默认会有“It is not safe to rely on the system„s timezone settings ”这样的警告信息,需要 vim /etc/php.ini 设置 date.timezone=“Asia/Shanghai”点next
它会提示有一些参数不合适,需要通过编辑配置文件/etc/php.ini,解决相关的报错信息,
然后点retry ,如果无反应,重启一下httpd
接着输入mysql相关信息,首先要测试一下,如果不通过,则需要调试,测试通过后,
点next
Name 写127.0.0.1,(这个可以自定义)继续点next,再点next,最后点 finish

默认管理员账号为admin,密码为zabbix
这时会遇到“zabbix server is not running”这样的错误,需要编辑一下
/etc/zabbix/zabbix_server.conf,配置DBUser, DBPassword,然后重启zabbix-server
#/etc/init.d/zabbix-server restart
2.客户端安装
在客户端上也需要下载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 //修改如下配置
Server=127.0.0.1修改为Server=192.168.133.130 //定义服务端的ip(被动模式)
ServerActive=127.0.0.1修改为ServerActive=192.168.133.130 //定义服务端的ip(主动模式)
Hostname=Zabbix server修改为Hostname=aming-123 //这是自定义的主机名,一会还需要在web界面下设置同样的主机名
systemctl start zabbix-agent
systemctl enable zabbix-agent

四:忘记Admin密码怎么办

进入mysql命令行,选择zabbix库
mysql -uroot -p zabbix
update users set passwd=md5(‘newpasswd’) where alias=‘Admin’;
这样就更改了Admin用户的密码