一、概述

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

设置网络发现后你可以:

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

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

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

Zabbix目前暂不支持:

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

二、理解和配置

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

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

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

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

第一步:配置发现规则

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

2、配置发现规则

第二步:配置动作

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

2、配置 动作

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 =
<>
指定代理或要排除的代理。
= - 使用这个代理。
<> -使用除此之外的任何其他代理。

4、配置 操作

操作的动作有:

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

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

三、总结和注意事项

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

下一节将讲述自动注册功能。

Zabbix实战-简易教程--动作(Actions)--自动发现的更多相关文章

  1. Zabbix实战-简易教程--动作(Actions)--自动注册

    一.概述 之前已经讲述了自动发现功能,自动注册和自动发现非常类似,但是比自动发现更精确.因为自动注册,是在Agent上自定义元数据,然后Agent将元数据发送给server进行匹配,如果匹配一致,则进 ...

  2. Zabbix实战-简易教程--动作(Actions)--触发器

    一.概述 我们通过接入agent,采集了大量数据,但是如果采集到的某个指标超出了我预计的范围(阈值),此时我们希望监控系统能够给予邮件或短信报警,触发器就是替你干这个活的. 触发器表达式允许定义一个什 ...

  3. Zabbix实战-简易教程系列

    一.基础篇(安装和接入) Zabbix实战-简易教程--总流程  Zabbix实战-简易教程--整体架构图 Zabbix实战-简易教程--DB安装和表分区 Zabbix实战-简易教程--Server端 ...

  4. Zabbix实战-简易教程(6)--Server端高可用

    3.4 server前端高可用    至此,单台Zabbix server环境已经搭建完成,为了达到高可用效果,我们需要通过2台服务器之间通过HA软件进行探测,一旦检测到主的server挂掉后,从的s ...

  5. Zabbix实战-简易教程--低层次发现(LLD)

    一.概述 自动发现(LLD)提供了一种在为不同实体自动创建监控项,触发器和图形的方法.例如,Zabbix可以在你的机器上自动监控磁盘或网卡,而无需为每个磁盘或网卡手动创建监控项.(LLD) 此外,可以 ...

  6. Zabbix实战-简易教程--业务类

    一.需求 项目要求对线上服务器进行监控,包括服务器本身状态.进程相关数据.业务相关数据. 服务器本身状态可以通过基础模板即可获取数据(CPU.内存.网络.磁盘): 进程相关数据,前面也有相关文章专门监 ...

  7. Zabbix实战-简易教程--中间件ZooKeeper监控

    一.监控思路 通过zabbix trapper方式监控,之前看到网友们都是通过定时任务进行主动上传数据,但是,zabbix还有另外一神器--自动发现,也能达到同样的功能. 二.实现步骤 1.准备脚本 ...

  8. Zabbix实战-简易教程--监控OSPF

    一.需求背景 网络工程师需要对OSPF进行监控,需求如下: 1.状态展示 OSPF区域状态 OSPF接口状态 OSPF邻居状态 2.问题报警 触发器设置: a.OSPF区域状态  b.OSPF接口状态 ...

  9. Zabbix实战-简易教程--正则(Regxp)

    一.正则表达式(Regx) 1.概述 正则表达式概念就不解释了.请参考:https://en.wikipedia.org/wiki/Regular_expression#POSIX_extended ...

随机推荐

  1. 在Eclipse中如何关联源代码

    我们就以Struts2框架为例,展示在Eclipse中如何关联源代码.例如,在Struts2框架的学习中,我们有时需要查看ActionSupport这个类的源码,这个时候就要在Eclipse中关联源代 ...

  2. intellij idea svn使用一 导入、更新、提交、解决冲突

    大体上是转载,针对版本14有一些特殊的添加. 查看svn的资源库: 下面的多出了一个svn的窗口,在左边有加号可以添加一个svn的库 输入svn的地址,我用的是本地的测试,所以地址为svn://127 ...

  3. Asp.Net Web API(三)

    Routing Tables路由表 在Asp.Net Web API中,一个控制器就是一个处理HTTP请求的类,控制器的public方法就被叫做action方法或简单的Action.当Web API接 ...

  4. 【java】实现Interface java.lang.Comparable<T>接口的int compareTo(T o)方法实现对象数组或链表或集合的排序,和挽救式对象比较器Interface java.util.Comparator<T>

    package 对象比较排序; import java.util.Arrays; class A implements Comparable<A>{ private String name ...

  5. 如何使用 stack?- 每天5分钟玩转 Docker 容器技术(112)

    定义好了 stack YAML 文件,就可以通过 docker stack deploy 命令部署应用. Docker 会按照 YAML 的内容来创建各种资源.为了不重名,所有资源都会加上 stack ...

  6. [数据结构]C语言栈的实现

    有始有终,所以我准备把各种数据结构都讲一次,栈也分顺序存储和链式储存,这里我们选择链式存储来讲,顺序存储没有难度(链式其实也是) 作为数据结构中最简单的栈,这里不会说太多,首先考虑一下下面的model ...

  7. 正则表达式与grep

    一.回溯引用 1.将页面中合法的标题找出来,使用回溯引用匹配 (需要使用 -E 或 -P 来扩展grep语法支持) 2.查找连续出现的单词 二.前后查找 (grep 只能使用 -P 选项) 1. 向前 ...

  8. Java中堆与栈

    简单的说:Java把内存划分成两种:一种是栈内存,一种是堆内存. 1:什么是堆内存: 堆内存是是Java内存中的一种,它的作用是用于存储Java中的对象和数组,当我们new一个对象或者创建一个数组的时 ...

  9. vue基础学习(二)

    02-01  vue事件深入-传参.冒泡.默认事件 <div id="box"> <div @click="show2()"> < ...

  10. leetcode — linked-list-cycle-ii

    /** * Source : https://oj.leetcode.com/problems/linked-list-cycle-ii/ * * Given a linked list, retur ...