环境:
| hostname | IP |
|---|---|
| zabbix-server | 172.20.32.101 |
| zabbix-agent | 172.20.32.105 |
一. 故障自治愈介绍
故障自治愈功能实际上是多种功能的集合,是 zabbix 内的多个模块之间交互提供的功能,当 zabbix 监控到指定的监控项异常的时候,通过指定的操作使故障自动恢复,通常是重启服务等一些简单的操作,也可以调用脚本执行比较复杂的操作。
具体的操作就是:
设置监控项和触发器 --> 新建动作 --> 在触发条件里面添加操作 --> 在远程 主机通过 zabbix 客户端执行命令或脚本
大概的步骤如下:
1.开启zabbix sudu权限
2.配置允许允许特殊字符
3.配置远程命令
4.验证和测试
二. 故障自治愈前提
zabbix agent 允许远程执行命令
root@Mysql-slave:~# grep "^[a-Z]" /etc/zabbix/zabbix_agentd.conf
PidFile=/var/run/zabbix/zabbix_agentd.pid
LogFile=/var/log/zabbix/zabbix_agentd.log
LogFileSize=0
EnableRemoteCommands=1
LogRemoteCommands=1
Server=172.20.32.102,172.20.32.101
ListenPort=10050
ListenIP=0.0.0.0
StartAgents=5
ServerActive=172.20.32.102
Hostname=172.20.32.105
AllowRoot=1
User=root
Include=/etc/zabbix/zabbix_agentd.d/*.conf
UnsafeUserParameters=1
root@Mysql-slave:~# systemctl restart zabbix-agent.service
给 zabbix 用户 sudo 权限
root@Mysql-slave:~# vim /etc/sudoers
#
# This file MUST be edited with the 'visudo' command as root.
#
# Please consider adding local content in /etc/sudoers.d/ instead of
# directly modifying this file.
#
# See the man page for details on how to write a sudoers file.
#
Defaults env_reset
Defaults mail_badpass
Defaults secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin"
# Host alias specification
# User alias specification
# Cmnd alias specification
# User privilege specification
root ALL=(ALL:ALL) ALL
zabbix ALL = NOPASSWD: ALL #增加zabbix用户sudu权限
#zabbix ALL = NOPASSWD: ALL
# Members of the admin group may gain root privileges
%admin ALL=(ALL

本文详细介绍Zabbix故障自治愈的实现过程,包括配置zabbix-agent远程执行命令、赋予zabbix用户sudo权限、自定义监控脚本及配置,以及创建动作实现服务自动重启。通过实例演示如何监控nginx服务状态并自动恢复。
最低0.47元/天 解锁文章

被折叠的 条评论
为什么被折叠?



