概述

今天主要分享下zabbix邮件告警方面的内容,这里介绍的是脚本实现方式,后面再介绍zabbix自带邮件功能实现方式。


一、安装邮件服务

1、安装sendmaill、mailx邮件服务

yum -y install mailx sendmail dos2unix

2、配置邮件发送人,邮箱需要启用POP3等协议

vim /etc/mail.rc=======================================================================================================================set bsdcompat--- 增加如下内容 ---set from=yourname@your-domain.comset smtp=mail.your-domain.comset smtp-auth-user=yournameset smtp-auth-password=yourpasswdset smtp-auth=login

3、测试邮件发送功能

echo  "hello word" | mail -s "mail title" huangwb@xx.com

二、添加zabbix邮件报警脚本

1、查看zabbix_server脚本路径

vim /etc/zabbix/zabbix_server.conf==============================================AlertScriptsPath=/usr/lib/zabbix/alertscripts==============================================

2、创建邮件发送脚本

cd /usr/lib/zabbix/alertscripts/vim sendmail.sh===============================================#!/bin/bash#zabbix邮件告警脚本FILE=/tmp/mailtmp.txtecho "$3" > $FILE# 解决生成bin文件问题。dos2unix -k $FILE/bin/mail -s "$2" $1 < $FILE===============================================--授权chmod 755 sendmail.shchown zabbix.zabbix sendmail.sh--创建脚本临时文件。touch /tmp/mailtmp.txt chown zabbix.zabbix /tmp/mailtmp.txt




zabbix添加邮件告警 zabbix邮件告警原理_zabbix添加邮件告警


确认Zabiix各级父目录有 zabbix用户的所属权限。


三、WEB添加邮件报警操作

1、添加邮件发送脚本

管理–>报警媒介类型–>创建媒体类型


zabbix添加邮件告警 zabbix邮件告警原理_邮件发送_02


zabbix添加邮件告警 zabbix邮件告警原理_邮件发送_03


按图示填写完成后点击更新,就会在报警媒介类型中看到刚才创建的名为Email类型


zabbix添加邮件告警 zabbix邮件告警原理_服务器_04


测试:


zabbix添加邮件告警 zabbix邮件告警原理_怎么通过id和父id来获取id路径_05


2、添加邮件报警介质

此处以Admin用户为例,管理–>用户–>点击Admin


zabbix添加邮件告警 zabbix邮件告警原理_vim_06


点击报警媒介,然后添加邮件接收人


zabbix添加邮件告警 zabbix邮件告警原理_vim_07


3、创建动作

1)配置-动作-创建动作


zabbix添加邮件告警 zabbix邮件告警原理_zabbix添加邮件告警_08


名称自己起,除了操作,其它默认


zabbix添加邮件告警 zabbix邮件告警原理_怎么通过id和父id来获取id路径_09


2)添加新的操作


zabbix添加邮件告警 zabbix邮件告警原理_zabbix添加邮件告警_10


zabbix添加邮件告警 zabbix邮件告警原理_怎么通过id和父id来获取id路径_11


zabbix添加邮件告警 zabbix邮件告警原理_zabbix添加邮件告警_12


添加完成后动作页面列表就会展示出来:


zabbix添加邮件告警 zabbix邮件告警原理_服务器_13


此时没有添加相应的触发器,如果系统中任何一台机器出现告警信息,就会通过邮件发送器发送到对应的邮箱中。

3)添加恢复操作


zabbix添加邮件告警 zabbix邮件告警原理_服务器_14


zabbix添加邮件告警 zabbix邮件告警原理_邮件发送_15


设置后界面:


zabbix添加邮件告警 zabbix邮件告警原理_怎么通过id和父id来获取id路径_16



监控模板

--故障模板

故障{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}