19.1 Linux监控平台介绍
- cacti、nagios、zabbix、smokeping、open-falcon等等
- cacti、smokeping偏向于基础监控,成图非常漂亮
- cacti、nagios、zabbix服务端监控中心,需要php环境支持,其中zabbix和cacti都需要mysql作为数据存储,nagios不用存储历史数据,注重服务或者监控项的状态,zabbix会获取服务或者监控项目的数据,会把数据记录到数据库里,从而可以成图
- open-falcon为小米公司开发,开源后受到诸多大公司和运维工程师的追捧,适合大企业
1、Zabbix架构简介
- C/S架构,基于C++开发,监控中心支持web界面配置和管理
- 单server节点可以支持上万台客户端
- 最新版本3.4,官方文档https://www.zabbix.com/manuals
2、Zabbix架构的5个组件
- zabbix-server 监控中心,接收客户端上报信息,负责配置、统计、操作数据
- 数据存储,存放数据,比如mysql
- web界面 ,也叫web UI,在web界面下操作配置是zabbix简单易用的主要原因
- zabbix-proxy, 可选组件,它可以代替zabbix-server的功能,减轻server的压力
- zabbix-agent, 客户端软件,负责采集各个监控服务或项目的数据,并上报
3、Zabbix监控流程图
19.3~19.5 安装zabbix
1、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 -ivh zabbix-release-3.2-1.el7.noarch.rpm
- 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 #编辑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.7
gzip -d create.sql.gz
mysql -uroot -pxxx zabbix < create.sql
- systemctl start httpd; systemctl enable httpd
- vim /etc/zabbix/zabbix_server.conf //修改或增加
DBHost=127.0.0.1 #在DBName=zabbix上面增加
DBPassword=aming-zabbix #在DBuser下面增加
- systemctl start zabbix-server
- systemctl enable zabbix-server
- netstat -lntp |grep zabbix #查看监听端口
- 浏览器访问http://ip/zabbix/ web界面下面配置zabbix
- 用户名Admin 密码zabbix,进入后台第一件事情就是修改密码
2、Zabbix客户端安装
- wget repo.zabbix.com/zabbix/3.2/rhel/7/x86_64/zabbix-release-3.2-1.el7.noarch.rpm #在客户端上下载zabbix的yum源
- 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修改IP为192.168.133.130 #定义服务端的ip(被动模式)
ServerActive=127.0.0.1修改IP为192.168.133.130 #定义服务端的ip(主动模式)
Hostname=Zabbix server修改为Hostname=aming-123 #自定义的主机名,一会还需要在web界面下设置同样的主机名
- systemctl start zabbix-agent
- systemctl enable zabbix-agent
- mysql -uroot -p zabbix #进入mysql命令行,选择zabbix库
- update users set passwd=md5(‘newpasswd’) where alias=‘Admin’; #更改Admin用户的密码