news 2026/10/17 2:22:06

Zabbix 监控 Cisco SG500-48P 交换机:SG500X_48P 模板完整解析(SNMP 风扇、温度、流量与端口监控)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Zabbix 监控 Cisco SG500-48P 交换机:SG500X_48P 模板完整解析(SNMP 风扇、温度、流量与端口监控)

【免费下载链接】community-templates

Zabbix Community Templates repository

项目地址:https://gitcode.com/gh_mirrors/co/community-templates
点击查看免费下载

本指南以社区共享模板 SG500X_48P 为主体,系统讲解如何使用 Zabbix 通过 SNMP 与 ICMP 对 Cisco SG500 系列交换机(以 SG500-48P 为例)实施监控:覆盖风扇(Cooler/FAN)、设备可用性、网络延迟、端口流量与错误包、温度、CPU 及运行时长等 8 类核心指标。读完本文后,你将掌握该模板的 23 个监控项与 11 张图表的完整配置逻辑、预处理与值映射原理,并学会在导入前核对 OID、在导入后按需扩展触发器与自动发现规则。

模板概览与适用场景

SG500X_48P 是发布在 Zabbix 社区共享平台上的交换机监控模板,作者为 Magno Monte Cerqueira(账号 "magnopeem")。从仓库中的模板定义文件可以看到,模板默认面向Cisco SG500 系列交换机,其监控范围覆盖:

  1. Cooler(FAN)——6 个风扇状态
  2. Disponibilidade(可用性)——ICMP 可达性
  3. Latencia(延迟)——ICMP 往返时间
  4. Pacotes de entrada(入向包)——含错误包统计
  5. Pacotes de Saída(出向包)——含错误包统计
  6. Temperatura(温度)——机箱实体温度传感器
  7. Tráfego de entrada(入向流量)
  8. Tráfego de saída(出向流量)

SG500-48P 是 Cisco Small Business 500 系列中的 48 口千兆 PoE 交换机,同时提供 4 个万兆 SFP+ 上行端口。模板中硬编码的两个端口对象恰好对应这一硬件形态:GigabitEthernet 1/1/1(ifIndex 49,第一个千兆口)与Tengigabitethernet 1/1/1(ifIndex 107,第一个万兆口)。这一点可以从模板中ifInOctets.49、ifInOctets.107等项目键名直接确认。

模板同时使用两种数据采集方式:SNMP agent(端口、风扇、温度、CPU、uptime)与Simple check(ICMP ping)。监控项全部为静态定义,不依赖任何宏、模板链接(template links)或发现规则(discovery rules),导入后只需配置主机级 SNMP 与 ICMP 即可工作。

模板文件结构与多版本支持

该模板在仓库中按 Zabbix 大版本分目录维护,位于Network_Devices/Cisco/template_cisco_sg500_48p/:

  • 5.0 版本(XML 格式):适用于 Zabbix 5.0 系列,采用<zabbix_export><version>5.0</version>的 XML 导出结构。
  • 5.4 版本(YAML 格式):适用于 Zabbix 5.4 系列。
  • 6.0 版本(YAML 格式):适用于 Zabbix 6.0 系列,本文分析以此版本为准。

各版本导出的监控项、图表与值映射内容保持一致,区别仅在于导出格式和zabbix_export.version字段。以 6.0 版 YAML 为例,其顶层结构为:

zabbix_export: version: '6.0' date: '2021-11-21T21:18:13Z' groups: - uuid: 7df96b18c230490a9a0a9e2307226338 name: Templates templates: - uuid: 7566af4955664c428488e4c5dd1dffbe template: SG500X_48P name: SG500X_48P groups: - name: Templates items: ... valuemaps: ... graphs: ...

模板被归入Templates组,模板技术名与显示名均为SG500X_48P。导入方式为标准 Zabbix 流程:前端Data collection → Templates → Import,选择对应版本的 YAML/XML 文件即可。由于模板内部未定义任何宏,SNMP 认证依赖 Zabbix 内置的{$SNMP_COMMUNITY}宏(默认值为public)或主机层自定义宏,因此部署前请确认交换机实际配置的 SNMP 团体名(community string)并据此调整主机宏,否则 SNMP 监控项将返回Not supported。

