• 如何实现Zabbix的主动注册功能


    主动注册(Active Agent Auto-Registration),顾名思义,无需在Zabbix Web上手动添加host信息,即可实现主机的监控。

    它是由Agent主动向Server注册。

    相对于另一项类似功能-网络发现,它无需知道Agent端的IP地址段和操作系统版本信息,使用上更灵活。

    创建自动注册规则

    Configuration -> Actions -> Create action -> Auto registration

    配置Action

    填写Action的名字

    设置Conditions

    其中,New condition有三种类型

    1. Host metadata

    2. Host name

    3. Proxy

    Host metadata是Zabbix 2.2新增的功能,在之前的版本中,只有Host name和Proxy两个选项,

    其中,Host name判断的是Agent配置文件中Hostname的值。

    Proxy需给定proxy的名字。

    在实际的生产环境中并不能满足需求,因为有时候服务器的主机名并没有规律,譬如云环境下。

    Host metadata给出了这种场景下的解决方案,

    它在Agent配置文件中提供了两个配置参数。

    HostMetadata和HostMetadataItem

    ### Option: HostMetadata
    #       Optional parameter that defines host metadata.
    #       Host metadata is used at host auto-registration process.
    #       An agent will issue an error and not start if the value is over limit of 255 characters.
    #       If not defined, value will be acquired from HostMetadataItem.
    #
    # Mandatory: no
    # Range: 0-255 characters
    # Default:
    # HostMetadata=
    
    ### Option: HostMetadataItem
    #       Optional parameter that defines an item used for getting host metadata.
    #       Host metadata is used at host auto-registration process.
    #       During an auto-registration request an agent will log a warning message if
    #       the value returned by specified item is over limit of 255 characters.
    #       This option is only used when HostMetadata is not defined.
    #
    # Mandatory: no
    # Default:
    # HostMetadataItem=

    其中

    HostMetadata是手动指定,用于定义主机的元数据,类似于描述。

    譬如 HostMetadata=Linux

    HostMetadataItem需填写item,通常设置为system.uname。

    system.uanme的返回值如下:

    # zabbix_get -s node1 -k system.uname
    Linux node1 2.6.32-573.el6.x86_64 #1 SMP Wed Jul 1 18:23:37 EDT 2015 x86_64

    设置Operations

    在这里,可以执行如下操作:

    Send message

    Remote command

    Add  host

    Add to host group

    Link to template

    Disable host

    在这里,我设置了如下操作:

    Add host,Link to template,Send message

    修改zabbix客户端配置文件

    [root@node2 ~]# vim /etc/zabbix/zabbix_agentd.conf

    主要是配置如下两个选项

    ServerActive=192.168.244.30
    HostMetadataItem=system.uname

    启动zabbix客户端

    [root@node2 ~]# service zabbix-agent start

    验证node2是否自动注册成功

    1. 最直观的是查看Configuration -> Hosts

    如图所示,node2已添加成功。

    2. 因为我之前设置Operations的时候,添加了Send message操作(类似于利用脚本实现告警),所以可通过Administration -> Audit -> Actions查看主机是否自动注册成功。

    3. 如果没有添加成功,可根据Zabbix Server端和Agent端的错误日志进行定位。

  • 相关阅读:
    MD5算法MFC实现
    asp.net2.0新特点
    file format
    C专家编程第二章学习笔记
    Bye Czech golden generation
    中间层
    学完谭C之后
    C语言学习之路
    荀子劝学篇
    C语言常用转义字符表
  • 原文地址:https://www.cnblogs.com/ivictor/p/6801286.html
Copyright © 2020-2023  润新知