Zabbix监控Mysql优化

Zabbix监控Mysql优化
一、实现思路
由于之前监控mysql的模板分多套,主从和不同的端口都要有不同的模板,并且监控是通过zabbix agentd 方式获取数据。每调用一个监控项的key就要查询一次数据库,增加了数据库的压力,改进后的mysql监控,通过zabbix trapper方式获取数据,agnet端主动将监控mysql所需的数据发给server,不需server主动获取,减轻了server端的压力。并且sender方式可以发送一个文件给server端,通过脚本执行命令将所需查询的数据库的数据的命令简化合并,只需简单数条,就可获得所需监控数据并传给指定文件通过sender方式发送。最后通过定义一个监控项key定期执行一次脚本(脚本内容为收集数据,发送数据)。实现后监控mysql不同主从库只需一套模板,并通过前端页面传入参数,端口动态。
二、具体实现步骤
1. agent 端配置
03145649_Ae68.png
上图为agent配置文件中关于mysql的自定义参数,将其替换为如图1内容。
图1
03145649_cEhk.png
图1中定义脚本内容为:
图2
03145649_7h9X.png
以上agent端配置完成。
2.server端页面配置
为了优化方案操作的简便,在将原来使用的模板导出后直接在模板上修改。
(1)原来的监控模板监控项如图3:
图3
03145649_C60u.png
(2)改进后的监控模板监控项(其中mysqltrapper为调用采集数据脚本的key,agent方式,其它为trapper方式)如图4:
图4
03145650_aGam.png
图5(其他端口的情况)
03145650_NBQO.png
(3)触发条件:
图6
03145650_YFRl.png
三、回退方案
如修改后并不能获取到数据,或其他原因导致监控不成功。做如下步骤恢复到为修改前的状态。
(1)图1内容替换回原来内容。
(2)图4修改回图3。
四、存在的问题
(1)修改过程中是否会引起mysql报警,在自己测试过程中,因为修改过程中server将收不到值,不会引起触发条件报警。
五、动态发现mysql端口测试
通过discovery功能,动态发现监听mysql的端口,动态传参。
发现端口脚本:
图7
03145650_Y8IJ.png
执行结果:
图8
03145650_54DS.png
以下两图为配置discovery rule和监控项key:
图9
03145650_jQVO.png
图10
03145651_C6AT.png

本文由旺旺仔授权(果壳网)发表,文章著作权为原作者所有。


转载于:https://my.oschina.net/ydsakyclguozi/blog/382082

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值