目录

  • 实验前准备
  • 1.部署zabbix服务端
  • (1) 关闭防火墙
  • (2)获取zabbix下载源
  • (3)换源
  • (4)安装SCL
  • (5)安装zabbix所需的数据库
  • (6)修改zabbix server配置文件
  • (7)启动zabbix相关服务
  • (8)测试
  • (9)如果中文乱码怎么办?
  • 2. 部署zabbix客户端
  • (1)关闭防火墙
  • (2)时间同步
  • (3)设置zabbix的下载源,安装zabbix-agent2
  • (4)修改agent2配置文件
  • (5)启动zabbix-agent2
  • (6)验证
  • (7)添加主机
  • 3. 自定义监控内容
  • (1)定义key
  • (2)中间测试
  • (3)创建自定义监控
  • (4)添加组件
  • (5)邮件报警


实验前准备

zabbix服务端:192.168.188.17
zabbix客户端:192.168.188.11

1.部署zabbix服务端

(192.168.188.17)
zabbix-server 内存至少2G,推荐4G

(1) 关闭防火墙

systemctl stop firewalld
setenforce 0

(2)获取zabbix下载源

rpm -ivh https://mirrors.aliyun.com/zabbix/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm

(3)换源

更换zabbix.repo为阿里源,这样可以下得快一点

cd /etc/yum.repos.d
 sed -i ‘s#http://repo.zabbix.com#https://mirrors.aliyun.com/zabbix#’ zabbix.repo
 yum clean all && yum makecache
 yum install -y zabbix-server-mysql zabbix-agent

(4)安装SCL

便于安装高版本php

yum install -y centos-release-scl

修改zabbix-front前端源,安装zabbix前端环境到scl环境下

vim zabbix.repo

开启安装源

zabbix监控项信息类型 zabbix监控的内容_客户端


yum install -y zabbix-web-mysql-scl zabbix-apache-conf-scl

(5)安装zabbix所需的数据库

把zabbix服务端所需要的数据库结构直接下载下来

yum install -y mariadb-server mariadb

开启

systemctl start mariadb

初始化数据库,并设置密码,比如123

mysql_secure_installation

zabbix监控项信息类型 zabbix监控的内容_linux_02


创建zabbix所需要的数据库并为zabbix用户授权

mysql -u root -p123
 create DATABASE zabbix character set utf8 collate utf8_bin;
 GRANT all ON zabbix.* TO ‘zabbix’@‘%’ IDENTIFIED BY ‘zabbix’;
 flush privileges;

查询Zabbix数据库文件的位置

zabbix监控项信息类型 zabbix监控的内容_zabbix_03


解压Zabbix自带的数据库的建库语句压缩包并导入到mariadb数据库中

zcat /usr/share/doc/zabbix-server-mysql-5.0.40/create.sql.gz | mysql -uroot -p123 zabbix

(6)修改zabbix server配置文件

vim /etc/zabbix/zabbix_server.conf

改数据库密码

zabbix监控项信息类型 zabbix监控的内容_自定义_04


修改zabbix的php配置文件

vim /etc/opt/rh/rh-php72/php-fpm.d/zabbix.conf

改时区

zabbix监控项信息类型 zabbix监控的内容_自定义_05

(7)启动zabbix相关服务

systemctl restart zabbix-server zabbix-agent httpd rh-php72-php-fpm

(8)测试

浏览器访问:http:192.168.188.17/zabbix

点击下一步

zabbix监控项信息类型 zabbix监控的内容_zabbix监控项信息类型_06


设置数据库的密码zabbix

zabbix监控项信息类型 zabbix监控的内容_zabbix监控项信息类型_07


安装完成后点击finish然后登录,默认账号为Admin,密码为zabbix

zabbix监控项信息类型 zabbix监控的内容_zabbix_08


登录后点击左侧菜单栏User settings,在Language中选择chines(zh_CN),再点击Update更新

zabbix监控项信息类型 zabbix监控的内容_自定义_09

(9)如果中文乱码怎么办?

在虚拟机上安装相应的工具

