• (60)zabbix网络发现介绍Network Discovery


    网络发现简介

    网络发现有什么用?网络发现怎么配置?

    我们带着这两个问题开始我们的网络发现之旅。

    比如小明有100台服务器,不想一台台主机去添加,能不能让zabbix自动添加主机呢,当然可以,网络发现便是这个功能,当然前提条件是所有服务器都已经安装了agent或者snmp(其实也可以不用,鉴于我们大部分功能都用agent,所以请安装上agent),server扫描配置好的ip段,自动添加host,自动给host link模板,自动加到主机组里等等

    网络发现功能让我们能更快速的部署zabbix、简化zabbix管理、并且在经常变动的环境里面也不需要花太多的精力,毕竟网络发现也能随时变化。虽然网络发现能干很多事情,但是它无法发现网络拓扑。

    zabbix网络发现基于如下信息

    • ip范围
    • 可用的外部服务(FTP, SSH, WEB, POP3, IMAP, TCP, etc)
    • 来自zabbix agent的信息
    • 来自snmp agent的信息

    网络发现由两个阶段组成:discovery和actions

    Discovery发现

    zabbix定期扫描网络发现规则中的ip范围,每个规则中都定义了一组需要检测的服务,在这些ip范围内一一扫描

    网络发现模块每次检测到service和host(ip)都会生成一个discovery事件

    如下是事件:

    时间 条件
    Service Up zabbix检测到可用的service
    Service Down zabbix无法检测到service
    Host Up 某个ip上至少有一个service是up状态
    Host Down 所有service都无响应
    Service Discovered 一个service首次被发现或者在维护后从新归队
    Service Lost service在up之后又丢失了
    Host Discovered 一个host首次被发现或者在维护后从新归队
    Host Lost 一个host在up之后又丢失了

    Actions动作

    zabbix所有action都是基于发现事件,例如:

    • 发送通知
    • 添加/移除主机
    • 启用/禁用主机
    • 添加主机到组
    • 从组中移除主机
    • 主机link模板/unlink模板
    • 执行远程脚本命令

    创建主机
    discovery发现主机事件产生之后,接下来需要执行discovery action,在action中选择添加主机操作、并且将主机加入某个组以及link某个模板等等。更具体操作请关注下一篇文章。

    那么主机名怎么定义呢?

    首先监控端(server/proxy)通过ip泛解析主机名(如果失败了,不会重新尝试),如果解析成功了,那么zabbix将会使用这个主机名,否则直接使用ip地址

    如果主机名相同怎么办?比如都叫ttlsa-server,那么第一台主机名会定义为ttlsa-server,第二台为ttlsa-server_2,第三台为ttlsa-server_3,以此类推。

    action配置里的条件包含设备类型、IP、状态、uptime/downtime等等。


    添加主机接口

    主机接口规则如下:

    • 服务检测 - 例如,成功检测到一个SNMP服务,那么创建snmp接口
    • 如果主机同时zabbix agent和snmp请求作出响应,那么会同时创建这两种接口
    • 如果使用agent或者snmp作为唯一性指标,先通过哪个接口发现主机,那么哪个接口就作为默认接口,其他的作为附加接口。
    • 如果一开始只响应zabbix agent的检测,那么他只会创建agent接口。如果后面响应了snmp检测,那么他又会增加snmp接口
    • 如果有三台独立的主机ABC,一开始使用IP地址来作为唯一标识。可以看到discovery有三条记录。此时我们修改发现规则,让他们有相同的唯一标识。例如自定义一个keysystem.dis,这个key统一输出值"ttlsa",这样A的接口成了默认的,B和C都变成了附加到A主机上。我们可以发现一个很明显的变化。在discovery接口中依旧有3条记录,但是"discovered device"这列显示的A主机的接口,”monitored host“这列显示的都是A主机的名称,”Uptime/downtime“这列只有A主机有值,B和C都为空。从这里我们能看到唯一标识是多重要,如果唯一标识不是唯一,那么有的主机会被认为是同一台
  • 相关阅读:
    The Collections Module内建collections集合模块
    生成器接受和返还功能在执行过程中的详解以及生成器实现协同
    写python中的装饰器
    windows下载Mysql-python
    分别用单线程和多线程运行斐波那契、阶乘和累加和
    TCP客户端和服务器间传输数据遇到的TypeError: a bytes-like object is required, not 'str'问题
    python的property属性
    python的伪私有属性
    使用栈实现中缀表达式转为后缀表达式和后缀表达式的求解
    公众帐号如何向用户发送emoji表情(php版,附emoji编码表)
  • 原文地址:https://www.cnblogs.com/wyzhou/p/10838848.html
Copyright © 2020-2023  润新知