背景
当前redfish标准接口存在缺失,需要评审新增redfish标准接口。
关联ISSUE
[缺陷]: 支持新增redfish相关NetworkAdapter下Assembly资源
整体方案
1.redfish接口NetworkAdapter下Assembly资源需要关联资源协作接口,因此需要新增redfish标准接口
评审点
评审点1:
URI:/redfish/v1/Chassis/{ChassisId}/NetworkAdapters/{NetworkAdapterId}(已有)
1、支持新增属性Assembly {
@odata.id
}
评审点2:
URI:/redfish/v1/Chassis/{ChassisId}/NetworkAdapters/{NetworkAdapterId}/Assembly
1、支持新增属性 @odata.context、@odata.id、@odata.type、Id、Name;
2、新增属性
Assemblies [ {
@odata.id
MemberId
Model
Version
PartNumber
SerialNumber
Status
}]
详细描述
评审点1:NetworkAdapters资源新增属性
资源URI :/redfish/v1/Chassis/{ChassisId}/NetworkAdapters/{NetworkAdapterId}
资源版本:NetworkAdapter.v1_12_1
操作类型:Get
属性列表:
| 一级属性 |
二级属性 |
类型 |
示例 |
权限 |
易变属性 |
属性说明 |
约束 |
| Assembly |
@odata.id |
String |
{ “@odata.id”:“/redfish/v1/Chassis/{ChassisId}/NetworkAdapters/{NetworkAdapterId}/Assembly” } |
ReadOnly |
否 |
链接网络功能集合装配体的URI |
NA |
评审点2:新增Assembly标准资源
资源URI :/redfish/v1/Chassis/{ChassisId}/NetworkAdapters/{NetworkAdapterId}/Assembly
资源版本:Assembly.v1_6_0
操作类型:Get
嵌套资源 :本资源嵌套于Chassis资源的NetworkAdapters资源
Link资源 :不涉及
属性列表:
| 一级属性 |
二级属性 |
三级属性 |
类型 |
取值范围 |
示例 |
权限 |
易变属性 |
实现PATCH |
属性说明 |
约束 |
| Assemblies |
|
|
array |
/ |
/ |
ReadOnly |
否 |
否 |
网络适配器组装记录 |
NA |
|
@odata.id |
|
string |
/ |
/redfish/v1/Chassis/1/Assembly#/Assemblies/0 |
ReadOnly |
否 |
否 |
网络适配器资源的唯一标识符 |
NA |
|
MemberId |
|
string |
/ |
0 |
ReadOnly |
否 |
否 |
网络适配器数组中成员的唯一标识符 |
NA |
|
Model |
|
string |
/ |
CPU Integration |
ReadOnly |
否 |
否 |
网络适配器的型号 |
NA |
|
Version |
|
string |
/ |
3.10.22.8 |
ReadOnly |
否 |
否 |
网络适配器的硬件版本 |
NA |
|
PartNumber |
|
string |
/ |
23456-133 |
ReadOnly |
否 |
否 |
网络适配器的零件编号 |
NA |
|
SerialNumber |
|
string |
/ |
3488247 |
ReadOnly |
否 |
否 |
网络适配器的序列号 |
NA |
|
Status |
|
object |
/ |
/ |
ReadOnly |
否 |
否 |
网络适配器及其从属或附属资源的状况和健康状况 |
NA |
|
|
State |
string |
枚举范围[“Enabled”] |
Enabled |
ReadOnly |
否 |
否 |
网络适配器的连接关系的状态 |
NA |
|
|
Health |
string |
枚举范围:[“Critical”,“OK”,“Warning”] |
OK |
ReadOnly |
否 |
否 |
网络适配器的连接关系的健康状态 |
NA |
评审结论
遗留问题
详细描述各个评审点的uri下面体现一下方法:Get
这两个评审点的属性列表给出示例
比如
"Assembly": {
"@odata.id": "/redfish/v1/Chassis/1/NetworkAdapters/NIC/Assembly"
}
评审点2 标准资源里有required属性