yum install -y wqy-microhei-fonts
 \cp -f /usr/share/fonts/wqy-microhei/wqy-microhei.ttc /usr/share/fonts/dejavu/DejaVuSans.ttf

2. 部署zabbix客户端

(192.168.188.11)

(1)关闭防火墙

systemctl stop firewalld
setenforce 0

(2)时间同步

客户端和服务端都配置时间同步

yum -y install ntpdate
 ntpdate -u ntp.aliyun.com

zabbix监控项信息类型 zabbix监控的内容_zabbix_10


客户端配置时区,与服务器保持一致

mv /etc/localtime{,.bak} 这一步就是在备份

ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

(3)设置zabbix的下载源,安装zabbix-agent2

rpm -ivh https://mirrors.aliyun.com/zabbix/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm
cd /etc/yum.repos.d
sed -i ‘s#http://repo.zabbix.com#https://mirrors.aliyun.com/zabbix#’ /etc/yum.repos.d/zabbix.repo
yum install -y zabbix-agent2

(4)修改agent2配置文件

vim /etc/zabbix/zabbix_agent2.conf

指定zabbix服务端的IP地址

zabbix监控项信息类型 zabbix监控的内容_客户端_11


指定zabbix服务端的IP地址

zabbix监控项信息类型 zabbix监控的内容_自定义_12


指定当前zabbix客户端的主机名

zabbix监控项信息类型 zabbix监控的内容_zabbix监控项信息类型_13


把当前主机的主机名也改一下

hostnamectl set-hostname zbx-agent01

bash

zabbix监控项信息类型 zabbix监控的内容_客户端_14

(5)启动zabbix-agent2

systemctl start zabbix-agent2

查看端口,是否正常启动

netstat -anpt | grep zabbix

zabbix监控项信息类型 zabbix监控的内容_自定义_15

(6)验证

在服务端验证zabbix-agent2的连通性

安装zabbix主动获取数据的命令

yum -y install zabbix-get

获取数据

zabbix_get -s ‘192.168.10.21’ -p 10050 -k ‘agent.ping’

zabbix_get -s ‘192.168.10.21’ -p 10050 -k ‘system.hostname’

zabbix监控项信息类型 zabbix监控的内容_自定义_16

(7)添加主机

在Web页面中添加agent主机

左侧菜单栏配置中点击主机,点击创建主机,如下配置

zabbix监控项信息类型 zabbix监控的内容_linux_17


再点击上方菜单栏中的模板,链接新模板后点击添加

zabbix监控项信息类型 zabbix监控的内容_zabbix监控项信息类型_18


注意看只有可用性那一栏有绿色亮着的才是能用的

zabbix监控项信息类型 zabbix监控的内容_zabbix监控项信息类型_19

3. 自定义监控内容

假设需要限制登录人数,当登录人数超过3个就发出警报信息

(1)定义key

在客户端上定义key

我们要先知道获取登录人数的命令是什么

who | wc -l

可以看到我这台客户端已经有三个登录用户了

zabbix监控项信息类型 zabbix监控的内容_zabbix监控项信息类型_20


创建zabbix的监控项配置文件,用于自定义key

vim /etc/zabbix/zabbix_agent2.conf

表示将自定义的监控项配置文件创建在zabbix_agent2.d目录中

zabbix监控项信息类型 zabbix监控的内容_zabbix_21


在下面定义一下自定义监控项的格式,默认就是这个格式

zabbix监控项信息类型 zabbix监控的内容_zabbix_22


在zabbix_agent2.d目录中创建自定义配置项的文件

cd /etc/zabbix/zabbix_agent2.d/

这个文件名字随便取,但必须是.conf后缀

vim User_login.conf

里面只需要按定义的格式写一条就行

UserParameter=login.user,who|wc -l

这里的login.user就是key,这个名字可以随便取,key对应的value就是后面那条shell command的执行结果

zabbix监控项信息类型 zabbix监控的内容_自定义_23


重启服务

systemctl restart zabbix-agent2

(2)中间测试

先去服务端验证一下这个监控项能不能用

我们这就是通过查看login.user这个key对应的value来监控客户端的登录人数

zabbix_get -s ‘192.168.188.11’ -p 10050 -k ‘login.user’