监控项(Items)全景解读

模板共定义 23 个监控项,下文按功能主题分组解读,并给出 YAML 中的实际配置(OID、更新间隔、预处理与单位)。

1. 可用性与延迟(Simple check)

监控项类型Key更新间隔说明
PingSimple checkicmpping30sICMP 可达性,返回 1(可达)/ 0(不可达),值类型 FLOAT
Ping por SegundoSimple checkicmppingsec30sICMP 往返时间(秒),值类型 FLOAT

这两个项目依赖 Zabbix Server 的 fping 组件与 ICMP 权限。icmppingsec返回的是往返延迟秒数,用于生成"延迟"折线图;icmpping用于生成"可用性"折线图。二者共同构成模板对交换机存活状态的实时感知。

2. 系统资源:CPU、温度与运行时长

监控项类型Key / OID更新间隔预处理与单位
CPUSNMP agent.1.3.6.1.4.1.9.9.109.1.1.1.1.5120sunits:C
TemperaturaSNMP agentkey:entPhySensorValue.68420481,OID:.1.3.6.1.4.1.9.6.1.101.83.2.1.1.1.4.68420481120sunits:C
Tempo LigadoSNMP agentkey:system.uptime,OID:DISMAN-EVENT-MIB::sysUpTimeInstance60sMULTIPLIER× 0.01,units:s
  • CPU:OID 位于 Cisco 私有 MIB 的 process 分支(.1.3.6.1.4.1.9.9.109),按 CISCO-PROCESS-MIB 的通用定义,该 OID 末位.5对应 CPU 利用率 5 分钟平均值(cpmCPUTotal5minRev)。需注意模板将该项目单位设置为C(摄氏度),从语义上看 CPU 利用率更应使用%,导入后建议按实际展示需求修正单位。
  • Temperatura:实体索引68420481对应机箱温度传感器,snmp_oid 指向 Cisco 私有环境监控 OID(.1.3.6.1.4.1.9.6.1.101.83.2.1.1.1.4,结构对应 entPhySensorValue),单位C合理。
  • Tempo Ligado:DISMAN-EVENT-MIB::sysUpTimeInstance的单位是百分之一秒(1/100 s),因此通过MULTIPLIER× 0.01 转换为秒并设置单位s,历史保留 7d。

3. 风扇状态(Cooler / FAN)

模板为 6 个风扇分别定义监控项,全部为 SNMP agent 类型,更新间隔 600s(10 分钟),历史保留 7d:

监控项Keysnmp_oid(YAML)
Fan 01rlEnvMonFanState.67109250.1.3.6.1.4.1.9.6.1.101.83.1.1.1.3.67109249
Fan 02rlEnvMonFanState.67109251.1.3.6.1.4.1.9.6.1.101.83.1.1.1.3.67109250
Fan 03rlEnvMonFanState.67109252.1.3.6.1.4.1.9.6.1.101.83.1.1.1.3.67109251
Fan 04rlEnvMonFanState.67109253.1.3.6.1.4.1.9.6.1.101.83.1.1.1.3.67109252
Fan 05rlEnvMonFanState.67109254.1.3.6.1.4.1.9.6.1.101.83.1.1.1.3.67109253
Fan 06rlEnvMonFanState.67109255.1.3.6.1.4.1.9.6.1.101.83.1.1.1.3.67109254

这些 OID 属于 Cisco 环境监控私有分支(.1.3.6.1.4.1.9.6.1.101.83),末尾.1.1.1.3结构对应 rlEnvMonFanState(风扇状态对象),实体索引67109249~67109254由设备固件分配。从源码结构看,Fan 项目的snmp_oid 与 key 的实体索引存在 1 位错位(例如 Fan 01 的 OID 末位为 67109249,而 key 为rlEnvMonFanState.67109250)。由于 Zabbix 的 SNMP agent 类型监控项实际以snmp_oid字段采集,key 仅作为内部标识,采集本身不受影响,但排查问题时需留意这一不一致。

