软件具体配置如下:
操作系统:Centos7.5 zabbix server版本:zabbix server3.4 zabbix agent版本:zabbix agent3.0
现在开始配置zabbix监控系统 邮件报警:
zabbix server 端做如下操作:
[root@zabbix_server ~]# yum install mailx -y
查看mailx版本:
[root@zabbix_server ~]# mailx -V
12.5 7/5/10
配置发件邮箱地址:
[root@zabbix_server ~]# vim /etc/mail.rc
添加如下邮箱地址配置:
手动测试是否可以发送邮件:
如上所示,发送邮件成功!
编写zabbix server服务器自动发送邮件的脚本:
[root@zabbix_server ~]# cat /usr/lib/zabbix/alertscripts/sendmail.sh
#!/bin/bash
contact=$1
subject=$2
body=/tmp/mailbody
echo $3 > $body
sed -i 's/^M/
/g;s/^//' $body
mail -s "$subject" "$contact" < $body
给这个脚本文件添加可执行权限:[root@zabbix_server ~]# chmod +x /usr/lib/zabbix/alertscripts/sendmail.sh
测试zabbix server服务器自动发送邮件的脚本是否可以发送邮件:
如上所示:zabbix server服务器自动发送邮件的脚本发送邮件成功!
开始在zabbix server端的web界面开始配置邮件报警:
在zabbix server web界面配置邮件报警:
管理 ---- 报警媒介类型 ----- 创建媒介类型
然后点击“添加”。
最后修改admin用户的报警媒介:
用户默认是没有设置报警媒介的,设置后就可以接收报警消息了。
管理—用户—Admin—报警媒介
点击“添加”后,如下信息:
然后点击“添加”完成。然后会出现如下:
点击“更新”结束!
设置Zabbix触发报警的动作:
Configuration--->Action 点击右上方的Create action创建action (也可以修改已有的Actions)
Name 名字自己随便定义(命名方式便于区分报警类型)
condition 通add按钮定义新的action关联条件
动作 ---- 名称自定义 --- 设置一条新的触发条件 ---- 启用 ---- 添加。(触发条件需要根据实际情况设置)
触发器 似 is unreachable for 5 minutes
定义操作:
默认接收人:故障{TRIGGER.STATUS},服务器:{HOSTNAME1}发生: {TRIGGER.NAME}故障!
默认信息:
告警主机IP地址:{HOST.CONN}
告警主机:{HOSTNAME1}
告警时间:{EVENT.DATE} {EVENT.TIME}
告警等级:{TRIGGER.SEVERITY}
告警信息: {TRIGGER.NAME}
告警项目:{TRIGGER.KEY1}
问题详情:{ITEM.NAME}:{ITEM.VALUE}
当前状态:{TRIGGER.STATUS}:{ITEM.VALUE1}
定义恢复操作:
默认接收人:恢复{TRIGGER.STATUS}, 服务器:{HOSTNAME1}: {TRIGGER.NAME}已恢复!
恢复信息:
告警主机IP地址:{HOST.CONN}
告警主机:{HOSTNAME1}
告警时间:{EVENT.DATE} {EVENT.TIME}
告警等级:{TRIGGER.SEVERITY}
告警信息: {TRIGGER.NAME}
告警项目:{TRIGGER.KEY1}
问题详情:{ITEM.NAME}:{ITEM.VALUE}
当前状态:{TRIGGER.STATUS}:{ITEM.VALUE1}
接下来发送邮件测试如下所示显示成功:
测试下zabbix server邮件报警是否成功:
停掉任意一台agent端的zabbix agent 服务,过了5分钟左右(有延迟)发现邮件报警成功!