【待评审】新增资源协作接口支持监控和获取Inventory系统信息

背景

当前平台BIOS通过SMBIOS相关文件向BMC发送cpu内存等系统信息,但不同算力平台和不同BIOS方案,BMC需要获取系统信息的内容和方式各不相同,无法统一使用SMBIOS文件。现有实现与SMBIOS强绑定,无法直接支持,因此新增接口支持特定平台通过解析Inventory.json文件获取系统信息。

相关评审链接

关联ISSUE

整体方案

评审点

  1. 新增资源协作接口及接口下属性、方法,支持监控和获取Inventory系统信息。

详细描述

评审点1:新增资源协作接口及接口下属性,支持监控和获取Inventory系统信息。

资源path: “/bmc/kepler/Systems/:SystemId/InventoryInfo”
资源Interface:"bmc.kepler.Systems.InventoryInfo"

变化类型:新增接口

属性:

属性名称 类型 读写 描述 示例
Version String 只读 Inventory文件版本 1.0.0
Family String 只读 算力平台 Intel
SKUNumber String 只读 当前SKUID 1
InventoryInfoUpdatedFlag U8 只读 Inventory信息更新标志 1
InventoryInfoStatus U8 只读 Inventory信息状态 1

JSON定义:

    "InventoryInfo": {
        "path": "/bmc/kepler/Systems/:SystemId/InventoryInfo",
        "privilege": ["ConfigureSelf"],
        "interfaces": {
            "bmc.kepler.Systems.InventoryInfo": {}
        },
        "properties": {
            "Version": {
                "baseType": "String",
                "usage": [
                    "PoweroffPer"
                ]
            },
            "SKUNumber": {
                "baseType": "String",
                "usage": [
                    "PoweroffPer"
                ]
            },
            "Family": {
                "baseType": "String",
                "usage": [
                    "PoweroffPer"
                ]
            },
            "InventoryInfoUpdatedFlag": {
                "baseType": "U8",
                "usage": [
                    "ResetPer"
                ]
            },
            "InventoryInfoStatus": {
                "baseType": "U8",
                "usage": [
                    "ResetPer"
                ],
                "default": 4
            }
        },
        "methods":{
            "GetInventoryInfoStatus": {
                "privilege": [
                    "BasicSetting"
                ],
                "req": {},
                "rsp": {}
            },
            "GetInventoryInfoInfo": {
                "privilege": [
                    "BasicSetting"
                ],
                "req": {
                    "DeviceType": {}
                },
                "rsp": {}
            }           
        }
    }

是否准备好AI预审

评审结论

遗留问题

SMBIOS是业界规范,能确保BIOS报给BMC和BIOS报给OS的数据同源,带外和带内的数据一致。如果硬件平台BIOS不支持把SMBIOS报给BMC,采用其它私有数据格式定义,建议接口明确是硬件资产货架,比如 bmc.kepler.Systems.HardwareInventory