CSR配置字典之PowerStrategy类
更新时间: 2025/07/22
在Gitcode上查看源码📋 文档信息
| 项目 | 内容 |
|---|---|
| 文档标题 | PowerStrategy类配置字典 |
| 版本 | v1.1 |
| 创建日期 | 2025-01-27 |
| 最后更新 | 2026-05-12 |
| 维护状态 | ✅ 活跃维护 |
📋 变更历史记录
文档变更记录
| 版本 | 发布日期 | 变更类型 | 变更内容 | 影响范围 | 维护人员 |
|---|---|---|---|---|---|
| v1.0 | 2025-01-27 | 初始版本 | 创建PowerStrategy类配置字典 | 全新文档 | 系统管理员 |
| v1.1 | 2026-05-12 | 补丁版本 | 修改类概览描述信息 | 类概览描述信息 | 汪航 |
🎯 类概览
PowerStrategy 类
| 属性 | 值 |
|---|---|
| 类名称 | PowerStrategy |
| 功能描述 | 电源策略对象,提供主备供电、功耗封顶、电源管理等功能配置和状态监控 |
| 所属SIG组 | hardware |
| 所属组件 | power_strategy |
| 责任人 | 能效管理组 |
| 最后更新 | 2026-05-12 |
| 状态 | 🟢 正常运行 |
📊 属性定义详表
必选属性
| 属性名 | 类型 | 默认值 | 取值范围 | 动态关联 | 描述 | 使用场景 | 举例 | 来源 | 分类 |
|---|---|---|---|---|---|---|---|---|---|
PowerWorkingMode | String | LoadBalancing | "Active/Standby"/"LoadBalancing" | - | 电源工作模式 主备供电:Active/Standby 若支持电源主备功能,默认按LoadBalancing 负载均衡:LoadBalancing 主备供电:Active/Standby | 电源默认的工作模式 | "LoadBalancing" | CSR配置默认值/软件配置 | 软件 |
PowerLimitValue | U32 | 0 | U32 | - | 功率封顶值(单位W) | 配置初始功耗封顶封顶值(配置支持功耗封顶后生效) | 9999 | CSR配置默认值/软件配置 | 软件 |
PowerLimitEnabled | Boolean | false | true/false | - | 功耗封顶使能状态,默认false,用户可调用相关接口进行修改设置 | 配置初始功耗封顶封顶使能(配置支持功耗封顶后生效) | true | CSR配置默认值/软件配置 | 软件 |
PowerLimitFailed | Boolean | false | true/false | - | 功率封顶失败状态,默认false,通过软件业务逻辑刷新 | 用于告警事件配置 | true | CSR配置默认值/软件刷新 | 软件 |
PSUsOutputVoltageLow | Boolean | false | true/false | - | N+R压差是否异常(主用电源输入电压和备用电源输出电压是否偏差超过5) | 用于告警事件配置 | true | CSR配置默认值/软件刷新 | 软件 |
RedundancyFailure | Boolean | false | true/false | - | 冗余失效(当环境电源数少于AC上电时的电源数时,置为true) | 用于告警事件配置 | true | CSR配置默认值/软件刷新 | 软件 |
PowerLimitActivated | Boolean | false | true/false | - | 封顶策略是否触发 | 用于告警事件配置 | true | CSR配置默认值/软件刷新 | 软件 |
PowerCappingSupported | Boolean | false | true/false | - | 是否支持功耗封顶功能 是否要支持功耗封顶的配置,仅当配置开启时,其余封顶值、封顶使能配置才生效 | 配置是否支持功耗封顶功能 | true | CSR配置 | 软件 |
PowerLimitExceptionSupported | Boolean | false | true/false | - | 是否支持功率封顶失败动作 | 配置是否支持功耗封顶失败动作功能 | true | CSR配置 | 软件 |
DeepSleepSupported | Boolean | false | true/false | - | 是否支持电源深度功能 当配置支持电源主备模式后,设置电源主备模式,开启深度休眠,当OS下电后,会让备用电源进入冷备 | 配置是否支持深度休眠功能(在配置支持电源主备模式后,进一步的配置) | true | CSR配置 | 软件 |
ActiveStandbySupported | Boolean | false | true/false | - | 是否支持电源主备模式功能,true:支持,false:不支持 | 配置是否支持主备模式功能 | true | CSR配置 | 软件 |
NormalAndRedundancySupported | Boolean | false | true/false | - | 是否支持N+R备电功能,true:支持,false:不支持 | 配置是否支持主备模式功能 | false | CSR配置 | 软件 |
PowerPredictSupported | Boolean | false | true/false | - | 是否支持节能收益预测功能,true:支持,false:不支持 | 配置是否支持节能收益预测功能 | false | CSR配置 | 软件 |
EnergyEfficiencyOptimizationSupported | Boolean | false | true/false | - | 是否支持智能能效寻优 | 预留,暂未支持 | false | CSR配置 | 软件 |
EnergySavingSupported | Boolean | false | true/false | - | 是否支持节能功能 | 预留,暂未支持 | false | CSR配置 | 软件 |
PSUsUnavailableOfflineCause | Boolean | false | true/false | - | 电源不可用原因 bit0:电源输入丢失 京东定制电源线未插报电源冗余告警时使用 | 用于告警事件配置 | false | 软件刷新 | 软件 |
PSUsOutputCurrentImbalance | Boolean | false | true/false | - | 电源是否为均流不平衡 | 用于告警事件配置 | true | 软件刷新 | 软件 |
ReviseParam | Double | 1.3 | Double | - | 功耗封顶下限值计算系数 | 配置封顶下限值计算系数 | 1.2 | CSR配置 | 软件 |
PowerCappingDevices | String[] | [] | String[] | - | 功耗封顶设备类型 CPU、NPU | 配置功耗封顶设置类型 | ["CPU"] | CSR配置 | 软件 |
IsSupportPowerLimitMode | Boolean | false | true/false | - | 是否支持功耗封顶模式 1、true:支持 2、false:不支持 | 配置是否支持功耗封顶模式 | false | CSR配置 | 软件 |
AllowableMinPowerLimitInWatts | U32 | 0 | U32 | - | 功耗封顶允许设置的最小封顶值 | 配置功耗封顶允许设置的最小封顶值 | 6000 | CSR配置 | 软件 |
可选属性
| 属性名 | 类型 | 默认值 | 取值范围 | 动态关联 | 描述 | 使用场景 | 举例 | 来源 | 分类 |
|---|---|---|---|---|---|---|---|---|---|
MaxPowerLimitInWatts | U32 | 9999 | U32 | - | 功耗封顶上限值 | 功耗封顶功能开启后,对设置的功耗封顶值进行校验 | 9999 | CSR配置/软件刷新 | 软件 |
"PowerCappingFailureOptions" | String[] | ["LogEventOnly", "NoAction", "HardPowerOff", "Reset"] | 使用"LogEventOnly", "NoAction", "HardPowerOff", "Reset"进行配置 | - | 功耗封顶失败动作,不配置时默认环境支持4种失败动作 | 环境仅支持部分封顶失败动作时进行对应失败动作配置 | ["LogEventOnly", "NoAction", "HardPowerOff", "Reset"] | CSR配置 | 软件 |
"PowerLimitExceptionLogEvent" | Boolean | false | true/false | - | 是否支持功耗封顶失败动作记录事件日志 | 与功耗封顶失败动作配合使用,当失败动作为NoAction时,该属性为true会记录事件日志,否则不记录事件日志 | "true" | CSR配置 | 软件 |
"PowerCappingControlMode" | U8 | 0 | 0/1 | - | 功耗封顶控制模式,0表示主控模式,1表示受控模式 | 多BMC场景时表示控制和被控制的功耗封顶策略 | 0 | CSR配置 | 软件 |
"RedundancyMode" | U16 | 0 | U16 | - | 系统电源冗余模式,高字节代表主用电源数,低字节代表冗余电源数量,例:0x0301表示3+1冗余 | 精细化电源冗余模式 | 0x0301 | CSR配置 | 软件 |
"PhaseWiringSlots" | S16[] | [] | S16[] | - | 电源框相位接线映射,默认为空数组 | 在产品机柜或机房场景下,需达到供电均衡,使主备路电源数量一致,例:[1]-单相位接线,[1,3,5]-三相位接线,分别接到电源框的1、3、5槽位,另一组为2、4、6槽位 | [1] | CSR配置 | 软件 |
"NonCappedStaticPowerWatts" | U32 | 4294967295 | U32 | - | 不参与功耗封顶的功耗值 | 计算功耗封顶值时若配置此值,则需去掉该值后进行功耗封顶计算 | 500 | CSR配置 | 软件 |
"PsuSupplySwitchSupported" | Boolean | false | true/false | - | 是否支持供电线路供电切换,true表示支持,false表示不支持 | 机型搭载的电源需支持供电线路供电切换 | true | CSR配置 | 软件 |
🔗 动态关联机制
语法规范
使用标准配置语法:
yaml
# 电源工作模式配置
PowerWorkingMode: "LoadBalancing" # 或 "Active/Standby"
# 功耗封顶配置
PowerLimitValue: 9999
PowerLimitEnabled: true
PowerCappingSupported: true
PowerLimitExceptionSupported: true
AllowableMinPowerLimitInWatts: 6000
ReviseParam: 1.2
PowerCappingDevices: ["CPU"]
IsSupportPowerLimitMode: false
MaxPowerLimitInWatts: 9999
PowerCappingFailureOptions: ["LogEventOnly", "NoAction", "HardPowerOff", "Reset"]
PowerLimitExceptionLogEvent: true
PowerCappingControlMode: 0
NonCappedStaticPowerWatts: 500
# 电源模式支持配置
ActiveStandbySupported: true
NormalAndRedundancySupported: false
DeepSleepSupported: true
RedundancyMode: 0x0301
# 节能功能配置
PowerPredictSupported: false
EnergyEfficiencyOptimizationSupported: false
EnergySavingSupported: false
# 状态监控配置
PowerLimitFailed: true
PSUsOutputVoltageLow: true
RedundancyFailure: true
PowerLimitActivated: true
PSUsUnavailableOfflineCause: false
PSUsOutputCurrentImbalance: true
# 供电线路配置
PhaseWiringSlots: [1, 3, 5]
PsuSupplySwitchSupported: true关联说明
- 功耗封顶: PowerCappingSupported决定功耗封顶功能是否生效
- 主备模式: ActiveStandbySupported决定是否支持主备供电模式
- 深度休眠: DeepSleepSupported需要在支持主备模式基础上配置
- 状态监控: 各种状态属性用于告警事件配置
📂 分类标准
硬件属性
- 定义:当前版本无硬件属性
- 特点:所有属性都是软件管理相关
- 示例:无
软件属性
- 定义:由软件管理和维护的电源策略参数
- 特点:电源模式配置、功耗封顶、状态监控等
- 示例:所有属性都是软件属性
📝 配置示例
基础电源策略配置
json
{
"PowerStrategy_Basic": {
"PowerWorkingMode": "LoadBalancing",
"PowerLimitValue": 9999,
"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,
"MaxPowerLimitInWatts": 9999,
"PowerCappingFailureOptions": ["LogEventOnly", "NoAction", "HardPowerOff", "Reset"],
"PowerLimitExceptionLogEvent": true,
"PowerCappingControlMode": 0,
"NonCappedStaticPowerWatts": 500,
"RedundancyMode": 0x0301
}
}主备供电模式配置
json
{
"PowerStrategy_ActiveStandby": {
"PowerWorkingMode": "Active/Standby",
"PowerLimitValue": 8000,
"PowerLimitEnabled": true,
"PowerLimitFailed": false,
"PSUsOutputVoltageLow": false,
"RedundancyFailure": false,
"PowerLimitActivated": false,
"PowerCappingSupported": true,
"PowerLimitExceptionSupported": true,
"DeepSleepSupported": true,
"ActiveStandbySupported": true,
"NormalAndRedundancySupported": false,
"PowerPredictSupported": false,
"EnergyEfficiencyOptimizationSupported": false,
"EnergySavingSupported": false,
"PSUsUnavailableOfflineCause": false,
"PSUsOutputCurrentImbalance": false,
"ReviseParam": 1.3,
"PowerCappingDevices": ["CPU"],
"IsSupportPowerLimitMode": true,
"AllowableMinPowerLimitInWatts": 5000,
"MaxPowerLimitInWatts": 9999,
"PowerCappingFailureOptions": ["LogEventOnly", "NoAction", "HardPowerOff", "Reset"],
"PowerLimitExceptionLogEvent": true,
"PowerCappingControlMode": 0,
"NonCappedStaticPowerWatts": 500,
"RedundancyMode": 0x0301
}
}N+R备电模式配置
json
{
"PowerStrategy_NormalRedundancy": {
"PowerWorkingMode": "LoadBalancing",
"PowerLimitValue": 10000,
"PowerLimitEnabled": true,
"PowerLimitFailed": false,
"PSUsOutputVoltageLow": false,
"RedundancyFailure": false,
"PowerLimitActivated": false,
"PowerCappingSupported": true,
"PowerLimitExceptionSupported": true,
"DeepSleepSupported": false,
"ActiveStandbySupported": false,
"NormalAndRedundancySupported": true,
"PowerPredictSupported": true,
"EnergyEfficiencyOptimizationSupported": false,
"EnergySavingSupported": true,
"PSUsUnavailableOfflineCause": false,
"PSUsOutputCurrentImbalance": false,
"ReviseParam": 1.2,
"PowerCappingDevices": ["CPU", "NPU"],
"IsSupportPowerLimitMode": true,
"AllowableMinPowerLimitInWatts": 7000,
"MaxPowerLimitInWatts": 9999,
"PowerCappingFailureOptions": ["LogEventOnly", "NoAction", "HardPowerOff", "Reset"],
"PowerLimitExceptionLogEvent": true,
"PowerCappingControlMode": 0,
"NonCappedStaticPowerWatts": 500,
"RedundancyMode": 0x0301
}
}线路切换电源策略配置
json
{
"PowerStrategy_Advanced": {
"PowerWorkingMode": "LoadBalancing",
"PowerLimitValue": 12000,
"PowerLimitEnabled": true,
"PowerLimitFailed": false,
"PSUsOutputVoltageLow": false,
"RedundancyFailure": false,
"PowerLimitActivated": false,
"PowerCappingSupported": true,
"PowerLimitExceptionSupported": true,
"DeepSleepSupported": true,
"ActiveStandbySupported": true,
"NormalAndRedundancySupported": true,
"PowerPredictSupported": true,
"EnergyEfficiencyOptimizationSupported": true,
"EnergySavingSupported": true,
"PSUsUnavailableOfflineCause": false,
"PSUsOutputCurrentImbalance": false,
"ReviseParam": 1.1,
"PowerCappingDevices": ["CPU", "NPU"],
"IsSupportPowerLimitMode": true,
"AllowableMinPowerLimitInWatts": 8000,
"MaxPowerLimitInWatts": 9999,
"PowerCappingFailureOptions": ["LogEventOnly", "NoAction", "HardPowerOff", "Reset"],
"PowerLimitExceptionLogEvent": true,
"PowerCappingControlMode": 0,
"NonCappedStaticPowerWatts": 500,
"RedundancyMode": 0x0301,
"PhaseWiringSlots": [1, 3, 5],
"PsuSupplySwitchSupported": true
}
}🔧 使用指南
配置步骤
- 电源工作模式配置:设置PowerWorkingMode为LoadBalancing或Active/Standby
- 功耗封顶配置:配置PowerCappingSupported、PowerLimitValue、PowerLimitEnabled等
- 电源模式支持配置:设置ActiveStandbySupported、NormalAndRedundancySupported等
- 节能功能配置:配置PowerPredictSupported、EnergySavingSupported等
- 状态监控配置:设置各种状态属性用于告警事件
- 参数调优配置:配置ReviseParam、PowerCappingDevices等
- 供电线路配置: 配置PhaseWiringSlots和PsuSupplySwitchSupported
电源工作模式
- LoadBalancing: 负载均衡模式,多个电源平均分担负载
- Active/Standby: 主备模式,一个电源工作,其他电源待机
- 模式选择: 根据系统需求和电源配置选择合适的工作模式
功耗封顶机制
- PowerCappingSupported: 总开关,决定是否支持功耗封顶
- PowerLimitValue: 功耗封顶值,单位为瓦特
- PowerLimitEnabled: 功耗封顶使能开关
- PowerCappingDevices: 支持封顶的设备类型,如CPU、NPU
- AllowableMinPowerLimitInWatts: 允许设置的最小封顶值
- MaxPowerLimitInWatts: 功耗封顶上限值
- PowerCappingFailureOptions: 功耗封顶失败动作,当前默认支持LogEventOnly,NoAction,HardPowerOff,Reset,若需修改则进行配置,不涉及可不配置
- PowerLimitExceptionLogEvent: 功耗封顶失败动作记录事件日志,与功耗封顶失败动作配合使用,当失败动作为NoAction时,该属性为true会记录事件日志,否则不记录事件日志,不涉及可不配置
- PowerCappingControlMode: 功耗封顶模式,默认为0(主控模式),不涉及可不配置
- NonCappedStaticPowerWatts: 不参与功耗封顶的功耗值,不涉及可不配置
电源模式支持
- ActiveStandbySupported: 是否支持主备模式
- NormalAndRedundancySupported: 是否支持N+R备电
- DeepSleepSupported: 是否支持深度休眠,需要主备模式支持
状态监控
- PowerLimitFailed: 功率封顶失败状态
- PSUsOutputVoltageLow: 电源输出电压低告警
- RedundancyFailure: 冗余失效告警
- PowerLimitActivated: 封顶策略激活状态
- PSUsOutputCurrentImbalance: 电源均流不平衡告警
供电线路配置
-- PhaseWiringSlots: 电源框相位接线映射,不涉及可不配置 -- PsuSupplySwitchSupported: 供电线路切换能力,不涉及可不配置
注意事项
- 功能依赖: 深度休眠需要主备模式支持
- 封顶限制: 功耗封顶值不能低于AllowableMinPowerLimitInWatts
- 设备支持: PowerCappingDevices,PhaseWiringSlots,PsuSupplySwitchSupported需要根据实际硬件配置
- 参数调优: ReviseParam影响封顶下限值计算
- 功耗封顶失败动作: PowerCappingFailureOptions和PowerLimitExceptionLogEvent配置需根据实际进行适配
故障排除
功耗封顶不生效:
- 检查PowerCappingSupported是否为true
- 确认PowerLimitEnabled是否开启
- 验证PowerLimitValue是否合理
主备模式异常:
- 检查ActiveStandbySupported配置
- 确认PowerWorkingMode设置
- 验证电源硬件是否支持主备模式
告警事件异常:
- 检查相关状态属性配置
- 确认告警阈值设置
- 验证状态监控机制