【免费下载链接】community-templatesZabbix Community Templates repository项目地址https://gitcode.com/gh_mirrors/co/community-templates点击查看免费下载导读本文以 community-templates 仓库中Network_Devices/HP/template_hp_a5120_switch_snmp_v3的 7.0 版模板为对象系统讲解如何在 Zabbix 7.0 中通过 SNMP v3authPriv 安全级别、SHA 认证、AES 加密监控 HP A5120 系列交换机的 CPU、内存、温度、风扇、电源等硬件健康指标并借助一次批量walk[]采集实现全量接口的带宽、速率、管理与运行状态、CRC 错误监控。读完本文你将掌握该模板的导入方式、SNMP v3 主机宏配置、接口发现与 VLAN 过滤策略、Link down 与高带宽触发器的工作原理以及从 Zabbix 3.0 演进到 7.0 的关键技术变化。模板概览一条命令解决 A5120 全维度监控该模板由社区作者 Jakub Samek 维护最初创建于 Zabbix 3.0 时代随后持续更新至 Zabbix 7.0 格式。模板本身不依赖link任何其他模板开箱即用覆盖以下监控维度硬件健康CPU 使用率、内存使用率、设备温度、风扇状态、内部/外部电源状态设备信息设备名称sysName、描述sysDescr、位置sysLocation、联系信息sysContact并同步至 Zabbix 资产清单inventory接口监控通过自动发现LLD采集每个接口的入/出带宽64 位计数器、接口速率、管理状态、运行状态、CRC 错误智能告警Link down 触发器仅当接口由 up 变为 down 且管理状态为 up 时触发忽略已 down 或被管理员 shutdown 的接口、高带宽使用率触发器15 分钟平均入/出流量超过接口速率阈值的{$IF.UTIL.MAX}%默认 90%。模板的 7.0 版文档位于 Network_Devices/HP/template_hp_a5120_switch_snmp_v3/7.0/README.md可直接导入的模板定义位于 template_hp_a5120_switch_snmp_v3.yaml。作者在 Tested on 一节中声明该模板已在HP A5120-48G EI交换机与Zabbix 7.0.29组合上验证通过。第一步导入模板并配置 SNMP v3 主机1. 导入模板在 Zabbix 前端导航到「数据收集 → 模板」点击右上角「导入」选择 7.0 目录下的template_hp_a5120_switch_snmp_v3.yaml文件完成导入。导入后的模板名称为HP A5120归属模板组Template SwitchesYAML 中template_groups与groups字段均声明了该分组见 template_hp_a5120_switch_snmp_v3.yaml。2. SNMP v3 凭据用主机宏填三个变量由于模板采用SNMP v3 authPriv安全级别认证与加密同时启用认证协议 SHA、加密协议 AESSNMP 接口凭据不能写死在模板里必须通过主机宏注入。模板要求为每台主机配置以下三个宏并在主机 SNMP 接口中引用它们宏含义{$SNMP_V3_USER}Security nameSNMP v3 用户名{$SNMP_V3_AUTHPASSPHRASE}认证口令authentication passphrase{$SNMP_V3_PRIVPASSPHRASE}加密口令privacy passphrase操作路径为主机 → 宏 → 添加上述三个宏并填写与设备一致的取值随后在主机 → 接口 → SNMP 接口中将「Security name / 用户名」「认证口令」「私有口令」三个字段分别引用{$SNMP_V3_USER}、{$SNMP_V3_AUTHPASSPHRASE}、{$SNMP_V3_PRIVPASSPHRASE}安全级别选择authPriv认证协议 SHA加密协议 AES。只有 SNMP 接口的凭据解析成功模板内所有SNMP agent类型监控项才能开始采集。3. 部署前置条件在接入模板之前需在交换机侧确认已启用 SNMP v3并创建了具备 authPriv 权限的只读用户组与用户交换机可达且 UDP 161 端口放通设备支持 IF-MIB接口表、EtherLike-MIBdot3StatsFCSErrors以及 H3C/HP 私有 MIBCPU、内存、温度、风扇、电源 OID。架构解析一个主监控项 依赖项单次 bulk 请求采集全部接口数据这是 7.0 版模板最核心的设计改进。传统模板通常为每个接口的每个指标发起一次独立 SNMP GET而本模板将所有接口数据收敛为一个主监控项主监控项net.if.walk类型SNMP agent每 1 分钟更新历史不存储其 OID 为walk[1.3.6.1.2.1.2.2.1.2,1.3.6.1.2.1.2.2.1.3,1.3.6.1.2.1.2.2.1.7,1.3.6.1.2.1.2.2.1.8,1.3.6.1.2.1.31.1.1.1.1,1.3.6.1.2.1.31.1.1.1.6,1.3.6.1.2.1.31.1.1.1.10,1.3.6.1.2.1.31.1.1.1.15,1.3.6.1.2.1.31.1.1.1.18]即通过**一次 SNMP 批量请求bulk request**抓取ifDescr、ifType、ifAdminStatus、ifOperStatus、ifName、ifHCInOctets、ifHCOutOctets、ifHighSpeed、ifAlias九个列的全部实例见 YAML 中 net.if.walk 定义。发现规则net.if.discovery类型Dependent item依赖主监控项net.if.walk通过预处理步骤SNMP_WALK_TO_JSON将主监控项的 walk 结果拆解为 JSON产出{#IFDESCR}、{#IFNAME}、{#IFALIAS}、{#IFTYPE}、{#SNMPINDEX}等宏用于 LLD 发现见 YAML 中发现规则与预处理定义 与 L498-L517。各接口监控项如net.if.adminstatus[ifAdminStatus.{#SNMPINDEX}]、net.if.status[ifOperStatus.{#SNMPINDEX}]、net.if.in[ifHCInOctets.{#SNMPINDEX}]、net.if.out[ifHCOutOctets.{#SNMPINDEX}]、net.if.speed[ifHighSpeed.{#SNMPINDEX}]全部是依赖项通过SNMP_WALK_VALUE预处理从主监控项按{#SNMPINDEX}抽取对应字段不再单独发起 SNMP 请求。这一设计带来两个直接收益其一接口的管理状态ifAdminStatus与运行状态ifOperStatus永远来自同一次轮询Link down 判定不会因两次采集之间的时间差产生误报其二轮询负载极低——无论交换机有多少接口每个周期只需一次 bulk walk对生产网络非常友好。5.0/6.0 旧版本中接口数据是逐项 GET 的7.0 版本从结构上彻底改变了采集模型。接口带宽与速率的预处理链路以「Bits received」为例见 YAML 原型定义依赖项的预处理依次执行SNMP_WALK_VALUE从1.3.6.1.2.1.31.1.1.1.6.{#SNMPINDEX}ifHCInOctets取出 64 位计数器原始值CHANGE_PER_SECOND将计数器差值换算为每秒字节数B/sMULTIPLIER× 8字节转比特最终单位为bps。「Bits sent」使用ifHCOutOctets1.3.6.1.2.1.31.1.1.1.10走同样链路。「Speed」项则直接对ifHighSpeed1.3.6.1.2.1.31.1.1.1.15单位 Mbps乘以 1000000 转换为 bps并附加DISCARD_UNCHANGED_HEARTBEAT 1h预处理避免速率长期不变时反复入库。接口发现与 ifType 过滤只监控你关心的接口发现规则对{#IFTYPE}应用过滤器匹配宏{$NET.IF.IFTYPE.MATCHES}默认^(6|136|161)$。三个被收录的 ifType 含义如下ifType 值类型名对应 A5120 接口6ethernetCsmacdGigabitEthernet、Ten-GigabitEthernet 等物理以太口136l3ipvlanVlan-interface三层 VLAN 接口161ieee8023adLagBridge-Aggregation链路聚合口如果你的网络中存在其他类型接口例如1 other 或24 softwareLoopback可以修改{$NET.IF.IFTYPE.MATCHES}为正则表达式来扩大或收窄发现范围。注意宏值本身是正则例如要额外包含 loopbackifType24可设为^(6|24|136|161)$。VLAN 接口默认只监控状态、不监控流量模板默认将{$NET.IF.NO_TRAFFIC.IFTYPE.MATCHES}设为^136$Vlan-interface并通过LLD override对匹配该正则的接口做「减配」处理。override 名为 VLAN interfaces: status only (no bandwidth, no CRC)其操作对象覆盖三类原型见 YAML override 定义item prototype按名称正则: (Bits received|Bits sent|Speed|CRC errors)$置为NO_DISCOVER不创建trigger prototype按名称正则: (High bandwidth usage|CRC errors)置为NO_DISCOVERgraph prototype按名称正则: Network traffic$置为NO_DISCOVER。这样 VLAN 接口仍会被发现并监控 admin status、operational status 与 Link down 触发器但不会产生带宽、速率、CRC 监控项及对应告警避免了三层接口上常见的高速率误报与无效采集。如果确实需要统计 VLAN 接口流量只需把{$NET.IF.NO_TRAFFIC.IFTYPE.MATCHES}改成匹配不到任何值的正则例如^$VLAN 接口便会像物理接口一样获得全部监控项。Link down 触发器精确识别意外断链「Link down」是平均优先级average的 LLD 触发器原型其表达式为见 YAML 触发器定义{$IFCONTROL:{#IFNAME}}1 and last(/HP A5120/net.if.adminstatus[ifAdminStatus.{#SNMPINDEX}])1 and last(/HP A5120/net.if.status[ifOperStatus.{#SNMPINDEX}])2 and last(/HP A5120/net.if.status[ifOperStatus.{#SNMPINDEX}],#2)1四个条件同时满足才触发宏{$IFCONTROL:{#IFNAME}}为 1即该接口的 Link down 告警未被关闭管理状态ifAdminStatus 1up——说明端口没有被管理员 shutdown当前运行状态ifOperStatus 2down上一次轮询#2的运行状态 1up——确认这是一个由 up 转为 down的状态变迁。因此接口在发现时本来就处于 down、或模板刚链接上就已 down不会产生告警管理员执行shutdown把端口管理状态置为 down也不会产生告警。恢复表达式为last(operStatus)2 or last(adminStatus)2 or {$IFCONTROL:{#IFNAME}}0即端口恢复 up、被管理员 shutdown、或宏被置 0 三种情况都会自动关闭问题。对于个别长期允许 down 的接口例如预留端口、未使用的上联口可以通过带上下文的宏按接口精确关闭告警而无需改模板{$IFCONTROL:GigabitEthernet1/0/24} 0该接口的 Link down 触发器将被永久禁用其余接口不受影响。触发器名称中的{#IFNAME}与{#IFALIAS}宏会随 LLD 展开为真实接口名便于在「最新数据」与告警列表里直接识别。高带宽使用率触发器15 分钟均值的拥塞预警「High bandwidth usage」是 warning 优先级的 LLD 触发器用于发现接近饱和的接口。问题表达式为见 YAML 触发器定义( avg(net.if.in[ifHCInOctets.{#SNMPINDEX}], 15m) ({$IF.UTIL.MAX:{#IFNAME}}/100) * last(net.if.speed[ifHighSpeed.{#SNMPINDEX}]) or avg(net.if.out[ifHCOutOctets.{#SNMPINDEX}], 15m) ({$IF.UTIL.MAX:{#IFNAME}}/100) * last(net.if.speed[ifHighSpeed.{#SNMPINDEX}]) ) and last(net.if.speed[ifHighSpeed.{#SNMPINDEX}]) 0要点拆解取入方向或出方向 15 分钟平均速率与接口当前速率ifHighSpeed换算后的 bps的{$IF.UTIL.MAX}% 阈值比较速率报告为 0 的接口被 0条件排除避免除以零/空速率的误报恢复表达式要求两个方向同时回落到({$IF.UTIL.MAX} - 3)%以下即默认 87%构成 3 个百分点的滞回区间防止流量在阈值附近抖动导致告警反复翻转阈值可在主机级别整体调整也可按接口覆盖例如{$IF.UTIL.MAX} 80 # 主机级整体阈值调为 80% {$IF.UTIL.MAX:Ten-GigabitEthernet1/1/1} 95 # 接口级仅某 10G 口调为 95%触发器的操作数据opdata会附带In: {ITEM.LASTVALUE1}, out: {ITEM.LASTVALUE3}, speed: {ITEM.LASTVALUE2}告警详情中可直接看到当前入/出速率与接口速率方便快速判断拥塞程度。硬件健康监控CPU、内存、温度、风扇、电源模板通过 H3C/HP 私有 MIB 采集硬件健康数据所有SNMP agent类型监控项均每 1 分钟更新一次详见 YAML items 段监控项监控项键OID单位告警CPU usageswitch.cpu1.3.6.1.4.1.25506.2.6.1.1.1.1.6.30% 80高优先级Memory usageswitch.memory1.3.6.1.4.1.25506.2.6.1.1.1.1.8.30% 80高优先级Switch Temperatureswitch.temp1.3.6.1.4.1.25506.2.6.1.1.1.1.12.2°C 45恢复 40Fan 1fan1.status1.3.6.1.4.1.25506.8.35.9.1.1.1.2.1枚举 2deactiveInternal Power Supply 1Int.Power.Supply11.3.6.1.4.1.25506.8.35.9.1.2.1.2.1枚举 2deactiveExternal Power Supply 1Ext.Power.Supply1.3.6.1.4.1.25506.8.35.9.1.2.1.2.2枚举 2deactive风扇与电源的状态使用值映射HH3C-LSW-DEV-ADM-MIB::DevStatus翻译为可读文本见 YAML valuemaps 定义值文本1active2deactive3not-install4unsupport对应的触发器表达式为last(...)2deactive即已安装但工作异常才会告警not-install值为 3未安装模块不产生告警避免在未插满风扇/电源的机框上误报。温度触发器带有滞回设计温度 45°C 时告警只有回落到 40°C 才恢复7.0 版采用恢复表达式而非{TRIGGER.VALUE}判断实现更清晰。CPU 与内存各附带一个同名图形CPU usage、Memory usage便于在仪表盘直接观察走势。此外SysUptime监控项OID1.3.6.1.2.1.1.3.0每 5 分钟采集一次预处理MULTIPLIER 0.01将 SNMP 时间戳的百分之一秒换算为秒单位uptime当SysUptime 10m时触发信息级info告警「{HOST.NAME} has been restarted」可及时发现设备意外重启。设备信息采集与资产清单同步四个系统信息监控项每 1 小时更新一次且均配置了DISCARD_UNCHANGED_HEARTBEAT 1d预处理——若值在 24 小时内未变化则不再入库兼顾资产数据完整性与存储效率。这些监控项直接写入 Zabbix 资产清单对应字段inventory_link见 YAML 定义监控项OID资产字段Device name1.3.6.1.2.1.1.5.0sysNameNAMEDevice description1.3.6.1.2.1.1.1.0sysDescrHARDWAREDevice location1.3.6.1.2.1.1.6.0sysLocationLOCATIONDevice contact details1.3.6.1.2.1.1.4.0sysContactCONTACT开启资产清单自动填充后无需手工维护主机名、硬件型号、机柜位置与运维联系人全部随模板自动同步。触发器与值映射全景模板内全部触发器汇总如下优先级从高到低触发器优先级触发条件恢复条件CPU usage 80%highlast(switch.cpu) 80默认恢复低于阈值Memory usage 80%highlast(switch.memory) 80默认恢复Temperature 45°Chighlast(switch.temp) 45 40滞回内部电源 deactivehighlast(Int.Power.Supply1) 2默认恢复外部电源 deactivehighlast(Ext.Power.Supply) 2默认恢复Fan 1 deactivehighlast(fan1.status) 2默认恢复设备重启uptime 10minfolast(SysUptime) 10m手动关闭Interface: Link downLLDaverageup→down 且 admin up恢复 up / admin down / 宏置 0Interface: High bandwidthLLDwarning15m 均值入或出 阈值%双向 (阈值-3)%Interface: CRC errorsLLDaveragechange(CRC.Errors[..]) 1默认恢复CRC 错误监控项直接读取EtherLike-MIB::dot3StatsFCSErrors1.3.6.1.2.1.10.7.2.1.3.{#SNMPINDEX}每 2 分钟采集一次触发器采用change(...) 1判定——仅在错误计数出现增量变化时告警而非持续报错从而区分偶发帧校验错误与持续恶化。接口状态值映射IF-MIB::ifAdminStatus映射 up(1)/down(2)/testing(3)IF-MIB::ifOperStatus额外映射 unknown(4)/dormant(5)/notPresent(6)/lowerLayerDown(7)状态值在「最新数据」中直接以可读文本展示。每个接口还会生成「Interface {#IFNAME}({#IFALIAS}): Network traffic」图形原型入方向为绿色渐变线、出方向为蓝色粗线双方向速率一目了然。Zabbix 7.0 迁移要点从旧版升级时要知道的变化模板在同一目录下还保留了 5.0、5.4、6.0 各版本目录结构见template_hp_a5120_switch_snmp_v35.0 为 XML 格式5.4 起为 YAML 格式。README 的 Changes for Zabbix 7.0 一节详细记录了 7.0 版的升级变化值得旧版用户重点关注导出格式采用7.0格式template_groups结构不再包含date字段采集架构接口发现从旧版discovery[]改为bulkwalk[]SNMP_WALK_TO_JSON预处理即上文所述的单次批量采集模型宏语法移除了项目原型名称中的位置宏$1自 Zabbix 6.0 起不再支持缺陷修复修复了内存触发器误查 CPU 监控项的问题CRC 监控项从dot3StatsAlignmentErrors改为dot3StatsFCSErrorsFCS/CRC 错误计数语义更准确告警逻辑温度触发器改用恢复表达式实现滞回新增风扇/电源deactive值 2告警not-install值 3不告警命名与标签{HOSTNAME}宏替换为{HOST.NAME}Application标签改为component标签并为触发器补充scope标签如 availability / performance / capacity / notice便于按标签过滤与报表统计冗余清理删除了与「Internal Power Supply 1」轮询同一 OID 的重复监控项「Power Supply Sensor」功能新增新增每个接口的带宽入/出、速率、管理状态、运行状态监控项与流量图形新增 Link down 与高带宽触发器VLAN 接口默认发现但仅监控状态通过 LLD override 排除带宽、速率与 CRC。从 6.0 迁移到 7.0 的用户建议直接重新导入 7.0 版模板并在主机上替换链接由于 7.0 版接口监控项键名与旧版不同旧版为CRC.Errors[{#SNMPVALUE}]等替换后历史数据不会自动迁移属于预期行为。使用限制与注意事项模板面向HP A5120 系列A5120-48G EI 已验证设计CPU/内存/温度/风扇/电源 OID 来自该系列设备私有 MIB其他厂商设备不建议直接套用同系列不同型号若 OID 结构一致通常可兼容但应以实测为准温度、CPU、内存阈值45°C、80%为模板默认值生产环境应根据机房条件与设备规格通过宏或触发器调整若 SNMP v3 凭据错误或交换机未开放对应 MIB模板监控项会进入不支持not supported状态此时优先排查三个主机宏是否与设备 SNMP 配置一致模板无任何模板链接template links升级或迁移时无关联模板依赖导入失败时优先核对 Zabbix 版本与导出格式是否匹配。小结HP A5120 交换机 SNMP v3 监控模板7.0 版是社区模板中兼具采集效率与告警精确性的典型实现它以单次 bulkwalk[]承载全部接口数据、以依赖项与SNMP_WALK_TO_JSON预处理完成分发用{$NET.IF.IFTYPE.MATCHES}与{$NET.IF.NO_TRAFFIC.IFTYPE.MATCHES}两个正则宏实现接口发现的精细裁剪再用带滞回和按接口覆盖能力的 Link down、高带宽触发器规避了最常见的误报场景。配合模板内置的资产清单同步与 component/scope 标签体系可以在 Zabbix 7.0 中快速构建一套低开销、可维护、告警精准的 A5120 交换机监控方案。赞分享【免费下载链接】community-templatesZabbix Community Templates repository项目地址https://gitcode.com/gh_mirrors/co/community-templates点击查看免费下载相关推荐Zabbix 监控 HP A5120 交换机实战community-templates 的 SNMP v3 模板深度解析与部署指南Zabbix 监控 HP A5120 交换机实战community templates 的 SNMP v3 模板深度解析与部署指南 本文基于 Zabbix CHP A5120 交换机 Zabbix 监控模板详解基于 SNMP v3 的完整监控方案HP A5120 交换机 Zabbix 监控模板详解基于 SNMP v3 的完整监控方案 导读 本文基于 Zabbix 官方社区模板仓库 community基于 SNMP v3 的 HP A5120 交换机监控模板Zabbix 社区模板深度解析与实战指南基于 SNMP v3 的 HP A5120 交换机监控模板Zabbix 社区模板深度解析与实战指南 导读 本文围绕 Zabbix Community Temp上一篇3步拆解复杂表单AngularJS UI Tabs组件布局实战指南下一篇5行代码搞定HTTP故障自愈HTTPX智能重试实战指南创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考