07 zabbix 4.2 配置邮件告警

保证你的邮箱smtp已开启

mkdir -p /usr/local/zabbix/alertscripts #存放脚本的文件夹

zabbix 告警脚本位置,一定要和配置文件里面写的一样

1、编写python脚本

#!/usr/bin/python
# -*- coding: utf-8 -*-
from email.mime.text import MIMEText
from email.header import Header
from smtplib import SMTP_SSL
import sys
smtpaddr = 'smtp.qq.com'
myemail='361589194@qq.com'
password='mypassword'
recvmail=sys.argv[1]
subject=sys.argv[2]
content=sys.argv[3]
msg = MIMEText("""%s"""%(content), "plain", "utf-8")
msg['Subject'] = Header(subject, 'utf-8').encode()
msg['From'] = myemail
msg['To'] = recvmail
try:
smtp = SMTP_SSL( smtpaddr )
smtp.login(myemail, password)
smtp.sendmail(myemail, recvmail.split(','), msg.as_string())
smtp.quit()
print("success")
except Exception as e:
print("fail: "+str(e))

++++++++++++++++++++++

chmod +x /usr/local/zabbix/alertscripts/zabbix_sendmail.py

测试邮件发送:

/usr/local/zabbix/alertscripts/zabbix_sendmail.py 361589194@qq.com ‘zabbix disk’ ‘content: disk > 90%’

2、创建报警媒体

3、用户设置报警媒介

4、创建触发器,并添加动作。

配置–>模板–>选择创建的模版(port_check)—>触发器

创建动作:

++++++++++++++

Host: {HOST.NAME} 主机名

IP: {HOST.IP} IP地址

++++++++++++++++++++++++++++++++++++

五、测试

将web01(测试机)上面的nginx 80端口改掉

/usr/local/nginx/sbin/nginx -s reload

这里的触发器名称写错了,应该80,这样更好记一些。但是不影响实验测试。

把web01(测试机) nginx 端口改回 80