zabbix创建触发器、action,发送报警邮件

本文详细介绍了如何在Zabbix中创建触发器与行动,包括触发器的设置、报警条件的定义及报警邮件的发送流程。此外,还讲解了如何配置远程脚本执行与服务状态监测。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、创建触发器

  • 点击>>Configuration>>Hosts>>Triggers 然后进去后我们可以选择点击右上角的Create trigger按钮创建,也可以选择系统的自带的item.。如下图所示。
  • 点击创建触发器按钮,我们按照以下方式进行创建,其中表达式是不需要手动去写,是可以自动生成的,点击add按钮:
  • 点击后的页面如下:
  • 触发器创建之后我们可以看到列表中有一个我们刚刚创建的触发器,当不需要的时候我们可以点击禁用按钮。
  • 创建好触发器后,我们可以去graph中去看一下这个走势图,看看有什么变化:下图中蓝色框起来的是一条横线,大家发现没有,这个横线的值是9,就是我们刚刚创建的触发器中的N的值,当超过该值的时候就会发生报警。这里是为了方便我们很好的做个对比。

2、创建action报警

  • 点击>>Configuration>>Actions>>Create action创建一个action.下图列表中的是已经创建好的action.
  • 第一个tab页面中的内容:
  • 第二个tab页面中的内容:
    其中箭头所指的内容是当满足下面ABC三个条件的时候才会发送报警信息。
  • 第三个tab页面中的内容:
    我们可以点击new添加一个具体的操作信息,之前已经创建好了,所以一我们直接点击edit进去就可以看到。
  • 当我们点击edit进去查看一下具体操作的信息:
    这里写图片描述

3、发送报警信息

  • 一切准备就绪,当触发器中设定的item的最近一次取值超过9这个阈值的时候就会发送报警邮件。
    下面图中我们可以看到11点50的时候超过了9这个阈值,那么我们就会收到右下角看到的报警邮件。

总结:当定义action的时候我们可以定义多个action,当满足条件的时候,可以往多个满足条件的action中发送报警信息。

4、发送报警之前执行启动脚本

  • action的执行操作:
  • 要想执行远程脚本这里要修改一下agent的配置,并重启。

  • 这里我们停一下服务,这时候可能就会先执行脚本,如果服务起了就不会发送报警信息:

  • 我们可以看一下Reports>>Action log

    这里我们看到只执行了远程脚本,而并没有发送报警信息,说明在1-2步骤的时候就把服务给起来了。上面我们也可以通过jps看到zookeeper的服务也是起来了。

### Zabbix中配置邮件告警通知的步骤 在Zabbix中设置邮件报警通知需要完成以下几个关键步骤: 1. **准备邮件发送脚本** Zabbix本身不直接支持邮件发送功能,需要通过外部脚本来实现。通常使用Shell脚本(如`mail.sh`)或Python脚本进行邮件发送。脚本应具备可执行权限,并且由Zabbix服务用户拥有。例如: ```bash #chmod +x /usr/local/zabbix/share/zabbix/alertscripts/mail.sh #chown zabbix:zabbix /usr/local/zabbix/share/zabbix/alertscripts/mail.sh ``` 该脚本的作用是调用系统命令(如`sendmail`、`ssmtp`或`mailx`)来发送邮件[^1]。 2. **确定Zabbix脚本路径并配置** 若使用源码安装Zabbix,则默认脚本路径为Zabbix的`alertscripts`目录。若是RPM包安装方式,则默认路径通常位于`/usr/lib/zabbix/alertscripts`。确保脚本文件放置在Zabbix能够识别的目录中,并检查`zabbix_server.conf`中的`AlertScriptsPath`参数是否指向正确的脚本存放位置[^2]。 3. **在Zabbix前端添加媒体类型** 登录Zabbix Web界面,进入 **Configuration > Actions > Event source (Triggers)**,然后选择 **Media types** 并点击 **Create media type**。 - 类型选择 **Script**。 - 名称可以设为 **Email** 或类似标识。 - 脚本名称需与之前准备的脚本名称一致(如 `mail.sh`)。 - 参数部分填写收件人邮箱地址(例如:`{ALERT.SUBJECT}` 和 `{ALERT.MESSAGE}`),这些是Zabbix预定义的宏变量,用于传递报警标题和内容[^2]。 4. **配置用户接收邮件的方式** 在Zabbix中,每个用户的接收方式需要单独配置。进入 **Administration > Users**,选择目标用户后,在 **Media** 标签下点击 **Add**。 - 媒体类型选择刚刚创建邮件类型。 - 收件人地址填写实际的电子邮件地址。 - 可以设置发送时间范围(例如全天候启用)和激活状态[^2]。 5. **创建触发器动作并设置通知规则** 进入 **Configuration > Actions**,选择 **Event source (Triggers)** 并点击 **Create action**。 - 在 **Action** 标签下,填写动作名称和条件(例如触发器严重性级别)。 - 在 **Operations** 部分,选择操作类型为 **Send message**,并指定目标用户组或特定用户。 - 确保选中已配置的媒体类型(如Email),以便正确发送邮件通知。 6. **测试邮件报警机制** 完成上述配置后,可以通过手动触发一个测试事件验证邮件是否能正常发送。例如,可以在监控项中设置一个临时的错误值,模拟触发器触发并生成报警信息。如果一切正常,相关收件人将收到包含详细信息的邮件通知。 --- ### 示例:邮件发送脚本 `mail.sh` 以下是一个简单的Shell脚本示例,用于通过`sendmail`发送邮件: ```bash #!/bin/bash # mail.sh # 接收三个参数:收件人、主题、内容 to="$1" subject="$2" body="$3" echo "$body" | mail -s "$subject" "$to" ``` 请根据具体环境调整脚本逻辑,例如替换为`ssmtp`或其他邮件工具。 --- ### 注意事项 - 确保Zabbix服务器上已安装并正确配置了邮件传输代理(如`sendmail`、`postfix`等)。 - 检查防火墙设置,确保邮件端口(通常是25或587)未被阻断。 - 如果使用第三方SMTP服务(如Gmail),需额外配置认证信息及加密协议。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值