Zabbix 使用(n):自定义邮件告警

文章目录

  • 一、检查服务,如果有就关闭
  • 二、安装服务
  • 三、编辑配置文件
  • 四、测试
  • 五、配置自定义邮件脚本
  • 六、测试
  • 七、zabbix 对hadoop namenode报警
    • 7.1 创建 Items
    • 7.2 创建 Trigger
    • 7.3 关闭HDFS会出现如下警报
    • 7.4 创建 Media Type
    • 7.5 Email 绑定收件人
    • 7.6 创建 Action
    • 7.7 修改 mail.sh 文件


一、检查服务,如果有就关闭

sendmail

systemctl status sendmail

postfix

systemctl status postfix.service
systemctl stop postfix.service
systemctl disable postfix.service

二、安装服务

mailx

yum install mailx

dos2unix

yum install dos2unix -y

三、编辑配置文件

vim /etc/mail.rc

在最末尾增加
set from="[email protected]"
set smtp="smtp.163.com"
set smtp-auth-user="[email protected]"
set smtp-auth-password="password"
set smtp-auth="login"

四、测试

echo "zabbix test"|mailx -s"zabbix alert" [email protected]

去邮箱收邮件
Zabbix 使用(n):自定义邮件告警_第1张图片


五、配置自定义邮件脚本

打开 zabbix_server.conf 查看 AlertScriptsPath

### Option: AlertScriptsPath
#       Full path to location of custom alert scripts.
#       Default depends on compilation options.
#       To see the default path run command "zabbix_server --help".
#
# Mandatory: no
# Default:
# AlertScriptsPath=${datadir}/zabbix/alertscripts

AlertScriptsPath=/usr/lib/zabbix/alertscripts

进入该目录创建 mail.sh 文件

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

#! /bin/bash
SENT_TO=$1
SENT_SUBJECT=$2
SENT_CONTENT=$2
echo "$SENT_CONTENT" |mailx -v -s "$SENT_SUBJECT" $SENT_TO

chmod 777 mail.sh

六、测试

./mail.sh [email protected] "zabbix test" "test"

去邮箱查看邮件


七、zabbix 对hadoop namenode报警

7.1 创建 Items

Zabbix 使用(n):自定义邮件告警_第2张图片
Zabbix 使用(n):自定义邮件告警_第3张图片
Zabbix 使用(n):自定义邮件告警_第4张图片
Zabbix 使用(n):自定义邮件告警_第5张图片

7.2 创建 Trigger

Zabbix 使用(n):自定义邮件告警_第6张图片
Zabbix 使用(n):自定义邮件告警_第7张图片
Zabbix 使用(n):自定义邮件告警_第8张图片

7.3 关闭HDFS会出现如下警报

Zabbix 使用(n):自定义邮件告警_第9张图片

7.4 创建 Media Type

在这里插入图片描述
Zabbix 使用(n):自定义邮件告警_第10张图片

7.5 Email 绑定收件人

Zabbix 使用(n):自定义邮件告警_第11张图片
Zabbix 使用(n):自定义邮件告警_第12张图片

7.6 创建 Action

Zabbix 使用(n):自定义邮件告警_第13张图片
Zabbix 使用(n):自定义邮件告警_第14张图片
Zabbix 使用(n):自定义邮件告警_第15张图片
Zabbix 使用(n):自定义邮件告警_第16张图片

警告:
故障{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}
故障持续时间: {EVENT.AGE}
恢复时间: {EVENT.RECOVERY.TIME}
告警等级:{TRIGGER.SEVERITY}
告警信息: {TRIGGER.NAME}
告警项目:{TRIGGER.KEY1}
问题详情:{ITEM.NAME}:{ITEM.VALUE}
当前状态:{TRIGGER.STATUS}:{ITEM.VALUE1}
事件 ID:{EVENT.ID}

7.7 修改 mail.sh 文件

避免预警信息为附件的形式发送出来,所以修改一下配置文件为


#! /bin/bash
SENT_TO=$1
SENT_SUBJECT=$2
SENT_CONTENT="/tmp/alert_$$".tmp

echo "$3">$SENT_CONTENT
dos2unix $SENT_CONTENT

#echo "$SENT_CONTENT" |mailx -v -s "$SENT_SUBJECT" $SENT_TO

mailx -s "$SENT_SUBJECT" $SENT_TO<$SENT_CONTENT

重启 HDFS然后关闭,会发送故障邮件到邮箱中
Zabbix 使用(n):自定义邮件告警_第17张图片
当重启HDFS后,恢复邮件会发送到邮箱中
Zabbix 使用(n):自定义邮件告警_第18张图片

你可能感兴趣的:(#,zabbix)