Loading

触发器和邮件告警

一、添加监控主机

1.1 通过  配置  ->  主机  -> 创建主机
1.2 必需要输入 主机名称、群组、ip地址
1.3  添加克隆添加总共www组两台、news组两台

二、简单检查项目添加

添加一个监控web服务器81端口的监控(为了测试nginx开一个81端口监听)
2.1  通过 配置  ->  主机  -> 找到对应的主机点击监控项 -> 创建监控项
2.2  必须输入  名称、选择类型、选择键值、信息类型、应用集
项目名称:Check Port 81

三、监控数据查看

通过 监测中->最新数据  ->过滤主机

四、图形添加

只要名称和添加监控项目就可以了。
图形名称:Check Port 81

五、通过搜索查看图形

右上角搜索ip
点击图形查看图形

六、添加触发器

6.1  通过 配置  ->  主机  -> 找到对应的主机点击触发器 -> 创建触发器
6.2 输入 名称、选择表达式、选择严重性
触发器名称:Check Port 81

七、修改触发器使其有问题

八、触发器有问题进行邮件告警(演示用QQ邮箱登录来发邮件,不要用系统的sendmail)

8.1  用户设置,主机设置用户的邮件
通过 管理-> 用户
可设置接收什么类型的告警
8.2  用户的权限说明(如果对主机没有读权限,告警邮件收不到)
8.3  创建触发器动作
通过 配置->动作
8.3.1  动作设置
8.3.2  条件设置
8.3.3  操作设置
8.4  报警媒介类型设置
在管理  报警媒人类型
8.4.1  发送邮件脚本讲解、放置位置、需要执行权限(chmod a+x zabbix_sendmail.py)、测试(邮箱需要开启smtp功能)
放置位置的配置zabbix_server.conf:
AlertScriptsPath=/usr/local/zabbix/alertscripts
8.4.2  zabbix给三个参数赋值
{ALERT.SENDTO}
{ALERT.SUBJECT}
{ALERT.MESSAGE}

九、发送哟件脚本(zabbix_sendmail.py)

#!/usr/bin/python
# -*- coding: utf-8 -*-
#zabbix send mail

from email.mime.text import MIMEText
import smtplib
import sys

#smtpaddr = 'smtp.163.com'
smtpaddr = 'smtp.qq.com'
myemail='123456789@qq.com'
#password='mypassword'
f = open('/usr/local/zabbix/alertscripts/password','r')
password = f.readline()

recvmail=sys.argv[1]
subject=sys.argv[2]
content=sys.argv[3]

subject = u'%s' % subject
msg = MIMEText("""%s"""%(content), "plain", "utf-8")

msg['Subject'] = subject
msg['From'] = myemail
msg['To'] =  recvmail

try:
        server = smtplib.SMTP()
        server.connect(smtpaddr, "25")
        server.starttls()
        server.login(myemail, password)
        server.sendmail(myemail, recvmail.split(','), msg.as_string())
        server.quit()
        print "success"
except Exception, e:
        print "fail: "+str(e)

 

posted @ 2018-07-10 19:55  KubeSec  阅读(774)  评论(1编辑  收藏  举报