www.colben.cn/content/post/zabbix-alert-email.md
2021-11-14 15:52:46 +08:00

2.2 KiB
Raw Blame History

title, date, lastmod, keywords, tags, categories
title date lastmod keywords tags categories
Zabbix 邮件告警 2019-10-29T21:23:57+08:00 2019-10-29T21:23:57+08:00
zabbix
邮件
告警
zabbix

环境

  • CentOS7
  • sendEmail 1.56

部署 sendEmail

  • 安装 sendEmail
    curl -O http://caspian.dotconf.net/menu/Software/SendEmail/sendEmail-v1.56.tar.gz
    tar zxf sendEmail-v1.56.tar.gz && cp sendEmail-v1.56/sendEmail /usr/local/bin/
    
  • 查看 zabbix_server.conf 找到告警脚本存放目录,即 AlertScriptsPath默该目录已存在
  • 在该目录下创建 sendemail.sh内容如下
    #!/bin/bash
    
    recipients="${1//;/ }"
    subject="$2"
    message="$3"
    
    for recipient in $recipients; do
        /usr/local/bin/sendEmail \
            -f <发件人邮箱> \
            -t $recipient \
            -s <发件人邮箱的服务器> \
            -o tls=no \
            -o message-charset=utf8 \
            -xu <发件人邮箱> \
            -xp <发见人邮箱的密码> \
            -u "$subject" \
            -m "$message" \
            -l /var/log/sendEmail.log &
    done
    wait
    
  • 测试,如果正常收到邮件,则表示脚本正常
    ./sendemail.sh person1@email.com;person2@email.com;person3@email.com test_subject test_content
    

配置 zabbix

  • 登陆 zabbix web点击“报警媒介类型”-“创建媒体类型”,打开“报警媒介类型”窗口,配置如下
    • 名称: 脚本发邮件报警
    • 类型: 脚本
    • 脚本名称: sendemail.sh #注意这里的名称与上一步创建脚本名称一致
    • 脚本参数:
      • {ALERT.SENDTO}
      • {ALERT.SUBJECT}
      • {ALERT.MESSAGE}
    • 已启用: 启用
  • 点击“添加”完成脚本媒介配置
  • 点击“管理”-“用户”-“admin”-“报警媒介”-“添加”,打开“报警媒介”窗口,配置如下
    • 类型: 脚本发邮件报警
    • 收件人: 一个或多个收件人email用空格或分号分隔
  • 点击“添加”完成该报警媒介配置
  • 点击“配置”-“动作”-“Report problems to Zabbix administrators”-“操作”,自定义报警信息

测试

  • 触发器被触发后,收件人邮箱收到告警邮件