news 2026/10/16 1:52:10

Rittal PDU 7955 智能配电单元监控模板详解

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Rittal PDU 7955 智能配电单元监控模板详解

【免费下载链接】community-templates

Zabbix Community Templates repository

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

本文全面解析 community-templates 仓库中的 Rittal PDU 7955 监控模板(Zabbix 6.0 版本):它通过 SNMP agent 对 Rittal 7955 系列单相(4.4)与三相(5.0)PDU 的输入、温度、湿度、泄漏、气流、门禁、电能与相功率等传感器进行自动发现与采集,并内置了分级告警触发器。读完本文,你将掌握该模板的发现规则、采集项、触发器的完整构成,以及如何结合模板源码理解其监控设计思路并完成部署。

模板概览:用途与适用范围

该模板由作者 RPW 编写,定位为IT 基础设施监控(IT Infrastructure Monitoring),是 Zabbix 官方社区模板仓库中针对 Rittal 7955 系列智能 PDU 的监控方案。README 明确其适用对象为:

  • Rittal PDU 7955 单相版本(1-phase,固件/版本 4.4)
  • Rittal PDU 7955 三相版本(3-phase,固件/版本 5.0)

模板覆盖的传感器类型包括:温度(Temperature)、湿度(Humidity)、输入(Input 1/Input 2)、电能(Energy Meter 1/2、Unit Energy)、相功率(Phase L1 Power/Current/Voltage)、气流(AirFlow)、泄漏(Leakage)、气候(Climate)以及门禁(Access,即机柜门开关状态)等。也就是说,它不只是"看 PDU 有没有电",而是把配电与机柜环境(温湿度、漏水、门禁)统一纳入了监控范畴,非常适合机房/数据中心机柜级基础设施的运维场景。

在仓库中该模板按 Zabbix 版本分目录维护:

目录模板格式说明
5.0/XML(template_rittal_pdu-7955.xml)Zabbix 5.0 导入格式
5.4/YAML(template_rittal_pdu-7955.yaml)Zabbix 5.4 导入格式
6.0/YAML(template_rittal_pdu-7955.yaml)Zabbix 6.0 导入格式,本文主体

其中 5.4 与 6.0 的 YAML 文件除zabbix_export.version字段(分别为'5.4'与'6.0')外内容完全一致,且导出日期同为2021-11-25T12:42:04Z。

模板组成:两个基础模块的链接结构

README 的 "Template links" 一节指出,该模板链接了以下两个模块模板:

名称
Template Module ICMP Ping
Template Module Generic SNMP

这两个模块的定义完整保存在 6.0/template_rittal_pdu-7955.yaml 中(从源码结构看,模板导出文件同时携带了所链接模块的完整定义,便于离线导入)。它们的角色分工非常清晰:Generic SNMP 负责 SNMP 通道与设备基础信息,ICMP Ping 负责链路可达性,而 PDU 本身的电气与环境指标则通过 LLD 发现规则采集(详见后文)。

Template Module Generic SNMP:SNMP 通道与系统基础信息

该模块(YAML 中uuid: 4cb1aabe2b704b5c882963c2ef87d8f6)基于 SNMPv2-MIB,采集设备系统级信息:

监控项KeyOID更新间隔备注
SNMP traps (fallback)snmptrap.fallback——SNMP_TRAP 类型、LOG 值类型,历史 2w,用于收集未被其他 snmptrap 项匹配的陷阱
System contact detailssystem.contact[sysContact.0]1.3.6.1.2.1.1.4.01h关联资产联系人(inventory_link: CONTACT),DISCARD_UNCHANGED_HEARTBEAT1d
System descriptionsystem.descr[sysDescr.0]1.3.6.1.2.1.1.1.01h设备硬件/软件描述
System locationsystem.location[sysLocation.0]1.3.6.1.2.1.1.6.01h关联资产位置(inventory_link: LOCATION)
System namesystem.name1.3.6.1.2.1.1.5.01h关联资产名称(inventory_link: NAME),变化触发告警
System object IDsystem.objectid[sysObjectID.0]1.3.6.1.2.1.1.2.015m厂商对实体的权威标识
Uptimesystem.uptime[sysUpTime.0]1.3.6.1.2.1.1.3.030s预处理MULTIPLIER 0.01,将百分之一秒换算为秒,单位uptime
SNMP agent availabilityzabbix[host,snmp,available]——INTERNAL 类型,值映射zabbix.host.available

