作为一个运维人员来说,明天基本上就是监控,又报警的短信或者邮件的时候, 处理这些报警,让服务恢复正常,但是我们真正想做的,并不是人为的去解决这些可以自动解决的问题,我们希望的是当自动修复出现问题的时候,我们才需要接入,这才是我们的目标
以apache的监控为例:
常规状态: 报警(apache not running)->短信发送到相关人员手里->相关人员登陆系统,启动apache->结束
理想状态: 报警(apache not running)->尝试自动修复(systemcal start httpd)->检查apache状态->结束(只有在自动修复失败的情况下才需要人工介入)
那么我们如何使用zabbix来做自动修复呢?
首先,我们此类的检查一般都是通过自定义的脚本检查状态然后发送给zabbix,之前写过一个,参考这个
只要我们是自定义的脚本,那就好办了,我们只需要在某个服务状态检查失败的时候
执行服务的启动或者重启命令就好了
而zabbix也提供action这个模块来远程执行一些命令
例如:我们可以定义个“重启的”action
这个action启动有一些必要的条件:
* 周末
* 服务器没有在maintain中
* alert级别有High
然后执行远程的重启命令就可以了
Latest posts by Zhiming Zhang (see all)
- aws eks node 自动化扩展工具 Karpenter - 8月 10, 2022
- ReplicationController and ReplicaSet in Kubernetes - 12月 20, 2021
- public key fingerprint - 5月 27, 2021
广州网站建设 2018/07/10 15:57
确实