一、概述

Zabbix提供了有效和非常灵活的网络自动发现功能。

设置网络发现后你可以:

  • 加快Zabbix部署(自动添加主机、添加模板)
  • 简化管理(自动删除主机、删除模板、禁用主机)
  • 无需过多管理就能在快速变化的环境中使用Zabbix

Zabbix可以根据以下条件自动发现设备:

  • IP范围(根据IP网段、指定IP地址发现主机)
  • 可用的外部服务(FTP,SSH,WEB,POP3,IMAP,TCP等)
  • 来自 zabbix agent 的信息(仅支持未加密模式)
  • 来自 snmp agent 的信息

Zabbix目前暂不支持:

  • 发现网络拓扑(这点希望官方能够做到支持,就perfect了)

 

二、理解和配置

自动发现的配置其实比较简单,但是配置之前,我们先要理解他的过程,然后操作起来就更加简单了。

自动发现的过程分为2个阶段:

  • 发现目标/对象(扫描出目标)
  • 针对目标进行一系列操作(针对扫描的目标,对于符合自己条件的目标进行特定的操作)

所以,配置也是按照以上两步走。

第一步:配置发现规则

1、配置发现规则,选择 自动发现-->创建发现规则

zabbix icmp 自动发现 zabbix自动发现详解_ldap

zabbix icmp 自动发现 zabbix自动发现详解_ldap_02

 

2、配置发现规则

zabbix icmp 自动发现 zabbix自动发现详解_运维_03

 

第二步:配置动作

 1、选择 配置动作 -->创建动作

zabbix icmp 自动发现 zabbix自动发现详解_IP_04

zabbix icmp 自动发现 zabbix自动发现详解_网络_05

2、配置 动作

zabbix icmp 自动发现 zabbix自动发现详解_zabbix icmp 自动发现_06

 

 3、配置 条件

 条件类型如下:

条件类型        

支持的操作           

说明

主机IP

=

<>

指定要发现的主机的IP地址范围或要排除的范围。
= -主机IP在该范围内。
<> - 主机IP不在该范围内。
它可能有以下格式:
单IP: 192.168.1.33
IP地址范围: 192.168.1-10.1-254
IP mask: 192.168.4.0/24
List: 192.168.1.1-254, 192.168.2.1-100, 192.168.2.200, 192.168.4.0/24

自Zabbix 3.0.0起就提供列表格式的空格。

服务类型

=

<>

指定已发现服务的服务类型或者要排除的服务类型。

= - 匹配发现的服务。

<> -与发现的服务不匹配。

可用服务类型:SSH, LDAP, SMTP, FTP, HTTP, HTTPS (available since Zabbix 2.2 version), POP, NNTP, IMAP, TCP, Zabbix agent, SNMPv1 agent, SNMPv2 agent, SNMPv3 agent, ICMP ping, telnet (available since Zabbix 2.2 version).

服务端口

=

<>

指定发现的服务或的TCP端口范围或者要排除的TCP端口范围。

= - 服务端口在该范围内.

<> - 服务端口不在该范围内

发现规则

=

<>

指定发现规则或要排除的发现规则。

= - 使用这个发现规则。

<> - 使用除此之外的任何其他发现规则。

发现检查

=

<>

指定discovery check或要排除的discovery check

= - 使用这个 discovery check.

<> -使用除此之外的其他任何discovery check

发现对象

=

指定发现的对象。

= - 等于发现的对象(设备或服务)。

发现状态

=

Up -匹配'Host Up' 和 'Service Up' 事件

Down - 匹配'Host Down' 和 'Service Down' 事件

Discovered - 匹配 'Host Discovered' 和 'Service Discovered' 事件

Lost - 匹配 'Host Lost' 和 'Service Lost' 事件

UP/Down

>=

<=

Uptime for 'Host Up' and 'Service Up' events. Downtime for 'Host Down' and 'Service Down' events.

>= -大于或者等于。 参数以秒为单位给出。

<= -小于或等于. 参数以秒为单位给出。

接受值

=

<>

>=

<=

like

not like

指定从代理接收的值(Zabbix,SNMP)。 区分大小写字符串比较。 如果为规则配置了多个Zabbix代理或SNMP检查,则检查所有的Zabbix代理或SNMP检查(每个检查生成与所有条件匹配的新事件)。

= - 等于该值。

<> - 不等于该值。

>= - 大于或者等于该值。

<= - 小于或者等于该值。

like -包含子串。参数作为字符串给出。

not like - 不包含子串。 参数作为字符串给出。

Proxy

=

<>

指定代理或要排除的代理。

= - 使用这个代理。

<> -使用除此之外的任何其他代理。

 

zabbix icmp 自动发现 zabbix自动发现详解_ldap_07

 

4、配置 操作

操作的动作有:

  • 添加主机
  • 发送信息
  • 删除主机
  • 启用主机
  • 禁用主机
  • 添加到群组
  • 从组中删除
  • 链接到模板
  • 取消与模板的链接
  • 设置主机库存模式

zabbix icmp 自动发现 zabbix自动发现详解_运维_08

至此,自动发现的配置过程就完成了。

三、总结和注意事项

  • 对已知的目标进行筛选,并发现和添加,适应于网段较少且单一的项目或公司;
  • 对于已发现的目标,能够非常灵活的执行添加操作,动作丰富;
  • 默认发现后的主机名和可见名称均为hostname;
  • 发现完成后,如果需要删除某台主机,但是动作没有停用的情况下,即时删了主机,主机还是会继续被发现和被加以动作,所以建议发现完成后,停用动作;当然,你也可以设置动作,删除某些主机,让其自动化维护。
  • 自动发现适用于在第一次大规模添加机器的场景;
  • 自动发现对于设备零散,例如,某个项目在阿里云、腾讯云、金山云、aws上同时有主机上架时,网段非常多且杂乱,就不是很适合了,推荐使用自动注册。