zabbix 配置邮件报警

 每日运维   2019-01-02 22:00   3188 人阅读  0 条评论

zabbix邮件报警默认是有两种方式:1.通过服务器sendmail 等函数发送 2.调用外部SMTP 邮局服务器发送

这里我设置的第二种方法,通过SMTP 方式发送邮件报警:

一.关闭服务器上sendmail 和postfix 等邮件服务:

service sendmail stopchkconfig sendmail offservice postfix stopchkconfig postfix off

二.安装mailx 服务 通过mailx 配置好外部SMTP服务器相关信息发送邮件(这里是配置发信的地址):

yum -y install mailxvim /etc/mail.rc   增加以下内容:set bsdcompatset from=qxy@susecui.cn smtp=smtp.susecui.cn   #这里是邮局服务器和SMTP 服务器信息,我是使用阿里云企业邮,其他邮箱自行修改一下set smtp-auth-user=qxy@susecui.cn smtp-auth-password=yourpassword  #smtp-auth-user 自然是指邮局用户,需要写完整地址,然后是密码set smtp-auth=login

:wq 保存退出
发送邮件测试一下:标题zabbix,邮件内容:zabbix test mail,发送到的邮箱:test@susecui.cn
echo “zabbix test mail” |mail -s “zabbix” test@susecui.cn

三.创建示警媒介:

1. 进入 【管理】-【示警媒介类型】-【创建媒体类型】
  注意我们选择使用脚本方式,名称可自定义,脚本名称设定需要和以后创建的脚本相同,这里还需要添加参数,否则无法接受到系统传递的信息进行发送
{ALERT.SENDTO}
{ALERT.SUBJECT}
{ALERT.MESSAGE}
zabbix 配置邮件报警  第1张

zabbix 配置邮件报警  第2张

2.创建用户接收邮箱:

  【管理】-【用户】-选择对应的用户默认Admin -切换到【示警媒介】选项卡-类型处选择为刚才我们创建的示警媒介名称,收件人填写为需要接收邮件的地址

zabbix 配置邮件报警  第3张

zabbix 配置邮件报警  第4张

3.创建触发动作:

【组态】-【动作】-【创建动作】

zabbix 配置邮件报警  第5张

名称:Action-Email
默认接收人:故障{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.RECOVERY.DATE} {EVENT.RECOVERY.TIME}
#这里注意了,很多教程都是复制故障通知消息,这里时间需要设置为EVENT.RECOVERY.DATE 才会发送正确的故障恢复时间,否则会发送故障发生时的时间。
告警等级:{TRIGGER.SEVERITY}
告警信息: {TRIGGER.NAME}
告警项目:{TRIGGER.KEY1}
问题详情:{ITEM.NAME}:{ITEM.VALUE}
当前状态:{TRIGGER.STATUS}:{ITEM.VALUE1}
事件ID:{EVENT.ID}

注意:设置后不要点击【添加】,这里点击更新是无法保存的,切换到【操作】选项卡

添加用户,按照下图设置勾选即可。

zabbix 配置邮件报警  第6张

四.创建邮件发送脚本:

1.先查看一下/usr/local/zabbix/etc 中的AlertScriptsPath 是否已经指定了,这里是指定zabbix程序调用脚本的目录,设置为:
AlertScriptsPath=/usr/local/zabbix/share/zabbix/alertscripts
2.在该目录/usr/local/zabbix/share/zabbix/alertscripts 下创建脚本文件

vim sendmail.sh#!/bin/bashecho "$3" | mail -s "$2" $1    :wq 保存退出设置权限以及所属用户:chown zabbix.zabbix /usr/local/zabbix/share/zabbix/alertscripts/sendmail.shchmod +x /usr/local/zabbix/share/zabbix/alertscripts/sendmail.sh
#$3 代表邮件内容,也就是对应参数{ALERT.MESSAGE}#$2 代表邮件主题,也就是对应参数{ALERT.SUBJECT}#$1 代表收件人,也就是对应参数{ALERT.SENDTO}

  好了,可以模拟故障测试一下,关闭监控中的远程服务器web应用,等待系统检测,可以通过【监控中】-【事件】查看到报警的详细信息,同时查看一下邮箱是否收到了邮件。

zabbix 配置邮件报警  第7张


本文地址:https://linux365.cn/85.html
版权声明:本文为原创文章,版权归 每日运维 所有,欢迎分享本文,转载请保留出处!

 发表评论


表情

还没有留言,还不快点抢沙发?