news 2026/10/17 6:36:55

community-templates 详解 SNMP HP v1910-48G 模板:48 口 HP 1910-48G 交换机的逐端口 SNMP 监控实现

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
community-templates 详解 SNMP HP v1910-48G 模板:48 口 HP 1910-48G 交换机的逐端口 SNMP 监控实现

【免费下载链接】community-templates

Zabbix Community Templates repository

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

本文以 Zabbix Community Templates 仓库中的「SNMP HP v1910-48G」社区模板为对象,完整解析该模板如何为 48 口百兆/千兆交换机 HP 1910-48G 实现逐端口的流量、CRC 错误、端口状态监控。读完后你将掌握该模板的部署前提(SNMP_COMMUNITY/SNMP_PORT宏配置)、242 个监控项背后的标准 MIB OID 映射、预处理与触发器设计,以及 5.0 XML 与 5.4/6.0 YAML 两个版本文件之间的差异。

一、模板定位与版本信息

该模板的官方说明(见 README):

  • 它在社区中已存在的 24 端口版本模板(由 Павел Яковлев 发布)基础上,扩展到48 个端口,并使其兼容 Zabbix 2.0.x 及以上版本;
  • 模板作者为Rômulo Mendes Figueiredo;
  • 官方声明在Zabbix 2.0.6 与 2.2.7中完成过测试。

当前仓库中该模板提供了三个版本的可导入文件,分别对应不同 Zabbix 大版本:

版本目录文件格式
5.0/template_zabbix_hp_v1910-48g_snmp.xmlZabbix XML 导出(5.0)
5.4/template_zabbix_hp_v1910-48g_snmp.yamlZabbix YAML 导出(5.4)
6.0/template_zabbix_hp_v1910-48g_snmp.yamlZabbix YAML 导出(6.0)

导入时请按你所在 Zabbix Server 的版本选择对应目录的文件。模板自身的模板名为SNMP HP v1910-48G,归属于名为Templates的模板组。

二、部署前提:SNMP 宏与交换机侧配置

README 明确列出部署时必须设置的两个宏:

宏默认/推荐值说明
{$SNMP_COMMUNITY}只读public,读写privateSNMPv1/v2c 的 community 字符串
{$SNMP_PORT}161交换机 SNMP Agent 的监听端口

结合模板导出文件可以补充几点关键事实(源码级佐证):

  1. 模板本身不内嵌宏定义。5.0 版 XML 文件中不包含任何<macros>节点(模板内检索为 0 处),因此这两个宏必须在被监控主机的宏设置中定义,否则所有 SNMP Agent 类型监控项会因 community 为空而轮询失败。README 中的 “It is necessary to set” 即指在 Zabbix 前端Configuration → Hosts → (具体主机)→ Macros中新增这两条宏。
  2. 模板只面向 SNMPv1/v2c。所有监控项类型均为SNMP_AGENT,community 通过{$SNMP_COMMUNITY}注入;模板中没有出现SNMPv3相关的{$SNMPV3_AUTH_PASSPHRASE}等宏。如果你的 1910-48G 开启了 SNMPv3,需要自行改造后使用。
  3. 交换机侧需保证 SNMP Agent 在{$SNMP_PORT}(默认 161)开放,且 community 与宏值一致;若端口被改到非 161,只需修改宏值,无需改模板。

三、监控项全景:242 个 Item 与 6 个应用分组

README 中的 “Items collected” 表格共列出 242 个监控项,覆盖端口 1~48。从 5.0 版 XML 文件核对,实际结构与该表格完全一致,可归纳为6 类监控项族,每一族按端口号 N(N = 1..48)逐一复制:

监控项族(示例名称)KeySNMP OID轮询间隔单位分组(Application)
InErrorsFa0/NifInErrors.N.1.3.6.1.2.1.2.2.1.14.N120s-CRC Errors Rx
OutErrorsFa0/NifOutErrors.N.1.3.6.1.2.1.2.2.1.20.N120s-CRC Errors Tx
Bytes Rx port NifInOctets.N1.3.6.1.2.1.2.2.1.10.N120sbpsBytes Rx
Bytes Tx port NifOutOctets.N1.3.6.1.2.1.2.2.1.16.N120sbpsBytes Tx
Status port NifOperStatus.N1.3.6.1.2.1.2.2.1.8.N120s-Oper Status
Model(全机 1 项).1.3.6.1.2.1.1.1.0.1.3.6.1.2.1.1.1.0(sysDescr)3600sTEXTGeneral
Uptime(全机 1 项)Uptime.1.3.6.1.2.1.1.3.0(sysUpTime)60ssGeneral

