CSR配置字典之ChassisBMC类
更新时间:2025/7/22
在Gitcode上查看源码📋 文档信息
项目 | 内容 |
---|---|
文档标题 | ChassisBMC类配置字典 |
版本 | v1.0 |
创建日期 | 2025-01-27 |
最后更新 | 2025-01-27 |
维护状态 | ✅ 活跃维护 |
📋 变更历史记录
文档变更记录
版本 | 发布日期 | 变更类型 | 变更内容 | 影响范围 | 维护人员 |
---|---|---|---|---|---|
v1.0 | 2025-01-27 | 初始版本 | 创建ChassisBMC类配置字典 | 全新文档 | 系统管理员 |
🎯 类概览
ChassisBMC 类
属性 | 值 |
---|---|
类名称 | ChassisBMC |
功能描述 | 用于描述整机信息的BMC对象,提供BMC的基本信息、版本信息和标识信息,主要用于BMC接口展示 |
所属SIG组 | system |
所属组件 | BMC信息 |
责任人 | 系统管理组 |
最后更新 | 2025-01-27 |
状态 | 🟢 正常运行 |
📊 属性定义详表
必选属性
属性名 | 类型 | 默认值 | 取值范围 | 动态关联 | 描述 | 使用场景 | 举例 | 来源 | 分类 |
---|---|---|---|---|---|---|---|---|---|
NodeId | String | - | String | - | 容器信息Position和设备丝印名称DeviceName拼接而成 | BMC接口展示 | "chassisBMC" | CSR配置 | 软件 |
Description | String | - | String | - | 单板描述 | BMC接口展示 | "BMC" | CSR配置 | 软件 |
Number | U8 | - | U8 | - | 逻辑编号 | BMC接口展示 | 0 | CSR配置 | 软件 |
DeviceName | String | - | String | - | 板卡丝印信息 | BMC接口展示 | "BMC" | CSR配置 | 软件 |
Type | String | - | String | - | 组件类型 | BMC接口展示 | "BMC" | CSR配置 | 软件 |
Position | String | - | String | - | 容器信息 | BMC接口展示 | "chassis" | CSR配置 | 软件 |
Manufacturer | String | - | String | FruData_Fru0 | 厂商 | BMC接口展示 | "<=/FruData_Fru0.BoardManufacturer" | CSR配置 | 软件 |
PartNumber | String | - | String | FruData_Fru0 | 部件编码 | BMC接口展示 | "<=/FruData_Fru0.BoardPartNumber" | CSR配置 | 软件 |
PcbVersion | String | - | String | Fru_PSR | PCB版本号 | BMC接口展示 | "<=/Fru_PSR.PcbVersion" | CSR配置 | 软件 |
Name | String | - | String | - | 单板名 | BMC接口展示 | "BC83PRUWB" | CSR配置 | 软件 |
BoardID | U16 | - | U16 | - | 单板ID | BMC接口展示 | 65535 | CSR配置 | 软件 |
FruID | U8 | - | U8 | FruData_Fru0 | 关联Fru对象的FruID属性 | BMC接口展示 | "<=/FruData_Fru0.FruId" | CSR配置 | 软件 |
BoardType | String | - | String | - | 单板类型 | BMC接口展示 | "BMC" | CSR配置 | 软件 |
UID | String | - | String | - | 单板UID vendor(00000001)+单板类型(02)+单板编码(0302031825) | BMC接口展示 | "000000010402314ULN" | CSR配置 | 软件 |
可选属性
属性名 | 类型 | 默认值 | 取值范围 | 动态关联 | 描述 | 使用场景 | 举例 | 来源 | 分类 |
---|---|---|---|---|---|---|---|---|---|
LogicUnit | U32 | - | U32 | - | 逻辑位号 | BMC接口展示 | 0 | CSR配置 | 软件 |
🔗 动态关联机制
语法规范
使用标准配置语法和FRU数据关联:
yaml
# 基础信息配置
NodeId: "chassisBMC"
Description: "BMC"
Number: 0
DeviceName: "BMC"
Type: "BMC"
Position: "chassis"
# 厂商信息(FRU数据关联)
Manufacturer: "<=/FruData_Fru0.BoardManufacturer"
PartNumber: "<=/FruData_Fru0.BoardPartNumber"
PcbVersion: "<=/Fru_PSR.PcbVersion"
FruID: "<=/FruData_Fru0.FruId"
# 单板信息
Name: "BC83PRUWB"
BoardID: 65535
BoardType: "BMC"
UID: "000000010402314ULN"
# 可选配置
LogicUnit: 0
关联说明
- FRU数据关联: Manufacturer、PartNumber、FruID通过FruData_Fru0对象获取
- 版本信息关联: PcbVersion通过Fru_PSR对象获取
- 标识信息: NodeId、UID等用于唯一标识BMC
- 展示信息: 所有属性用于BMC接口展示
📂 分类标准
硬件属性
- 定义:当前版本无硬件属性
- 特点:所有属性都是软件管理相关
- 示例:无
软件属性
- 定义:由软件管理和维护的BMC信息参数
- 特点:标识信息、版本信息、展示信息等
- 示例:所有属性都是软件属性
📝 配置示例
基础BMC信息配置
json
{
"ChassisBMC_Basic": {
"NodeId": "chassisBMC",
"Description": "BMC",
"Number": 0,
"DeviceName": "BMC",
"Type": "BMC",
"Position": "chassis",
"Manufacturer": "<=/FruData_Fru0.BoardManufacturer",
"PartNumber": "<=/FruData_Fru0.BoardPartNumber",
"PcbVersion": "<=/Fru_PSR.PcbVersion",
"Name": "BC83PRUWB",
"BoardID": 65535,
"FruID": "<=/FruData_Fru0.FruId",
"BoardType": "BMC",
"UID": "000000010402314ULN"
}
}
完整BMC信息配置
json
{
"ChassisBMC_Full": {
"NodeId": "chassisBMC",
"Description": "BMC",
"Number": 0,
"DeviceName": "BMC",
"Type": "BMC",
"Position": "chassis",
"Manufacturer": "<=/FruData_Fru0.BoardManufacturer",
"PartNumber": "<=/FruData_Fru0.BoardPartNumber",
"LogicUnit": 0,
"PcbVersion": "<=/Fru_PSR.PcbVersion",
"Name": "BC83PRUWB",
"BoardID": 65535,
"FruID": "<=/FruData_Fru0.FruId",
"BoardType": "BMC",
"UID": "000000010402314ULN"
}
}
天池组件BMC配置
json
{
"ChassisBMC_Tianchi": {
"NodeId": "chassisBMC",
"Description": "BMC",
"Number": 0,
"DeviceName": "BMC",
"Type": "BMC",
"Position": "chassis",
"Manufacturer": "<=/FruData_Fru0.BoardManufacturer",
"PartNumber": "<=/FruData_Fru0.BoardPartNumber",
"LogicUnit": 0,
"PcbVersion": "<=/Fru_PSR.PcbVersion",
"Name": "BC83PRUWB",
"BoardID": 65535,
"FruID": "<=/FruData_Fru0.FruId",
"BoardType": "BMC",
"UID": "000000010402314ULN"
}
}
自定义BMC配置
json
{
"ChassisBMC_Custom": {
"NodeId": "chassisBMC",
"Description": "Custom BMC",
"Number": 0,
"DeviceName": "CustomBMC",
"Type": "BMC",
"Position": "chassis",
"Manufacturer": "<=/FruData_Fru0.BoardManufacturer",
"PartNumber": "<=/FruData_Fru0.BoardPartNumber",
"LogicUnit": 0,
"PcbVersion": "<=/Fru_PSR.PcbVersion",
"Name": "CustomBMCBoard",
"BoardID": 65535,
"FruID": "<=/FruData_Fru0.FruId",
"BoardType": "BMC",
"UID": "000000010402314ABC"
}
}
🔧 使用指南
配置步骤
- 基础信息配置:设置NodeId、Description、DeviceName等基本信息
- 标识信息配置:设置Number、Type、Position等标识信息
- FRU数据关联:配置Manufacturer、PartNumber、FruID等FRU关联
- 版本信息配置:设置PcbVersion、Name等版本信息
- 单板信息配置:设置BoardID、BoardType、UID等单板信息
- 可选配置:根据需要配置LogicUnit等可选属性
标识信息管理
- NodeId: 节点标识,通常为"chassisBMC"
- UID: 单板唯一标识,格式为vendor+单板类型+单板编码
- BoardID: 单板ID,通常为65535
- Number: 逻辑编号,通常为0
UID编码规范
- Vendor: 厂商标识,如00000001(华为)
- 单板类型: 2位十六进制,如04表示BMC
- 单板编码: 10位十六进制,唯一标识单板
- 完整格式: vendor(8位) + 单板类型(2位) + 单板编码(10位)
FRU数据集成
- Manufacturer: 通过FruData_Fru0.BoardManufacturer获取厂商信息
- PartNumber: 通过FruData_Fru0.BoardPartNumber获取部件编号
- FruID: 通过FruData_Fru0.FruId获取FRU ID
- PcbVersion: 通过Fru_PSR.PcbVersion获取PCB版本
天池组件说明
- 统一配置: 天池组件都使用相同的配置模板
- 工具自动化: 工具后面会自动带出相关配置
- 标准化: 确保配置的一致性和标准化
使用场景
- BMC接口展示: 所有属性用于BMC接口展示
- 系统识别: 通过UID和NodeId识别BMC
- 版本管理: 通过版本信息管理BMC版本
- FRU管理: 通过FRU关联管理硬件信息
注意事项
- UID唯一性: 确保UID在系统中唯一
- FRU关联: 确保FRU对象存在且正确配置
- 版本信息: 确保版本信息准确反映硬件状态
- 标识一致: 确保各种标识信息的一致性
故障排除
信息显示异常:
- 检查FRU数据关联是否正确
- 确认FruData_Fru0和Fru_PSR对象是否存在
- 验证属性配置是否正确
UID冲突:
- 检查UID是否在系统中唯一
- 确认UID编码格式是否正确
- 验证单板编码是否重复
版本信息错误:
- 检查PcbVersion关联是否正确
- 确认Fru_PSR对象是否正确配置
- 验证版本信息来源是否可靠
性能优化
- 信息缓存: 缓存BMC信息,减少重复读取
- FRU优化: 优化FRU数据读取频率
- 接口优化: 优化BMC接口的响应速度