线上服务的监控已经基本搞定了,现在就剩下mysql 主从的状态没有检测,这里要想用zabbix 监控,还得写一个获取主从状态的脚本,然后设置一个key,创建模板套用这个key 获取mysql 的主从状态是否正常。
1.这里把我的脚本贴一下,脚本要给可执行权限
#!/bin/bash user=zabbixagent passwd=zabbixagent port=$1 #自定义函数 function status { status=`/data/mysql_root/mysql/bin/mysql -u$user -S /data/mysql_root/mysql/data$port/mysql.socket -p$passwd -e "show slave status\G;" | egrep 'Slave_IO_Running|Slave_SQL_Running' | awk '{print $2}' | egrep 'Yes' | wc -l` if [ $status = 2 ];then echo 2 else echo 1 fi } #引用函数 status
2.自定义key
cat /etc/zabbix/zabbix_agentd.d/check_mysql.conf
UserParameter=sanguo.check.mysql[*], /data/salt/scripts/check_mysql.sh $1
重启zabbix_agent
3.创建模板并链接主机
wKioL1c1ftrjjYHQAADVHldTV0I219.png
(1).创建Applications
wKioL1c1fvKxDayyAABBEfK03cw851.png
(2).创建items 获取3316实例的slave状态,也可以server上用zabbix_get -s ip -k sanguo.check.mysql[3316] 来获取值
wKioL1c1fzCx76toAACd7zJulX8511.png
(3).创建trigger 如果最后获取的值不等于2 就触发报警
wKiom1c1fm-CSsmpAABnd-cgmPI224.png
(4).创建触发action
wKiom1c1gBTD1BgqAABBT-CwHTY755.png
wKioL1c1gPbigyE7AACK1SAw8KA056.png
wKiom1c1gBSBdVPzAABIhx0KdBU240.png
模板在附件
附件:http://down.51cto.com/data/2367682
©著作权归作者所有:来自51CTO博客作者shouhou2581314的原创作品,如需转载,请注明出处,否则将追究法律责任
监控zabbix监控