统计口径:48 口 × 4 族(入/出错误、入/出字节)= 192 项,加 48 个ifOperStatus端口状态项,再加Model与Uptime各 1 项,合计242 项,与 README 表格行数一致。

其中两个全局项值得注意(见 5.0 XML 文件):

  • Model:轮询sysDescr(.1.3.6.1.2.1.1.1.0),值类型 TEXT,inventory_link: MODEL会把它写入 Zabbix 自动库存的型号字段;轮询间隔 3600s、历史保存 7d、不存趋势(trends: 0);
  • Uptime:轮询sysUpTime,其原始值是“百分之一秒”,模板通过预处理MULTIPLIER 0.01换算成秒(units: s),轮询间隔 60s。

四、流量监控的预处理:CHANGE_PER_SECOND + MULTIPLIER 8

README 表格中只给出 Key 与Update: 120,而真正的工程细节隐藏在导出文件的预处理配置里。以 5.4 版 YAML 中Bytes Rx port 1一类监控项为例(见 5.4 YAML 文件 中 Bytes Tx 系列的结构):

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

这两步预处理对所有 96 个ifInOctets.N/ifOutOctets.N监控项统一生效(5.4 文件中检索CHANGE_PER_SECOND恰好出现 96 处):

  1. CHANGE_PER_SECOND:ifInOctets/ifOutOctets是 32 位单调递增计数器,Zabbix 先计算相邻两次采样的“每秒变化量”,得到 bytes/s;
  2. MULTIPLIER 8:再乘以 8,把 bytes/s 换算为bits/s,因此监控项单位标记为bps,图上直接呈现速率曲线,无需二次加工。

错误计数项(ifInErrors.N/ifOutErrors.N)与端口状态项(ifOperStatus.N)没有预处理,采集的是原始计数器/枚举值,直接参与触发器判断。

五、触发器设计:CRC 错误、端口 Down 与重启告警

这里有一个需要特别指出的文档与实现不一致之处:README 的 “Triggers” 章节写着 “There are no triggers in this template”,但导出文件中实际内嵌了145 个触发器(5.0 XML 中<trigger>出现 145 次,5.4 YAML 中同样为 145 个)。以模板文件实际内容为准,触发器分为三组:

5.1 每端口 CRC/错误计数告警(96 个,HIGH)

每个InErrorsFa0/N与OutErrorsFa0/N监控项都挂了一个 HIGH 级别触发器:

# 5.0 XML 中的旧式写法 {last(0)}>100 # 5.4/6.0 YAML 中的新式写法 last(/SNMP HP v1910-48G/ifInErrors.N)>100
  • 名称:CRC Errors Rx on port N/CRC Errors Tx on port N;
  • 逻辑:最近一次采集的入/出错误计数值大于 100 即报警;
  • 含义:端口线缆、光模块或对端接口出现持续性物理层错误时可被及时捕获。

5.2 端口 Down 告警(48 个,INFO,默认禁用)

每个Status port N监控项及其实体本身都被标记status: DISABLED(5.0 XML 与 5.4 YAML 中禁用状态共 96 处:48 个 Item + 48 个 Trigger),配套的触发器为:

last(/SNMP HP v1910-48G/ifOperStatus.N)=2
  • 名称:Port N status down on {HOSTNAME},级别 INFO;
  • 逻辑:ifOperStatus取值为 2(down)即报警;
  • 之所以默认禁用,可以推断是因为:在只有部分端口实际接线的 48 口交换机上,未使用端口的 oper 状态本来就是 down,全部启用会产生大量无意义告警。实践中建议只为你真正在用的端口把对应的 Item 与 Trigger 启用,其余保持禁用即可,这正是模板留给你按需裁剪的设计。

5.3 设备重启告警(1 个,AVERAGE)

挂载在Uptime监控项上:

last(/SNMP HP v1910-48G/Uptime)<600
  • 名称:{HOSTNAME} has just been restarted,级别 AVERAGE;
  • 逻辑:系统运行时间小于 600 秒(10 分钟)即判定交换机刚刚重启,提示非计划断电或配置复位。

六、图形:48 张逐端口流量图