风扇状态值由交换机固件定义(如正常 / 警告 / 故障等枚举),模板本身未为该系列监控项配置值映射,也未定义风扇告警触发器,如需将状态数值翻译为可读文本并告警,建议参考下文"扩展建议"。

4. 端口流量(Tráfego)

模板对两个端口分别采集入向/出向流量,共 4 个监控项,更新间隔 60s:

监控项Key / OID预处理链单位
Tráfego de entrada GigabitEthernet 1/1/1ifInOctets.49CHANGE_PER_SECOND→MULTIPLIER× 8b
Tráfego de saída GigabitEthernet 1/1/1ifOutOctets.49CHANGE_PER_SECOND→MULTIPLIER× 8b
Tráfego de entrada Tengigabitethernet 1/1/1ifInOctets.107CHANGE_PER_SECOND→MULTIPLIER× 8b
Tráfego de saída Tengigabitethernet 1/1/1ifOutOctets.107CHANGE_PER_SECOND→MULTIPLIER× 8b

YAML 中的完整预处理定义为:

preprocessing: - type: CHANGE_PER_SECOND parameters: - '' - type: MULTIPLIER parameters: - '8'

这段链路是模板中最值得关注的数据处理逻辑:ifInOctets/ifOutOctets是 IF-MIB 的累计计数器(自启动以来的字节数),第一步CHANGE_PER_SECOND将其转换为"每秒增量"(即速率),第二步MULTIPLIER × 8将字节/秒换算为比特/秒(1 字节 = 8 比特),最终以单位b(bit)呈现,供"Tráfego de entrada / Tráfego de saída"两张图表直接绘制带宽曲线。若希望以字节为单位展示,只需删除第二步即可。

5. 端口错误包(Pacotes com erro)

模板为两个端口分别采集入向/出向错误包,共 4 个监控项,更新间隔 60s:

监控项Key / OID预处理单位
Pacotes de entrada com erro GigabitEthernet 1/1/1ifInErrors.49CHANGE_PER_SECONDpackets
Pacotes de saída com erro GigabitEthernet 1/1/1ifOutErrors.49CHANGE_PER_SECONDpackets
Pacotes de entrada com erro Tengigabitethernet 1/1/1ifInErrors.107CHANGE_PER_SECONDpackets
Pacotes de saída com erro Tengigabitethernet 1/1/1ifOutErrors.107CHANGE_PER_SECONDpackets

ifInErrors表示入向报文中因错误无法递交高层协议的数量,ifOutErrors表示出向传输失败的报文数量,二者同样是累计计数器,因此通过CHANGE_PER_SECOND转换为每秒错误包速率,单位为packets。错误包速率持续升高通常是链路质量劣化(CRC 错误、超限帧等)的早期信号。

6. 端口状态、速率与 MTU

监控项Key / OID更新间隔预处理与单位历史保留
Estado operacional GigabitEthernet 1/1/1IF-MIB::ifOperStatus.4960s值映射SNMP interface status (ifOperStatus)7d
Velocidade da Porta GigabitEthernet 1/1/1IF-MIB::ifSpeed.4960sMULTIPLIER× 1,units:bps7d
Velocidade da Porta Tengigabitethernet 1/1/1IF-MIB::ifSpeed.10760sMULTIPLIER× 1,units:bps7d
Velocidade Porta GigabitEthernet 1/1/1 MTUIF-MIB::ifMtu.4960sMULTIPLIER× 1,000,000,units:b2d
Velocidade Porta Tengigabitethernet 1/1/1 MTUIF-MIB::ifMtu.10760sMULTIPLIER× 1,000,000,units:b2d
  • ifOperStatus:接口操作状态,模板通过值映射(valuemap)将 RFC 1213 定义的状态码翻译为可读文本(见下节),用于实时掌握端口 up/down 状态。
  • ifSpeed:接口当前带宽估计值,单位为 bits per second(bps),模板中MULTIPLIER × 1属于冗余预处理,不影响结果。
  • ifMtu:接口最大传输单元(字节)。需特别提示:模板为其配置了MULTIPLIER × 1,000,000并将单位设为b。从语义上看,MTU 是字节数(如 1500),通常无需放大;该预处理会把原始值放大百万倍,疑似作者将 MTU 误当作速率处理。若你希望图表展示真实 MTU 数值,建议删除此预处理步骤后再使用。

