• zabbix网络发现 & 自动注册


    一、网络发现(不推荐)

    1.概述

    Zabbix为用户提供了高效灵活的网络自动发现功能。
    
    zabbix的网路发现,大概内容是 zabbix server 去扫描一个网段,把在线的主机添加到 Host 列表中。而主动注册,是Active agent 主动联系 zabbix server,最后由 zabbix server 将这些 agent 加到 host里。
    

    1)作用

    1.加快Zabbix部署
    2.简化管理
    3.无需过多管理,也能在快速变化的环境中使用Zabbix
    

    2)Zabbix网络发现基于以下信息

    1.IP范围
    2.可用的外部服务(FTP、SSH、WEB、POP3、IMAP、TCP等)
    3.来自Zabbix客户端的信息(仅支持未加密模式)
    4.来自snmp客户端的信息
    
    #不支持:发现网络拓扑
    
    #网络发现由两个阶段组成:发现和动作
    

    2.网络发现由两个阶段组成:发现和动作

    1)原理

    Zabbix定期扫描网络发现规则中定义的IP范围,并为每条规则单独配置了检测的频率。
    请注意,一条发现规则始终由一个发现进程处理,IP范围不会在多个发现进程之间分割。
    每条规则都定义了一组服务检测,对IP范围执行检测。
    
    发现检测与其他检测独立处理。如果一些检测未找到服务(或失败),其他检测则仍会处理。。
    

    2)事件

    每次检测到服务和主机(IP)后,网络发现模块都会生成一个发现事件。
    
    事件 服务结果检测
    服务被发现 服务首次被发现或者服务由“关闭”变“开启”
    服务开启 服务持续“开启”
    服务丢失 服务由“开启”变“关闭”
    服务关闭 服务持续“关闭”
    主机被发现 在主机的所有服务都“关闭”之后,至少有一个服务重新“开启”
    主机开启 主机至少有一个服务持续“开启”
    主机丢失 主机的所有服务在至少一个是“开启”之后全部是“关闭”
    主机关闭 主机的所有服务都持续“关闭”

    3)动作

    1.发送通知
    2.添加/删除主机
    3.启用/禁用主机
    4.添加主机到组
    5.从组中删除主机
    6.将主机链接到/取消链接模板
    7.执行远程脚本命令
    
    #基于事件的网络发现动作, 可以根据设备类型、IP地址、状态、运行时间/停机时间等进行配置,查看操作 and 条件页面。
    

    3.网络发现实践

    1)操作

       默认标题
            自动发现主机IP:{DISCOVERY.DEVICE.IPADDRESS} 
       消息内容 
            客户端名称: {DISCOVERY.SERVICE.NAME} 
            客户端端口: {DISCOVERY.SERVICE.PORT} 
            客户端状态: {DISCOVERY.SERVICE.STATUS}
    

    4.zaabbix网络发现总结

    1.网络发现速度太慢
    2.轮询扫描网段
    3.如果网段中存在不通的主机,会出现卡顿并且造成后续新增的服务器无法加入节点
    4.会导致server性能变缓慢,影响server性能
    

    5.实现流程

    前提:客户端hosts文件中配置自身ip对应主机名映射关系,服务端hosts文件中配置客户端ip和主机名映射关系

    web配置

    • 先启用,再进行编辑,或者可以重新创建

    • 注意:此处的更新间隔时间仅为测试操作,如果是生产环境需要将间隔时间设置稍长一些,避免出现ip范围主机未扫描完毕,又再次扫描。

    • 另外:此处的ip范围尽量不要将1-254主机一次性写入,会使用单个进程对1-254主机进行扫描,影响效率,建议使用多个自动发现规则,将1-254个主机分成几部分,则会使用多线程,并行进行处理,处理效率会更优。

    • 创建自动发现主机后执行动作

    • 如需对发现主机就做邮件报警操作,可对此设置发送邮件内容,标题和内容模板,可参考上文中的操作

    • 自动发现并监控

    二、自动注册(推荐)

    1.ACTIVE AGENT自动注册

    Zabbix Active agent可以实现自动注册,进而服务器对其进行监控。通过这种方式,无需在服务器上进行手动配置便可直接启动对新host的监控。
    
    当以前未知的active agent要求检查时,会发生自动注册。
    
    这样功能可以非常方便的自动监控新的Cloud节点。一旦在Cloud中有一个新节点,Zabbix将自动启动host的性能和可用性数据的收集。
    
    Active agent自动注册还支持对被添加的主机进行被动检查的监控。当active agent要求检查时,前提是在配置文件中已定义好了“ListenIP”或“ListenPort”配置参数,这些参数将发送到服务器。(如果指定了多个IP地址,则第一个将被发送到服务器。)
    
    服务器在添加新的自动注册主机时,使用接收到的IP地址和端口配置agent。如果没有接收到IP地址值,则使用传入连接的IP地址。如果没有接收到端口值,则使用10050
    
    # 划重点:(推荐原因)
    zabbix的网路发现,大概内容是 zabbix server 去扫描一个网段,把在线的主机添加到 Host 列表中。而主动注册,是Active agent 主动联系 zabbix server,最后由 zabbix server 将这些 agent 加到 host里。所以网络发现比较消耗server,不推荐。
    

    2.自动注册情况

    1.主机元数据信息发生变化
    2.手动添加主机,元数据信息有缺失
    3.手动切换主机,由另一台新的proxy监控
    4.同一台host的自动注册由新的proxy发出
    

    3.自动注册实践

    1)配置

    [root@m01 ~]# vim /etc/zabbix/zabbix_agentd.conf
    ServerActive=172.16.1.71			# 还是写自身agent的ip
    Hostname=m01					    # 这里一定要写自己agent的主机名,后面通过主机名进行发现
    
    [root@m01 ~]# systemctl restart zabbix-agent.service
    

    2)页面配置

    前提:agent和server端需要配置hosts文件,agent写自身ip对应主机名,server端写agent的ip对应主机名

    • 点击自动注册并进行创建

    • 包含项为agent主机名,模糊匹配

    • 执行动作,当发现主机后自动将主机加入到主机中监控,并关联对应模板

    • 效果显示(已自动出现并添加到主机监控项中)

  • 相关阅读:
    Python 异常处理
    Python File(文件) 方法
    python 文件定位
    globals() 和 locals() 函数
    python dir()函数
    python from…import* 语句
    python from…import 语句
    Python 模块
    python 匿名函数
    python 函数参数
  • 原文地址:https://www.cnblogs.com/tcy1/p/13681623.html
Copyright © 2020-2023  润新知