zabbix配置微信和邮件报警

安装并配置mailx

安装mailx

yum install -y mailx

修改mailx配置文件

vim vim /etc/mail.rc

set from=wang210@163.com  #定义发件人  
set smtp=smtp.163.com  #定义smtp服务器 
set smtp-auth-user=wang210@163.com   
set smtp-auth-password=asdASD123  
set smtp-auth=login  

发送测试邮件

echo 'test1'|mail -s "testmail" .com

编写邮件告警脚本

vim /usr/lib/zabbix/alertscripts/mail.sh`

这是zabbix默认的脚本路径,可以通过zabbix_server配置文件修改

bash
#/bin/bash
to=$1
subject=`echo $2|tr '\r\n' '\n'`
message=`echo $3|tr '\r\n' '\n'`
echo "$message"|mail -s "$subject" $to >>/var/log/mailx.log 2>&1

touch /var/log/mailx.log
chown -R zabbix.zabbix /var/log/mailx.log
chmod +x /usr/lib/zabbix/alertscripts/mail.sh
./mail.sh wang210@126.com "主题" "内容"

编辑zabbix_web,配置报警媒介


脚本参数的变量全为大写,是zabbix内置的宏
更多关于zabbix的宏可以查看 官方文档宏的介绍
除了使用脚本媒介,也可以使用email作为媒介,相比之下,使用email更简单

编辑zabbix_web,配置用户

配置报警动作

操作,恢复操作,或者更新操作必须存在一个

配置条件

可以根据自己的需要配置触发条件

配置操作

默认标题:

1
{TRIGGER.STATUS}:{TRIGGER.NAME}

消息内容:

1
2
3
4
5
6
报警主机:{HOST.NAME}
报警IP:{HOST.IP}
报警时间:{EVENT.DATE}-{EVENT.TIME}
报警等级:{TRIGGER.SEVERITY}
报警信息:{TRIGGER.NAME}:{ITEM.VALUE}
事件ID:{EVENT.ID}

配置恢复操作

默认标题:

1
{TRIGGER.STATUS}:{TRIGGER.NAME}

消息内容:

1
2
3
4
5
6
恢复主机:{HOST.NAME}
恢复IP:{HOST.IP}
恢复时间:{EVENT.DATE}-{EVENT.TIME}
恢复等级:{TRIGGER.SEVERITY}
恢复信息:{TRIGGER.NAME}:{ITEM.VALUE}
恢复ID:{EVENT.ID}

关闭agent,测试报警

systemctl stop zabbix_agent

systemctl start zabbix_agent

配置微信报警

注册企业微信

配置微信报警需要注册企业微信

获取企业ID

点击‘我的企业’到最下面获取

获取AgentID和Secret

单击应用与小程序,选择下面的创建应用,应用名字自己随便起,最好有象征意义


然后打开新创建的应用,记录下AgentID和Secret

配置脚本

从GitHub克隆微信报警脚本

1
2
3
git clone https://github.com/X-Mars/Zabbix-Alert-WeChat.git
cp Zabbix-Alert-WeChat/wechat.py /usr/local/zabbix34/alertscripts/
chmod +x wechat.py && chown zabbix:zabbix wechat.py

安装requests库

使用pip安装,需要先下载pip

1
python  get-pip.py

安装requests库

1
pip install requests

修改wechat.py脚本

Corpid,Secret,Agentid填写自己企业微信的信息,修改这三个参数即可,当然也可以选择使用标签ID,部门ID,取消注释即可

修改完成后测试脚本是否可用

1
2
python wechat.py 企业微信ID test text
{u'invaliduser': u'', u'errcode': 0, u'errmsg': u'ok'}

在zabbix_web上配置报警媒介和用户

配置报警媒介

配置用户

收件人填写企业微信的用户ID

配置动作

配置操作

消息内容与标题与邮件报警配置相同,只要把发送的媒介通过WeChat发送即可

配置恢复操作

恢复操作也是把媒介改成通过WeChat发送

测试微信报警

重启虚拟机测试,企业微信收到邮件