值得注意的几个实现细节:

  • uptime 预处理:SNMPv2-MIB 的sysUpTime.0单位是百分之一秒,YAML 中通过MULTIPLIER预处理步骤乘以0.01换算为秒并配合units: uptime展示,这是 SNMP 类模板的常见做法(源码见 template_rittal_pdu-7955.yaml)。
  • 系统名变更告警:system.name上挂有触发器System name has changed (new name: {ITEM.VALUE})(INFO 级,需手动确认关闭),用于捕获设备被重新命名的事件。
  • SNMP 通道自监控:通过内部项zabbix[host,snmp,available]判断 SNMP 是否可轮询,其值映射为0=not available / 1=available / 2=unknown(对应zabbix.host.available值映射表)。当max(/Template Module Generic SNMP/zabbix[host,snmp,available],{$SNMP.TIMEOUT})=0时触发No SNMP data collection(WARNING),并依赖Unavailable by ICMP ping(即设备 ICMP 不可达时不重复报警,形成告警依赖链)。
  • 宏:模块定义宏{$SNMP.TIMEOUT},默认5m。

Template Module ICMP Ping:链路可达性

该模块(YAML 中uuid: 37e5eb5606bc4abba66c8b20381a1e8a)提供三个 ICMP 监控项:

监控项Key更新间隔值类型/单位触发告警
ICMP pingicmpping60s值映射Service state(0=Down, 1=Up)Unavailable by ICMP ping(HIGH)
ICMP lossicmppingloss60sFLOAT / %High ICMP ping loss(WARNING)
ICMP response timeicmppingsec60sFLOAT / sHigh ICMP ping response time(WARNING)

告警表达式依赖两个可调宏(源码见 template_rittal_pdu-7955.yaml):

  • {$ICMP_LOSS_WARN}:默认20(丢包率 %,min(...,5m)>{$ICMP_LOSS_WARN} and min(...,5m)<100触发);
  • {$ICMP_RESPONSE_TIME_WARN}:默认0.15(秒,avg(...,5m)>{$ICMP_RESPONSE_TIME_WARN}触发)。

两个告警都挂有依赖:High ICMP ping response time依赖High ICMP ping loss,后者又依赖Unavailable by ICMP ping,链路完全不可达时不会叠加误报。

注:README 中"Macros used"一节标注该模板本身"没有宏链接"——上述宏均来自两个链接模块,而非模板自身。

发现规则(Discovery Rules):15 组 LLD 自动发现

模板的全部电气与环境指标都基于LLD(Low-Level Discovery,低层自动发现)实现,通过轮询 Rittal CMC III / CMS III 管理卡的 SNMP 表(cmcIIIVarName.*/cmsIIIVarNames.*)枚举出实际存在的传感器、电能表、输入端口等实体,再为每个实体生成监控项。README 列出的 15 组发现规则如下(类型均为SNMP agent,更新间隔均为 1h):

