文章目录
1.概述搭建mailx的服务
主机名称 | IP | 安装服务 | 概述Zabbix的服务 |
---|---|---|---|
server | 172.25.0.200 | mailx | Zabbix_server(监控端) |
woker1 | 172.25.0.20 | Zabbix_agent(被监控端) |
2.开启QQ邮箱的IMAP/SMTP服务,获取授权码
#点击设置–>账户–>开启IMAP/SMTP服务
2.在Server主机操作,安装mailx和配置mailx
#安装mailx服务
yum install mailx -y
#配置mailx
vi /etc/mail.rc
set from=XXX@qq.com #发送人的邮箱
set smtp=smtp.qq.com #smtp地址,接收邮件服务器:imap.qq.com,使用SSL,端口号993;发送邮件服务器:smtp.qq.com,使用SSL,端口号465或587
发送邮件服务器:smtp.qq.com,使用SSL,端口号465或587
set smtp-auth-user=XXX@qq.com #收件人的邮箱
set smtp-auth-password=XXX #QQ邮箱的授权码
set smtp-auth=login #认证方式
3.在Server主机操作,测试配置是否有误
echo "my mail" |mailx -s "my" XXX@qq.com #echo '邮件内容' | mail -s '邮件标题' 收件人邮箱
#在QQ邮箱查看邮件
4.在server主机操作,编写脚本关联报警媒介类型
#编写脚本
cat >> /usr/local/zabbix/share/zabbix/alertscripts/sendmail.sh << EOF
#!/bin/bash
messages=`echo $3 | tr '\r\n' '\n'`
subject=`echo $2 | tr '\r\n' '\n'`
echo "${messages}" | mailx -s "${subject}" $1
EOF
参数:
$3:邮件内容
$2:邮件主题
$1:收邮件人帐号
#赋予所属用户和所属组
chown -R zabbix:zabbix /usr/local/zabbix/share/zabbix/alertscripts/sendmail.sh
#赋予执行权限
chmod +x /usr/local/zabbix/share/zabbix/alertscripts/sendmail.sh
#测试脚本
/usr/local/zabbix/share/zabbix/alertscripts/sendmail.sh XXX@qq.com "你好!" "我的好朋友!"
#查看QQ邮箱是否收到邮件,并确认邮件的内容
#管理–>报警媒介类型
#创建一个媒体类型
#输入名称和脚本名称
#{ALERT.SENDTO}表示:收件人地址 ;{ALERT.SUBJECT}表示:主题; {ALERT.MESSAGE} 表示:邮件内容
5.在Web页面上,将Admin用户添加邮箱
#管理–>用户
#点击Admin
#点击报警媒介
#点击添加
#选着媒介类型和编写收件人的QQ邮箱
#点击更新
6.在Web页面上,创建动作
#点击配置–>动作
#创建一个动作
#编写名称
#点击操作
#操作的添加–>添加发送用户–>选择仅送到–>编写邮件主题和邮件内容
#操作的消息
邮件主题:
故障{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}
#查看操作和恢复操作
7.测试操作,模仿woker1主机宕机
#在woker1主机操作,停掉zabbix-agent服务,查看邮件是否能发送成功
systemctl stop zabbix-agent
#查看QQ邮箱
#点击报表–>点击动作日志
#查看报警信息