能看到确实是三个没问题

zabbix监控项信息类型 zabbix监控的内容_linux_24

(3)创建自定义监控

在Web页面创建自定义监控模板,总共五步走

第一步创建模板

zabbix监控项信息类型 zabbix监控的内容_zabbix监控项信息类型_25


zabbix监控项信息类型 zabbix监控的内容_客户端_26


现在就可以在模板里找到这个模板了

zabbix监控项信息类型 zabbix监控的内容_linux_27


第二步点击Template Login User创建应用集,应用集是用于管理监控项的

zabbix监控项信息类型 zabbix监控的内容_linux_28


zabbix监控项信息类型 zabbix监控的内容_zabbix监控项信息类型_29


zabbix监控项信息类型 zabbix监控的内容_zabbix_30


第三步创建监控项

zabbix监控项信息类型 zabbix监控的内容_linux_31


zabbix监控项信息类型 zabbix监控的内容_zabbix_32


zabbix监控项信息类型 zabbix监控的内容_自定义_33


第四步创建触发器,触发器就是在监控项满足一定条件时触发警报

zabbix监控项信息类型 zabbix监控的内容_linux_34


zabbix监控项信息类型 zabbix监控的内容_自定义_35


zabbix监控项信息类型 zabbix监控的内容_zabbix监控项信息类型_36


zabbix监控项信息类型 zabbix监控的内容_自定义_37


第四点五步创建图形,这一步不是必须的,可以学习一下

zabbix监控项信息类型 zabbix监控的内容_zabbix监控项信息类型_38


zabbix监控项信息类型 zabbix监控的内容_自定义_39


zabbix监控项信息类型 zabbix监控的内容_linux_40


第五步将主机与模板关联起来

zabbix监控项信息类型 zabbix监控的内容_客户端_41


zabbix监控项信息类型 zabbix监控的内容_zabbix_42


此时就可以看到图表形式的监控了

zabbix监控项信息类型 zabbix监控的内容_客户端_43

(4)添加组件

为了方便测试我们可以在仪表盘上加一个组件,专门监测客户端

zabbix监控项信息类型 zabbix监控的内容_zabbix_44


zabbix监控项信息类型 zabbix监控的内容_zabbix_45


添加完毕,目前风平浪静

zabbix监控项信息类型 zabbix监控的内容_zabbix监控项信息类型_46


然后我们再开一个shell,成为第四个登录的用户

zabbix监控项信息类型 zabbix监控的内容_zabbix监控项信息类型_47


然后就能看到告警了

zabbix监控项信息类型 zabbix监控的内容_zabbix监控项信息类型_48


关了第四个登录,就会显示已解决的状态

zabbix监控项信息类型 zabbix监控的内容_zabbix监控项信息类型_49

(5)邮件报警

为了更方便运维,还可以设置邮件报警

zabbix监控项信息类型 zabbix监控的内容_zabbix监控项信息类型_50


zabbix监控项信息类型 zabbix监控的内容_zabbix监控项信息类型_51


QQ邮箱的授权码怎么获得

登录QQ邮箱后点击右上角“账号与安全”

zabbix监控项信息类型 zabbix监控的内容_zabbix_52


zabbix监控项信息类型 zabbix监控的内容_客户端_53


后面按提示操作就可以获得授权码了

zabbix监控项信息类型 zabbix监控的内容_zabbix监控项信息类型_54


可以测试一下

zabbix监控项信息类型 zabbix监控的内容_zabbix_55


zabbix监控项信息类型 zabbix监控的内容_zabbix监控项信息类型_56


点击测试就能收到测试邮件了,说明没问题

zabbix监控项信息类型 zabbix监控的内容_客户端_57


继续做完成自动化告警

zabbix监控项信息类型 zabbix监控的内容_客户端_58


zabbix监控项信息类型 zabbix监控的内容_客户端_59


测试一下,再登录一个,触发报警,看看能不能实现自动报警

仪表盘上有了

zabbix监控项信息类型 zabbix监控的内容_zabbix_60


邮箱里也收到了

zabbix监控项信息类型 zabbix监控的内容_linux_61