设为首页 收藏本站
查看: 1021|回复: 0

[经验分享] zabbix监控mysql主从同步

[复制链接]

尚未签到

发表于 2018-10-4 09:12:34 | 显示全部楼层 |阅读模式
  1,部署了个mysql从数据库,需要时时监控这个从数据库的主从状态。原理的话,是通过从mysql上的zabbix执行show slave status获取
  Slave_IO_Running|Slave_SQL_Running状态是否都为Yes来判断主从是否正常。
  MySQL同步功能由3个线程(master上1个,slave上2个)来实现,简单的说就是:master发送日志一个,slave接收日志一个,slave运行日志一个。
  首先,我们解释一下 show slave status  中重要的几个参数:
  Slave_IO_Running: I/O线程是否被启动并成功地连接到主服务器上。
  Slave_SQL_Running: SQL线程是否被启动。
  Seconds_Behind_Master:本字段是从属服务器“落后”多少的一个指示。当从属SQL线程正在运行时(处理更新),本字段为在主服务器上由此线程执行的最近的一个事件的时间标记开始,已经过的秒数。当此线程被从属服务器I/O线程赶上,并进入闲置状态,等待来自I/O线程的更多的事件时,本字段为零。总之,本字段测量从属服务器SQL线程和从属服务器I/O线程之间的时间差距,单位以秒计。
  那么如何监控从服务器是否正常运行呢?
  2,我们可以通过一条命令来获取主从同步信息:
  mysql -uzabbix -p -e 'show slave status\G' |grep -E "Slave_IO_Running|Slave_SQL_Running"|awk '{print $2}'|grep -c Yes
  主要获取的就是以下两个值
  Slave_IO_Running: Yes
  Slave_SQL_Running: Yes
DSC0000.jpg

  3,创建个Mysql的配置文件,在zabbix_agent安装目录下,
DSC0001.jpg

  在userparameter_mysql.conf文件里添加最后一行,好处是在获取主从同步的信息时不会有在命令行上使用密码下的提示,
  UserParameter=mysql.replication,HOME=/etc/zabbix/etc /usr/local/mysql/bin/mysql -e 'show slave status\G' |grep -E "Slave_IO_Running|Slave_SQL_Running"|awk '{print $2}'|grep -c Yes
DSC0002.jpg

  重启agent客户端
DSC0003.jpg

  在zabbix_server端检查是否可以获取主从同步信息,
DSC0004.jpg

  用脚本方式都会有这样的提示,
DSC0005.jpg

  会导致在zabbix会报错
DSC0006.jpg

  4,在zabbix server上创建template模版
  新建模版Template App MySQL Replication
  Configuration|Templates|create templates,只要填写下Template name,选择下group即可
DSC0007.jpg

  在新建Template App MySQL Replication上创建Applications
DSC0008.jpg

  创建items,key那边手动填写mysql.replication
DSC0009.jpg

  创建triggers触发器,
DSC00010.jpg

  点Add,下图为该triggers触发器的Expression表达式。当获取的key值不为2时报警
DSC00011.jpg

  添加Graphs
DSC00012.jpg

  到Monitoring--Graphs查看监控图表
DSC00013.jpg



运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-611703-1-1.html 上篇帖子: mysql-5.6.x和mysql-5.7.x二进制安装 下篇帖子: mysql高可用集群搭建
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表