zabbix4.4自定义告警监控mysql主从复制

zabbix自带的模板基本上已经能满足大部分的监控需求,对于一些特殊指标需要自己定义key,企业中也需要自定义模板,以mysql主从为例,自定义监控项

zabbix4.4监控mysql主从复制_第1张图片

一、安装zabbix

基于LNMP的zabbix4.4源码编译安装

二、配置mysql主从复制

mysql5.7主从复制配置

三、配置钉钉、邮箱告警

zabbix4.4邮箱、钉钉报警

四、编写mysql主从监控脚本

1.确定mysql主从复制key

首先mysql主从复制的关键指标在于都为Yes

Slave_IO_Running: Yes
Slave_SQL_Running: Yes

zabbix4.4监控mysql主从复制_第2张图片

所以可以通过grep 查询关键词yes=2来判断(推荐使用脚本,由于简单直接使用命令行)

mysql -uroot -pHuawei12#$ -e "show slave status\G;" 2>/dev/null | grep -wE "Slave_IO_Running|Slave_SQL_Running" | grep -c Yes

zabbix4.4监控mysql主从复制

2.修改agent配置文件

vim /usr/local/zabbix/etc/zabbix_agentd.conf

添加以下2行

#开启自定义key

UnsafeUserParameters=1

#自定义mysql.copy变量

UserParameter=mysql.copy,mysql -uroot -pHuawei12#$ -e "show slave status\G;"2>/dev/null |grep -wE "Slave_IO_Running|Slave_SQL_Running" |grep -c Yes            

重启agent

/etc/init.d/zabbix_agentd restart

3.server端测试是否正常获取数据

/usr/local/zabbix/bin/zabbix_get -s 192.168.197.130 -k mysql.copy

zabbix4.4监控mysql主从复制

五、zabbix_server web配置

1.添加监控项

配置-主机-监控项(键值要填写自定义变量名称mysql_copy)

zabbix4.4监控mysql主从复制_第3张图片

2.添加图形展示

zabbix4.4监控mysql主从复制_第4张图片

zabbix4.4监控mysql主从复制_第5张图片

3.添加触发器

触发条件:当mysql_copy不等于2就报警

zabbix4.4监控mysql主从复制_第6张图片

六、故障告警测试

关闭主从复制测试

mysql -uroot -pHuawei12#$ -e "stop slave;"

mysql -uroot -pHuawei12#$ -e "show slave status\G;"

zabbix4.4监控mysql主从复制_第7张图片

监控指标发生变化

zabbix4.4监控mysql主从复制_第8张图片

告警信息,并发送钉钉和邮箱告警

zabbix4.4监控mysql主从复制_第9张图片

钉钉告警

zabbix4.4监控mysql主从复制_第10张图片

邮箱告警

zabbix4.4监控mysql主从复制_第11张图片

七、恢复告警测试

在slave端开启主从复制

mysql -uroot -pHuawei12#$ -e "start slave;"

钉钉恢复告警

zabbix4.4监控mysql主从复制_第12张图片

恢复邮箱告警

zabbix4.4监控mysql主从复制_第13张图片