背景
适配YX4颗粒的1880 RAID;同时RAID FW固件版本由1.x更新至2.x,固件升级带来的影响就是启动盘规格的变更,1.x版本支持1个启动盘配置,2.x版本支持5个启动盘配置。
北向接口需要做出相应的变化,来适配此改动
关联ISSUE
https://gitcode.com/openUBMC/storage/issues/297
https://gitcode.com/openUBMC/storage/issues/296
https://gitcode.com/openUBMC/storage/issues/294
整体方案
1、支持CLI接口通过资源协作属性BootDevices获取显示RAID卡配置的多个启动盘
2、支持Redfish接口通过资源协作属性BootDevices获取RAID卡的多个启动盘
接口无变化,返回值BootDevices会根据实际情况返回全部设备名称,未设置的显示None
3、支持Redfish接口通过资源协作接口SetBootDevicesV2设置RAID卡的多个启动盘
4、支持web-rest接口通过资源协作属性BootDevices获取RAID卡的多个启动盘
接口无变化,返回值BootDevices会根据实际情况返回全部设备名称,未设置的显示None
5、支持web-rest接口通过资源协作接口SetBootDevicesV2设置RAID卡的多个启动盘
接口无变化,入参无限制
详细描述
方案中涉及的评审点:
1、支持CLI接口通过资源协作属性BootDevices获取显示RAID卡配置的多个启动盘
返回文案涉及修改,兼容多启动盘返回值显示
3、支持Redfish接口通过资源协作接口SetBootDevicesV2设置RAID卡的多个启动盘
入参BootDevices的长度限制修改,由原来的最大2个参数改为无限制
评审点1:CLI接口获取多启动盘,返回文案修改
资源URI:ipmcget -t storage -d ctrlinfo
原文案:
Primary Boot Device : Disk1
Secondary Boot Device : Disk2
新文案:
博通卡,PMC卡示例:
Boot Devices : Disk1, Disk2
1880Raid卡1.0版本示例:
Boot Devices : Disk1
1880Raid卡2.0版本示例:
Boot Devices : Disk1, Disk2, Disk3, None, None
评审点2:redfish设置多启动盘,参数长度限制修改
资源URI:/redfish/v1/Systems/:systemid/Storages/:storageid
操作类型:PATCH
变化类型:入参BootDevices的长度限制修改,由原来的最大2个参数改为无限制
应用场景:设置Raid卡多启动盘
请求体
{
"StorageControllers": [
{
"Oem": {
"openUBMC": {
"BootDevices": ["Disk0", "None"]
}
}
}
]
}
变更属性:
| 属性名 | 类型 | 示例/取值范围 | readonly | 易变属性 | 实现patch | 操作权限 | 描述 |
|---|---|---|---|---|---|---|---|
| BootDevices | array | 博通卡,PMC卡示例: [“Disk0”, “None”] 1880Raid卡1.0版本示例: [“Disk0”] 1880Raid卡2.0版本示例: [“Disk0”, “None”, “Disk2”, “Disk3”] 取值范围无限制,长度无限制 |
否 | 否 | 是 | 多启动盘数组 |