zabbix设置邮件报警

一、配置本机postfix服务

  之前邮件设置一直使用的163的smtp服务,但是163的smtp服务经常性的报5xx的错误,所以自己配置smtp服务。

  1. 下载安装postfix,mailx
yum install postfix mailx dos2unix -y
  1. 配置postfix和mail.rc,改动的东西不多
# vi /etc/postfix/main.cf
inet_protocols = ipv4
mynetworks = 127.0.0.0/8

# vi /etc/mail.rc
set from="[email protected]" smtp=127.0.0.1
  1. 收件箱用的是QQ邮箱,先设置邮件地址白名单(一定要和mail.rc中的"set from"的地址一样)


    zabbix设置邮件报警_第1张图片
    QQ邮箱白名单设置

    4.发送一封测试邮件

echo "你好,收件人!" |mail -s "这是一封zabbix测试邮件"  [email protected]
zabbix设置邮件报警_第2张图片
收件箱已经收到测试邮件

二、zabbix配置

  1. 配置zabbix报警媒介


    zabbix设置邮件报警_第3张图片
  2. sendmail.sh脚本内容
$ cat /usr/lib/zabbix/alertscripts/sendmail.sh 
#########################################################################
# File Name: sendmail.sh
# Author: lcs
# Created Time: 2017-11-09 09:13:47
#########################################################################
##!/bin/bah

export LANG=en_US.UTF-8
to=$1
subject=$2
echo "$3" > /tmp/zabbix_mailbody #存入临时文件是为了解决邮件正文中带有中文时没有邮件正文,正文在附件中的问题
 
dos2unix /tmp/zabbix_mailbody_$$
mail -s "$subject" "$to" < /tmp/zabbix_mailbody
rm -f /tmp/zabbix_mailbody
  1. 配置zabbix报警动作(zabbix版本为3.4.2,不同版本配置界面不一样)


    zabbix设置邮件报警_第4张图片

    zabbix设置邮件报警_第5张图片
    故障出现时进行的操作
故障{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}
zabbix设置邮件报警_第6张图片
故障恢复时进行的操作
恢复{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}

三、测试zabbix邮件报警(关掉一台被监控的主机)

zabbix设置邮件报警_第7张图片
故障报警邮件

zabbix设置邮件报警_第8张图片
故障恢复邮件

你可能感兴趣的:(zabbix设置邮件报警)