目录
一、概念介绍
刚配置的自定义的监控项默认不会自动报警,首页也不会提示错误,需要配置触发器与报警动作才可以自定报警。
触发器(trigger)
设置一个条件,当触发条件发生后,会触发事件,执行某个动作
动作(action)
触发时间执行的动作,可以是发送邮件、短信,也可以是重启某个服务等。
二、配置邮件报警功能
1、获取邮箱的客户端授权码
2、配置邮箱功能
服务器上配置
yum install mailx -y
vim /etc/mail.rc
#----------文件末尾新增--------------------
set from=邮箱地址
set smtp=smtp.163.com
set smtp-auth-user=邮箱地址
set smtp-auth-password=开启AMTP的授权密码
set smtp-auth=login
测试发送邮件;发送的内容hello world,邮件的主题zb-test
echo "hello world" | mail -s "zb-test" 邮件地址
编写发邮件脚本
cd /usr/lib/zabbix/alertscripts
vim mailx.sh
#!/bin/bash
#send mail
messages=`echo $3 | tr '\r\n' '\n'`
subject=`echo $2 | tr '\r\n' '\n'`
echo "${messages}" | mail -s "${subject}" $1 >>/tmp/mailx.log 2>&1
touch /tmp/mailx.log
chown -R zabbix:zabbix /tmp/mailx.log
chmod +x /usr/lib/zabbix/alertscripts/mailx.sh
chown -R zabbix.zabbix /usr/lib/zabbix/
测试发邮件脚本是否可以正常工作
./mailx.sh 邮箱地址 "主题" "内容"
3、在服务器WEB页面配置
(1)定义报警媒体类型
管理--->报警媒体类型--->创建媒体类型--->
名称:Mail-Test
类型:脚本
脚本名称: mailx.sh
脚本参数://新增以下三个参数
{ALERT.SENDTO}
{ALERT.SUBJECT}
{ALERT.MESSAGE}
(2)指定使用用户.
管理--->用户--->点击Admin--->报警媒介:
类型:Mail-Test //调用上面的脚本
收件人:leaves_falling2021@163.com
其它默认-保存
(3)添加被监控端
配置--->主机--->创建主机
主机:
主机名称:client
群组:linux servers
agent代理程序的接口:192.168.163.150
模板:
链接指示器:Template App SSH Service
(4)配置触发动作和条件
配置--->动作--->创建动作--->删除默认标签,修改触发条件
名称:Mailx
条件A主机群组=Linux servers
操作--->如下配置
默认操作步骤持续时间: 60
默认标题: {TRIGGER.STATUS}:{TRIGGER.NAME}
默认信息:
告警主机:{HOST.NAME}
告警IP:{HOST.IP}
告警时间:{EVENT.DATE}-{EVENT.TIME}
告警等级:{TRIGGER.SEVERITY}
告警信息:{TRIGGER.NAME}:{ITEM.VALUE}
事件ID:{EVENT.ID}
操作细节:
操作类型:发送消息
发送到用户: Admin (Zabbix Administrator)
仅送到:Mail-Test //一定要配置否则邮件发送不成功
恢复操作:{TRIGGER.STATUS}:{TRIGGER.NAME}
恢复信息:
恢复主机:{HOST.NAME}
恢复IP:{HOST.IP}
恢复时间:{EVENT.DATE}-{EVENT.TIME}
恢复等级:{TRIGGER.SEVERITY}
恢复信息:{TRIGGER.NAME}:{ITEM.VALUE}
恢复ID:{EVENT.ID}
操作细节:
操作类型:发送消息
发送到用户: Admin (Zabbix Administrator)
仅送到:Mail-Test //一定要配置否则邮件发送不成功
4、验证
重启zabbix服务
停止监控的服务,验证是否发送服务down的邮件
开启关闭的服务,验证是否发送修复好的邮件