目录

  • 一、实施方案
  • 二、MySQL主从同步
  • 三、Zabbix监控主从状态
  • 3.1 自定义key
  • 3.2 Zabbix监控
  • 四、Zabbix监控主从延迟
  • 4.1 自定义key
  • 4.2 Zabbix监控


一、实施方案

这里做的是简单的一主一从监控,一主多从和多主多从的监控方法一样。

主机

功能

192.168.139.151

zabbix_server;mysql_master

192.168.139.152

zabbix_agent;mysql_slave

二、MySQL主从同步

mysql 主从状态监测 mysql主从监控_主从同步


(1)master端创建测试库(看slave是否同步)

mysql 主从状态监测 mysql主从监控_触发器_02


(2)查看slave端数据库

mysql 主从状态监测 mysql主从监控_mysql 主从状态监测_03


以上已经做好了主从同步。

三、Zabbix监控主从状态

3.1 自定义key

(1)slave端

该监控脚本的作用是用来判断IO线程和SQL线程是否均为两个yes,并计算出yes的个数,2个则正常(说明IO、SQL线程均为yes),小于2则异常(说明IO、SQL线程不全为yes)。

mysql 主从状态监测 mysql主从监控_zabbix_04

(2)zabbix(master端)

mysql 主从状态监测 mysql主从监控_主从同步_05

3.2 Zabbix监控

(1)设置监控项及触发器

  • 监控项
  • 触发器

(2)进行数据监测

mysql 主从状态监测 mysql主从监控_主从同步_06

(3)手动停掉slave

stop slave;

mysql 主从状态监测 mysql主从监控_主从同步_07

mysql 主从状态监测 mysql主从监控_zabbix_08

(4)手动开启slave

start slave;

mysql 主从状态监测 mysql主从监控_mysql 主从状态监测_09

达到了监控主从同步状态的效果,后续就是配置相关的动作、报警媒介等进行报警操作。

四、Zabbix监控主从延迟

4.1 自定义key

(1)slave端

SBM值为0则正常,否则异常。

mysql 主从状态监测 mysql主从监控_主从同步_10

(2)zabbix(master端)

mysql 主从状态监测 mysql主从监控_自定义_11

4.2 Zabbix监控

(1)设置监控项及触发器

  • 监控项
  • mysql 主从状态监测 mysql主从监控_触发器_12

  • 触发器

(2)先看一下是否延迟

mysql 主从状态监测 mysql主从监控_主从同步_13

(3)再看一下zabbix监控端

mysql 主从状态监测 mysql主从监控_mysql 主从状态监测_14

值一直为0,说明没发生延迟。

(4)当我重启一下slave服务器时(会发生主从延迟)

也可以向主库中插入大量的数据使从库产生数据同步延迟时间,再去zabbix监控端查看效果。

mysql 主从状态监测 mysql主从监控_触发器_15

过了段时间会恢复延迟。以上就是对MySQL主从同步的状态、延迟的监控。这里没有做监控报警的操作,仅仅是从zabbix监控端来查看监控的对象,在实际生产中应配置报警系统,比如企业微信报警、邮件报警、钉钉报警等。从而及时处理发出的各种问题,保证线上业务不受影响。