1、介绍
网络发现:zabbix server 扫描指定网络范围内的主机;网络发现是zabbix 最具特色的功能之一,它能够根据用户事先定义的规则自动添加监控的主机或服务等
优点:
- 加快Zabbix部署
- 简化管理
在快速变化的环境中使用Zabbix,而不需要过度管理
2、发现方式
- ip地址范围
- 可用服务(ftp, ssh, http, …)
- zabbix_agent的响应
- snmp_agent的响应
3、发现过程
网络发现通常包含两个阶段:discovery 发现和 actions 动作
1、discovery
- Zabbix定期扫描网络发现规则中定义的IP范围;检查的频率对于每个规则都是可配置的,每个规则都有一组用于为IP范围执行的服务检查
- 由网络发现模块执行的服务和主机(IP)的每个检查都会生成一个发现事件
- 8种响应事件
2、actions
网络发现中的事件可以触发 action,从而自动执行指定的操作,把 discvery events当作前提条件;
- Sending notifications 发送通知
- Adding/removing hosts 添加/删除主机
- Enabling/disabling hosts 启用/禁用host
- Adding hosts to a group 向组中添加主机
- Removing hosts from a group 移除组中的主机
- Linking hosts to/unlinking from a template 从模板链接主机或取消链接
- Executing remote scripts 执行远程脚本
这些事件的配置还可以基于设备的类型、IP 、状态、上线/ 离线等进行配置
3、网络发现:接口添加
网络发现中添加主机时会自动创建 interface 接口
例如:
- 如果基于SNMP 检测成功,则会创建SNMP 接口
- 如果某服务同时响应给了agent 和SNMP ,则两种接口都会创建
- 如果同一种发现机制( 如agent) 返回了非惟一数据,则第一个接口被识别为默认,其它的为额外接口
- 即便是某主机开始时只有agent 接口,后来又通过snmp 发现了它,同样会为其添加额外的snmp 接口
- 不同的主机如果返回了相同的数据,则第一个主机将被添加,余下的主机会被当作第一个主机的额外接口
4、配置网络发现 Network discovery
1、准备一台可被扫描发现的主机
1、安装 agent 段的包
[root@node1 ~]# yum -y install zabbix-agent zabbix-sender
2、设置 agent 配置,可以把之前设置好的node1的配置传过来
[root@node1 ~]# vim /etc/zabbix/zabbix_agentd.conf
Hostname=node2.qfedu.com #只需修改hostname
3、 visudo 修改sudo的配置
[root@node1 ~]# visudo
#Defaults !visiblepw
zabbix ALL=(ALL) NOPASSWD: ALL
4、开启服务
[root@node1 ~]# systemctl start zabbix-agent
2、设置自动发现规则 discovery
注释:
3、key
[root@node1 ~]# zabbix_get -s 192.168.30.2 -p 10050 -k "system.hostname"
2、更新间隔
1h就好,不要扫描太过频繁,扫描整个网段,太废资源;这里为了实验,设为1m
4、自动发现成功
5、设置自动发现discovery 的动作action
1、创建
2、设置action动作
1、设置A条件,自动发现规则=test.net
2、设置B条件,自动发现状态=up
3、要做什么操作
- 添加主机到监控
- 自动链接Template OS Linux 到此host
3、配置action 完成,默认是 disabled 停用的
4、启用动作,查看效果
确实已经生效,添加主机成功,模板链接成功
5、如果自己需要添加的主机已经扫描添加完成,就可以关闭网络扫描了,因为太耗资源