系统:Linux Centos 7.4 x64
服务:Zabbix 3.0.16
一.安装邮件服务:https://www.cnblogs.com/xiangsikai/p/8441195.html
二.添加zabbix邮件报警脚本
1.查看zabbix_server脚本路径
vim /usr/local/zabbix/etc/zabbix_server.conf
AlertScriptsPath=/usr/lib/zabbix/alertscripts/
2.进入该路径创建邮件发送脚本
cd /usr/lib/zabbix/alertscripts/
vim sendmail.sh
#!/bin/bash #zabbix邮件告警脚本 FILE=/tmp/mailtmp.txt echo "$3" > $FILE # 解决生成bin文件问题。 dos2unix -k $FILE /bin/mail -s "$2" $1 < $FILE
# 脚本添加权限 chmod 755 sendmail.sh chown zabbix.zabbix sendmail.sh # 创建脚本临时文件。 touch /tmp/mailtmp.txt chown zabbix.zabbix /tmp/mailtmp.txt
确认Zabiix各级父目录有 zabbix用户的所属权限。
三.WEB添加邮件报警操作
1.添加邮件发送脚本
管理–>报警媒介类型–>创建媒体类型
按图示填写完成后点击更新,就会在报警媒介类型中看到刚才创建的名为Email类型
2.添加邮件报警介质
此处以Admin用户为例 管理–>用户–>点击Admin
点击报警媒介,然后添加邮件接收人
3、创建动作
名称自己起,除了操作,其它默认,或者根据自己需求添加
添加新的操作
添加完成后动作页面列表就会展示出来
此时没有添加相应的触发器,如果系统中任何一台机器出现告警信息,就会通过邮件发送器发送到对应的邮箱中。
邮件发送消息
一、故障模板
故障{TRIGGER.STATUS},服务器:{HOSTNAME1}发生: {TRIGGER.NAME}故障!
告警主机:{HOSTNAME1}
告警时间:{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}已恢复!
告警主机:{HOSTNAME1}
告警时间:{EVENT.DATE} {EVENT.TIME}
告警等级:{TRIGGER.SEVERITY}
告警信息: {TRIGGER.NAME}
告警项目:{TRIGGER.KEY1}
问题详情:{ITEM.NAME}:{ITEM.VALUE}
当前状态:{TRIGGER.STATUS}:{ITEM.VALUE1}
事件ID:{EVENT.ID}