电源信息页面没有电源设置入口

openUBMC版本号:25.12.01.01

总共4个PSU,当前电源信息显示正常,但是电源信息页面没有电源设置按钮,请问下除了配置PSR外,其它还要配置什么,才能显示电源设置按钮 。PSR信息如下:

“PowerStrategy_1”: {
“PowerWorkingMode”: “LoadBalancing”,
“PowerLimitValue”: 6000,
“PowerLimitEnabled”: true,
“PowerLimitFailed”: false,
“PSUsOutputVoltageLow”: false,
“RedundancyFailure”: false,
“PowerLimitActivated”: false,
“PowerCappingSupported”: true,
“PowerLimitExceptionSupported”: true,
“DeepSleepSupported”: false,
“ActiveStandbySupported”: true,
“NormalAndRedundancySupported”: false,
“PowerPredictSupported”: false,
“EnergyEfficiencyOptimizationSupported”: false,
“EnergySavingSupported”: false,
“PSUsUnavailableOfflineCause”: false,
“PSUsOutputCurrentImbalance”: false,
“ReviseParam”: 1.2,
“PowerCappingDevices”: [“CPU”],
“IsSupportPowerLimitMode”: false,
“AllowableMinPowerLimitInWatts”: 6000
},
“Event_SystemPowerCapTriggered”: {
“EventKeyId”: “System.SystemPowerCapTriggered”,
“Condition”: 1,
“Hysteresis”: 0
},
“Event_SystemPowerCapFailure”: {
“EventKeyId”: “System.SystemPowerCapFailure”,
“Condition”: 1,
“Hysteresis”: 0
},
“Event_SystemPowerHigh”: {
“EventKeyId”: “System.SystemPowerHigh”,
“Condition”: “<=/EnergyMetric_1.HighPowerThresholdWatts”,
“Hysteresis”: 30
},
“Event_NormalAndRedundancyVoltageError”: {
“EventKeyId”: “PSU.NormalAndRedundancyVoltageError”,
“Condition”: 1,
“Hysteresis”: 0
},
“Event_PSURedundancyLost”: {
“EventKeyId”: “PSU.PSURedundancyLost”,
“Condition”: 1,
“Hysteresis”: 0,
“LedFaultCode”: “P$$”
},
“Event_PSUsOutputCurrentImbalance”: {
“EventKeyId”: “System.PSUsOutputCurrentImbalance”,
“Condition”: 1,
“Hysteresis”: 0
},
“DiscreteSensor_PwrCapStatus”: {
“AssertMask”: 3,
“DeassertMask”: 3,
“DiscreteMask”: 3
},

答案内容由AI生成,仅供参考:

:white_check_mark: 结论

仅配置 PowerStrategy 并不足以触发前端显示“电源设置”按钮。必须创建 PowerConfiguration 实例,并确认服务注册、权限允许后,UI 才会渲染该入口。

:wrench: 请优先检查并补充 PowerConfiguration 对象的声明,这是当前最可能缺失的关键环节。

点击此处查看详细分析解答

关于 openUBMC 电源信息页面无电源设置入口的分析与解答

您遇到的问题是:在 openUBMC 版本 25.12.01.01 环境下,PSU 电源信息显示正常,但“电源信息”页面没有出现“电源设置”按钮。您已配置了 PowerStrategy 相关参数,但仍无法显示设置入口。

以下基于知识库中的实体、关系及文档内容,进行系统性分析,并提供完整解决方案。


:pushpin: 问题核心定位

根据现象描述和知识库信息,电源设置入口的显示依赖于前端页面逻辑判断某些配置项是否启用或存在。即使 PSUs 在位且工作正常,若缺少特定的关键配置,前端将判定“无需显示电源设置入口”


:white_check_mark: 已正确配置的部分(您已完成)

您已经完成了以下关键配置:

1. PowerStrategy 配置完整

"PowerStrategy_1": {
  "PowerLimitEnabled": true,
  "PowerLimitValue": 6000,
  "PowerCappingSupported": true,
  "ActiveStandbySupported": true,
  ...
}

:white_check_mark: 表明:

  • 电源封顶(Power Capping)功能已支持并启用;
  • 支持主备切换模式(Active-Standby);
  • 已定义功率限制值为 6000W。

:white_check_mark: 这些配置属于 bmc.kepler.Systems.PowerStrategy 对象的核心属性,符合系统要求。

2. 事件触发机制已配置

Event_SystemPowerCapTriggeredEvent_PSURedundancyLost 等均已定义。

:white_check_mark: 这些事件用于告警上报、LED 显示码绑定等,说明事件体系已初步构建。


:warning: 可能缺失的关键配置项(导致设置按钮不显示)

尽管 PowerStrategy 被配置,但前端是否展示“电源设置”入口,还取决于以下几项结构性配置是否完备


:wrench: 一、检查 PowerConfiguration 类是否实例化

关键点PowerStrategy 是策略管理模块,而 PowerConfiguration 是实际承载电源配置功能的类对象,前端页面通过是否存在该对象决定是否渲染设置入口。

:white_check_mark: 正确做法:

必须在系统对象树中显式声明一个 PowerConfiguration 实例,例如:

"PowerConfiguration_1": {
  "ClassName": "PowerConfiguration",
  "SinglePsuSupport": 1,
  "Description": "System Power Configuration Instance"
}