发现规则名称发现键(Key)
Discovery AnalogcmcIIIVarName.Analog
Discovery Unit EnergycmcIIIVarName.Unit.Energy
Phase L1 PowercmcIIIVarName.PhaseL1.Power
Energy Meter 2cmcIIIVarName.EnergyMeter2
Phase L1 EnergycmcIIIVarName.PhaseL1.Energy
Discovery Input 1cmcIIIVarName.Input1
Discovery HumiditycmcIIIVarName.Humidity
Discovery LeakagecmcIIIVarName.Leakage
Discovery cmsIIIVarName SettingscmsIIIVarNames.WalkSNMP
Discovery Unit PowercmcIIIVarName.Unit.Power
Discovery ClimatecmcIIIVarName.Climate
Discovery AccesscmcIIIVarName.Access
Discovery TemperaturecmcIIIVarName.Temperature
Energy Meter 1cmcIIIVarName.EnergyMeter1
Discovery Input 2cmcIIIVarName.Input2

从命名规律可以看出设计意图:发现键统一为<TableName>形式,发现出的每条记录以{#SNMPINDEX}宏作为实体索引,后续采集项通过cmcIIIVarValueInt.*[{#SNMPINDEX}]、cmcIIIVarValueStrg.*[{#SNMPINDEX}]等方式按索引取值。其中cmsIIIVarNames.WalkSNMP是一条特殊的"遍历式"发现(对应采集项Walk-SNMP[{#SNMPVALUE} ({#SNMPINDEX})]),用于把 CMC/CMS 卡上未单独建模的状态项统一收集并做关键字匹配告警。

从源码结构可以推断:cmcIII/cmsIII前缀对应 Rittal CMC III / CMS III 管理单元私有 MIB 的变量命名空间,VarName为发现表、VarValueInt/VarValueStrg为整型/字符串取值表。具体 OID 数值未随模板导出,需结合 Rittal 设备 MIB 确认。

采集项(Items Collected):37 个监控项全览

模板采集项全部基于 SNMP agent,绝大多数带LLD标记(即由上述发现规则动态生成,{#SNMPINDEX}为实体索引)。按监控维度分组如下:

设备基础信息(非 LLD)

监控项Key更新间隔
Serial numberentPhysicalSerialNum1h
FirmwareentPhysicalSoftwareRev1h

这两项来自 ENTITY-MIB,用于记录 PDU 序列号与固件版本。

模拟量 / 气流(Analog、AirFlow)

监控项Key更新间隔
Analog DescNamecmcIIIVarValueStrg.Analog.DescName[{#SNMPINDEX}]1h
Analog Status - AirFlowcmcIIIVarValueStrg.Analog.Status[{#SNMPINDEX}]1m

单元电能(Unit Energy)

监控项Key更新间隔
Unit Energie Custom kWhUnit.Energy.Active.Custom.Value[{#SNMPINDEX}]2m
Unit Energie RuntimeUnit.Energy.Active.Runtime.Value[{#SNMPINDEX}]2m
Unit Energie Active kWhUnit.Energy.Active.Value[{#SNMPINDEX}]2m

其中 Runtime 项同时充当"PDU 运行时长"依据——触发器用其判断 PDU 是否刚重启(详见触发器章节)。

L1 相电气量(Phase L1)

监控项Key更新间隔
Phase L1 Current StatuscmcIIIVarValueInt.PhaseL1.Current.Status[{#SNMPINDEX}]1m
Phase L1 Current ValuecmcIIIVarValueInt.PhaseL1.Current.Value[{#SNMPINDEX}]1m
Phase L1 Power Active StatuscmcIIIVarValueInt.PhaseL1.Power.Active.Status[{#SNMPINDEX}]1m
Phase L1 Power Active ValuecmcIIIVarValueInt.PhaseL1.Power.Active.Value[{#SNMPINDEX}]5m
Phase L1 Voltage StatuscmcIIIVarValueInt.PhaseL1.Voltage.Status[{#SNMPINDEX}]1m
Phase L1 Voltage ValuecmcIIIVarValueInt.PhaseL1.Voltage.Value[{#SNMPINDEX}]1m

电流、电压按 1m 采集(趋势类数据更细粒度),有功功率按 5m 采集。

电能表(Energy Meter 1 / 2)

监控项Key更新间隔
Energy Meter 1 statuscmcIIIVarValueStrg.EnergyMeter1.Status[{#SNMPINDEX}]10m
Energy Meter 1 valuecmcIIIVarValueStrg.EnergyMeter1.Value[{#SNMPINDEX}]5m
Energy Meter 2 statuscmcIIIVarValueStrg.EnergyMeter2.Status[{#SNMPINDEX}]10m
Energy Meter 2 valuecmcIIIVarValueStrg.EnergyMeter2.Value[{#SNMPINDEX}]5m
L1 Energy Active ValuecmcIIIVarValueInt.L1.Energy.Active.Value5m
L1 Energy Active Custom ValuecmcIIIVarValueInt.L1.Energy.Active.Custom.Value5m
L1 Energy Apparent ValuecmcIIIVarValueInt.L1.Energy.Apparent.Value5m

能量表状态(status)刷新较慢(10m),读数(value)5m,符合能量计量数据变化平缓的特点;L1 相电能同时采集有功(Active)、自定义(Custom)与视在(Apparent)三种口径。

输入端口(Input 1 / Input 2)

监控项Key更新间隔
Input 1.DescNamecmcIIIVarStrg.Input1.DescName[{#SNMPINDEX}]1h
Input 1 StatuscmcIIIVarStrg.Input1.Status[{#SNMPINDEX}]2m
Input 1 ValuecmcIIIVarStrg.Input1.Value[{#SNMPINDEX}]1m
Input 2.DescNamecmcIIIVarStrg.Input2.DescName[{#SNMPINDEX}]1h
Input 2 StatuscmcIIIVarStrg.Input2.Status[{#SNMPINDEX}]2m
Input 2 ValuecmcIIIVarStrg.Input2.Value[{#SNMPINDEX}]1m

每个输入端口包含描述名、状态与读数三个维度,用于监控两路输入的带电/切换情况。

环境传感器(温度 / 湿度 / 泄漏 / 气候 / 门禁)

监控项Key更新间隔
Temperature StatuscmcIIIVarValueInt.Temperature.Status[{#SNMPINDEX}]1m
Temperature ValuecmcIIIVarValueInt.Temperature.Value[{#SNMPINDEX}]1m
Humidity StatuscmcIIIVarValueInt.Humidity.Status[{#SNMPINDEX}]1m
Humidity ValuecmcIIIVarValueInt.Humidity.Value[{#SNMPINDEX}]10m
Leakage StatuscmcIIIVarValueInt.Leakage.Status[{#SNMPINDEX}]1m
Climate StatuscmcIIIVarValueInt.Climate[{#SNMPINDEX}]1m
Door statuscmcIIIVarValueInt.Access.Status1m
Access DescNamecmcIIIVarValueStrg.Access.DescName1h

温度与湿度都区分"状态(Status)"与"数值(Value)"两类采集:Status 用于判断传感器工作是否正常,Value 用于阈值告警。湿度数值采样间隔 10m,比温度的 1m 稀疏,适合湿度变化平缓的场景。

单元功率与遍历项

监控项Key更新间隔
Unit Power Active StatusUnit.Power.Active.Status[{#SNMPINDEX}]2m
Unit Power Active ValueUnit.Power.Active.Value[{#SNMPINDEX}]2m
$1Walk-SNMP[{#SNMPVALUE} ({#SNMPINDEX})]1m

Walk-SNMP项是cmsIIIVarNames.WalkSNMP发现规则生成的通用采集项,监控项名称即$1(由宏替换为实际值),用于对管理卡上所有设置/状态值做文本级巡检(配合.str(OK)判断)。

触发器(Triggers):分级告警设计

模板内置了 23 个主体触发器,并为 LLD 监控项提供了同名(LLD)变体(针对每个发现的实体实例化),合计 46 个触发器。以下完整列出主体触发器:

触发器名称表达式要点优先级
Open door warningcmcIIIVarValueInt.Access.Status.last()<>13warning
AirFlow Status alarmcmcIIIVarValueStrg.Analog.Status[{#SNMPINDEX}].last()<>4high
Climate alarm HIGH {ITEM.LASTVALUE}cmcIIIVarValueInt.Climate[{#SNMPINDEX}].last()>=40disaster
Climate alarm {ITEM.LASTVALUE}cmcIIIVarValueInt.Climate[{#SNMPINDEX}].last()>=35high
Alarm Humidity Status(湿度状态非 OK)cmcIIIVarValueInt.Humidity.Status[{#SNMPINDEX}].last()<>4high
Humidity Above Normal {ITEM.LASTVALUE}(湿度偏高)Value>75 and Value<80average
Humidity Below Normal {ITEM.LASTVALUE}(湿度偏低)Value<=30 and Value>25average
Humidity Very Above Normal {ITEM.LASTVALUE}(湿度过高)Value>=80high
Humidity Very Below Normal {ITEM.LASTVALUE}(湿度过低)Value<=25high
Input 1 status alarmInput1.Status=4 and Input1.Value<>1high
Input 2 status alarmInput2.Status=4 and Input2.Value<>1high
Alarm Leakage StatusLeakage.Status[{#SNMPINDEX}].last()<>4disaster
Alarm Current Status Phase L1PhaseL1.Current.Status[{#SNMPINDEX}].last()<>10high
Alarm Power Status Phase L1PhaseL1.Current.Status[{#SNMPINDEX}].last()<>10high
Alarm Voltage Status Phase L1PhaseL1.Voltage.Status[{#SNMPINDEX}].last()<>4high
Temparture status alarm(温度状态非 OK)Temperature.Status[{#SNMPINDEX}].last()<>4high
Temperature Above Normal {ITEM.LASTVALUE}°CValue>=25 and Value<26average
Temperature Below Normal {ITEM.LASTVALUE}°CValue<=15 and Value>13average
Temperature Far Below Normal {ITEM.LASTVALUE}°C(温度过低)Value<=13high
Temperature Very Above Normal {ITEM.LASTVALUE}°C(温度过高)Value>=26high
PDU has been restartet (uptime < 5m)Unit.Energy.Active.Runtime.Value[{#SNMPINDEX}].last()<5maverage
Alarm Unit Power Active StatusUnit.Power.Active.Status[{#SNMPINDEX}].last()<>4disaster
{HOST.NAME} $1Walk-SNMP[{#SNMPVALUE} ({#SNMPINDEX})].str(OK)<>1disaster

LLD 变体触发器与上表一一对应,名称追加(LLD)后缀(如AirFlow Status alarm (LLD)、Climate alarm HIGH {ITEM.LASTVALUE} (LLD)等),表达式相同,仅在发现出的每个实体上实例化。

告警设计的三条主线

从表达式可以归纳出模板的告警逻辑:

  1. 状态值非正常判定:大量告警采用"状态字段<>期望值"模式,如湿度/温度/泄漏状态<>4、L1 相电流/功率状态<>10、门禁<>13。这些数字是 Rittal 设备 MIB 中定义的状态枚举值(如 4 表示"正常/OK",10、13 对应不同状态码),具体语义需对照设备 MIB——模板作者将其作为硬编码的期望值使用。{ITEM.LASTVALUE}宏会把实际状态值带进告警标题,便于一线运维直接看到异常码。
  2. 数值区间分级:环境量采用"分级阈值"设计。温度以 25°C/26°C 为界(average→high),低于 13°C 判为过冷;湿度以 25%/30%/75%/80% 为界分出偏低/偏高/过低/过高四级。这种双告警设计(先 average 预警、再 high 升级)能有效减少误报冲击。
  3. 关键异常直上最高级:泄漏(Leakage)、单元功率状态、Walk-SNMP 巡检失败、气候指数 ≥40 均直接定为disaster级——漏水与电源异常属于机房最高风险事件,应第一时间触发最高级别告警。

告警依赖与降噪

虽然模板本身"没有宏链接",但两个链接模块提供了完整的告警依赖链:SNMP 采集不可用(No SNMP data collection)依赖 ICMP 不可达(Unavailable by ICMP ping),ICMP 丢包/响应时间告警又彼此依赖。这意味着当 PDU 整体宕机(ICMP 与 SNMP 同时失败)时,只会弹出最高层级的连通性告警,而不会叠加大量无意义的环境告警。

部署与使用建议

该模板以标准 Zabbix 导入格式分发(5.0 XML、5.4 YAML、6.0 YAML),可通过 Zabbix 前端 "Configuration → Templates → Import" 导入对应版本的文件,然后将模板链接到 Rittal PDU 7955 主机。使用前提与注意事项:

  • SNMP 前提:主机需启用 SNMP agent 轮询,并确保管理卡(CMC III / CMS III)已配置 SNMP 社区字符串;模板未定义{$SNMP_COMMUNITY}之类宏,社区字符串需在主机级别配置({$SNMP.TIMEOUT}默认 5m 来自链接模块,可覆盖)。
  • 版本匹配:5.4 与 6.0 的 YAML 文件内容一致,按你的 Zabbix 主版本选择导入;5.0 使用 XML 格式。
  • 宏调优:若需调整告警灵敏度,可在模板/主机层覆盖链接模块的宏:{$ICMP_LOSS_WARN}(默认 20%)、{$ICMP_RESPONSE_TIME_WARN}(默认 0.15s)、{$SNMP.TIMEOUT}(默认 5m)。温湿度分级阈值(25/26°C、25/30/75/80%)以硬编码写在触发器表达式中,如需变更需在导入后修改对应触发器。
  • 状态码核对:触发器中<>4、<>10、<>13等状态期望值来自 Rittal 设备私有 MIB,接入真实设备后建议先用snmpwalk对照实际返回值验证状态枚举语义,再决定是否需要调整表达式。

总结

Rittal PDU 7955 模板是一个典型的"模块化 + LLD 驱动"的 Zabbix 设备监控模板:通过链接 Generic SNMP / ICMP Ping 模块解决通道自监控与链路告警问题,通过 15 组cmcIIIVarName.*/cmsIIIVarNames.*发现规则自动枚举传感器与电能表,再以 37 个带{#SNMPINDEX}索引的采集项和 46 个分级触发器完成从电气量(电压、电流、功率、电能)到环境量(温度、湿度、泄漏、气流、门禁)的全面监控。其"状态值判定 + 数值分级阈值 + 关键项直达 disaster"的告警设计,对同类智能 PDU 监控模板的编写与调优具有直接的参考价值。

【免费下载链接】community-templates

Zabbix Community Templates repository

项目地址:https://gitcode.com/gh_mirrors/co/community-templates
点击查看免费下载
上一篇:B站缓存视频合并:从碎片到完整的魔法之旅
下一篇:Umi-OCR终极指南:免费开源离线OCR工具,5分钟开启高效文字识别之旅

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

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

基于MP2642GR-Z与MK24FN1M0的两串锂电池主动均衡设计

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

作者头像 李华
网站建设 2026/10/16 1:49:26

微带线不连续性:电磁场直觉到硬件故障定位的实战闭环

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

作者头像 李华
网站建设 2026/10/16 1:48:07

PDAL+OSGeo4W:点云坐标精校与CloudCompare无损转换实战

简介&#xff1a;本资源是面向GIS开发者、遥感工程师及三维点云处理从业者的PDAL库离线安装包&#xff0c;专为解决国内用户通过OSGeo4W官网下载PDAL时因网络限制导致的安装困难问题。压缩包完整封装了OSGeo4W64 64位环境及其依赖体系&#xff0c;内含4159个文件&#xff0c;以…

作者头像 李华