利用Zabbix监控指定IP列表的ping

在线答疑:乐维社区

对企业来说,网络设备就是业务运转的 "命脉",它能不能稳定在线,直接决定了业务能不能连续跑、不宕机。这就要求我们必须用上靠谱的监控手段,24 小时盯着设备的在线状态,一旦出现异常离线的情况,告警信息就得第一时间推送到管理员手上,让问题能被立刻发现、马上处理。

站在 IT 管理的角度看,这种全天候的实时监控,不仅能把系统的可靠性拉满,最大程度减少业务中断的风险,还能让用户体验不掉线,实实在在提升大家的满意度,为企业的稳定运营筑牢技术防线。

Zabbix中有丰富的模板,对于多数服务器、网管型交换机、路由器等都可以通过添加主机,应用模板来达到监控设备是否在线的目的。

较常见的方法如下图所示添加单主机,使用ICMP Ping模板实现,但是如果是多设备的情况需要逐个添加或者批量导入,这样主机列表太多也不便于管理。另外可能还有某些IP设备不支持SNMP协议。

下面介绍一种简单的方式,单个主机可以实现多IP的PING检查监控。用 Zabbix 的 低级自动发现(LLD)+ 简单检查(icmpping),从一个指定的 IP 列表生成一批 Ping 监控项和告警。这样你只维护一个列表文件,Zabbix 会自动增加/删除监控对象。适用版本:Zabbix 5.x及以上

监控类型:Simple check核心思路是通过 HTTP Agent 从一个 URL 获取 JSON 格式的 IP 列表,并用 LLD 自动生成监控项。

下面是详细步骤:

一、准备IP列表文件Zabbix需要LLD数据格式为JSON文件,格式范例如下:

{

"data": [

{ "{#IP}": "192.168.27.246", "{#NAME}": "Name1"},

{ "{#IP}": "192.168.27.245", "{#NAME}": "Name2"},

{ "{#IP}": "192.168.27.239", "{#NAME}": "Name3"},

{ "{#IP}": "192.168.27.238", "{#NAME}": "Name4"},

{ "{#IP}": "192.168.24.89", "{#NAME}": "Name5"},

]}

可以使用记事本编辑好后保存,如命名为iplist.json。将此文件保存在Web服务器的相关目录,比如我们可以放在Zabbix服务器的var/www/html目录下,可以通过 http://zabbix服务器ip/iplist.json 访问并正确显示上述文件的内容就说明列表文件准备好了。

二、 在 Zabbix 创建模板以Zabbix 7.0为例:在左边打开Data Collection → Templates,新建模板(例如 Template: ICMP from IP list)。

模板创建好选择Discovery项,在出现的界面的右上角选择Create discovery rule

然后在定义发现规则的界面中设置相关参数。

Discovery rule(发现规则)

Name:IP list discovery

Type:HTTP agent

Key:iplist.discovery

URL:http://zabbix服务器ip/iplist.json

Update interval:1h(更新列表间隔时间,可以根据自己列表的变化频率自定义)Query fields

{#IP}{#NAME} 这里的与JSON文件内容对应,后面可以在监控项引用

Item prototypes(监控项原型)

参考以下参数分别创建三个监控项原型(Item Prototypes)

监控项原型1:丢包率Name:Ping loss of {#NAME} ({#IP})

Type:Simple checkKey:icmppingloss[{#IP}]Update interval:60s

监控项原型2:RTT(Round-Trip Time)包往返时间Name:Ping RTT to {#NAME} ({#IP})Key:icmppingsec[{#IP}]Type:Simple checkUpdate interval:60s

监控项原型3:可达性Name:Ping to {#NAME} ({#IP})Key:icmpping[{#IP}]Type:Simple checkUpdate interval:60s

参考以下参数分别创建三个触发器原型 (Trigger Prototypes)

触发器原型1:Name:High packet loss on {#NAME} ({#IP})

Expression:avg(/ICMP from HTTP IP list/icmppingloss[{#IP}],5m)>200Tags:name -> {#NAME}target -> {#IP}

触发器原型2Name:High ping RTT on {#NAME} ({#IP})

Expression:avg(/ICMP from HTTP IP list/icmppingsec[{#IP}],5m)>1Tags:name -> {#NAME}target -> {#IP}

触发器原型3Name:{#NAME} ({#IP}) is unreachable

Expression:max(/ICMP from HTTP IP list/icmpping[{#IP}],5m)=0Tags:name -> {#NAME}target -> {#IP}

三、 绑定模板到一个虚拟主机

创建一个主机(例如 Ping-IP-List-Host),不需要 Agent,只用于承载这些监控项。

将模板关联到这个主机。

四、 创建通知动作

在Zabbix左边的Alerts-》Actions创建一个通知项

Name:Send email when any IP unreachable

Conditions:A And/Or BA: Trigger severity is greater than or equals

HighB: Host equals Ping-IP-List-HostOperations: Send message to user groups

五、 更新IP列表后续如果IP列表有变化只需更新 Web 服务上的 JSON 文件,Zabbix 会在下次 LLD 周期自动同步。

相关推荐
发光小北3 小时前
Modbus TCP 转 Profinet 主站网关如何应用?
网络·网络协议·tcp/ip
易连EDI—EasyLink6 小时前
易连EDI–EasyLink实现OCR智能数据采集
网络·人工智能·安全·汽车·ocr·edi
@insist1236 小时前
信息安全工程师考点精讲:身份认证核心原理与分类体系(上篇)
大数据·网络·分类·信息安全工程师·软件水平考试
SmartRadio7 小时前
ESP32-S3 双模式切换实现:兼顾手机_路由器连接与WiFi长距离通信
开发语言·网络·智能手机·esp32·长距离wifi
_.Switch7 小时前
东方财富股票数据JS逆向:secids字段和AES加密实战
开发语言·前端·javascript·网络·爬虫·python·ecmascript
金色光环8 小时前
FreeModbus释放底层的 TCP 监听端口
服务器·网络·tcp/ip
数智化精益手记局8 小时前
拆解物料管理erp系统的核心功能,看物料管理erp系统如何解决库存积压与缺料难题
大数据·网络·人工智能·安全·信息可视化·精益工程
灰子学技术10 小时前
Envoy HTTP 过滤器处理技术文档
网络·网络协议·http
Olivia0514051412 小时前
Voohu:音频变压器的屏蔽接地技术对50Hz工频噪声抑制的影响
网络·机器人·信息与通信
2401_8734794012 小时前
企业安全团队如何配合公安协查?IP查询在电子取证中的技术实践
tcp/ip·安全·网络安全·php