Zabbix实现对MySQL数据库主从监控(4)

root@ubuntu1804:~# zabbix_get -s 192.168.1.16 -p 10050 -k MySQL.Key-read-requests
4
root@ubuntu1804:~# zabbix_get -s 192.168.1.16 -p 10050 -k MySQL.Qcache-free-memory
1031336

5)web端查看成功添加被监控的mysql从服务

zabbix实现对mysql数据库主从监控

6)在mysql从服务端查看到新生成的localhost-mysql_cacti_stats.txt文件是有监控服务端创建的,且属主和属组都为zabbix [root@localhost ~]# ll /tmp/localhost-mysql_cacti_stats.txt -rw-rw-r-- 1 zabbix zabbix 1235 Jul 16 01:00 /tmp/localhost-mysql_cacti_stats.txt 6.创建自定义mysql主从监控模板、监控项 在mysql-slave端: 1)编写自定义监控脚本 [root@localhost ~]# vim /etc/zabbix/zabbix_agentd.d/mysql_monitor.sh #!/bin/bash master_slave_check(){ num1=`mysql -uroot -e "show slave status\G" | grep "Slave_IO_Running" | awk -F":" '{print $2}'` num2=`mysql -uroot -e "show slave status\G" | grep "Slave_SQL_Running" | awk -F":" '{print $2}'` if test $num1 == "Yes" && test $num2 == "Yes";then echo 60 else echo 120 fi } mysql_sync_delay(){ num=`mysql -uroot -e "show slave status\G" | grep "Seconds_Behind_Master" | awk -F":" '{print $2}'` echo $num } menu(){ case $1 in master_slave_check) master_slave_check ;; mysql_sync_delay) mysql_sync_delay ;; esac } menu $1 2)编写自定义监控项的配置文件,含有监控项的键值 [root@localhost ~]# vim /etc/zabbix/zabbix_agentd.d/mysql-master-slave.conf UserParameter=mysql_test[*],/etc/zabbix/zabbix_agentd.d/mysql_monitor.sh $1 3)脚本加上执行权限,避免在monitor-server端无权限获取key的值 [root@localhost ~]# chmod a+x mysql_monitor.sh 4)重新启动本机的agent服务 [root@localhost ~]# systemctl restart zabbix-agent 在zabbix-proxy服务端测试,是否能获取被监控端mysql-slave服务的key的值 root@ubuntu1804:~# zabbix_get -s 192.168.1.16 -p 10050 -k "mysql_test[mysql_sync_delay]" 0 root@ubuntu1804:~# zabbix_get -s 192.168.1.16 -p 10050 -k "mysql_test[master_slave_check]" 60 在zabbix-server端先执行测试,是否能获取被监控端的key的值 1)利用zabbix-get命令测试 root@ubuntu1804:~# zabbix_get -s 192.168.1.16 -p 10050 -k "mysql_test[mysql_sync_delay]" 0 root@ubuntu1804:~# zabbix_get -s 192.168.1.16 -p 10050 -k "mysql_test[master_slave_check]" 60 2)当将mysql-slave服务停止,可以看到显示的数值为120,证明mysql-slave服务已断开 root@ubuntu1804:~# zabbix_get -s 192.168.1.16 -p 10050 -k "mysql_test[master_slave_check]" 120 3)在监控web端进行模板创建

zabbix实现对mysql数据库主从监控

4)给此模板创建一个应用集,是用来给监控项分类

zabbix实现对mysql数据库主从监控

5)在应用集中添加监控项

zabbix实现对mysql数据库主从监控


zabbix实现对mysql数据库主从监控

6)添加触发的动作,当数值大于65证明连接失败

zabbix实现对mysql数据库主从监控


zabbix实现对mysql数据库主从监控

7)给指定监控项创建图形显示

zabbix实现对mysql数据库主从监控

8)将自定义创建好的模板添加到需要监控的mysql-slave主机

zabbix实现对mysql数据库主从监控

9)再查看mysql-slave主机图形,红色为警戒线,绿色为正常

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/53a2f22787f035c915c76be2741afb7d.html