1. 自动重启服务:
在配置动作中,我们可以设置相应的报警媒介给工作人员报警。但其实不用每次出故障都立即报警,也可以尝试先让zabbix为我们重启相应的服务,如果多次重启都失败了,则继续报警,让负责人来处理相关问题。
我们只需要将动作中的第一步设置添加远程命令即可,第二步、第三步设置为媒介告警。如果你对如何添加动作不是很清楚,可以先看下我前面写的邮件告警部分,相对而言会比较详细。
- 点击动作-->操作-->选择远程命令:
1.1 测试远程命令:
代码语言:txt复制### 122服务器关闭redis服务:
[root@www.lutixia.cn ~]# systemctl stop redis
远程命令已经执行,检查服务是否自动启动:
代码语言:txt复制[root@www.lutixia.cn ~]# systemctl stop redis
[root@www.lutixia.cn ~]# ps -ef | grep redis
redis 1420 1 0 09:55 ? 00:00:00 /usr/bin/redis-server 127.0.0.1:6379
root 1436 938 0 09:56 pts/0 00:00:00 grep --color=auto redis
### 可以看到redis服务已经启动!
1.2 测试启动重启失败,邮件告警:
代码语言:txt复制## 可以在redis启动后,先修改redis的配置文件参数,故意写错,然后关闭redis:
[root@www.lutixia.cn ~]# systemctl stop redis
## 可以看到redis进程已经没有了
[root@www.lutixia.cn ~]# ps -ef | grep redis
root 1750 938 0 10:07 pts/0 00:00:00 grep --color=auto redis
可以看到第一步重启失败,等待60s后执行了邮件告警,这里的告警后期可以换成微信告警,钉钉告警,甚至可以一起告警,但是太多同时设置太多告警不太好,一般选择常用的通信方式告警即可。
手工解决问题后,问题关闭,恢复告警:
以上就是zabbix5配置自动重启服务的详细教程,后续会发布更多硬核技术文章。
远程命令除了ssh连接,还可以通过在客户端开启远程命令,通过在客户端执行脚本启动相应的服务。