Bootstrap

Zabbix动作与媒介

目录

前言

1. 动作的基本概念

2. 动作的常见用途

一. 环境准备

二. 创建动作

三. 添加媒介


前言

       在 Zabbix 中,动作(Actions)用于在特定事件发生时执行一系列预定义的操作,比如发送通知、执行脚本等。动作通常与触发器(Triggers)结合使用,当触发器条件满足时触发动作。以下是 Zabbix 中动作的总结

1. 动作的基本概念

动作由以下几个部分组成:

  • 条件(Conditions): 用于定义触发动作的条件,例如主机组、触发器严重性等。
  • 操作(Operations): 定义在条件满足时执行的操作,例如发送通知、执行远程命令等。
  • 恢复操作(Recovery operations): 定义在问题解决后执行的操作。
  • 通知(Notifications): 发送给用户或用户组的消息。

2. 动作的常见用途

  • 通知: 发送电子邮件、短信、即时消息等。
  • 自动化操作: 执行远程命令或脚本,例如重启服务、清理日志等。
  • 集成: 与其他系统进行集成,例如调用 API、触发 Webhook 等。

通过配置动作,Zabbix 可以在监控到问题时自动采取相应的措施,从而提高监控系统的响应效率和自动化程度。

一. 环境准备

本实验使用两台虚拟机

主机名IPC/S系统版本软件版本
zabbix192.168.226.28Server端Rocky_linux9.4zabbix6.4
web1192.168.226.29Agent端Rocky_linux9.4zabbix-agent6.4

本博文基于之前做好的环境下载与配置,然后再进行的本篇的动作与媒介实验,安装步骤参考下述博文。

Zabbix6.4安装教程-CSDN博客

Agent下载安装步骤-CSDN博客

二. 创建动作

首先我们添加一个触发器用来实验

在Agent端下载一个nginx并启动

yum install -y nginx
systemctl enable --now nginx

l现在来到监控页面添加一个监控80端口的触发器

键值代码: 

net.tcp.listen[80]

然后创建一个触发器

 

现在去创建脚本,在6.4版本中需要先创建脚本再添加动作

在 Zabbix 中,当触发器触发并执行动作时,执行脚本或命令的用户通常是运行 Zabbix Server 或 Zabbix Agent 的系统服务用户。默认情况下,这个用户是 zabbix

那么我们需要到Agent端去授权给zabbix

[root@web1 ~]# visudo
zabbix ALL=(ALL)      NOPASSWD: ALL

开启Agent的配置文件中的远程命令

[root@web1 ~]# vim /etc/zabbix/zabbix_agentd.conf
EnableRemoteCommands=1
LogRemoteCommands=1


#EnableRemoteCommands:此参数设置是否允许 Zabbix Server 或其他授权的远程主机发送命令到 Zabbix Agent 执行。
#LogRemoteCommands:此参数设置是否记录远程命令的执行情况到 Agent 的日志文件中。

 

重启Agent服务

[root@web1 ~]# systemctl restart zabbix-agent

 现在去停止nginx服务

[root@web1 ~]# systemctl stop nginx
[root@web1 ~]# ss -tnlp
State                Recv-Q                Send-Q                               Local Address:Port                                Peer Address:Port               Process                                                                                                                                                           
LISTEN               0                     4096                                       0.0.0.0:10050                                    0.0.0.0:*                   users:(("zabbix_agentd",pid=2178,fd=4),("zabbix_agentd",pid=2177,fd=4),("zabbix_agentd",pid=2176,fd=4),("zabbix_agentd",pid=2175,fd=4),("zabbix_agentd",pid=2174,fd=4),("zabbix_agentd",pid=2173,fd=4))
LISTEN               0                     128                                        0.0.0.0:22                                       0.0.0.0:*                   users:(("sshd",pid=825,fd=3))                                                                                                                                    
LISTEN               0                     4096                                          [::]:10050                                       [::]:*                   users:(("zabbix_agentd",pid=2178,fd=5),("zabbix_agentd",pid=2177,fd=5),("zabbix_agentd",pid=2176,fd=5),("zabbix_agentd",pid=2175,fd=5),("zabbix_agentd",pid=2174,fd=5),("zabbix_agentd",pid=2173,fd=5))
LISTEN               0                     128                                           [::]:22                                          [::]:*                   users:(("sshd",pid=825,fd=4))  

回到监控页面观察,会有略微延迟,稍微等待会。

 

[root@web1 ~]# ss -tnlp
State                Recv-Q                Send-Q                               Local Address:Port                                Peer Address:Port               Process                                                                                                                                                           
LISTEN               0                     4096                                       0.0.0.0:10050                                    0.0.0.0:*                   users:(("zabbix_agentd",pid=3878,fd=4),("zabbix_agentd",pid=3877,fd=4),("zabbix_agentd",pid=3876,fd=4),("zabbix_agentd",pid=3875,fd=4),("zabbix_agentd",pid=3874,fd=4),("zabbix_agentd",pid=3873,fd=4))
LISTEN               0                     511                                        0.0.0.0:80                                       0.0.0.0:*                   users:(("nginx",pid=3923,fd=6),("nginx",pid=3922,fd=6),("nginx",pid=3921,fd=6))                                                                                  
LISTEN               0                     128                                        0.0.0.0:22                                       0.0.0.0:*                   users:(("sshd",pid=825,fd=3))                                                                                                                                    
LISTEN               0                     4096                                          [::]:10050                                       [::]:*                   users:(("zabbix_agentd",pid=3878,fd=5),("zabbix_agentd",pid=3877,fd=5),("zabbix_agentd",pid=3876,fd=5),("zabbix_agentd",pid=3875,fd=5),("zabbix_agentd",pid=3874,fd=5),("zabbix_agentd",pid=3873,fd=5))
LISTEN               0                     511                                           [::]:80                                          [::]:*                   users:(("nginx",pid=3923,fd=7),("nginx",pid=3922,fd=7),("nginx",pid=3921,fd=7))                                                                                  
LISTEN               0                     128                                           [::]:22                                          [::]:*                   users:(("sshd",pid=825,fd=4)) 

三. 添加媒介

 

现在就开启邮箱配置成功了

再给用户配置一个邮箱

现在去动作中添加邮箱报警动作

 

  

现在去停止nginx服务测试邮件是否发送。 

[root@web1 ~]# systemctl stop nginx
[root@web1 ~]# ss -tnlp
State                Recv-Q                Send-Q                               Local Address:Port                                Peer Address:Port               Process                                                                                                                                                           
LISTEN               0                     4096                                       0.0.0.0:10050                                    0.0.0.0:*                   users:(("zabbix_agentd",pid=3878,fd=4),("zabbix_agentd",pid=3877,fd=4),("zabbix_agentd",pid=3876,fd=4),("zabbix_agentd",pid=3875,fd=4),("zabbix_agentd",pid=3874,fd=4),("zabbix_agentd",pid=3873,fd=4))
LISTEN               0                     128                                        0.0.0.0:22                                       0.0.0.0:*                   users:(("sshd",pid=825,fd=3))                                                                                                                                    
LISTEN               0                     4096                                          [::]:10050                                       [::]:*                   users:(("zabbix_agentd",pid=3878,fd=5),("zabbix_agentd",pid=3877,fd=5),("zabbix_agentd",pid=3876,fd=5),("zabbix_agentd",pid=3875,fd=5),("zabbix_agentd",pid=3874,fd=5),("zabbix_agentd",pid=3873,fd=5))
LISTEN               0                     128                                           [::]:22                                          [::]:*                   users:(("sshd",pid=825,fd=4))  

 

 到此就完成了邮件报警。

;