引言
经过前面几篇博客的介绍,我们已经完成了对某台机器的监控,并且可以自定义监控模板。但是最为运维神器,只是单单的监测还是不完美,当然还需要报警装置,下面就给大家介绍zabbix邮件报警配置,报警方式有好几种,最常用的就是邮件了,比较有钱的公司可能会使用短信。
第一、安装邮件发送工具mailx
这里我选择的是mailx,所以的关闭其他的邮件发送工具
service sendmailstop #关闭 chkconfig sendmailoff #禁止开机启动 service postfixstop chkconfig postfixoff
执行安装mailx的命令:yum install mailx
第二、配置Zabbix服务端外部邮箱
打开文件vi /etc/mail.rc 如果mail.rc文件没有,就手动创建 内容如下:
set sendcharsets=iso-8859-1,utf-8 set from=xxx@163.com set smtp=smtp.163.com:25 set smtp-auth-user=xxx@163.com #认证用户 set smtp-auth-password=xxx #认证密码
第三、测试邮件是否可以发出
echo"zabbix test mail" |mail -s "zabbix" yyy@163.com
#这时候,邮箱yyy@163.com会收到来自xxx@163.com的测试邮件
第四、编写发送邮件脚本
进入下面路径:/usr/lib/zabbix/alertscripts 创建sendmail.sh文件,内容如下
echo "$3" | mail -s "$2" "$1"
上面的这个三个参数是接收从web页面中传递过来的,$1:收件人邮箱地址;$2:邮件标题;$3:邮件内容
为什么我们会在这个路径下面创建这个脚本呢,这是在我们的zabbix_serber.conf文件中配置的
AlertScriptsPath=/usr/lib/zabbix/alertscripts
所以你不想将这个脚本放在这个目录下面,需要修改服务端的配置文件中的AlertScriptsPath的值
第四、配置web页面
4.1、创建媒体类型
点击创建媒体类型
添加以下3个参数,分别对应sendmail.sh脚本需要的3个参数:收件人地址、主题、详细内容
{ALERT.SENDTO} {ALERT.SUBJECT} {ALERT.MESSAGE}
如果在3.0中不添加这三个参数会报错,因为在3.0以后zabbix允许自定义参数了,所以不会默认传递参数,在2.0的时候会默认传递三个参数,所以在3.0如果不写这三个参数会报错。
4.2、给用户添加报警媒介
在这以Admin用户为例 管理—》用户—》点击Admin
点击Admin
4.3、创建动作
填写动作选项
除了自己填写一个名称以外,其余的都默认就好了。当然也可以修改成中文:参考如下
默认接收人:故障{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}
已启用:打钩
填写条件选项
填写操作详细信息
解释:默认的步骤是1-1,也即是从1开始到1结束。一旦故障发生,就是执行sendEmail.sh脚本发生报警邮件给Admin用户和zabbix administrator组。假如故障持续了1个小时,它也只发送一次。如果改成1-0,0是表示不限制.无限发送 间隔就是默认持续时间60秒。那么一个小时,就会发送60封邮件。
到这我们的邮件报警配置就完成了,这是只要我们设置的触发器触发,就会自动给我发送报警邮件。
测试邮件报警
我将zabbix自带的模板中的对可用内存的监控中的触发器的临界值改为大于0,进入模板列表
点击触发器
点击修改
保存以后 我将每一分钟收到一份报警邮件 内容如下:
小结
到这关于zabbix邮件报警的配置,已经基本完成了,希望对读者有一定的帮助,
在下一篇博客中,将结合对某个端口的监控来介绍一下触发器的使用!