依然饭跑跑 发表于 2019-1-24 08:55:29

zabbix3.0.4邮件报警配置

  一、安装邮件发送工具mailx
  这里我选择的是mailx,所以得关闭其他的邮件发送工具
  service sendmailstop #关闭
  chkconfig sendmailoff #禁止开机启动
  service postfixstop
  chkconfig postfixoff
  yum install mailx
  二、配置Zabbix服务端外部邮箱
  vi /etc/mail.rc
  setfrom=xxx@163.com smtp=smtp.163.com
  set smtp-auth-user=xxx@163.comsmtp-auth-password=123456
  set smtp-auth=login
  :wq! #保存退出
  echo"zabbix test mail" |mail -s "zabbix" yyy@163.com
  #测试发送邮件,标题zabbix,邮件内容:zabbixtest mail,发送到的邮箱:yyy@163.com
  #这时候,邮箱yyy@163.com会收到来自xxx@163.com的测试邮件
  三、配置Zabbix服务端邮件报警
  1、进入zabbix管理页面
  点击管理->报警媒介类型 点击最右边的创建媒体类型
http://img.blog.csdn.net/20161109155346613
  名称:Sendmail
  类型:脚本
  脚本名称:sendmail.sh
  添加以下3个参数,分别对应sendmail.sh脚本需要的3个参数:收件人地址、主题、详细内容
  {ALERT.SENDTO}
  {ALERT.SUBJECT}
  {ALERT.MESSAGE}
http://img.blog.csdn.net/20161109155424599
  解释:很多人安装zabbix3.0之后,写的脚本一直发信不成功,手动执行时可以的。那是因为zabbix3.0之后,可以自定义参数了。所以不写参数,它是不会传参数的。在2.x版本不存在这个问题,默认会传3个参数。
  2、点击Admin用户
http://img.blog.csdn.net/20161109155515756
  点击添加
http://img.blog.csdn.net/20161109155551570
  选择Sendmail脚本,输入收件人的邮箱地址
http://img.blog.csdn.net/20161109155626055
  3、点击用户群组,点击zabbixadministrator后面的调用模式,点击一下,就启用了
  点权限->添加,选择所有
http://img.blog.csdn.net/20161109155717494
  4、点击配置->动作 点击创建动作
  名称: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.DATE}{EVENT.TIME}
  告警等级:{TRIGGER.SEVERITY}
  告警信息: {TRIGGER.NAME}
  告警项目:{TRIGGER.KEY1}
  问题详情:{ITEM.NAME}:{ITEM.VALUE}
  当前状态:{TRIGGER.STATUS}:{ITEM.VALUE1}
  事件ID:{EVENT.ID}
  已启用:打钩
http://img.blog.csdn.net/20161109160422706
  点击操作
  修改持续时间为60秒
  新的
  操作类型:送出信息
  送到用户:添加
  默认信息:打钩
  选择用户:Admin
  选择
  仅送到:Sendmail
  存档
  解释:默认的步骤是1-1,也即是从1开始到1结束。一旦故障发生,就是执行sendEmail.sh脚本发生报警邮件给Admin用户和zabbix administrator组。
  假如故障持续了1个小时,它也只发送一次。如果改成1-0,0是表示不限制.无限发送
  间隔就是默认持续时间60秒。那么一个小时,就会发送60封邮件。
  5、添加Zabbix服务端邮件发送脚本
  cd/usr/local/zabbix/share/zabbix/alertscripts #进入脚本存放目录
  vi sendmail.sh #编辑,添加以下代码
  #!/bin/sh
  #export.UTF-8
  echo"$3" | sed s/'\r'//g | mail -s "$2" $1
  :wq! #保存退出
  chownzabbix.zabbix /usr/local/zabbix/share/zabbix/alertscripts/sendmail.sh
  #设置脚本所有者为zabbix用户
  chmod +x/usr/local/zabbix/share/zabbix/alertscripts/sendmail.sh
  #设置脚本执行权限
  四、测试Zabbix报警
  关闭Zabbix客户端服务
  servicezabbix_agentd stop
  查看xxx@163.com邮箱,会收到报警邮件
  再开启Zabbix客户端服务
  servicezabbix_agentd start
  查看xxx@163.com邮箱,会收到恢复邮件
  使用外部邮箱账号发送报警邮件设置完成。
  至此,Zabbix邮件报警设置完成。

页: [1]
查看完整版本: zabbix3.0.4邮件报警配置