【zabbix】Mysql主从复制居然还能这样...不看后悔!!!

版权声明:版权所有,转载请标明出处! https://blog.csdn.net/wuguifa/article/details/89495915

恩,非常nice的一个标题,如果满分一百分的话,我给自己打82分,剩下的18分以666的形式给我自己。

本次的教程,我们要利用zabbix的UserParameter来做MySQL主从复制状态的监测。
教程基础:
搭建好的zabbix监控平台,
完成主从配置的MySQL数据库
python3及pymysql模块。

先放上我们的监测脚本,脚本命名为ms_status.py:

#!/usr/bin/python3
'''
Created on 2019年4月23日
@author: wugf
'''

import pymysql

'''
使用show slave status命令获取主从复制状态,
判断下面两个线程是否是 Yes
    Slave_IO_Running: Yes
    Slave_SQL_Running: Yes
都为Yes输出0,否则输出1
'''
hostname = "120.77.237.248"
username = "backup1"
password = "Yiju2018"
port = 3306

con = pymysql.connect(host=hostname, port=port, user=username, passwd=password)
cur = con.cursor()
cur.execute('show slave status;')
status = cur.fetchall()
if status[0][10] and status[0][11] == "Yes":
    print(0)
else:
    print(1)
con.close()

.
.

接下来我们来配置zabbix-agent的配置文件,我这里用来执行监测的主机是Zabbix server。
在zabbix_agent.conf配置文件里面加一行,逗号左边的是监控项的键值,右边的脚本的路径,加完保存后重启下zabbix-agent:
在这里插入图片描述

.
.
然后我们新建一个监控项:
监控项的键值就是上面我们设置的mysql.ms_status:
在这里插入图片描述.
.
配合完之后我们可以看到,正常情况下获取到的值都是0:
在这里插入图片描述.
.
我们可以设置一个触发器,当主从复制状态异常时(即获取的值不是0时),在控制面板上会有一个告警提示:
在这里插入图片描述.
.
也可以自定义通知类型,我这里做的是企业微信通知,大概看一下,不做详细介绍:
在这里插入图片描述在这里插入图片描述.
.
好了,教程结束,谢谢观看!
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/wuguifa/article/details/89495915
今日推荐