当前为25.12-sp1版本,加载了板卡后,web界面内存CPU占用率显示如下
CPU/内存一直无法显示
当前ibma状态正常,点入可以看到CPU等占用率
如何定位解决这个问题,之前用2512/2509,web界面都可以正常显示
当前为25.12-sp1版本,加载了板卡后,web界面内存CPU占用率显示如下
CPU/内存一直无法显示
当前ibma状态正常,点入可以看到CPU等占用率
如何定位解决这个问题,之前用2512/2509,web界面都可以正常显示
答案内容由AI生成,仅供参考:
| 项目 | 状态 |
|---|---|
| iBMA 运行状态 | |
| 前端显示异常 | |
| 根本原因 | 后端数据未正确写入 CSR 或 Host Agent 注册失败 |
| 关键字段 | MemUsage, TotalCPUUsage, BandwidthPercent 为 255 |
| 解决方案 | 检查注册状态 → 重启服务 → 验证 CSR 写入 → 反馈版本缺陷 |
结论:当前问题极可能是
25.12-SP1版本在 Host Agent 与 compute 数据链路上存在缺陷,建议优先降级测试或联系维护团队修复 CSR 写入逻辑。
您在使用 25.12-SP1 版本时,遇到 Web界面中CPU和内存占用率显示为“–” 的问题,尽管 iBMA 服务正常运行且可查看到相关监控数据。以下是基于上下文信息的系统性定位与解决方案。
25.12-SP1----2.16.1,驱动版本 0.3.10,注册服务运行中25.12 和 25.09 正常,升级至 25.12-SP1 后出现问题根据您提供的信息以及知识库中多份文档和案例分析,该问题的核心原因可归结为:
尽管 iBMA 本身运行正常,并采集了 CPU 和内存数据,但 OpenUBMC 的 Web 前端依赖 bmc.kepler.host_agent 模块 来获取这些指标。关键接口如下:
# 检查是否注册成功
busctl --user introspect bmc.kepler.host_agent /bmc/kepler/Systems/1/Sms
# 查询 memory 数据
busctl --user introspect bmc.kepler.host_agent /bmc/kepler/Systems/1/Sms/1/ComputerSystem/Systems/1/Summary
需确认以下属性:
| 属性 | 正常值 | 说明 |
|---|---|---|
Registered |
true |
iBMA 是否已成功注册 |
State |
0 |
SMS 状态正常 |
MemUsage |
<100 且 ≥0 |
内存使用率,若为255表示无效 |
TotalCPUUsage |
<100 且 ≥0 |
CPU 使用率,若为255表示无效 |
在
2号文档《算力部件相关FAQ》中明确指出:
- 若
TotalCPUUsage=255,说明 bma (Host Agent) 侧数据无效- 若
Registered=false,表示 iBMA未完成注册
MemoryMetrics 和 CPUMetrics 中 BandwidthPercent 为默认无效值从文档《CSR配置字典之MemoryMetrics类》和《CPUMetrics类》可知:
BandwidthPercent 字段默认值为 255,表示 未初始化或数据无效255 时的行为
解决方案:必须有组件将实际采集到的 CPU/内存利用率写入此 CSR 属性
尽管 25.12 版本已修复 25.09 的内存显示问题(参考实体“Web界面内存占用率显示问题”与“Community Documentation”关系),但 SP1 补丁包可能引入了新问题,例如:
请依次执行以下命令进行排查:
# 检查 Host Agent 是否注册
busctl --user introspect bmc.kepler.host_agent /bmc/kepler/Systems/1/Sms
# 查看 Registered 和 State
# 检查内存使用率
busctl --user get-property bmc.kepler.host_agent bmc.kepler.sms.redfish.Memory /bmc/kepler/Systems/1/Sms/1/ComputerSystem/Systems/1/Summary MemUsage
# 输出应为一个U8数值(如45),不是255
# 检查 CPU 使用率
busctl --user get-property bmc.kepler.host_agent bmc.kepler.sms.redfish.Processor /bmc/kepler/Systems/1/Sms/1/ComputerSystem/Systems/1/Summary TotalCPUUsage
如果返回
255:说明 iBMA 采集到了数据,但未正确写入 Host Agent
如果返回正常值(如
32):则问题出在前端或 CSR 层
# 查询内存占用率
mdbctl lsprop MemoryMetrics_1_010101 | grep BandwidthPercent
# 查询 CPU 占用率
mdbctl lsprop CPUMetrics_1_010101 | grep BandwidthPercent
- 若输出为
BandwidthPercent 255→ 表示指标未更新- 若输出为如
BandwidthPercent 42→ 表示后端数据正常,前端渲染异常
# 检查是否有如下日志
grep -i "sms registered" /var/log/messages
# 应出现类似日志:
# [system1]sms registered is true
# [system1]sms status is 0
若无此日志,说明 compute 组件未正确接收 Host Agent 状态
根据以上分析,采取以下三种策略结合处理:
# 重启 iBMA 服务
systemctl restart iBMA
# 重启 Host Agent(视环境而定)
systemctl restart bmc-kepler-host-agent
# 等待1-2分钟后刷新页面
注:某些版本中 Host Agent 在 iBMA 启动后需手动触发注册
确认 iBMA Monitor 模块 是否将采集数据写入了 CSR。
iBMA → Host Agent → compute → CSR (MemoryMetrics/CPUMetrics)
建议尝试 降级回
25.12正式版 验证是否为 SP1 特有问题
源自文档中 Longbow 的回复(doc_id=2):
“该问题已在 2512 版本解决,请使用此后的版本验证。”
但由于您使用的是 25.12-SP1 仍存在问题,推测:
建议反馈给开发团队,确认该 SP 版本是否遗漏了以下关键补丁:
MemUsage 和 TotalCPUUsage 的处理逻辑BandwidthPercent 的更新机制| 资源 | 用途 |
|---|---|
| 了解 Host Agent 工作机制 | |
redfish/v1/Systems/1/MemorySummary/MemoryMetrics |
通过 Redfish 接口验证内存数据是否可用 |
mdbctl lsprop MemoryMetrics_1_010101 |
直接查看 CSR 数据 |
查看 总内存使用率、总CPU使用率 是否有数据 |
busctl 查询结果/var/log/iBMA/*.log)mdbctl lsprop 输出| 项目 | 状态 |
|---|---|
| iBMA 运行状态 | |
| 前端显示异常 | |
| 根本原因 | 后端数据未正确写入 CSR 或 Host Agent 注册失败 |
| 关键字段 | MemUsage, TotalCPUUsage, BandwidthPercent 为 255 |
| 解决方案 | 检查注册状态 → 重启服务 → 验证 CSR 写入 → 反馈版本缺陷 |
结论:当前问题极可能是
25.12-SP1版本在 Host Agent 与 compute 数据链路上存在缺陷,建议优先降级测试或联系维护团队修复 CSR 写入逻辑。