zabbix可不仅仅只有监控功能,还支持远程执行命令,实现简单自动化运维

以下以监控mysql的3306端口为例,如该端口异常关闭,自动执行命令重启mysql

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。

创建一个监听3306的监控项,键值按照这样写也可以。不过可能换成net.tcp.listen[3306]会更合适一些

zabbix监控到异常后自动执行对应命令 随笔 第1张

 

 

zabbix监控到异常后自动执行对应命令 随笔 第2张

表达式那里,点击右边的按钮,在监控项里选择刚才新增的监控项就可以了,监控到未监听返回0,正常监听返回1.我们设置返回0时,触发该触发器实现告警和进行下一步操作

 zabbix监控到异常后自动执行对应命令 随笔 第3张

 接下来新增一个动作。新的触发条件那里选择触发器=刚才新创建的触发器,注意需要点击下方的添加才能生效

zabbix监控到异常后自动执行对应命令 随笔 第4张

接着点击操作。我这里设置了两个动作,一个是发送邮件,另一个是执行远程命令(主要讲这个)。设置远程命令时,在操作类型那里选择远程命令

zabbix监控到异常后自动执行对应命令 随笔 第5张

 输入对应的ssh,账号,密码,执行的命令

zabbix监控到异常后自动执行对应命令 随笔 第6张

启动mysql,然后再关闭数据库,测试能否自动起来。可以在以下位置,查看是否正常执行重启动作

zabbix监控到异常后自动执行对应命令 随笔 第7张

 

这个图是我根据监控项创建的,可以看到,我试着关闭了几次mysql,但是它都会自动有起来了

zabbix监控到异常后自动执行对应命令 随笔 第8张

 

扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