邮件告警

  • 邮件警告
  • 使用外部邮箱账号发送报警邮件设置

邮件警告

邮件报警有两种情况:

1、Zabbix服务端只是单纯的发送报警邮件到指定邮箱,发送报警邮件的这个邮箱账号是Zabbix服务端的本地邮箱账号,只能发送,不能接收外部邮件。

2、使用一个可以在互联网上正常收发邮件的邮箱账号,通过在Zabbix服务端中设置,使其能够发送报警邮件到指定邮箱。

使用外部邮箱账号发送报警邮件设置

1.停止postfix和sendmail服务并设置开机不自启

//centos7中默认只有postfix
service sendmail stop #关闭
chkconfig sendmail off #禁止开机启动
//关闭并且设置开机禁止启动
[root@lw ~]# systemctl stop postfix  #关闭postfix
[root@lw ~]# systemctl disable postfix  #禁止开机自启

备注:
如果在sendmail或者postfix启动的同时使用外部邮箱发送报警邮件,首先会读取外部邮箱。

2.安装邮件发送工具mailx

[root@lw ~]# yum -y install mailx
已加载插件:product-id, search-disabled-repos, subscription-manager
This system is not registered with an entitlement server. You can use subscription-manager to register.
file:///mnt/repodata/repomd.xml: [Errno 14] curl#37 - "Couldn't open file /mnt/repodata/repomd.xml"
正在尝试其它镜像。
正在解决依赖关系
--> 正在检查事务
...
...
已安装:
  mailx.x86_64 0:12.5-19.el7                                               

完毕!

3.配置Zabbix服务端外部邮箱(/etc/mail.rc)

[root@lw ~]# tail -5 /etc/mail.rc
set from    //发件人邮箱地址
set smtp=smtp.qq.com   //邮箱服务器地址
set smtp-auth-user   //发件人邮箱地址
set smtp-auth-password=doqyzcqeuvjlebdf    //邮箱密码(或者授权码)
set smtp-auth=login

4.通过mail命令手动测试发送邮件

echo "内容"|mail -s "主题" 收件人
[root@lw ~]# echo 'zabbix mail send test'|mail -s 'zabbix' 

zabbix告警消息模板 字体大小 颜色设置 zabbix关闭告警_服务端


5.配置Zabbix服务端邮件报警打开Zabbix

管理-示警媒介类型-创建媒体类型

添加告警媒介(必须添加)

{ALERT.SENDTO} //发送给谁

{ALERT.SUBJECT} //发送什么主题

{ALERT.MESSAGE} //发送什么信息

zabbix告警消息模板 字体大小 颜色设置 zabbix关闭告警_邮件告警_02

设置Zabbix用户报警邮箱地址

组态-用户-Admin

zabbix告警消息模板 字体大小 颜色设置 zabbix关闭告警_邮件告警_03

zabbix告警消息模板 字体大小 颜色设置 zabbix关闭告警_发送邮件_04

zabbix告警消息模板 字体大小 颜色设置 zabbix关闭告警_服务端_05

添加动作:

zabbix告警消息模板 字体大小 颜色设置 zabbix关闭告警_邮件告警_06


发生问题发送邮件

zabbix告警消息模板 字体大小 颜色设置 zabbix关闭告警_邮件告警_07

zabbix告警消息模板 字体大小 颜色设置 zabbix关闭告警_服务端_08

zabbix告警消息模板 字体大小 颜色设置 zabbix关闭告警_服务器_09

解决问题发送邮件

zabbix告警消息模板 字体大小 颜色设置 zabbix关闭告警_服务器_10

默认接收人:故障{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}

6.添加Zabbix服务端邮件发送脚本

[root@lw etc]# mkdir alertscripts
[root@lw etc]# vim zabbix_server.conf
添加以下内容:
AlertScriptsPath=/usr/local/etc/alertscripts

[root@lw etc]# cd alertscripts/
[root@lw alertscripts]# vim mail.sh
[root@lw etc]# cat alertscripts/mail.sh 
#!/bin/bash
message=$3
subject=$2
echo "$message"| mail -s  "$subject" $1
[root@lw alertscripts]# chmod +x mail.sh 
[root@lw etc]# chown -R zabbix.zabbix alertscripts/
[root@lw etc]# ll -d alertscripts/
drwxr-xr-x 2 zabbix zabbix 21 2月  26 16:25 alertscripts/

zabbix告警消息模板 字体大小 颜色设置 zabbix关闭告警_服务器_11

zabbix告警消息模板 字体大小 颜色设置 zabbix关闭告警_服务器_12

zabbix告警消息模板 字体大小 颜色设置 zabbix关闭告警_服务器_13