配置用于发现主机和服务的网络发现规则:
所有必填输入字段都标有红色星号。
参数 | 描述 |
---|---|
Name | 规则的唯一名称。例如,“本地网络”。 |
Discovery by | 发现由以下执行: 服务器 - 由 Zabbix server Proxy - 由 Zabbix proxy(在 proxy 名称字段中选择) |
IP range | 发现的IP地址范围。它可以有以下格式: 单个IP:192.168.1.33 IP地址范围:192.168.1-10.1-255。范围受总覆盖地址数的限制(少于64K)。 IP掩码:192.168.4.0/24 支持的IP掩码: /16 - /30 对于 IPv4 地址 /112 - /128 对于 IPv6 地址 列表:192.168.1.1-255,192.168.2.1-100,192.168.2.200,192.168.4.0/24 此字段支持空格、制表符和多行。 |
Update interval | 此参数定义Zabbix执行规则的频率。 间隔是在上一次发现实例结束后的测量,因此没有重叠。 支持 Time suffixes,例如:30s,1m,2h,1d。 支持 User macros。 注意 如果使用用户宏并且其值更改(例如,1w → 1h),下一次检查将根据之前的值执行(使用示例值,远在未来)。 |
Maximum concurrent checks per type | 设置每个服务检查的发现线程(工作线程)的最大数量,用于并行处理发现检查: 一个 - 一个线程 无限制 - 线程数量无限制(但不超过 StartDiscoverers 参数中的数量) 自定义 - 设置自定义线程数(0-999) 请注意,所有具有SNMPv3异步服务检查的发现规则都由一个工作线程处理,这是由于libsnmp实现的特殊性,即增加工作线程数量不会提高发现速度。 |
Checks | Zabbix将使用此列表中的检查进行发现。点击 ![]() 支持的检查:SSH,LDAP,SMTP,FTP,HTTP,HTTPS,POP,NNTP,IMAP,TCP,Telnet,Zabbix agent,SNMPv1 agent,SNMPv2 agent,SNMPv3 agent,ICMP ping。 基于协议的发现使用 net.tcp.service[] 功能测试每个主机,除了SNMP,它 queries 一个SNMP OID。Zabbix agent 通过查询一个 监控项 以未加密模式进行测试。请参阅 agent items 以获取更多详细信息。 “端口”参数可以是以下之一: 单个端口:22 端口范围:22-45 列表:22-45,55,60-70 自Zabbix 7.0起,所有服务检查都是异步执行的,除了LDAP检查。 自Zabbix 7.0起,HTTP/HTTPS检查通过libcurl进行。如果 Zabbix server/proxy 编译时没有libcurl,那么HTTP检查将像以前版本一样工作(即作为TCP检查),但HTTPS检查将无法工作。 |
Device uniqueness criteria | 唯一性标准可以是: IP地址 - 不处理多个单IP设备。如果已存在相同IP的设备,它将被视为已发现,不会添加新主机。 <发现检查> - 要么 Zabbix agent 要么 SNMP agent 检查。 请注意,发现期间使用的唯一性标准与执行操作时系统中的主机识别不同。发现期间的唯一性标准定义了两个或多个发现的设备是否相同(或不同),而Zabbix中主机识别的唯一标准是IP地址(参见 Host creation)。 |
Host name | 使用以下设置创建主机的技术主机名: DNS名称 - DNS名称(默认) IP地址 - IP地址 <发现检查> - 收到的 string 发现检查值(例如,Zabbix agent,SNMP agent 检查) 另请参阅:Host naming。 |
Visible name | 使用以下设置创建主机的可见主机名: 主机名 - 技术主机名(默认) DNS名称 - DNS名称 IP地址 - IP地址 <发现检查> - 收到的 string 发现检查值(例如,Zabbix agent,SNMP agent 检查) 另请参阅:Host naming。 |
Enabled | 如果选中复选框,规则处于活动状态,将由 Zabbix server 执行。 如果未选中,规则不处于活动状态。它不会被执行。 |
在大量并发检查的情况下,可能会耗尽discovery manager的文件描述符限制。
所需文件描述符的数量等于发现工作线程的数量乘以1000。 默认情况下,有5个discovery workers,而系统的软限制大约为1024。
如果接近这个限制,Zabbix会减少每种类型每个工作线程的默认并发检查数量,并在日志文件中写入警告。 但是,如果用户为Maximum concurrent checks per type(每种类型最大并发检查数)设置的值高于Zabbix计算的值,Zabbix将为一个工作线程使用用户定义的值。
在这个例子中,会演示如何给本地IP地址范围192.168.1.1-192.168.1.254设置网络发现规则。
需要在这个场景中实现:
为我们的 IP 范围定义网络发现规则。
Zabbix 将尝试在 IP 范围 192.168.1.1 到 192.168.1.254 中发现主机,通过连接到 Zabbix agent并获取 system.uname 键的值来完成。从agent收到的值可用于命名主机,并根据不同的操作系统应用不同的操作。例如,将 Windows 服务器关联到模板 Windows,将 Linux 服务器关联到模板 Linux。
该规则将每 10 分钟执行一次。
添加此规则后,Zabbix 将自动启动发现并生成基于发现的事件,以供进一步处理。
定义一个网络发现 动作 ,用于 添加发现的Linux服务器到对应的组并链接到对应模板。
同时满足下列条件才会使动作生效:
动作会执行下列操作:
定义网络发现动作,添加发现的Windows服务器到对应组并链接到对应模板。
定义网络发现动作,删除丢失的(lost)主机。
如果 "Zabbix agent" 服务停止(down)时间超过24小时(86400秒),则会删除对应主机。