君子不重则不威,学则不固,主忠信,无友不如己者,过则勿惮改。
——《论语》
安装并配置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=asdASD123set smtp-auth=login
发送测试邮件
echo 'test1'|mail -s "testmail" wang210@126.com
编写邮件告警脚本
vim /usr/lib/zabbix/alertscripts/mail.sh
这是zabbix默认的脚本路径,可以通过zabbix_server配置文件修改
#/bin/bashto=$1subject=`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,配置用户
配置报警动作
操作,恢复操作,或者更新操作必须存在一个
配置条件
可以根据自己的需要配置触发条件
配置操作
默认标题:
{TRIGGER.STATUS}:{TRIGGER.NAME}
消息内容:
报警主机:{HOST.NAME}
报警IP:{HOST.IP}
报警时间:{EVENT.DATE}-{EVENT.TIME}
报警等级:{TRIGGER.SEVERITY}
报警信息:{TRIGGER.NAME}:{ITEM.VALUE}
事件ID:{EVENT.ID}
配置恢复操作
默认标题:
{TRIGGER.STATUS}:{TRIGGER.NAME}
消息内容:
恢复主机:{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
配置微信报警
注册企业微信
配置微信报警需要注册企业微信
https://work.weixin.qq.com/wework_admin/
获取企业ID
点击‘我的企业’到最下面获取
获取AgentID和Secret
单击应用与小程序,选择下面的创建应用,应用名字自己随便起,最好有象征意义
然后打开新创建的应用,记录下AgentID和Secret
配置脚本
从GitHub克隆微信报警脚本
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
python get-pip.py
安装requests库
pip install requests
修改wechat.py脚本
Corpid,Secret,Agentid填写自己企业微信的信息,修改这三个参数即可,当然也可以选择使用标签ID,部门ID,取消注释即可
修改完成后测试脚本是否可用
python wechat.py 企业微信ID test text
{u'invaliduser': u'', u'errcode': 0, u'errmsg': u'ok'}
在zabbix_web上配置报警媒介和用户
配置报警媒介
配置用户
收件人填写企业微信的用户ID
配置动作
配置操作
消息内容与标题与邮件报警配置相同,只要把发送的媒介通过WeChat发送即可
配置恢复操作
恢复操作也是把媒介改成通过WeChat发送
测试微信报警
重启虚拟机测试,企业微信收到邮件