zabbix自带的模板基本上已经能满足大部分的监控需求,对于一些特殊指标需要自己定义key,企业中也需要自定义模板,以mysql主从为例,自定义监控项
一、安装zabbix
二、配置mysql主从复制
三、配置钉钉、邮箱告警
四、编写mysql主从监控脚本
1.确定mysql主从复制key
首先mysql主从复制的关键指标在于都为Yes
Slave_IO_Running: Yes
Slave_SQL_Running: Yes
所以可以通过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
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
五、zabbix_server web配置
1.添加监控项
配置-主机-监控项(键值要填写自定义变量名称mysql_copy)
2.添加图形展示
3.添加触发器
触发条件:当mysql_copy不等于2就报警
六、故障告警测试
关闭主从复制测试
mysql -uroot -pHuawei12#$ -e "stop slave;"
mysql -uroot -pHuawei12#$ -e "show slave status\G;"
监控指标发生变化
告警信息,并发送钉钉和邮箱告警
钉钉告警
邮箱告警
七、恢复告警测试
在slave端开启主从复制
mysql -uroot -pHuawei12#$ -e "start slave;"
钉钉恢复告警
恢复邮箱告警