【已评审】DVFS组件的资源协作接口注册和web restful接口注册

背景

为南网妙算服务器的DVFS组件增加相关协作接口

关联ISSUE

新增 web_backend 接口支持定制组件 DVFS 配置能力
新增 MDB 接口支持定制组件 DVFS 配置能力

评审点

评审点1:新增 MDB 资源协作路径:/bmc/kepler/Systems/:SystemId/DVFS/Adjustment

评审点2:新增MDB 资源协作接口:bmc.kepler.Systems.DVFS.Adjustment

评审点3:新增 web rest get 接口:/UI/Rest/System/Dvfs

评审点4:新增 web rest patch接口:/UI/Rest/System/Dvfs

详细描述

评审点1:新增 MDB 资源协作路径:/bmc/kepler/Systems/:SystemId/DVFS/Adjustment

路径描述:新增公司下的DVFS调频组件的调节参数路径,用于对DVFS组件进行相关参数配置
实现接口

实现接口 实现接口描述 CSR配置影响 持久化影响 其他影响
bmc.kepler.Systems.DVFS.Adjustment (1)实现 SetDvfsEnabled方法,用于设置DVFS组件开关(2)实现SeFrequencyStepMHz方法,用于设置调频步进,单位MHz(3)实现SetMinFrequencyMHz方法,用于设置最小调频频率,单位MHz(4)实现SetFrequencyIntervalMilliseconds方法,用于设置调频间隔,单位ms 不涉及 (1)字段:DvfsEnabled,DVFS组件开关字段需复位持久化 (2)字段:FrequencyStepMHz,调频步进字段需复位持久化 (3)字段:MinFrequencyMHz,最小调频频率字段需复位持久化 (4)字段:FrequencyIntervalMilliseconds,调频间隔字段需复位持久化 新增接口,无兼容性问题

评审点2:新增MDB 资源协作接口:bmc.kepler.Systems.DVFS.Adjustment

接口描述:DVFS组件需要通过 MDB 暴露 DVFS 配置能力,用于查询和设置 DVFS 相关参数。

属性评审点

新增属性

属性名称 签名 只读 变化通知 属性描述 访问权限 属性来源 持久化类型 易变属性
DvfsEnabled b True True 表示DVFS 使能状态,默认值为false Read: ReadOnly 代码刷新 复位持久化 True
FrequencyStepMHz u True True U32,调频步进,单位 MHz,默认值为100 Read: ReadOnly 代码刷新 复位持久化 false
MinFrequencyMHz u True True U32,设置的最小调频频率,单位 MHz,默认值为1000 Read: ReadOnly 代码刷新 复位持久化 false
FrequencyIntervalMilliseconds u True True U32,调频间隔,单位 ms,默认值为2000 Read: ReadOnly 代码刷新 复位持久化 false

方法评审点

新增方法

方法名称 请求签名 请求参数描述 响应签名 响应参数描述 方法描述 访问权限
SetDvfsEnabled a{ss}b DvfsEnabled: 表示DVFS 使能状态,用于设置DVFS组件开关 设置DVFS组件是否打开 PowerMgmt
SetFrequencyStepMHz a{ss}u FrequencyStepMHz: U32,调频步进,单位 MHz,默认值为100 设置调频步进 PowerMgmt
SetMinFrequencyMHz a{ss}u MinFrequencyMHz: U32,设置的最小频率,单位 MHz,默认值为1000 设置最小频率 PowerMgmt
SetFrequencyIntervalMilliseconds a{ss}u FrequencyIntervalMilliseconds: U32,调频间隔,单位 ms,默认值为2000 设置调频间隔 PowerMgmt

评审点3:新增 web rest get 接口:/UI/Rest/System/Dvfs

资源URI:/UI/Rest/System/Dvfs
变化类型 :新增接口
操作类型:GET
操作权限:ReadOnly
应用场景 :获取DVFS组件开启及相关调频参数
输出参数

参数名 类型 示例 描述
FrequencyIntervalMilliseconds integer 2000 调频间隔,单位ms
FrequencyStepMHz integer 100 调频步进,单位 MHz
MinFrequencyMHz integer 1000 最小调频频,单位MHz
DvfsEnabled boolean false DVFS组件开关

请求样例:

GET /UI/Rest/System/Dvfs
请求头:
Content-Type: header_type 
Cookie: SessionId=session_id_value
请求消息体:无
响应样例:
{DvfsAdjustment:[
   {
    "SystemId": 1,
    "DvfsEnabled": true,
    "FrequencyIntervalMilliseconds ": 5000,
    "FrequencyStepMHz ": 100,
    "MinFrequencyMHz ": 1000
    }
  ]
}
响应码:200

评审点4:新增 web rest PATCH 接口/UI/Rest/System/Dvfs

资源URI:/UI/Rest/System/Dvfs
变化类型 :新增接口
操作类型:patch
操作权限:PowerMgmt
应用场景 :设置DVFS组件开启及相关调频参数
输出参数

