3. iDRAC监控能力详解

iDRAC 是 PowerEdge 服务器上独立于操作系统的带外管理控制器,它把服务器“从加电到退役”的可观测数据集中在一个入口。要把它用好,关键不是记住菜单在哪,而是分清六类监控能力的定位:生命周期日志回答“这台机器经历过什么”,系统事件日志回答“现在出了什么问题”,硬件清单回答“这台机器由什么组成”,传感器读数回答“此刻运行状态如何”,SNMP Trap 与 Redfish 事件订阅回答“如何把变化主动推给监控平台”。下面按“是什么—怎么采—怎么判断”展开。

生命周期日志与系统事件日志:历史与当下的分工

生命周期日志(Lifecycle Log,LC Log)记录配置变更、固件更新、部件更换、电源策略调整、iDRAC 重置等管理动作,是审计与故障回溯的主线。系统事件日志(System Event Log,SEL)聚焦硬件与运行事件,如内存可纠正错误、电源模块掉电、风扇转速异常、温度越限。两者都可通过 iDRAC Web 界面、RACADM 和 Redfish 读取。

用 RACADM 导出生命周期日志的典型方式:

racadm -r 192.168.10.21 -u monitor -p 'Example@123' lclog view -i 20
racadm -r 192.168.10.21 -u monitor -p 'Example@123' lclog export -f lc.xml -t xml
racadm -r 192.168.10.21 -u monitor -p 'Example@123' getsel -o

Redfish 侧则用 /redfish/v1/Managers/iDRAC.Embedded.1/Logs/Lclog 与 /redfish/v1/Systems/System.Embedded.1/LogServices/SEL/Entries 分页拉取。判断要点:生命周期日志看“谁在什么时候改了什么”,SEL 看“事件等级与重复频率”。若同一 DIMM 的 Correctable ECC 在 24 小时内从 3 次涨到 40 次,即使当前仍可运行,也应列入更换计划,而不是等 Uncorrectable 出现。

硬件清单与传感器读数:静态资产与动态状态

硬件清单(Inventory)包含 CPU 型号与核数、内存条位置/容量/速率/厂商、磁盘与背板、网卡与固件版本、PSU 功率、BIOS/iDRAC 版本等。它是容量运营的基线:没有准确清单,就无法做内存扩容评估、固件一致性核查和备件匹配。采集命令示例:

racadm getsysinfo
racadm hwinventory
racadm getversion -c
racadm getsensorinfo

传感器读数(Sensor)是高频动态量,包括进风口温度、CPU/内存温度、风扇转速、电压、电流、功耗。它们通常以“当前值 + 阈值 + 状态”三元组呈现。例如进风口温度 24°C、警告阈值 40°C、严重阈值 45°C;某风扇 8400 RPM、下限 3360 RPM。判断逻辑应区分“瞬时越限”与“持续越限”:单次温度尖峰可能由业务负载引起,持续 10 分钟以上越限才更可能是散热或环境问题。功耗读数则直接支撑机柜容量规划,建议按 PSU 额定功率的 60%~70% 作为可持续负载参考,而不是等接近 100% 才处理。

iDRAC 六类监控能力:采集路径与消费方向 iDRAC 带外管理控制器 Web / RACADM / Redfish 生命周期日志 LC Log 配置变更 / 固件更新 / 部件更换 系统事件日志 SEL 内存ECC / 电源 / 风扇 / 温度 硬件清单 Inventory CPU / 内存 / 磁盘 / 网卡 / 固件 传感器读数 Sensor 温度 / 转速 / 电压 / 功耗 SNMP Trap UDP 162 主动推送 告警等级 / OID 映射 Redfish 事件订阅 EventDestination HTTPS POST / 事件过滤 监控平台消费 告警 / 工单 / 容量报表 资产库 / 趋势分析 拉取式:LC Log / SEL / Inventory / Sensor 适合定时采集入库;推送式:SNMP Trap 与 Redfish 订阅适合秒级告警。 两者互补:推送负责“快”,拉取负责“全”和“可回溯”。

SNMP Trap 与 Redfish 事件订阅:把“变化”推出去

轮询能拿到全量数据,但告警时效差。SNMP Trap 与 Redfish 事件订阅解决的是“事件发生即通知”。SNMP Trap 配置需要指定目标地址、团体字或 SNMPv3 用户、告警级别。RACADM 示例:

racadm set idrac.SNMP.Alert.1.DestAddr 192.168.10.50
racadm set idrac.SNMP.Alert.1.Community public
racadm set idrac.SNMP.Alert.1.Enable Enabled
racadm set idrac.SNMP.Alert.1.CustomMsg "R760-01"

Redfish 事件订阅则通过向 /redfish/v1/EventService/Subscriptions 发送 POST 创建,关键字段包括 Destination(接收端 HTTPS 地址)、EventTypes(如 StatusChange、ResourceUpdated、Alert)、Context(自定义标识)以及可选的 RegistryPrefixes 过滤。示例请求体:

{
  "Destination": "https://monitor.example.com/redfish/events",
  "EventTypes": ["StatusChange", "ResourceUpdated", "Alert"],
  "Context": "R760-01-idrac",
  "Protocol": "Redfish"
}

配置完成后,可用 GET /redfish/v1/EventService/Subscriptions 确认订阅存在,并检查接收端是否收到测试事件。常见排障点:目标端口未放通、证书不被信任、订阅被 iDRAC 重置后丢失、事件类型过滤过窄导致漏报。建议对订阅做定期巡检,并在监控平台侧对“超过 N 分钟无心跳事件”设置兜底告警。

采集方法组合与判断依据

实际运营中,推荐“拉取 + 推送”双通道:每 5~15 分钟用 Redfish 或 RACADM 采集清单与传感器入库,形成趋势;同时用 SNMP Trap 或 Redfish 订阅接收秒级告警。判断一条告警是否值得立即处理,可看三点:事件等级(Critical/Warning)、是否影响冗余(如双 PSU 掉一个)、是否持续恶化(如温度连续上升)。对于容量运营,重点看内存使用率、磁盘剩余寿命、功耗余量和固件版本分布,而不是只盯单次告警。

教学示例中的 IP、账号、阈值和事件数量均为合理假设,用于说明采集与判断方法,不代表任何真实环境的实测结果。实际部署时请以现场 iDRAC 版本、网络策略和监控平台能力为准。