zabbix配置

一、配置邮件报警

1、脚本

# cd /usr/lib/zabbix/alertscripts

# vim Sendmail.sh

#!/bin/bash
file=/tmp/zabbix_mail.txt
echo "$3" > $file
dos2unix -k $file
/bin/mail -s "$2" $1 < $file
# echo "$3" | mail -s "$2" $1

2、安装邮件发送软件mailx

# yum install mailx

测试能否发送邮件:# echo "zabbix test mail " |mail -s "zabbix-title" [email protected]

3、安装dos2unix(用于解决邮件内容变成附件的问题)

# yum install dos2unix

4、创建报警媒介

  • {ALERT.SENDTO}
  • {ALERT.SUBJECT}
  • {ALERT.MESSAGE}

5、配置用户报警媒介

注:多个收件人用空格分隔

6、配置动作

【故障】服务器:{HOST.IP}发生: {TRIGGER.NAME}故障!

告警级别:{TRIGGER.SEVERITY}

告警主机:{HOST.HOST}

告警IP:{HOST.IP}

告警时间:{EVENT.DATE} {EVENT.TIME}

告警内容:{TRIGGER.NAME}

当前值:{ITEM.VALUE}

告警状态:{TRIGGER.STATUS}

告警ID:{EVENT.ID}

【恢复】服务器:{HOST.IP}: {TRIGGER.NAME}已恢复!

告警级别:{TRIGGER.SEVERITY}

告警主机:{HOST.HOST}

告警IP:{HOST.IP}

恢复时间:{EVENT.RECOVERY.TIME}

告警内容:{TRIGGER.NAME}

当前值:{ITEM.VALUE}

告警状态:{TRIGGER.STATUS}

告警ID:{EVENT.ID}

二、微信告警

配置微信报警

1、注册微信企业号

https://qy.weixin.qq.com/

2、登录企业号

3、创建部门

4、脚本

#!/usr/bin/env python
# -*- coding: utf-8 -*-

import urllib,urllib2,json
import sys
reload(sys)
sys.setdefaultencoding( "utf-8" )

class WeChat(object):
        __token_id = ‘‘
        # init attribute
        def __init__(self,url):
                self.__url = url.rstrip(‘/‘)
                self.__corpid = ‘XXXXXXXX‘
                self.__secret = ‘XXXXXXXXXXXXXXXXX‘

        # Get TokenID
        def authID(self):
                params = {‘corpid‘:self.__corpid, ‘corpsecret‘:self.__secret}
                data = urllib.urlencode(params)

                content = self.getToken(data)

                try:
                        self.__token_id = content[‘access_token‘]
                        # print content[‘access_token‘]
                except KeyError:
                        raise KeyError

        # Establish a connection
        def getToken(self,data,url_prefix=‘/‘):
                url = self.__url + url_prefix + ‘gettoken?‘
                try:
                        response = urllib2.Request(url + data)
                except KeyError:
                        raise KeyError
                result = urllib2.urlopen(response)
                content = json.loads(result.read())
                return content

        # Get sendmessage url
        def postData(self,data,url_prefix=‘/‘):
                url = self.__url + url_prefix + ‘message/send?access_token=%s‘ % self.__token_id
                request = urllib2.Request(url,data)
                try:
                        result = urllib2.urlopen(request)
                except urllib2.HTTPError as e:
                        if hasattr(e,‘reason‘):
                                print ‘reason‘,e.reason
                        elif hasattr(e,‘code‘):
                                print ‘code‘,e.code
                        return 0
                else:
                        content = json.loads(result.read())
                        result.close()
                return content

        # send message
        def sendMessage(self,touser,message):

                self.authID()

                data = json.dumps({
                        ‘touser‘:touser,
                        ‘toparty‘:"1",  #部门ID
                        ‘msgtype‘:"text",  
                        ‘agentid‘:"1",  #应用ID
                        ‘text‘:{
                                ‘content‘:message
                        },
                        ‘safe‘:"0"
                },ensure_ascii=False)

                response = self.postData(data)
                print response

