码迷,mamicode.com
首页 > 其他好文 > 详细

Zabbix设置邮件报警

时间:2020-08-31 13:14:37      阅读:50      评论:0      收藏:0      [点我收藏+]

标签:项目   标题   完成   dao   lazy   点击   授权   key   recv   

Zabbix设置邮件告警

 
前提条件:
Zabbix Server 和 Zabbix Agent都已安装完毕,并已启动
 
1、添加主机
技术图片
 技术图片

技术图片

技术图片

技术图片

 

2、配置邮件告警,这里以VSFTP服务为例
yum install -y vsftpd 
vim /etc/vsftpd/vsftpd.conf
...
listen=YES # 修改该条
listen_ipv6=YES # 删除该条
...
systemctl start vsftpd

 

邮件告警可以采取两种方式,一是通过zabbix web直接设置,二是通过脚本设置
推荐第一种,以QQ邮箱为例:
(1)首先先打开qq邮箱授权
技术图片
 技术图片

 

(2)创建媒介类型
技术图片
技术图片

 技术图片

 

技术图片
媒介创建完毕就ok,可以测试发送一下看是否能收到。
技术图片

 

下边直接介绍脚本媒介告警方式,后边的用户设置及动作设置都是相同的
 
第二种,脚本告警:
首先,查看作用脚本路径(可以自定义修改):
grep AlertScriptsPath zabbix_server.conf
技术图片
 技术图片

 

到此路径下编写邮件告警脚本:
vim /usr/local/zabbix/share/zabbix/alertscripts/sendmail.py
技术图片

 

技术图片
将以下内容复制:(我用的qq邮箱,如用其他邮箱做发件人,请根据注释修改)
#!/usr/bin/env python
# _*_ coding:utf-8 _*_
 
import smtplib
from email.mime.text import MIMEText
import sys
 
# configure your own parameters here
#下面邮件地址的smtp地址
mail_host = smtp.163.com
#用来发邮件的邮箱,在发件人抬头显示(不然你的邮件会被当成是垃圾邮件)
mail_user = ****@qq.com
# 客户端授权码
mail_auth = ******
# 发送方显示的名称
send_name = mail_user
# 接收方显示的名称
recv_name = mail_user
 
def excute(to, title, content):
    msg = MIMEText(content, plain, utf-8)
    msg[From] = send_name
    msg[To] = recv_name
    msg[Subject] = title
    server = smtplib.SMTP(mail_host, 25)
    server.login(mail_user,mail_auth)
    server.sendmail(mail_user,to,msg.as_string())
    server.quit()
 
if __name__ == __main__:
    excute(sys.argv[1], sys.argv[2], sys.argv[3])
#                  $1           $2           $3

技术图片

然后赋予执行权限chmod +x /usr/local/zabbix/share/zabbix/alertscripts/sendmail.py

 
3、创建报警媒介及动作
技术图片
技术图片

技术图片

 

技术图片
添加完成:
技术图片
技术图片

 

选择
技术图片
技术图片

技术图片

 

技术图片

 

技术图片

 

技术图片

 

技术图片

 

技术图片

 

 

技术图片
然后点击添加按钮,其他两个模块也修改为与以上相同的
技术图片
技术图片
默认标题:故障{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}

技术图片

技术图片
添加完成
技术图片
 
4、将vsftp服务停掉,测试是否可以收到邮件了
技术图片

技术图片

 

此项说明邮件已送达,下一步打开邮箱看一下

技术图片
 
ok,收到邮件,nice,再恢复服务看能不能收到邮件
技术图片
技术图片

 

 

也收到了 ok!
技术图片

技术图片

注意:以上在Zabbix页面配置邮件报警时我的截图均为选择的py脚本方式,使用zabbix web的邮件告警方式就直接替换下选择就ok

Zabbix设置邮件报警

标签:项目   标题   完成   dao   lazy   点击   授权   key   recv   

原文地址:https://www.cnblogs.com/v-fan/p/13559336.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!