千家信息网

Zabbix4配置邮件告警通知

发表于:2024-11-23 作者:千家信息网编辑
千家信息网最后更新 2024年11月23日,环境:OS:centos7.4zabbix Server:zabbix_server (Zabbix) 4.0.141. mail配置确认邮件发送工具已安装yum install mailx -y配置
千家信息网最后更新 2024年11月23日Zabbix4配置邮件告警通知

环境:
OS:centos7.4
zabbix Server:zabbix_server (Zabbix) 4.0.14
1. mail配置
确认邮件发送工具已安装

yum install mailx -y

配置 /etc/mail.rc,尾部加入配置项:

# Add mail-conf by yuhuanghuiset from=stupidking123@163.comset smtp=smtp.163.comset smtp-auth-user=123456set smtp-auth-password=password1    #授权码set smtp-auth=loginset ssl-verify=ignore

mail授权,
chown -R zabbix:zabbix /etc/mail.rc
注:这里文件未授权导致邮件发送不出去,zabbix Web中动作日志显示已发送,但实际上邮箱并未收到,搞了N天。
除了需开通SMTP服务外,还需要开通授权码登录,上面配置不再是登录密码,而是授权码。这里选择163邮箱发送。

2. 编写邮件发送脚本
cd /usr/lib/zabbix/alertscripts
vim mail-send.sh

#!/bin/bashmessages=`echo $3 | tr '\r\n' '\n'`subject=`echo $2 | tr '\r\n' '\n'`echo "${messages}" | mailx -s "${subject}" $1 >> /tmp/sendmail.log 2>&1

修改权限
chown -R zabbix:zabbix mail-send.sh
chomod +x mail-send.sh
chown -R zabbix:zabbix /tmp/sendmail.log
测试发送:
su - zabbix 切换zabbix用户
sh /usr/lib/zabbix/alertscripts/mail-send.sh abc@xxx.com "zabbix test mail" "test"
查看邮箱收取到邮件,说明脚本发送成功。
3. zabbix页面配置web
管理 ----> 报警媒介类型 -----> 创建媒介类型

添加三个脚本参数:

{ALERT.SENDTO}{ALERT.SUBJECT}{ALERT.MESSAGE}

脚本名称必须跟zabbix server上配置/usr/lib/zabbix/alertscripts的脚本名称一样。
4. 创建用户
管理 ----> 用户

管理 ----> 用户 ----> 报警媒介

5. 创建动作配置
配置 ----> 动作 ----> 动作

创建邮件发送动作,配置触发条件:触发器示警度 大于等于 警告
配置 ----> 动作 ----> 操作

默认标题:

故障{TRIGGER.STATUS},服务器名:{HOSTNAME1}发生: {TRIGGER.NAME}故障!

消息内容:

告警主机:{HOSTNAME}告警主机IP地址:{HOST.IP}告警时间:{EVENT.DATE} {EVENT.TIME}告警等级:{TRIGGER.SEVERITY}告警信息: {TRIGGER.NAME}告警项目:{TRIGGER.KEY1}问题详情:{ITEM.NAME}:{ITEM.VALUE}当前状态:{TRIGGER.STATUS}:{ITEM.VALUE1}事件ID:{EVENT.ID}

配置 ----> 动作 ----> 恢复

默认标题

恢复{TRIGGER.STATUS}, 服务器名:{HOSTNAME1}: {TRIGGER.NAME}已恢复!

消息内容

告警主机:{HOSTNAME}告警主机IP地址:{HOST.IP}告警时间:{EVENT.DATE} {EVENT.TIME}告警等级:{TRIGGER.SEVERITY}告警信息: {TRIGGER.NAME}告警项目:{TRIGGER.KEY1}问题详情:{ITEM.NAME}:{ITEM.VALUE}当前状态:{TRIGGER.STATUS}:{ITEM.VALUE1}事件ID:{EVENT.ID}

确认创建的动作是启用的:

6. 测试
关闭客户端服务器的zabbix-agnet服务
systemctl stop zabbix-agent.service 关闭服务
稍等5分钟邮件中查收。

0