值映射:ifOperStatus 状态机

模板在valuemaps节定义了一个名为SNMP interface status (ifOperStatus)的值映射,作用于Estado operacional GigabitEthernet 1/1/1监控项,将 IF-MIB 标准状态码映射为可读文本:

原始值映射文本
1up
2down
3testing
4unknown
5dormant
6notPresent
7lowerLayerDown

该映射完整覆盖 RFC 2863 中 ifOperStatus 的全部 7 种状态。结合 Zabbix 的触发器表达式(如last()=2表示 down),可以在此基础上构建端口掉线告警。

图形化展示(Graphs)

模板共定义 11 张图形,将上述监控项组织为便于直接投放到仪表盘的视图。YAML 中graphs节的完整清单如下:

图形名称包含监控项绘制样式 / 颜色
Cooler ( FAN )Fan 01~06BOLD_LINE,六色区分(1A7C11 / F63100 / 2774A4 / A54F10 / FC6EA3 / 6C59DC)
CPUCPUGRADIENT_LINE,A54F10
DisponibilidadePing(icmpping)GRADIENT_LINE,1A7C11
LatenciaPing por Segundo(icmppingsec)GRADIENT_LINE,1A7C11
Pacotes de entrada com erroifInErrors.49 / ifInErrors.107双线,1A7C11 / F63100
Pacotes de saída com erroifOutErrors.49 / ifOutErrors.107双线,F63100 / 1A7C11
Tempo Ligadosystem.uptimeGRADIENT_LINE,1A7C11
Tráfego de entradaifInOctets.49 / ifInOctets.107双线,1A7C11 / F63100
Tráfego de saídaifOutOctets.49 / ifOutOctets.107双线,F63100 / 1A7C11
Velocidade da PortaifSpeed.49 / ifSpeed.107双线,F63100 / 1A7C11
Velocidade Porta MtuifMtu.49 / ifMtu.107双线,1A7C11 / F63100

其中Cooler ( FAN )图以粗线(BOLD_LINE)叠加 6 个风扇状态曲线,便于在同一时间轴上对比各风扇状态;流量类图形将千兆口(.49)与万兆口(.107)以双色曲线同图对比,可直观看出上行口与接入口的带宽差异。导入模板后,这些图形会以"SG500X_48P: 图形名"的形式自动出现在主机图形列表中。

使用前提与注意事项

基于模板源码,以下限制与前提需要在部署前确认:

  1. OID 与索引硬编码:端口(ifIndex 49 / 107)与风扇/温度实体索引(67109249~67109254、68420481)均为固定值。它们由交换机固件分配,不同型号、不同固件版本可能不同。部署前建议用snmpwalk核对实际索引,例如:
    snmpwalk -v2c -c <community> <switch-ip> .1.3.6.1.4.1.9.6.1.101.83.1.1.1.3 snmpwalk -v2c -c <community> <switch-ip> IF-MIB::ifName

    若索引不一致,需要逐个修改模板监控项的 OID 与 key。

  2. 监控范围固定:模板只覆盖GigabitEthernet 1/1/1与Tengigabitethernet 1/1/1两个端口。SG500-48P 拥有 48 个千兆口与 4 个万兆口,其余端口不在默认监控范围内,如需全端口覆盖应引入自动发现(见下文扩展建议)。
  3. 无触发器:README 与 YAML 均确认模板"没有定义任何触发器"(There are no triggers)。这意味着模板只完成数据采集与图形化,不会产生任何告警。风扇故障、端口 down、温度越限都需要自行补充触发器表达式。
  4. 无宏、无模板链接、无发现规则:模板不依赖宏和链接模板,也不使用 LLD,所有项目均为静态定义,结构简单、导入即用,但灵活性有限。
  5. 预处理语义偏差:CPU 单位被设为C、ifMtu 被乘以 1,000,000、Fan 项目 snmp_oid 与 key 索引错位,均属模板原始配置中的细节瑕疵,建议按前述说明逐一核对与修正。

扩展建议:向 LLD 与告警能力演进