评审的时候跟评委对齐下是否需要,需要的话填什么
AI给的示例如下:
"@odata.id": "/redfish/v1/Chassis/1/NetworkAdapters/NIC0/Assembly#/Assemblies/0",
"MemberId": "0"
这个uri加了个#
不是一个独立的可访问 URI ,而是一个 JSON Fragment Identifier(JSON 片段标识符) ,用于在同一个 JSON 文档内部 定位子资源。
# 是 URI 标准(RFC 3986)定义的 fragment 分隔符
- 在 Redfish 中,它被用来表示 “该资源是当前文档内的一个子对象” ,而不是一个独立的网络资源
- 客户端不能直接对带
# 的 URI 发起 HTTP 请求 (服务器会忽略 # 及之后的内容)
目的:避免过度拆分资源,提升性能
如果不使用 # ,厂商可能需要为每个子部件创建独立 URI:
“@odata.id”: “/redfish/v1/Chassis/1/NetworkAdapters/NIC0/Assembly#/Assemblies/0”,
“MemberId”: “0”
这两个必填参数 你没写上去哇 还有同步给Drive的同事
背景
当前redfish标准接口存在缺失,需要评审新增redfish标准接口。
关联ISSUE
[缺陷]: 支持新增redfish相关NetworkAdapter下Assembly资源
整体方案
1.redfish接口NetworkAdapter下Assembly资源需要关联资源协作接口,因此需要新增redfish标准接口
评审点
评审点1:
URI:/redfish/v1/Chassis/{ChassisId}/NetworkAdapters/{NetworkAdapterId}(已有)
1、支持新增属性Assembly {
@odata.id
}
评审点2:
URI:/redfish/v1/Chassis/{ChassisId}/NetworkAdapters/{NetworkAdapterId}/Assembly
1、支持新增属性 @odata.context、@odata.id、@odata.type、Id、Name;
2、新增属性
Assemblies [ {
@odata.id
MemberId
Model
Version
PartNumber
SerialNumber
Status
}]
详细描述
评审点1:NetworkAdapters资源新增属性
资源URI :/redfish/v1/Chassis/{ChassisId}/NetworkAdapters/{NetworkAdapterId}
资源版本:NetworkAdapter.v1_12_1
操作类型:Get
属性列表:
| 一级属性 |
二级属性 |
类型 |
示例 |
权限 |
易变属性 |
属性说明 |
约束 |
| Assembly |
@odata.id |
String |
{ “@odata.id”:“/redfish/v1/Chassis/{ChassisId}/NetworkAdapters/{NetworkAdapterId}/Assembly” } |
ReadOnly |
否 |
链接网络功能集合装配体的URI |
NA |
评审点2:新增Assembly标准资源
资源URI :/redfish/v1/Chassis/{ChassisId}/NetworkAdapters/{NetworkAdapterId}/Assembly
资源版本:Assembly.v1_6_0
操作类型:Get
嵌套资源 :本资源嵌套于Chassis资源的NetworkAdapters资源
Link资源 :不涉及
属性列表:
| 一级属性 |
二级属性 |
三级属性 |
类型 |
取值范围 |
示例 |
权限 |
易变属性 |
实现PATCH |
属性说明 |
约束 |
| Assemblies |
|
|
array |
/ |
/ |
ReadOnly |
否 |
否 |
网络适配器组装记录 |
NA |
|
@odata.id |
|
string |
/ |
/redfish/v1/Chassis/1/Assembly#/Assemblies/0 |
ReadOnly |
否 |
否 |
网络适配器资源的唯一标识符 |
NA |
|
MemberId |
|
string |
/ |
0 |
ReadOnly |
否 |
否 |
网络适配器数组中成员的唯一标识符 |
NA |
|
Model |
|
string |
/ |
CPU Integration |
ReadOnly |
否 |
否 |
网络适配器的型号 |
NA |
|
Version |
|
string |
/ |
3.10.22.8 |
ReadOnly |
否 |
否 |
网络适配器的硬件版本 |
NA |
|
PartNumber |
|
string |
/ |
23456-133 |
ReadOnly |
否 |
否 |
网络适配器的零件编号 |
NA |
|
SerialNumber |
|
string |
/ |
3488247 |
ReadOnly |
否 |
否 |
网络适配器的序列号 |
NA |
|
Status |
|
object |
/ |
/ |
ReadOnly |
否 |
否 |
网络适配器及其从属或附属资源的状况和健康状况 |
NA |
|
|
State |
string |
枚举范围[“Enabled”] |
Enabled |
ReadOnly |
否 |
否 |
网络适配器的连接关系的状态 |
NA |
|
|
Health |
string |
枚举范围:[“Critical”,“OK”,“Warning”] |
OK |
ReadOnly |
否 |
否 |
网络适配器的连接关系的健康状态 |
NA |
评审结论
通过,具体结论如下:
- 同意 Redfish 资源 NetworkAdapters 下新增属性
Assembly,用于表征当前网卡适配器下的装配信息,取值为对应的 Assembly 资源的链接。
- 同意 Redfish NetworkAdapters 资源下新增 Assembly 子资源,资源 URI 为
/redfish/v1/Chassis/{ChassisId}/NetworkAdapters/{NetworkAdapterId}/Assembly,资源版本为 Assembly.v1_6_0,用于描述当前网卡适配器下的装配信息;资源操作类型为 GET,资源支持的属性和属性详细说明见议题2。
遗留问题