zabbix 自动发现

哈喽大家好,我是咸鱼

昨天老大让我初始化一批服务器,吭哧吭哧弄完之后需要把这批机器添加到 zabbix 上去

但是我发现一台一台添加效率好低,而且特别繁琐,当时我没有想出有什么好的方法,今天上网搜了一下相关资料之后,发现 zabbix 还有个自动发现功能

手动添加监控主机的效率会非常低下,而 Zabbix 的自动发现功能可以帮助减轻工作量,提高效率

自动发现(Auto Discovery)是 Zabbix 的一个重要功能之一,它通过 Zabbix 自动扫描网络或设备,检测到新的主机或服务时自动添加到监控系统中,允许系统管理员轻松地动态添加、监控新的主机和服务,而不需要手动配置监控项

那么我们来看看如何通过 zabbix 的自动发现功能来实现自动地添加新主机吧

添加自动发现规则

首先我们登录 zabbix 的 web 界面(以我为例,我的 zabbix-server 版本为 Zabbix 6.4.2,不同 zabbix 版本界面会不一样)

然后左侧点击 Data collection ------> Discovery 进入到自动发现界面

接着右上角新建规则

配置自动发现规则

添加自动发现动作

自动发现规则是不过是去扫描对应机器,我们还需要为其添加相应的动作(即扫描到这个机器之后下一步该干什么)

首先左侧Alerts ------> Actions------> Discovery actions ,然后右上角点击新建动作

【动作执行的条件】选择前面我们定义的【自动发现规则】

接着我们去配置动作的内容(即【要干什么】)

自动发现规则和动作触发器添加完毕后,zabbix-server 会周期对指定网段进行扫描,当发现符合检查的主机后就会触发相关的动作,主机就会被自动添加

出现告警

添加完之后,我发现 zabbix-server 有告警

看告警信息我们可以得知 discovery 进程的使用率超过了 75%

(需要注意的是:每个 discovery 任务在一定时间内会占用一个 discovery 进程)

先看一下 zabbix-server 配置文件( zabbix_server.conf ),发现默认配置只有 1 个 discovery(被注释,默认生效)

而且我配置的自动发现间隔太短了(间隔为 2s),导致 discovery 进程的使用率在短时间内急剧上升,从而触发了告警

如何解决?

方法一:延长扫描间隔

通过延长扫描间隔时间来降低平均时间内进程的占用率

方法二:把 discovery 进程数量调高

编辑 zabbix server 配置文件 /etc/zabbix/zabbix_server.conf

找到 StartDiscoverers,把注释去掉,值给个 2 或者 3 即可,然后重启 zabbix server 服务

相关推荐
AI人工智能+电脑小能手21 小时前
【大白话说Java面试题】【Java基础篇】第29题:静态代理和动态代理的区别是什么
java·开发语言·后端·面试·代理模式
dovens1 天前
SpringBoot集成MQTT客户端
java·spring boot·后端
❀͜͡傀儡师1 天前
Spring Boot 集成 RocksDB 实战:打造高性能 KV 存储加速层
java·spring boot·后端·rocksdb
TeamDev1 天前
如何在 DotNetBrowser 中使用本地 AI 模型
前端·后端·.net
杨云龙UP1 天前
ODA运维实战:Oracle 19c YJXT PDB表空间在线扩容全过程_20260503
linux·运维·服务器·数据库·oracle
郝学胜-神的一滴1 天前
跨平台动态库与头文件:从原理到命名的深度解析
linux·c++·程序人生·unix·cmake
Rust语言中文社区1 天前
【Rust日报】2026-05-02 Temper - 用 Rust 编写的 Minecraft 服务器项目发布 0.1.0 版
运维·服务器·开发语言·后端·rust
陈随易1 天前
2年没用Nodejs了,Bun很香
前端·后端·程序员
吠品1 天前
高性能JS数组操作:何时选用push、unshift、splice或扩展运算符?
linux·服务器·数据库