Administrator
Administrator
Published on 2025-04-01 / 16 Visits
0
0

Zabbix报警触发脚本动作

1. 前言

配置报警触发脚本动作可以自动解决问题,消除报警,减少人工操作。

2. 准备工作

远程命令是通过zabbix用户来执行,所以需要把zabbix用户添加到/etc/sudoers文件中。

[root@129 ~]# vim /etc/sudoers
root	ALL=(ALL) 	ALL
zabbix  ALL=NOPASSWD:ALL
--NOPASSWD禁止密码验证

Zabbix Agent修改配置文件,以允许执行远程命令。

[root@129 ~]# vim /etc/zabbix/zabbix_agentd.conf
EnableRemoteCommands=1
[root@129 ~]# systemctl restart zabbix-agent

3. Zabbix 配置

以服务器登录用户数过多为配置案例。

3.1 监控项

Zabbix 默认模板有监控此键值system.users.num ,不做配置。

Snipaste_2025-04-01_00-48-02.png

3.2 触发器

服务器登录用户数超过5个触发报警。

Snipaste_2025-04-01_00-59-46.png

3.3 脚本

Snipaste_2025-04-01_01-03-46.png

/root/delete-user.sh脚本需要在服务器上创建。

[root@129 ~]# cat delete-user.sh 
#!/bin/bash
who | grep root | awk '{print $2}' | tail -1 | xargs pkill -9 -t
[root@129 ~]# chmod 777 delete-user.sh

3.4 触发器动作

Snipaste_2025-04-01_01-07-03.png

Snipaste_2025-04-01_01-08-13.png

4. 测试

服务器登录多个终端,报警触发脚本动作,记录写入文本,多的终端被kill掉,警告恢复。

Snipaste_2025-04-01_01-10-33.pngSnipaste_2025-04-01_01-10-45.png


Comment