背景
支持redfish接口补齐Drive相关资源,需要获取FormFactor,JbodStateSupported,EpdSupported,Severity,FaultDetails
关联ISSUE
整体方案
1.redfish接口FormFactor北向映射需要关联资源协作接口对应的属性,因此需要新增资源协作接口属性
2.redfish接口获取FormFactor,JbodStateSupported,EpdSupported,Severity,FaultDetails
评审点
1.新增资源协作接口属性FormFactor
2.redfish接口Drive资源新增属性FormFactor
3.redfish接口Storage资源新增属性JbodStateSupported,EpdSupported, Severity,FaultDetails
详细描述
评审点1 新增资源协作接口属性FormFactor
资源path: /bmc/kepler/Systems/:SystemId/Storage/Drives/:Id(已有)
资源interface: bmc.kepler.Systems.Storage.Drive(已有)
新增属性: FormFactor
| 属性名称 | 变化类型 | 签名 | 读写&权限 | 持久化 | 变化通知 | 属性说明 | 接口约束 |
|---|---|---|---|---|---|---|---|
| FormFactor | 新增属性 | y | 只读,读权限:ReadOnly | 无 | false | 硬盘尺寸 | 取值范围:0~9,含义依次是:“Unknown”,“5.25 inch”,“3.5 inch”,“2.5 inch”,“1.8 inch”,“Less than 1.8 inch”,“mSATA”,“M.2”,“MicroSSD”,“CFast”; 无效值:255,表示获取不到该信息 |
评审点2 支持redfish接口获取FormFactor
uri: /redfish/v1/Chassis/{ChassisId}/Drives/{DriveId}(已有)
变化类型:新增属性
操作类型:Get
| 属性名称 | 取值类型 | 操作权限 | 默认值 | 取值范围 | 说明 | 约束 |
|---|---|---|---|---|---|---|
| FormFactor | string,null | ReadOnly | “Unknown” | “Unknown”,“5.25 inch”,“3.5 inch”,“2.5 inch”,“1.8 inch”,“Less than 1.8 inch”,“mSATA”,“M.2”,“MicroSSD”,“CFast” | 硬盘尺寸 | 需要Raid卡支持获取硬盘尺寸 |
schema说明
"FormFactor": {
"type": [
"string",
"null"
],
"readonly": true,
"description": "The form factor of this drive.",
"longDescription": "This property shall contain form factor of the associated drive."
}
示例:
uri: /redfish/v1/Chassis/1/Drives/1
{
"Oem": {
"openUBMC": {
"FormFactor": "2.5 inch"
}
}
}
评审点3 支持redfish接口获取JbodStateSupported,EpdSupported,Severity,FaultDetails
uri: /redfish/v1/Systems/{ComputerSystemId}/Storages/{StorageId}(已有)
变化类型:新增属性
操作类型:GET
| 属性名称 | 取值类型 | 操作权限 | 默认值 | 取值范围 | 说明 | 约束 |
|---|---|---|---|---|---|---|
| JbodStateSupported | boolean | ReadOnly | false | true:支持 false:不支持 | raid卡是否支持JBOD模式 | 需要Raid卡支持此功能配置 |
| EpdSupported | boolean | ReadOnly | false | true:支持 false:不支持 | raid卡是否支持EPD | 需要Raid卡支持此功能配置 |
| Severity | string, null | ReadOnly | null | “Informational”, “Minor”, “Major”, “Critical”, null | 量化电容故障或者异常状态的严重程度 | 需要Raid卡支持获取电容的健康状态 |
| FaultDetails | string, null | ReadOnly | null | “Voltage Low”, “Battery Needs To Be Replaced”, “Learn Cycle Failed”, “Learn Cycle Timeout”, “Pack is about to fail”, “Remaining Capacity Low”, “No Space for Cache Offload”, null | 电容故障的具体原因 | 需要Raid卡支持获取电容的状态信息 |
schema说明:
"JbodStateSupported": {
"type": "boolean",
"readonly": false,
"description": "This property specifies whether the storage controller supports JBOD."
}
"EpdSupported": {
"type": "boolean",
"readonly": false,
"description": "This property specifies whether the storage controller supports enhanced physical drives."
}
"Severity": {
"type": [
"string",
"null"
],
"readonly": true,
"description": "This property specifies the severity of the battery condition."
}
"FaultDetails": {
"description": "This property specifies the status of battery.",
"readonly": true,
"type": [
"string",
"null"
]
}
示例如下:
uri: /redfish/v1/Systems/1/Storages/1
{
"Oem": {
"openUBMC": {
"JbodStateSupported": false,
"EpdSupported": true,
"CapacitanceStatus": {
"Severity": "Informational",
"FaultDetails": null
}
}
}
}
评审结论
1、同意在/bmc/kepler/Systems/:SystemId/Storage/Drives/:Id路径下的bmc.kepler.Systems.Storage.Drive接口新增属性,具体如下:
FormFactor:表示硬盘尺寸,签名为y,只读,读权限:ReadOnly,不发送变化通知事件
2、同意redfish接口新增OEM属性FormFactor
uri: /redfish/v1/Chassis/{ChassisId}/Drives/{DriveId}
操作类型:GET
变化类型:新增OEM属性
| 属性名称 | 取值类型 | 操作权限 | 默认值 | 取值范围 | 说明 |
|---|---|---|---|---|---|
| Oem{ | object | ||||
| {OemIdentifier}{ | object | ||||
| FormFactor | string/null | ReadOnly | “Unknown” | “Unknown”,“5.25 inch”,“3.5 inch”,“2.5 inch”,“1.8 inch”,“Less than 1.8 inch”,“mSATA”,“M.2”,“MicroSSD”,“CFast” | 硬盘尺寸 |
| }} |
3、同意redfish接口新增OEM属性JbodStateSupported,EpdSupported,在Oem/{OemIdentifier}/CapacitanceStatus下新增属性Severity,FaultDetails
uri: /redfish/v1/Systems/{ComputerSystemId}/Storages/{StorageId}
操作类型:GET
变化类型: 新增OEM属性
| 属性名称 | 取值类型 | 操作权限 | 默认值 | 取值范围 | 说明 |
|---|---|---|---|---|---|
| Oem{ | object | ||||
| {OemIdentifier}{ | object | ||||
| JbodStateSupported | boolean | ReadOnly | false | true,false | RAID卡是否支持JBOD模式 |
| EpdSupported | boolean | ReadOnly | false | true,false | RAID卡是否支持EPD |
| CapacitanceStatus{ | object | ||||
| Severity | string/null | ReadOnly | null | “Informational”, “Minor”, “Major”, “Critical” | RAID卡BBU健康状态的严重程度 |
| FaultDetails | string/null | ReadOnly | null | “Voltage Low”, “Battery Needs To Be Replaced”, “Learn Cycle Failed”, “Learn Cycle Timeout”, “Pack is about to fail”, “Remaining Capacity Low”, “No Space for Cache Offload” | RAID卡BBU故障的具体原因 |
| } | |||||
| }} |
遗留问题
无遗留问题