若需在 SG500 系列上获得更强的监控能力,仓库中同目录下的兄弟模板 template_cisco_sg500x-48p(6.0) 提供了可借鉴的成熟思路,其配套 YAML 位于 template_cisco_sg500x-48p.yaml:

  • LLD 自动发现:该模板通过rlPhdUnitEnvParamStackUnit(环境堆叠单元)与ifName(网络接口)两条发现规则,自动为每个堆叠单元和每个接口生成监控项,覆盖全部端口而非仅两个固定口,并自动生成固件版本、序列号、Service Tag 等资产信息。
  • 告警触发器:该模板内置了完整的告警体系,可直接移植到 SG500X_48P 模板上,例如:
    • 风扇状态=6→ critical(average 级)、avg(#3)=6→ failed(high 级)、avg(#3)=2→ warning(warning 级);
    • 温度状态=3→ critical(disaster 级)、=2→ high(high 级);
    • 入向/出向流量 5 分钟均值超过ifHighSpeed × 0.8→ warning(80% 带宽水位告警);
    • ifOperStatus连续两次采样均为2→ 链路中断(disaster 级)。

将这些触发器表达式中的主机名与项目 key 替换为 SG500X_48P 模板对应的 key(如rlEnvMonFanState.67109250、ifInOctets.49等),即可在不改造原模板结构的前提下获得完整的告警闭环。

总结

SG500X_48P 是一个典型的"轻量级、零依赖"社区模板:23 个静态 SNMP/ICMP 监控项 + 1 个 ifOperStatus 值映射 + 11 张图形,覆盖了 Cisco SG500 系列交换机日常运维中最关心的风扇、温度、CPU、可用性、延迟、流量与错误包指标,导入即可采集、开箱即见图形。它的主要短板——无触发器、端口硬编码、预处理语义瑕疵——恰好是读者在实战中应当补齐与修正的重点。结合仓库内同系列的 LLD 模板思路(template_cisco_sg500x-48p),你可以低成本地将这套基础监控扩展为全端口自动发现、带完整分级告警的生产级方案。

【免费下载链接】community-templates

Zabbix Community Templates repository

项目地址:https://gitcode.com/gh_mirrors/co/community-templates
点击查看免费下载
上一篇:八大网盘直链解析神器:免费高速下载的终极解决方案
下一篇:八大网盘直链获取工具:告别下载限制的智能解决方案

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/10/17 2:21:20

ComfyUI工作流排错:节点依赖、缺失模型与循环链路检查

项目编号&#xff1a;20260728-019。本文代码、测试、文档与示例数据均为独立编写&#xff0c;不包含榜单项目源码或受限素材。为什么需要这个工具 读取ComfyUI风格工作流JSON&#xff0c;提取节点依赖、检测缺失引用和孤立节点&#xff0c;汇总模型文件清单并生成HTML报告。实…

作者头像 李华
网站建设 2026/10/17 2:20:59

MP2642GR-Z主动均衡与MK64FN1M0VDC12协同设计实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/10/17 2:19:32

Koa模板引擎选型指南:Pug与Nunjucks深度对比实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/10/17 2:17:42

基于Python与CNN的鱼类识别实战:从卷积神经网络原理到PyTorch部署

1. 项目概述1.1 为什么选鱼类识别这个方向每到毕业季&#xff0c;选课题就成了很多同学最头疼的事情。既要保证能顺利毕业答辩&#xff0c;又想让工作量看起来饱满、技术含量说得出口。我见过太多人一上来就选“人脸识别”“车牌识别”&#xff0c;结果开题答辩直接被老师问住&…

作者头像 李华
网站建设 2026/10/17 2:16:59

BiliTools 机制解析:从 URL 解析到文件落盘的实现路径

BiliTools 机制解析&#xff1a;从 URL 解析到文件落盘的实现路径 【免费下载链接】BiliTools 本项目已停止维护。 项目地址: https://gitcode.com/GitHub_Trending/bilit/BiliTools BiliTools 是一个基于 Tauri v2 的哔哩哔哩桌面工具箱&#xff08;当前版本 1.4.7&…

作者头像 李华