zabbix监控mysql容器主从同步状态并告警钉钉/企业微信

前言:被监控的主机已经安装和配置mysql主从同步,和zabbix-agent插件。

mysql创建主从同步:http://t.csdn.cn/P4MYq

centos安装zabbix-agent2:http://t.csdn.cn/fx74i

mysql主从同步,主要监控这2个参数指标:

Slave_IO_Running: Yes

Slave_SQL_Running: Yes

1、创建zabbix脚本

进入zabbix目录,cd /etc/zabbix

创建目录:mkdir script

vim mysql_slave1_status.sh

bash 复制代码
#!/bin/bash
NAME=$1

function IO {
    Slave_IO_Running=`docker exec mysql-slave1 mysql -uroot -p'123456' -e "show slave status\G" 2> /dev/null |grep Slave_IO_Running: |awk '{print $2}'`
    if [ $Slave_IO_Running == "Yes" ];then
        echo 1
    else
        echo 0
    fi
}

function SQL {
    Slave_SQL_Running=`docker exec mysql-slave1 mysql -uroot -p'123456' -e "show slave status\G" 2> /dev/null |grep Slave_SQL_Running: |awk '{print $2}'`
    if [ $Slave_SQL_Running == "Yes" ];then
        echo 1
    else
        echo 0
    fi

}

case $NAME in
   io)
       IO
   ;;
   sql)
       SQL
   ;;
   *)
        echo -e "Usage: $0 [io | sql]"
esac

创建完成后,进行测试,看能否返回正确的数值,1表示Yes,0标识No

2、创建zabbix配置

进入目录,agent和agent2目录不太一样。

zabbix-agent: cd /etc/zabbix/zabbix_agentd.d

zabbix-agent2:cd /etc/zabbix/zabbix_agent2.d/plugins.d

新增并编辑文件:vim mysql_slave1.conf

bash 复制代码
UserParameter=mysql.slave1[*],/etc/zabbix/script/mysql_slave1_status.sh $1

3、zabbix页面主机添加监控项和触发器

主机中添加2个监控项,名称随意,键值分别为mysql.slave1[io],mysql.slave1[sql]

添加2次触发器:

4、添加图形监控

5、添加钉钉/企业微信告警通知

zabbix添加钉钉通知:http://t.csdn.cn/WpF0g

zabbix添加企业微信通知:http://t.csdn.cn/pIhoH

相关推荐
PGCCC10 分钟前
【PGCCC】Postgresql 存储设计
数据库·postgresql
PcVue China2 小时前
PcVue + SQL Grid : 释放数据的无限潜力
大数据·服务器·数据库·sql·科技·安全·oracle
魔道不误砍柴功4 小时前
简单叙述 Spring Boot 启动过程
java·数据库·spring boot
锐策4 小时前
〔 MySQL 〕数据库基础
数据库·mysql
远歌已逝5 小时前
管理Oracle实例(二)
数据库·oracle
日月星宿~5 小时前
【MySQL】summary
数据库·mysql
爱吃土豆的程序员5 小时前
在oracle官网下载资源显示400 Bad Request Request Header Or Cookie Too Large 解决办法
java·数据库·oracle·cookie
睿思达DBA_WGX6 小时前
Oracle 11g rac 集群节点的修复过程
数据库·oracle
尘浮生6 小时前
Java项目实战II基于微信小程序的移动学习平台的设计与实现(开发文档+数据库+源码)
java·开发语言·数据库·spring boot·学习·微信小程序·小程序
南猿北者6 小时前
docker Network(网络)
网络·docker·容器