zabbix3.0邮件报警

本文介绍如何通过Zabbix配置邮件报警功能,包括使用sendmail发送邮件的基本步骤与配置细节,以及如何实现邮件内容的HTML格式化显示。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、使用外部邮箱地址发送邮件(使用sendmail发送邮件,不能显示内容)

1、安装sendmail、mailx

yum install sendmail mailx

vim /etc/mail.rc #添加相关发件人内容

set from=lgs6666@yeah.net smtp=smtp.yeah.net

set smtp-auth-user=lgs6666@yeah.net smtp-auth-password= ….

set smtp-auth=login

2、登录外部邮箱,启用SMTP登录
这里写图片描述

service sendmail start

echo “test.hahahahaha” | mail -s “test” 469234634@qq.com #发邮件进行测试

测试sendmail成功,登陆我的QQ邮箱可以收到邮件!
这里写图片描述

3、添加zabbix邮件报警脚本

[root@iZ25kscmkn3Z ~]# vim /usr/local/zabbix/etc/zabbix_server.conf

AlertScriptsPath=/usr/local/zabbix/share/zabbix/alertscripts

[root@iZ25kscmkn3Z ~]# vim /usr/local/zabbix/share/zabbix/alertscripts/sendmail.sh

#!/bin/bash

echo “ 3"|mails" 2” $1

#其中 1zabbix 2是邮件主题,$3是邮件内容;

[root@iZ25kscmkn3Z ~]# chmod +x /usr/local/zabbix/share/zabbix/alertscripts/sendmail.sh

1)zabbix进入网页设置邮件报警

​ 选择 管理——示警媒介类型
这里写图片描述

2)点击sendmail进入设置界面:选择类型——脚本,输入前面写的脚本名称;

在Script parameters添加参数,3.0版本必须添加,2.0不需要添加

{ALERT.SENDTO}

{ALERT.SUBJECT}

{ALERT.MESSAGE}
这里写图片描述

3)编辑用户

选择 管理-用户
这里写图片描述

点击示警媒介
这里写图片描述

添加
这里写图片描述

更新

点击许可权,设置所有权限
这里写图片描述

选择-用户群组
这里写图片描述

点击 Zabbix administrator
这里写图片描述

点击许可权

添加所有组合许可权、主机群组、主机
这里写图片描述

4)添加动作

选择 组态-动作
这里写图片描述

点击Report problems to Zabbix administrators
这里写图片描述

名称:Report problems to Zabbix administrators

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

选择条件,计算方式选择Or
这里写图片描述

选择操作,编辑操作
这里写图片描述

这里写图片描述
更新——更新

测试

[root@iZ25kscmkn3Z ~]# /etc/init.d/zabbix_agentd stop

一分钟后会收到报警邮件
这里写图片描述

附件的.bin文件就是报警内容,需要使用第三方软件打开

二、使用外部邮箱地址发送邮件(使用sendmail发送邮件,显示内容)

1、安装组件

yum install perl-Net-SSLeay perl-IO-Socket-SSL -y

2、安装sendEmail

wget http://caspian.dotconf.net/menu/Software/SendEmail/sendEmail-v1.56.tar.gz

tar zxf sendEmail-v1.56.tar.gz -C /usr/src

cd /usr/src/sendEmail-v1.56/

cp -a sendEmail /usr/local/bin

chmod +x /usr/local/bin/sendEmail

/usr/local/bin/sendEmail -f lgs6666@yeah.net -t 469234634@qq.com -s smtp.yeah.net -u zabbix -o message-content-type=html -o message-charset=utf8 -xu lgs6666@yeah.net -xp liuguangshuN0820 -m “test邮件” //测试发送邮件

注意:perl版本必须是5.10.0,centos7以上版本perl默认是5.16,需要将perl版本换为5.10.0

perl -v

cd

wget http://www.cpan.org/src/5.0/perl-5.10.0.tar.gz

tar -zxf perl-5.10.0.tar.gz -C /usr/src/

cd /usr/src/perl-5.10.0/

./configure.gnu -des -Dprefix=/usr/local/perl

echo $?

make -j2

make install

mv /usr/bin/perl /usr/bin/perl.bak

ln -s /usr/local/perl/bin/perl /usr/bin/perl

perl -v

/usr/local/bin/sendEmail -f lgs6666@yeah.net -t 469234634@qq.com -s smtp.yeah.net -u zabbix -o message-content-type=html -o message-charset=utf8 -xu lgs6666@yeah.net -xp ‘liuguangshuN0820’ -m “test邮件”

Mar 14 15:45:58 iz25kscmkn3z sendEmail[11484]: Email was sent successfully! //发送成功

3、编辑sendmail.sh文件

vim /usr/local/zabbix/share/zabbix/alertscripts/sendmail.sh

#!/bin/bash

#echo “ 3"|mails" 2” $1

to=$1

subject=$2

body=$3

/usr/local/bin/sendEmail -f lgs6666@yeah.net -t “ to"ssmtp.yeah.netu" subject” -o message-content-type=html -o message-charset=utf8 -xu lgs6666@yeah.net -xp liuguangshuN0820 -m “$body”

#echo “ body"|mails" subject” $to

#其中 1zabbix 2是邮件主题,$3是邮件内容;

4、修改动作,因为我用sendmail.sh脚本格式指定html,所以添加换行符

告警主机: {HOSTNAME1}

告警时间: {EVENT.DATE} {EVENT.TIME}

告警等级: {TRIGGER.SEVERITY}

告警信息: {TRIGGER.NAME}

告警项目: {TRIGGER.KEY1}

问题详情: {ITEM.NAME}: {ITEM.VALUE}

当前状态: {TRIGGER.STATUS}: {ITEM.VALUE1}

事件ID: {EVENT.ID}

5、收到的报警内容
这里写图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值