1 网络发现
概述
Zabbix为用户提供了高效灵活的网络自动发现功能。
适当的网络发现配置可以:
加快Zabbix部署
简化管理
无需过多管理,也能在快速变化的环境中使用Zabbix
Zabbix网络发现基于以下信息:
IP范围
可用的外部服务(FTP、SSH、WEB、POP3、IMAP、TCP等)
来自Zabbix客户端的信息(仅支持未加密模式)
来自snmp客户端的信息
不支持:
- 发现网络拓扑
网络发现由两个阶段组成:发现和动作。
发现
Zabbix定期扫描网络发现规则中定义的IP范围,并为每条规则单独配置了检测的频率。
请注意,一条发现规则始终由一个发现进程处理,IP范围不会在多个发现进程之间分割。
每条规则都定义了一组服务检测,对IP范围执行检测。
发现检测与其他检测独立处理。如果一些检测未找到服务(或失败),其他检测则仍会处理。。
每次检测到服务和主机(IP)后,网络发现模块都会生成一个发现事件。
事件 | 服务结果检测 |
---|---|
服务被发现 | 服务首次被发现或者服务由“关闭”变“开启” |
服务开启 | 服务持续“开启” |
服务丢失 | 服务由“开启”变“关闭” |
服务关闭 | 服务持续“关闭” |
主机被发现 | 在主机的所有服务都“关闭”之后,至少有一个服务重新“开启” |
主机开启 | 主机至少有一个服务持续“开启” |
主机丢失 | 主机的所有服务在至少一个是“开启”之后全部是“关闭” |
主机关闭 | 主机的所有服务都持续“关闭” |
动作
Zabbix 所有动作都是基于发现事件,例如:
发送通知
添加/删除主机
启用/禁用主机
添加主机到组
从组中删除主机
将主机链接到/取消链接模板
执行远程脚本命令
基于事件的网络发现动作, 可以根据设备类型、IP地址、状态、运行时间/停机时间等进行配置,查看操作 and 条件页面。
创建主机
如果选择添加主机操作,那么主机会被添加,即使添加主机操作未被执行,通过下列的操作仍然可以添加主机,这样的操作是:
启用主机
禁用主机
添加主机到主机组
将主机链接到模板
当添加主机时,如果反向查找失败,那么主机名就是DNS反向查找的结果或者是IP地址。查找是从Zabbix 服务器或Zabbix代理服务器执行的,具体取决于自动发现的执行。如果在Zabbix代理服务器上查找失败,则不会在Zabbix服务器上重试。如果具有相同名称的主机已经存在,那么下一个主机将会把_2附加在主机名后,依次附加_3等。
创建的主机会被添加到主机群组中的Discovered hosts下(默认情况下,在管理 → 一般 →其他 可以进行配置),如果希望将主机添加到另一个主机群组中,添加一个 从主机群组中删除 的操作(需要指定“Discovered hosts”),并且添加一个添加到主机群组的操作(需要指定其他的主机群组),因为主机必须属于主机群组。
如果主机已经存在,且自动发现中同时存在已发现的IP地址,那么将不会创建新的主机,但是,如果自动发现的操作包含(链接模板,添加到主机群组等),则会在已经存在的主机上执行相应的操作。
移除主机
如果已发现的实体不在自动发现规则的IP范围内,则由网络发现规则创建的主机将会被自动删除。主机被将立即删除。
添加主机时的创建接口
当主机作为网络发现的结果被添加时,主机的接口根据以下规律来创建的:
侦测到服务 - 例如,如果SNMP检测成功,那么将会创建一个SNMP接口;
如果主机响应Zabbix客户端和SNMP的请求,那么这两种类型的接口都会被创建;
如果唯一性准则是Zabbix客户端或是SNMP返回的数据,主机将会创建首先被发现的接口作为默认接口,其他IP地址将会作为附加接口被添加。
如果主机只响应Zabbix客户端检测,则仅创建Zabbix客户端接口。如果稍后开始响应SNMP检测,那么SNMP接口将会作为附加接口被添加。
如果最初创建了3台不同的主机,并且已经被自动发现的“IP”唯一性准则发现,然后修改自动发现规则,使主机A、B和C具有相同的自动发现的唯一性准则,则为第一台主机A创建B和C作为附加接口, B和C作为单个主机仍然存在。在监控中 → 自动发现中,添加的接口将以黑色字体和缩进形式显示在“已发现的设备”这一列中,但在“已监控的主机”这一列将只显示第一个创建的主机A。由于被认为附加接口的IP,所以不测量主机B和C的“在线时间/断线时间”。