zoukankan      html  css  js  c++  java
  • zabbix监控流程


    先抛开zabbix监控的其他架构不谈,从最简单的server-agent模式说起,即监控主机-被监控主机(主动模式、被动模式主要是影响数据的采集方式和服务端的负载压力),首先是zabbix最重要的五个组成部分:Item、Trigger、Action、Media、User(其实应该还有个Event,不过这个表现的不直观),翻译一下就是监控元素、触发器、动作、报警介质、用户

    1.item

    Items are the ones that gather data from a host. 意思就是监控采集的项目

    1.1先添加一个需要监控的主机



    1.2 设置item监控项





    2.Trigger

    顾名思义触发器,也就是将采集来的item值进行一定的判断,需要注意的点有两个,一个是serverity,即报警等级,还有一个是判断的逻辑,判断逻辑分单机判断和触发依赖




    3.Action

    action就是server对事件响应(Event)需要做相应的措施了,关键点是四个,一是如何触发action,而是action具体使用什么方式,三是发送的内容,四是动作的对象。action支持的Event有四种:用大白话讲就是Trigger触发时、discover rule文件生效时、自动发现新服务器时以及server本身出问题时。最主要的就是Trigger触发来产生action,在创建action时会有"condition"这个选项来设置触发器,而action的方式是由media来决定,media有五种,常见的是mail、sms、script这三种,邮件的方式只需要在创建一个media方式选邮件,然后填写smtp服务器地址即可,邮件的内容是在action选项卡里面设置,支持普通的字符串以及表达式比如{TRIGGER.NAME}这种,这个值就是对应触发的Trigger的名字

    3.1 报警媒介

    3.1.1 使用本地虚拟邮箱

    • yum安装mailx
    yum -y install mailx
    
    
    • 设置邮箱白名单


    白名单的邮箱地址可以在服务端/var/spool/mail/zabbix查找

    Return-Path: <zabbix@localhost.localdomain>
    Received: from localhost (localhost [127.0.0.1])
    	by cl130.localdomain (Postfix) with SMTP id 62C0B1098C
    	for <3558689766@qq.com>; Wed, 22 May 2019 23:20:29 -0400 (EDT)
    From: <zabbix@localhost.localdomain>
    To: <3558689766@qq.com>
    Date: Wed, 22 May 2019 23:20:29 -0400
    Subject: Problem: /etc/passwd has been changed on 192.168.163.129
    MIME-Version: 1.0
    Content-Type: text/plain; charset="UTF-8"
    Content-Transfer-Encoding: base64
    Message-Id: <20190523032029.62C0B1098C@cl130.localdomain>
    
    
    
    • 添加告警媒介
      • 点击配置——报警媒介类型——创建媒介类型,页面配置如下


    • 设置好了,就可以触发一下看效果了

    3.1.2 web配置第三方邮箱

    • 添加告警媒介

      • 点击配置——报警媒介类型——创建媒介类型,页面配置如下




    • 设置好了,就可以触发一下看效果了


    3.1.3 脚本告警

    • yum安装mailx

    • 修改/etc/mail.rc

    //添加
    set from=发件箱
    set smtp=smtp.qq.com //我用的是qq,可以根据使用邮箱的不同来填不同内容
    set smtp-auth-user=发件箱
    set smtp-auth-password=发件箱授权码
    set smtp-auth=login
    
    
    • 重启postfix服务

    • 在服务端上写发送告警信息脚本

    [root@cl130 alertscripts]# vim /usr/local/share/zabbix/alertscripts/sendmail.sh
    
    #!/bin/bash
    subject=$(echo $2 |tr "
    " "
    ")
    message=$(echo $3 |tr "
    " "
    ")
    echo "$message" | /usr/bin/mail -s "$subject" $1 &>/tmp/sendmail.log
    
    [root@cl130 alertscripts]# cd ..
    [root@cl130 alertscripts]# chown -R zabbix.zabbix alertscripts
    [root@cl130 alertscripts]# chmod +x scripts/sendmail.sh
    
    //重启服务
    [root@cl130 ~]# pkill zabbix
    [root@cl130 ~]# zabbix_server 
    [root@cl130 ~]# zabbix_agentd 
    [root@cl130 ~]# ss -ntl
    State       Recv-Q Send-Q               Local Address:Port                 Peer Address:Port 
    LISTEN      0      128                             *:10050                           *:*     
    LISTEN      0      128                              *:10051  
    // 测试脚本
    [root@cl130 alertscripts]# bash sendmail.sh 3558689766@qq.com test hello world
    
    

    • 添加告警媒介
      • 点击配置——报警媒介类型——创建媒介类型,页面配置如下



    • 触发告警,测试效果

  • 相关阅读:
    stenciljs 学习四 组件装饰器
    stenciljs 学习三 组件生命周期
    stenciljs 学习二 pwa 简单应用开发
    stenciljs ionic 团队开发的方便web 组件框架
    stenciljs 学习一 web 组件开发
    使用npm init快速创建web 应用
    adnanh webhook 框架 hook rule
    adnanh webhook 框架 hook 定义
    adnanh webhook 框架request values 说明
    adnanh webhook 框架execute-command 以及参数传递处理
  • 原文地址:https://www.cnblogs.com/cljhfy/p/10904686.html
Copyright © 2011-2022 走看看