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

69 lines
2.2 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
title: "Zabbix 邮件告警"
date: 2019-10-29T21:23:57+08:00
lastmod: 2019-10-29T21:23:57+08:00
keywords: []
tags: ["zabbix", "邮件", "告警"]
categories: ["zabbix"]
---
## 环境
- CentOS7
- sendEmail 1.56
## 部署 sendEmail
- 安装 sendEmail
```bash
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内容如下
```bash
#!/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
```
- 测试,如果正常收到邮件,则表示脚本正常
```bash
./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”-“操作”,自定义报警信息
## 测试
- 触发器被触发后,收件人邮箱收到告警邮件