zoukankan      html  css  js  c++  java
  • zabbix客户端自动注册

    1. 概述

    上一篇内容《zabbix自动发现配置》,大概内容是zabbix server去扫描一个网段,把在线的主机添加到Host列表中。我们本篇内容与上篇相反,这次是Active agent主动联系zabbix server,最后由zabbix server将这些agent加到host里。对于需要部署特别多服务器的人来说,这功能相当给力。所有服务器批量装好zabbix agent,server配置好trigger,所有的服务器都配置好了,非常快速。

    2. 配置

    2.1配置文件修改

    指定server ip

    修改Hostname

    关于主机名:如果zabbix_agentd.conf配置有定义Hostname,那么zabbix会使用这个Hostname命名,否则agent的主机名(hostname得来的)

    修改metadataitem

    2.2 配置action

    步骤:configuration>>action>>Event source(选择Auto registration)>>Create Action,我们按如下步骤来定义个action

    2.2.1 action选项卡

    hostmetadata

    定义Action名称,以及发送消息的主题和内容,使用默认的就行了

    2.2.2 Conditions选项卡

    hostmetadata

    Host metadata包含Linux字符的主机将会触发 2.2.3的操作,什么是metadata,文章的下半段会专门讲解。

    2.2.3 operations选项卡

    hostmetadata

    满足条件的active host发起请求,server会完成三个动作:

    • 把agent加到host列表
    • 把agent加入linux servers组
    • agent主机link模板Template OS linux

    3. 查看结果

    查看/tmp/zabbix_server.log我们能看到如下内容:

    看到如上内容,表明host增加成功,此时此刻的host列表如下:

    hostmetadata

    4. HostMetadataItem与HostMetadata

    作用:用于标示主机,通过该符号能够把主机区别开来。比如我们经常用它来区分linux与windows系统,这样才能分别给他们设置组与template等等

    4.1 HostMetadataItem用法

    它的值来之key

    4.2 HostMetadata用法

    他的值是直接定义的

    通过使用各式各样的metadata我们可以用于区分各个主机,来达到我们各种需求。

    ###############################################################################################

    host metadata是zabbix2.2新增加的功能,该功能在zabbix-agent端可以自定义条件,在选择自动注册的时候,zabbix-server端可以根据host metadata来选择条件,从而实现更多的条件筛选。

    在zabbix_agentd.conf中需配置一下两个参数:

      •HostMetadata=字符串:长度范围为0~255

      •HostMetadataItem=item:用于Item获取数据。这里的Item可以设置为system.uname,或者是其他获取到的字符串,长度限制为0~255

    1、配置HostMetadataItem和HostMetadata参数

    1 [root@AY1405191727556 ~]# vim /etc/zabbix/zabbix_agentd.conf
    2 HostMetadataItem=system.uname
    3 HostMetadata=worldjoy worljdoy_host

    2、在web端设置规则

    3、查看结果

    添加完成

    ##################################################################################################

    zabbix的网络自动发现是一个非常强大的功能,该功能可以完成以下工作

      •快速发现并添加主机。

      •简单的管理。

      •随着环境的改变而快速搭建监控系统。

    网络发现基于以下信息

      •ip地址段

      •基于服务的FTP、SSH、WEB、POP3、IMAP、TCP等。

      •从zabbix-agent接收到的信息。

      •从snmp agent接收到的信息。

    网络发现功能不能做到的事情是网络拓扑图的发现。

    网络自动发现的两个工作流程是:Discovery(发现、探索)和Actions(动作)。

    下面以一个例子来介绍如何配置网络发现。

    进入web前段,单机Configuration->Discovery-Creata discovery rule

    创建自动添加到相应模板的规则

    选择Discovery

    注意discovery rule是添加前面定义的discovery rule项目

    添加完后当主机发现的时候,zabbix就会启动网络发现进程,并按照设定的扫描规则去发现设备,如下图(在monitoring-》discovery)

     可以看到,zabbix的网络自动发现功能的确很强大。在很短的时间内就可以自动添加成百上千台机器的监控,其实自动添加模板和自动分组的功能更是自动发运维中的利器。

    #############################################################################################

    Zabbix 自动发现(Discovery)功能使用

    随着监控主机不断增多,有的时候需要添加一批机器,特别是刚用zabbix的运维人员需要将公司的所有服务器添加到zabbix,如果使用传统办法去单个添加设备、分组、项目、图像…..结果应该是让人吐的结果。

    鉴于这个问题我们可以好好利用下Zabbix的一个发现(Discovery)模块,进而来实现自动刚发现主机、自动将主机添加到主机组、自动加载模板、自动创建项目(item)、自动创建图像,下面我们来看看这个模块如何使用。

    一、Zabbix 创建发现规则创建发现规则Configuration ---- discovery ---- Create discovery rule

    clip_image002

    clip_image004

    配置基本信息 配置Checks  添加完checks之后 点击最下面的add添加保存即可

    OK 规则已经创建完毕了

    下面开始让他自动加入到组自动创建图形吧

    二、主机自动加入主机组并关联模板

    上面我们了解了如何自动发现主机,那么发现主机之后我们要做什么呢?

    将主机加入主机组、并关联相应的模板!这样一整个流程就完善了,那么如何做呢?我们上面已经发现了主机接下来要对主机做操作

    所以需要一个action (动作)来执行一些列的操作,下面我们来看具体操作。

    2.1、为discovery(发现)创建action(动作)Configuration ---- Actions ---- Event source(选择Discovery) ---- Create action

    clip_image006

    2.1.1、输入 Action 名字

    clip_image008

    2.1.2、添加触发Action的条件 这里添加了三个条件 分别是 “ip地址范围”、“服务类型” 和 “Discovery 状态” 

    clip_image010

    2.2、创建操作  2.2.1、“Add host ”添加主机

    “Add to host group” 将主机添加到主机组、选择要添加到的主机组

    “Link to template” 链接到模板、选择相应的模板 这里我定义了 发现主机就 “添加主机(Add host)”并 “添加到主机组(Add to host groups)”、“链接到相应的模板(Link to template)” 

    clip_image012

    点击“Add” 添加 添加完成之后效果如下  Ok 至此发现主机、添加主机并将主机添加到主机组 链接模板 全部完毕看看效果吧Monitoring ---- Discovery ----选择 自定义的发现规则下面是我定义的一个发现规则的效果 如图是发现的主机 查看主机以及主机相关的图像

    clip_image014

    自动发现规则还可以针对网段:

    clip_image016

    clip_image018

    zabbix-agent主动注册服务端的

    简述:

    当主机分布在不同的城市,比如不同的云环境中时,使用主动发现就不好处理了,使用自动注册的方式非常适合在云环境中的部署。

    1.配置客户端:

    vim /etc/zabbix/zabbix_agentd.conf

    配置以下三项:

    # 主动模式下的zabbix服务端

    ServerActive=zbx.chinasoft.com

    # 主机名(这个会自动加入到zabbix-server断的主机显示中)

    Hostname=auto_register_agent01

    # 作为server端的判断条件入口

    HostMetadataItem=system.uname

    clip_image020

    重启生效

    service zabbix-agent restart

    2.配置服务端

    Configuration --> Action --> Auto registion --> Create action

    clip_image022

    Action

    Name: action_for_auto_register

    Default subject: Auto registration: {HOST.HOST}

    Host name: {HOST.HOST}

    Host IP: {HOST.IP}

    Agent port: {HOST.PORT}

    clip_image024

    Conditon:

    Host metadata like Linux

    clip_image026

    Opertions:

    Send message to users: Admin (Zabbix Administrator) via weixin

    Add to host groups: Linux servers

    Link to templates: Template OS Linux

    clip_image028

    可以通过在服务端定位日志排错:

    grep auto_register_agent01 /var/log/zabbix/zabbix_server.log

    可以看到微信收到注册成功的通知

    clip_image030

  • 相关阅读:
    A 第一课 链表
    CSS基础_01:
    html基础(2)
    冒泡_选择算法
    高等数学以及Python 实现
    ubuntu18.04 镜像下载
    MatplotLib 第二部分
    一件很好笑的事情
    HIVE文件
    一个关于消息结构体的讨论
  • 原文地址:https://www.cnblogs.com/wuhg/p/10431109.html
Copyright © 2011-2022 走看看