:cross_mark: 错误情况:

仅配置了 PowerStrategy没有创建 PowerConfiguration 对象实例 → 前端检测不到可配置对象 → 不显示“电源设置”按钮。

来源依据:

  • KG 实体:PowerConfiguration 是负责管理电源配置的软件类;
  • 关系:PowerStrategy 指导 PowerConfiguration 进行系统管理;
  • 推论:PowerConfiguration 必须存在,才能让前端感知“有可配置项”。

:wrench: 二、确保 SinglePsuSupport 配置正确

作用:

SinglePsuSupportPowerConfiguration 类中的属性,控制是否支持单电源运行或升级。

配置建议:

"SinglePsuSupport": 1

如果未设置或设为 0,可能被解释为“不支持灵活电源管理”,某些 UI 逻辑会隐藏高级电源设置。

来源依据:

  • KG 实体:SinglePsuSupportPowerConfiguration 的属性;
  • 文档指出:“必须正确设置以确保兼容性”。

:wrench: 三、确认 bmc.kepler.Systems.PowerStrategy 接口路径已注册

即使配置了 PowerStrategy 内容,还需确保其 D-Bus 接口路径已成功注册,否则服务未启动,前端无法通信。

检查项:

  • 是否存在路径 /bmc/kepler/Systems/PowerStrategy
  • 是否可以通过 GetObject 查询到此服务?

常见问题:

KG 显示:Power_Strategy is a system service that failed to start due to a missing DBus name.

:warning:Power_Strategy 服务未能启动,则前端无法获取策略状态 → 视为不可配置 → 隐藏设置按钮。


:wrench: 四、检查前端权限控制逻辑

openUBMC 前端通常根据用户角色和功能授权决定是否显示某些功能按钮。

检查建议:

  1. 使用管理员账户登录;
  2. 查看是否有类似 Feature_PowerConfiguration_Enable 的功能开关;
  3. 检查是否启用了 System Power Configuration 功能模块。

依据:

  • KG:System Power Configuration 允许定制 FRU 信息与设置;
  • Power Management Component 负责应用这些设置。

:wrench: 五、验证 BMCSet_CustomPSActiveStandby 是否开启

虽然不是直接决定 UI 显示的因素,但 该配置表明系统是否具备主动电源管理能力

配置示例:

"BMCSet_CustomPSActiveStandby": "on",
"BMCSet_CustomPSActiveStandbyMinLevel": 30,
"BMCSet_CustomPSActiveStandbyMaxLevel": 70

:white_check_mark: 开启后,系统支持主备切换,有助于前端识别为“高级电源管理机型”,从而显示设置入口。


:white_check_mark: 完整解决方案清单

步骤 操作 必须? 说明
1 创建 PowerConfiguration 实例 :white_check_mark: 必须 PowerConfiguration_1,否则无入口
2 设置 "SinglePsuSupport": 1 :white_check_mark: 推荐 提高兼容性与可配置性
3 确保 PowerStrategy 服务正常运行 :white_check_mark: 必须 D-Bus 接口注册成功
4 检查前端是否加载了 System Power Configuration 模块 :white_check_mark: 必须 否则功能不可见
5 开启 BMCSet_CustomPSActiveStandby :white_check_mark: 推荐 标识支持主动管理
6 使用管理员账号测试 :white_check_mark: 推荐 排除权限问题

:puzzle_piece: 示例配置片段(建议添加)

{
  "PowerConfiguration_1": {
    "ClassName": "PowerConfiguration",
    "SinglePsuSupport": 1,
    "Description": "Main system power configuration object"
  },

  "PowerStrategy_1": {
    "PowerWorkingMode": "LoadBalancing",
    "PowerLimitEnabled": true,
    "PowerLimitValue": 6000,
    "PowerCappingSupported": true,
    "ActiveStandbySupported": true
  },

  "BMCSet_CustomPSActiveStandby": "on",
  "BMCSet_CustomPSActiveStandbyMinLevel": 30,
  "BMCSet_CustomPSActiveStandbyMaxLevel": 70
}

同时确保:

  • CSR 文件中包含上述对象;
  • 重启 power_mgmtPower_Strategy 服务;
  • 刷新前端页面查看是否出现“电源设置”按钮。

:books: 相关参考资料

  1. [告警配置机制介绍]:电源事件需通过 CSR 统一管理;
  2. [BMC Studio 板卡适配指南]:需配置 FruPowerConfiguration 对象;
  3. KG 实体PowerConfiguration, PowerStrategy, bmc.kepler.Systems.PowerStrategy
  4. KG 关系PowerStrategy 指导 PowerConfiguration

:white_check_mark: 结论

仅配置 PowerStrategy 并不足以触发前端显示“电源设置”按钮。必须创建 PowerConfiguration 实例,并确认服务注册、权限允许后,UI 才会渲染该入口。

:wrench: 请优先检查并补充 PowerConfiguration 对象的声明,这是当前最可能缺失的关键环节。

如有需要,可进一步提供 CSR 配置文件内容,以便深入排查对象注册情况。

1、可尝试将DeepSleepSupported配置为true
2、当前电源设置仅对双电源做出可用保证
3、请提供全量日志便于进一步分析