安装并配置mailx
安装mailx
yum install -y mailx
修改mailx配置文件
vim vim /etc/mail.rc
1
2
3
4
5set 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" wang210@126.com
编写邮件告警脚本
vim /usr/lib/zabbix/alertscripts/mail.sh
这是zabbix默认的脚本路径,可以通过zabbix_server配置文件修改1
2
3
4
5#/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 | 报警主机:{HOST.NAME} |
配置恢复操作
默认标题:
1 | {TRIGGER.STATUS}:{TRIGGER.NAME} |
消息内容:
1 | 恢复主机:{HOST.NAME} |
关闭agent,测试报警
systemctl stop zabbix_agent
systemctl start zabbix_agent
配置微信报警
注册企业微信
配置微信报警需要注册企业微信
获取企业ID
点击‘我的企业’到最下面获取
获取AgentID和Secret
单击应用与小程序,选择下面的创建应用,应用名字自己随便起,最好有象征意义
然后打开新创建的应用,记录下AgentID和Secret
配置脚本
从GitHub克隆微信报警脚本
1 | git clone https://github.com/X-Mars/Zabbix-Alert-WeChat.git |
安装requests库
使用pip安装,需要先下载pip1
python get-pip.py
安装requests库1
pip install requests
修改wechat.py脚本
Corpid,Secret,Agentid填写自己企业微信的信息,修改这三个参数即可,当然也可以选择使用标签ID,部门ID,取消注释即可
修改完成后测试脚本是否可用1
2python wechat.py 企业微信ID test text
{u'invaliduser': u'', u'errcode': 0, u'errmsg': u'ok'}
在zabbix_web上配置报警媒介和用户
配置报警媒介
配置用户
收件人填写企业微信的用户ID
配置动作
配置操作
消息内容与标题与邮件报警配置相同,只要把发送的媒介通过WeChat发送即可
配置恢复操作
恢复操作也是把媒介改成通过WeChat发送
测试微信报警
重启虚拟机测试,企业微信收到邮件