邮件报警需要满足的条件:
1,脚本,你得在服务器上手动测试发送邮件效果并成功到达你得邮箱
2,报警媒介类型(管理-报警媒介类型-创建媒体类型)
3,用户(管理-用户-Admin-报警媒介)
4,动作(配置-动作-创建动作 名称-触发器示警度>=信息 操作-新的-用户-添加Admin)
由于本文图片支持不好,参考另外两篇文章
https://www.cnblogs.com/sunmmi/articles/7717830.html
http://blog.51cto.com/11555417/2047687
脚本操作如下
在/usr/lib/zabbix/alertscripts目录下创建发邮件脚本sendmail.sh
这个路径是 /etc/zabbix/zabbix_server.conf在这个配置文件中定义的
cd /usr/lib/zabbix/alertscripts
vi sendmail.sh
#!/bin/sh #export.UTF-8 echo "$3" | sed s/'\r'//g | mailx -s "$2" $1
yum install mailx -y
vi /etc/mail.rc
set from=funday000@163.com set smtp=smtp.163.com:25 set smtp-auth-user=funday000@163.com #认证用户 set smtp-auth-password=xxxxxx #认证密码 set smtp-auth=login
hostnamectl set-hostname zabbix.sa.huanqiu.com
chmod +x sendmail.sh
报警媒介设置
重点是添加三个参数
{ALERT.SENDTO}收件人地址
{ALERT.SUBJECT}主题
{ALERT.MESSAGE}详细内容
第一步
第二步
第三步,添加成功
动作
4、点击 配置->动作 >创建动作
这个动作需要修改的有三个地方(动作,操作,恢复操作)
动作定义了什么情况下
操作和恢复操作定义做什么
动作:名称随便填,动作这里选择触发器示警度大于等于信息,也就是说当警报级别大于等于信息级别的时候就触发了报警这个动作
操作下的默认标题代表发给你的邮件的标题,消息内容里面的变量就是你的主机信息
操作:
默认标题:故障{TRIGGER.STATUS},服务器:{HOSTNAME1}发生:{TRIGGER.NAME}故障!
消息内容:
告警主机:{HOSTNAME1}
告警时间:{EVENT.DATE}-{EVENT.TIME}
告警 IP:{HOST.IP}
告警等级:{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}
告警 IP:{HOST.IP}
告警等级:{TRIGGER.SEVERITY}
告警信息: {TRIGGER.NAME}
告警项目:{TRIGGER.KEY1}
问题详情:{ITEM.NAME}:{ITEM.VALUE}
当前状态:{TRIGGER.STATUS}:{ITEM.VALUE1}
事件ID:{EVENT.ID}
当这些都添加好了,那么如果zabbix服务器检测到的报警大于等于信息的时候,就会触发动作,发邮件到邮箱了。
发表评论