if __name__ == ‘__main__‘:
        a = WeChat(‘https://qyapi.weixin.qq.com/cgi-bin‘)
        a.sendMessage(sys.argv[1],sys.argv[3])

5、创建报警媒介类型

  • corpid
  • secret
  • {ALERT.MESSAGE}

6、创建报警媒介

7、配置动作

【故障】服务器:{HOST.IP}发生: {TRIGGER.NAME}故障!

告警级别:{TRIGGER.SEVERITY}

告警主机:{HOST.HOST}

告警IP:{HOST.IP}

告警时间:{EVENT.DATE} {EVENT.TIME}

告警内容:{TRIGGER.NAME}

当前值:{ITEM.VALUE}

告警状态:{TRIGGER.STATUS}

告警ID:{EVENT.ID}

【恢复】服务器:{HOST.IP}: {TRIGGER.NAME}已恢复!

告警级别:{TRIGGER.SEVERITY}

告警主机:{HOST.HOST}

告警IP:{HOST.IP}

恢复时间:{EVENT.RECOVERY.TIME}

告警内容:{TRIGGER.NAME}

当前值:{ITEM.VALUE}

告警状态:{TRIGGER.STATUS}

告警ID:{EVENT.ID}

时间: 2024-11-14 12:21:52

zabbix配置的相关文章

47 监控系统基础及zabbix介绍、zabbix工作原理及安装配置、zabbix on CentOS7、zabbix配置

02    zabbix工作原理及安装配置 配置环境 node1192.168.1.120CentOS6.7 node2192.168.1.121CentOS6.7 1.安装配置zabbix #安装前准备 [[email protected] ~]#yum -y install mysql-server mysq [[email protected] ~]# mysql mysql> CREATE DATABASE zabbix CHARACTER SET utf8; mysql> GRANT

zabbix配置微信告警功能

Zabbix支持邮件,短信告警,但是邮件告警有明显的滞后性,短信告警近来又缺少可用的免费发送短信的软件.而如果使用微信告警,一来免费,二来消息也能第一时间传达到我们的手机,是一个很不错的告警媒介选择. 近期帮朋友的zabbix配置了微信的告警,故记录下来,供大家参考. 操作步骤: 一:注册微信企业号,配置相关人员和应用. 1:选择"通讯录",添加一个部门,并新增一个成员,成员添加完之后,成员需关注你注册的企业号. 2:新建一个zabbix告警的"消息型"应用,如下:

自动化运帷之分布式监控-zabbix 配置指南

zabbix 配置指南: Hosts zabbix中的hosts就是指你想监控的设备,如服务器.工作站.交换机等等.如果你想监控某个主机X的某个变量,你必须先创建一个主机X,然后再给该主机添加监控items.hosts可以被有组织的安排进host group中. 通过zabbix的前端web界面配置hosts: ? 1 Configuration->Hosts->Create Host 此页面中有5个表单:Host.Template.IPMI.Macros.Host inventory. Ho

zabbix配置介绍

zabbix配置介绍 zabbix配置内容比较多,我们要分为9大块来讲解.分别如下: 1.主机与组 不用多数,顾名思义,他是添加主机配置与组配置. 2.监控项 需要监控的项目,例如服务器负载可以使一个监控项.系统自带大部分监控项,一些特定的监控项我们可以自定义,自定义监控项的方法也会在<zabbix监控项>这节谈到. 3.触发器 什么情况下出发什么事情,称之为触发器.例如:定义如果系统负载大于10那么报警,这个东西可以称之为触发器. 4.事件 触发器状态变更.Discovery事件等 5.可视

zabbix 配置SNMP监控

什么是SNMP? 简单网络管理协议(SNMP),由一组网络管理的标准组成,包含一个应用层协议(application layer protocol).数据库模型(database schema)和一组资源对象. 该协议能够支持网络管理系统,用以监测连接到网络上的设备是否有任何引起管理上关注的情况.现在服务器.交换机.路由器.打印机等设备都支持SNMP协议. zabbix配置SNMP思路:(zabbix服务器是Linux系统) 第一步:zabbix服务器先安装SNMP服务,配置SNMP服务,设置开

Zabbix 配置Python邮件告警(3)

title: Zabbix 配置Python邮件告警(3) date: 2018-12-10 09:34:07 tags: Zabbix categories: Zabbix copyright: true --- Zabbix是一个非常强大的监控系统,是企业级的软件,来监控IT基础设施的可用性和性能.它是一个能够快速搭建起来的开源的监控系统,Zabbix能监视各种网络参数,保证服务器系统的安全运营,并提供灵活的通知机制以让系统管理员快速定位解决存在的各种问题,Zabbix系统几乎可用于任何系统

Zabbix 配置钉钉脚本告警(4)

title: Zabbix 配置钉钉脚本告警(4) date: 2018-12-10 11:50:21 tags: Zabbix categories: Zabbix copyright: true --- Zabbix是一个非常强大的监控系统,是企业级的软件,来监控IT基础设施的可用性和性能.它是一个能够快速搭建起来的开源的监控系统,Zabbix能监视各种网络参数,保证服务器系统的安全运营,并提供灵活的通知机制以让系统管理员快速定位解决存在的各种问题,Zabbix系统几乎可用于任何系统的监控过

Zabbix 配置QQ邮箱报警通知

zabbix绑定邮箱意义: 如果只是监测并不能满足需求,还需要通过邮件的方式对问题进行通知,这样便于我们及时发现并解决问题. 实验环境: 1.centos 7.6 系统2.可连接外网3.关闭防火墙,增强性 实验步骤 一.安装zabbix服务端 温馨提示:具体步骤参考博客 https://blog.51cto.com/13760351/2379953 二.安装zabbix代理端 1.下载安装包 rpm -ivh http://repo.zabbix.com/zabbix/3.5/rhel/7/x8

Zabbix配置企业钉钉报警

Zabbix配置企业钉钉报警 一.Zabbix简介1.zabbix(音同 z?bix)是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案.2.zabbix能监视各种网络参数,保证服务器系统的安全运营:并提供灵活的通知机制以让系统管理员快速定位/解决存在的各种问题.3.zabbix由2部分构成,zabbix server与可选组件zabbix agent.4.zabbix server可以通过SNMP,zabbix agent,ping,端口监视等方法提供对远程服务器/

zabbix配置部署

zabbix 实验环境: 服务端:192.168.36.131 客户端:192.168.36.129 iptables and selinux disabled 一.服务端配置 1.安装 # rpm -ivh http://repo.zabbix.com/zabbix/2.2/rhel/6/x86_64/ zabbix-release-2.2-1.el6.noarch.rpm # yum install zabbix-server-mysql zabbix-web-mysql 2.mysql数据