4123ed 发表于 2015-11-6 09:44:27

Zabbix使用外部邮箱服务器发送邮件报警

zabbix服务端配置:

操作系统:CentOS7_x64
1、安装一个邮件发送程序mailx工具
# yum install mailx -y
打开mailx配置文件,在末尾添加如下信息:
# vi /etc/mail.rc
set from=baojingtongzhi@163.com smtp=smtp.163.com
setsmtp-auth-user=baojingtongzhi@163.com smtp-auth-password=123456
set smtp-auth=login
2、测试是否能正常发送邮件
# echo "this is test mail." |mail -s "test mail" xxx@163.com
注:如果正常收到邮件,说明配置成功!
3、写邮件发送脚本
# cd /usr/local/zabbix/share/zabbix/alertscripts
# vi sendmail.sh

1
2
3
4
5
6
#!/bin/bash
file=/tmp/zabbix_mail.txt
echo "$3" > $file
dos2unix -k $file
/bin/mail -s "$2" $1 < $file
# echo "$3" | mail -s "$2" $1 #如果发送邮件完全是英文的,可以只使用这一条




# yum install dos2unix -y
注:使用dos2unix工具是为解决zabbix发送邮件出现乱码情况。
$3 是前端定义的邮件内容,$2是前端定义的标题,$1是前端定义的收件人
更改脚本属主组并添加执行权限:
# chown zabbix.zabbix sendmail.sh
# chmod +x sendmail.sh

以上是服务端配置,以下是前端配置:

1、创建一个媒体类型


2、给用户添加收件人

3、添加动作
先配置Operations菜单,否则在Action菜单会添加不成功:

主题:Problem:{TRIGGER.NAME}
内容:
Host: {HOSTNAME1}
Date: {EVENT.DATE} {EVENT.TIME}
Level: {TRIGGER.SEVERITY}
Problem: {ITEM.NAME}:{ITEM.VALUE}
Item: {TRIGGER.KEY1}
CurrentStatus: {TRIGGER.STATUS}:{ITEM.VALUE1}
EventID: {EVENT.ID}



前端配置完毕,为了防止本地的Email影响,你可以禁用,只留我们自定义的外部邮箱。


配置正常的话,这时已经可以使用外部邮箱发邮件,你可以关掉一台zabbix_agentd测试下,看会不会触发告警,给你发邮件。祝你成功!


sunzhongyu 发表于 2015-11-7 13:22:50

盗图。。。
页: [1]
查看完整版本: Zabbix使用外部邮箱服务器发送邮件报警