背景
当前redfish标准接口存在缺失,需要评审新增redfish标准接口以及资源协作接口属性。
关联ISSUE
[需求]: NetworkInterface相关资源支持redfish新标准
整体方案
1.redfish接口NetworkInterface北向映射需要关联资源协作接口对应的属性,因此需要新增资源协作接口属性
评审点
评审点1:
URI:/redfish/v1/Systems/{ComputerSystemId}/NetworkInterfaces/{NetworkInterfaceId}
1.新增 Ports
2.新增 NetworDviceFuntions
3.新增资源协助接口属性Status下的State、Health
详细描述
评审点1:
URI:/redfish/v1/Systems/{ComputerSystemId}/NetworkInterfaces/{NetworkInterfaceId}
变化类型:新增属性
操作类型:GET
应用场景:redfish接口获取NetworkInterface相关资源集合信息
| 一级属性 | 二级属性 | 类型 | 枚举类型 | 权限 | 属性说明 |
|---|---|---|---|---|---|
| Ports | @odata.id | string | ReadOnly | 链接单个端口属性的访问路径 | |
| NetworkDeviceFunctions | @odata.id | string | ReadOnly | 单个网络适配器所公开的逻辑接口的访问路径 | |
| Status | State | string | ReadOnly | 网络适配器、网络端口以及网络设备功能之间的连接关系的状态 | |
| Status | Health | string | “Critical”,“OK”,“Warning” | ReadOnly | 网络适配器、网络端口以及网络设备功能之间的连接关系的健康状态 |
schema说明:
新增schema文件networkinterface.v1_2_3.json
"NetworkDeviceFunctions": {
"$ref": "http://redfish.dmtf.org/schemas/v1/NetworkDeviceFunctionCollection.json#/definitions/NetworkDeviceFunctionCollection",
"description": "The link to the network device functions associated with this network interface. This does not include Ethernet network device functions.",
"longDescription": "This property shall contain a link to a resource collection of type `NetworkDeviceFunctionCollection`. The members of this collection shall not contain `NetworkDeviceFunction` resources whose `NetDevFuncType` property contains `Ethernet`.",
"readonly": true
},
"NetworkPorts": {
"$ref": "http://redfish.dmtf.org/schemas/v1/NetworkPortCollection.json#/definitions/NetworkPortCollection",
"deprecated": "This property has been deprecated in favor of the `Ports` property.",
"description": "The link to the network ports associated with this network interface.",
"longDescription": "This property shall contain a link to a resource collection of type `NetworkPortCollection`.",
"readonly": true,
"versionDeprecated": "v1_2_0"
},
"Oem": {
"$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Oem",
"description": "The OEM extension property.",
"longDescription": "This property shall contain the OEM extensions. All values for properties that this object contains shall conform to the Redfish Specification-described requirements."
},
"Ports": {
"$ref": "http://redfish.dmtf.org/schemas/v1/PortCollection.json#/definitions/PortCollection",
"description": "The link to the ports associated with this network interface.",
"longDescription": "This property shall contain a link to a resource collection of type `PortCollection`.",
"readonly": true,
"versionAdded": "v1_2_0"
},
"Status": {
"$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Status",
"description": "The status and health of the resource and its subordinate or dependent resources.",
"longDescription": "This property shall contain any status or health properties of the resource."
}
}
RspBody响应体示例:
{
"@odata.context": "/redfish/v1/$metadata#NetworkInterface.NetworkInterface",
"@odata.id": "/redfish/v1/Systems/1/NetworkInterfaces/chassisNIC1(SF221Q)",
"@odata.type": "#NetworkInterface.v1_2_3.NetworkInterface",
"Name": "chassisNIC1(SF221Q)",
"Id": "chassisNIC1(SF221Q)",
"NetworkPorts": {
"@odata.id": "/redfish/v1/Systems/1/NetworkInterfaces/chassisNIC1(SF221Q)/NetworkPorts"
},
"Links": {
"NetworkAdapter": {
"@odata.id": "/redfish/v1/Chassis/1/NetworkAdapters/chassisNIC1(SF221Q)"
}
},
"Status": {
"state": "Enabled",
"Health": "OK"
},
"Ports": {
"@odata.id": "/redfish/v1/Chassis/1/NetworkAdapters/chassisNIC1(SF221Q)/Ports"
},
"NetworkDeviceFunctions": {
"@odata.id": "/redfish/v1/Chassis/1/NetworkAdapters/chassisNIC1(SF221Q)/NetworkDeviceFunctions"
}
}
评审结论
同意新增:
1.新增 Ports2.新增 NetworDviceFuntions3.新增资源协助接口属性Status下的State、Health
URI:/redfish/v1/Systems/{ComputerSystemId}/NetworkInterfaces/{NetworkInterfaceId}
变化类型:新增属性
操作类型:GET
应用场景:redfish接口获取NetworkInterface相关资源集合信息
| 一级属性 | 二级属性 | 类型 | 枚举类型 | 权限 | 属性说明 |
|---|---|---|---|---|---|
| Ports | @odata.id | string | ReadOnly | 链接单个端口属性的访问路径 | |
| NetworkDeviceFunctions | @odata.id | string | ReadOnly | 单个网络适配器所公开的逻辑接口的访问路径 | |
| Status | State | string | ReadOnly | 网络适配器、网络端口以及网络设备功能之间的连接关系的状态 | |
| Status | Health | string | “Critical”,“OK”,“Warning” | ReadOnly | 网络适配器、网络端口以及网络设备功能之间的连接关系的健康状态 |