参数名 类型 示例 取值约束 描述
FrequencyIntervalMilliseconds integer 2000 范围: 500 - 5000 调频间隔,单位:ms
FrequencyStepMHz integer 100 范围: 50,100,150,200 调频步进,单位:MHz
MinFrequencyMHz integer 1000 范围: [1000-MAX] 最小频率,单位:MHz;其中取值范围中的MAX代表该服务器CPU的主频值
DvfsEnabled boolean false 范围:true\false DVFS组件开关

请求样例:

PATCH /UI/Rest/System/PowerSupply
请求头:
Content-Type: header_type 
X-CSRF-Token: auth_value 
Cookie: SessionId=session_id_value
请求消息体:
{DvfsAdjustment:[
   {
    "SystemId": 1,
    "DvfsEnabled": true,
    "FrequencyIntervalMilliseconds ": 5000,
    "FrequencyStepMHz ": 100,
    "MinFrequencyMHz ": 1000
    }
  ]
}

}
响应样例:
{DvfsAdjustment:[
   {
    "SystemId": 1,
    "DvfsEnabled": true,
    "FrequencyIntervalMilliseconds ": 5000,
    "FrequencyStepMHz ": 100,
    "MinFrequencyMHz ": 1000
    }
  ]
}
响应码:200

是否准备好AI预审

评审结论

通过,具体结论如下:

1、同意新增资源协作路径:/bmc/kepler/Systems/:SystemId/DVFS/Adjustment,接口:bmc.kepler.Systems.DVFS.Adjustment,用于VFS组件进行相关参数配置;

2、同意在资源协作接口:bmc.kepler.Systems.DVFS.Adjustment下新增相关属性和方法,用于查询和设置 DVFS 相关参数,详细信息见评审点2。

3、同意新增 web rest get 接口:/UI/Rest/System/Dvfs ,用于获取DVFS组件相关设置参数;

4、同意新增 web rest patch接口:/UI/Rest/System/Dvfs ,用于设置DVFS组件相关设置参数;

遗留问题:

1、bmc.kepler.Systems.DVFS.Adjustment下的属性变化通知修改为true;
回复:已修改评审点2中属性列表中的“变化通知”为True;

2、GET、PATCH /UI/Rest/System/Dvfs接口请求、响应内容区分多个系统;
回复:已修改评审点3、4中请求、响应体,增加了区分多系统的请求体结构;

3、MinFrequencyMHz属性取值范围补充对MAX来源的说明;
回复:已在评审点4的最小频率参数的描述中增加MAX来源说明

4、针对参数命名不规范,需要调整;
回复:已对参数进行调整,采用Frequency作为调频关键字,修改后结果如下表:

历史参数名称 调整后参数名称 描述 是否有做调整
DvfsEnabled DvfsEnabled DVFS组件开关
CollectDataTimeMilliseconds FrequencyIntervalMilliseconds 调频间隔,单位:ms
CpuFrequencyStepMHz FrequencyStepMHz 调频步进,单位:MHz
MinFreqMHz MinFrequencyMHz 最小频率,单位:MHz

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

帖子评审结论:【未评审】南网妙算的DVFS组件的资源协作接口注册和web restful接口注册

帖子相关性:相关(MDB 相关: 标题含强特征: 资源协作)

  • 总评审点数:2
  • MDB 资源协作接口评审点:1
  • 其他评审点:1

总体结果:不通过(0/1 个评审点通过)

评审点 1:新增 MDB 接口*`bmc.kepler.Systems.Nwms.DvfsConfig【MDB】

结果:不通过

  • 规则合规性检查:不通过(1/26 项失败)
    • 规则合规性失败项(必须项)
      规则ID:MDB-METHOD-016
      级别:必须项
      问题描述:方法的请求签名与参数描述不一致,签名中包含未说明的参数。
      处理建议:请核实请求签名中的 a{ss} 是否为笔误。若为有效参数,请在“请求参数描述”中补充其名称与含义;若无需该参数,请修正签名(如改为 bu)以匹配描述。

    • 警告项(建议性)
      规则ID:MDB-REVIEW-003
      级别:建议性
      问题描述:背景描述过于简略,仅说明了需求结论,未提供具体的业务场景和消费方细节,且未说明 UI/文档/CSR 的同步情况。
      处理建议:severity=‘should’ 建议性规则,建议修改以提升规范符合性

      规则ID:MDB-RISK-004
      级别:建议性
      问题描述:接口涉及 DVFS(动态电压频率调整)配置,属于电源控制相关的高风险运维操作,但未说明防误操作、失败恢复及审计日志策略。
      处理建议:severity=‘should’ 建议性规则,建议修改以提升规范符合性

      规则ID:MDB-KEYWORD-026
      级别:建议性
      问题描述:属性表中包含了组件模型侧关键字 易变属性(volatile),不应作为资源树协作接口公共契约对外暴露。
      处理建议:severity=‘should’ 建议性规则,建议修改以提升规范符合性