nagios中自己写的监控mysql主从复制的插件

网友投稿 705 2023-03-19

本站部分文章、图片属于网络上可搜索到的公开信息,均用于学习和交流用途,不能代表睿象云的观点、立场或意见。我们接受网民的监督,如发现任何违法内容或侵犯了您的权益,请第一时间联系小编邮箱jiasou666@gmail.com 处理。

nagios中自己写的监控mysql主从复制的插件

大家可能遇到这样的问题,mysql的主已经写入数据了,但是却没有同步到从myql那里,或者延迟很长时间才同步过去。说明一下我们的网络环境,我们每台数据库都有两个网线,分别连接内网和外网的千兆交换机,速度肯定不是问题。如果延迟很长的话,肯定是出问题,比如数据库被lock了,或者开发人员的一些不当的操作等。这时候就需要监控主从同步的状态已经主从同步的时间间隔等。以便及时与开发人员沟通,及时解决问题。下面是我自己写的一个脚本名字叫check_mysql_delay:

#!/bin/bash

aa=`/usr/local/mysql/bin/mysql -u 用户 –p密码 --socket=/数据库目录/$1/mysql_$1.sock -e "show slave status\G"|egrep Read_Master_Log_Pos|awk   '{print $2}'`

bb=`/usr/local/mysql/bin/mysql -u 用户 –p密码 --socket=/数据库目录/$1/mysql_$1.sock -e "show slave status\G"|egrep Exec_Master_Log_Pos|awk   '{print $2}'`

cc=`expr $aa - $bb`

if [ $cc -gt 10000 ]

then

echo "$1 is CRITICAL $aa $bb $cc"

#exit $STATE_CRITICAL;

exit 2;

else

echo "$1 is OK $aa $bb $cc"

#exit $STATE_OK;

exit 0;

fi

把该脚本放到/usr/local/nagios/libexec目录下面。

然后修改/usr/local/nagios/etc/nrpe.cfg,在后面添加一行

注意这个3306就是给上面脚本当中$1赋值用的,如果有多个mysql实例的话,可以多写几行。

然后修改nagios服务器端的配置文件。在服务的配置文件中添加如下内容

define service {

use    db-server

host_name host当中定义的主机名

service_description check_rep_delay3306

}

然后重新加载一下nagios就ok了。

上一篇:hadoop 启动时间写入文件
下一篇:监控告警系统能力分析(监控告警系统能力分析报告)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~