Zabbix邮件报警的大致流程如下:
监控主机----》监控项----》触发器----》告警动作----》告警方式----》告警用户
首先添加监控项
1、添加受监控项的主机
组态---主机---右上角“创建主机”
弹出主机创建页面
上图填完后先不要点存档,而是点击左上角的模板,选择要使用的模板(可选择多个模板,一个模板中包含一个或多个监控项目),也可以在“模板”选项中创建一个新的模板,选择完模板后点添加,再点 存档
在主机列表中点击被监控主机的项目,进入项目列表
2、点击右上角的Createitem 添加并配置监控项
其次添加触发器
1、选择要添加触发器的监控主机后面的触发器
2、点击右上角的Createtrigger创建并配置触发器
其次是配置告警动作
1、选择系统配置----》动作----》Create action 创建动作
2、配置操作名称和报警邮件内容
主题:{TRIGGER.STATUS}: {TRIGGER.NAME}
告警主机:{HOST.NAME}
主机IP: {HOST.IP}
状态: {TRIGGER.STATUS}
告警时间:{EVENT.DATE} {EVENT.TIME}
告警信息: {TRIGGER.NAME}
告警等级: {TRIGGER.SEVERITY}
Trigger URL: {TRIGGER.URL}
问题详情:{ITEM.NAME}:{ITEM.VALUE}
事件ID: {EVENT.ID}
上图要添加受监控的群组
点击详细操作----》新建
其次配置告警方式
前提条件:
(1) zabbix服务器端已经成功安装并且运行。
(2) zabbix客户端已经成功建立并且运行。
1 下载并且安装msmtp软件
yum install openssl mutt libntlmlibgsasl �Cy
wget http://down1.chinaunix.net/distfiles/msmtp-1.4.30.tar.bz2
tar jxvf msmtp-1.4.30.tar.bz2
cd msmtp-1.4.30
./configure --prefix=/usr/local/msmtp --with-ssl=openssl
make && make install
2、手动建立配置文件,输入外部smtp地址
mkdir �Cp/usr/local/msmtp/etc
vi /usr/local/msmtp/etc/msmtprc
添加以下内容
account default
host smtp.qq.com #你的发送邮件服务器
port 25
from [email protected] #要从哪个邮箱发出
auth login #登陆模式
tls off #不需要安全登陆
user www #邮箱用户名
password xxxxxxxx #邮箱密码,如果你觉得不安全可以把文件改为600属性
logfile /var/log/mmlog #邮箱log日志路径
保存退出
3、简单测试一下
/usr/local/msmtp/bin/msmtp [email protected]
This is test mail #输入邮件内容
ctrl+d #发送并退出,然后查看是否收到
查看日志vim /var/log/mmlog
日志出现以下提示证明成功
3月 26 12:54:54 host=smtp.qq.com tls=off auth=onuser=www [email protected] [email protected] mailsize=20smtpstatus=250 smtpmsg='250 Mail queued for delivery.' exitcode=EX_OK
4、下面开始配置 MUTT
vim /etc/Muttrc #手动创建配置文件M一定为大写
setsendmail="/usr/local/msmtp/bin/msmtp" #你的msmtp命令路径
set use_from=yes
set realname="[email protected]"
set editor="vim"
简单的4行就可以了
好了,让我们来测试一下吧!
echo "test mail 2014 content tom2" | mutt -s "test 2014 title2" [email protected]
OK,测试了下,能收到已经发送的email,如下所示:
5、 创建 zabbix用于发送邮件的脚本
脚本的默认路径在 /usr/local/zabbix/etc/zabbix_server.conf中定义
找到AlertScriptsPath=/usr/local/zabbix/share/zabbix/alertscripts
[root@zabbix bin]# catsend.sh
#!/bin/bash
echo "$3" | mutt -s"$2" $1 # $3表示邮件内容、$2表示邮件标题、$1表示收件人
[root@zabbix bin]# chmod +xsend.sh
6、管理----》处理方法----》Create media type 新建告警方式
7、配置告警方式
8 测试验证邮件发送功能是否正常。
关闭受监控的服务,查看是否收到告警邮件
例如下图:关闭tomcat8080端口监控后,收到报警信息.
下图动作选项有1表示已发送邮件,绿1为发送成功,红1为失败
告警详情
9、利用139邮箱实现接收短信报警
依次打开“管理”-“用户”-“警示媒体”-“添加”----添加完成后,点击“存档”
将收件人设置为139邮箱后,即可实现短信报警
可添加多个邮箱,以实现用其它邮箱接收邮件告警。
10、139邮箱接收相关设置