模板内置48 张图形(Port 1 stats~Port 48 stats),每张图固定包含两条曲线:

曲线监控项 Key颜色
出方向流量ifOutOctets.N000099(蓝)
入方向流量ifInOctets.N990000(红)

图形 Y 轴下限类型设置为FIXED(固定从 0 起始),便于横向比较各端口的流量水位。由于监控项已经过 CHANGE_PER_SECOND × 8 预处理,图上直接就是 bps 单位的实时速率,无需手动换算。

七、5.0 XML 与 5.4/6.0 YAML 版本差异对照

三个目录下的模板内容一致,差异来自 Zabbix 导出格式的演进,维护时应了解:

维度5.0(XML)5.4 / 6.0(YAML)
分组方式<applications>应用分组(Bytes Rx、Bytes Tx、CRC Errors Rx、CRC Errors Tx、General、Oper Status)转为 Item 级tags(如tag: Application, value: Bytes Rx)
触发器表达式旧式{last(0)}>100(隐含本主机)新式last(/SNMP HP v1910-48G/key)>100(显式引用模板与 Key)
唯一标识无 UUID每个 Item/Trigger/Graph 均有uuid
模板描述内嵌于<description>(即 README 的 Overview 内容)内嵌于description多行字符串

两版中的 OID、Key、轮询间隔、预处理、触发阈值均相同,可以认为 5.4/6.0 文件只是格式迁移后的等价物。

八、部署步骤与注意事项

  1. 导入模板:Zabbix 前端Administration → Templates → Import,选择与你版本对应的 XML(5.0)或 YAML(5.4/6.0)文件;
  2. 配置主机 SNMP:在目标主机的Host groups/Interfaces中启用 SNMP interface,选择 SNMPv1 或 v2c,并按第二节设置{$SNMP_COMMUNITY}、{$SNMP_PORT}两个主机宏;
  3. 应用模板:为主机关联SNMP HP v1910-48G模板后,观察Monitoring → Latest data,确认Model、Uptime先出数,再逐端口核对流量曲线;
  4. 启用端口状态告警:只对在用的端口启用Status port N及其 down 触发器,避免 48 个未用端口刷屏;
  5. 调优阈值:错误计数阈值>100与 Uptime 阈值<600均为模板默认值,可在触发器中按需调整。

限制与边界:

  • 模板不含任何 LLD 发现规则(README 亦声明 “There are no discovery rules”),端口 1~48 是静态写死的编号,隐含假设交换机的ifIndex与面板端口一一对应;若设备固件的 ifIndex 编号不一致,需要人工核对 OID;
  • 该模板只监控接口层(流量、错误、oper 状态、Uptime),不涉及 VLAN、STP、光功率等更深层指标;
  • 官方测试版本为 Zabbix 2.0.6/2.2.7,仓库中现存的导出文件面向 5.0/5.4/6.0,升级跨度过大,导入前建议先在测试环境验证;
  • 仅支持 SNMPv1/v2c community 方式,无 SNMPv3 支持。

参考文件

  • 模板说明:5.0/README.md、5.4/README.md、6.0/README.md
  • 模板定义:5.0 XML、5.4 YAML、6.0 YAML

【免费下载链接】community-templates

Zabbix Community Templates repository

项目地址:https://gitcode.com/gh_mirrors/co/community-templates
点击查看免费下载
上一篇:3 步完成 MAS Windows 与 Office 激活:新手完整指南
下一篇:在 Diffusers 中使用 Scheduled Pseudo-Huber Loss 训练文生图模型:原理、调度策略与实战

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

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

天若OCR实操指南:从截图到文字提取的完整配置与避坑经验

最近几年我这台办公机上的“截图转文字”需求越来越频繁&#xff0c;最初是处理扫描版合同和PDF里的文字段落&#xff0c;后来连聊天记录截图、网页里不让复制的段落、外文资料里的整页内容都得靠它搞定。中间折腾过不少工具&#xff0c;最后一直留着的反而是这款老牌截图OCR工…

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

拆解PI-VLA:对称感知与预测交互式VLA框架的技术要点

最近读到一篇标题特别长的VLA论文&#xff0c;标题开头是“PI-VLA: A Symmetry-Aware Predictive and Interactive Vision-Language-Action Framework for Rob”&#xff0c;后面那段明显被截断了。这种标题在机器人学习方向越来越常见——视觉-语言-动作&#xff08;VLA&#…

作者头像 李华