CSR配置字典之Component类
更新时间: 2026/11/09
在AtomGit上查看源码📋 文档信息
| 项目 | 内容 |
|---|---|
| 文档标题 | Component类配置字典 |
| 版本 | v1.2 |
| 创建日期 | 2025-01-27 |
| 最后更新 | 2026-11-07 |
| 维护状态 | ✅ 活跃维护 |
📋 变更历史记录
文档变更记录
| 版本 | 发布日期 | 变更类型 | 变更内容 | 影响范围 | 维护人员 |
|---|---|---|---|---|---|
| v1.0 | 2025-01-27 | 初始版本 | 创建Component类配置字典 | 全新文档 | 系统管理员 |
| v1.1 | 2026-11-03 | 优化 | 内联Type部件类型枚举取值(替换原"参考IDP文档"引用) | Type字段 | 系统管理员 |
| v1.2 | 2026-11-07 | 修订 | 与模型同步,补充 CSR 属性:SyncHealthEnabled | Component | 待补充 |
🎯 类概览
Component 类
| 属性 | 值 |
|---|---|
| 类名称 | Component |
| 功能描述 | 硬件模块组件管理,提供硬件组件的基本信息、状态管理和告警关联功能 |
| 所属SIG组 | hardware |
| 所属组件 | component |
| 责任人 | 硬件组件管理组 |
| 最后更新 | 2026-11-07 |
| 状态 | 🟢 正常运行 |
📊 属性定义详表
必选属性
| 属性名 | 类型 | 默认值 | 取值范围 | 动态关联 | 描述 | 使用场景 | 举例 | 来源 | 分类 |
|---|---|---|---|---|---|---|---|---|---|
FruId | U8 | 255 | U8 | - | 关联Fru的Fruid 如果仅用于告警则配置255 | 查询电子标签 | 255 | CSR | 软件 |
Instance | U8 | - | U8 | - | 组件设备Number 即器件在整个单板中的编号 | 查询电子标签/查询告警 | 2 | CSR | 软件 |
Type | U8 | - | 设备类型枚举,取值范围:0~98、192~197、252、253,255为保留值,详细取值见下文【设备类型枚举】表 | - | 部件类型 | 查询电子标签/查询告警 | 0 | CSR | 硬件 |
Name | String | - | String | - | 部件名称 同一个position中需要保证唯一 补充告警和电子标签各自关注 | 查询电子标签/查询告警 | "Cpu2" | CSR | 软件 |
Presence | U8 | - | 0或1 | - | 部件在位状态 0:不在位 1:在位 | 查询电子标签/查询告警 | 1 | CSR | 硬件 |
PowerState | U8 | - | 0或1 | - | 部件电源状态 0:下电 1:上电 | 查询电子标签/查询告警 | 1 | CSR | 硬件 |
可选属性
| 属性名 | 类型 | 默认值 | 取值范围 | 动态关联 | 描述 | 使用场景 | 举例 | 来源 | 分类 |
|---|---|---|---|---|---|---|---|---|---|
Health | U8 | - | U8 | - | 关联告警时,如果告警则会根据告警严重程度进行更新 | 查询告警 | 0 | BMC内部设置 | 软件 |
BoardId | U16 | 65535 | U16 | - | 组件单板BoardId | 查询电子标签 | 65535 | CSR | 硬件 |
UniqueId | String | "N/A" | String | - | 组件唯一标识 Vendor + ComponentID | 查询电子标签 | "N/A" | CSR | 软件 |
Manufacturer | String | "HUAWEI" | String | - | 组件厂商信息 | 查询电子标签 | "HUAWEI" | CSR | 软件 |
GroupId | U8 | 1 | U8 | - | 组件逻辑组Id | 查询电子标签/查询告警 | 1 | CSR | 软件 |
Location | String | - | String | PCIeDevice_1 | 组件的容器 | 查询电子标签/查询告警 | "<=/PCIeDevice_1.Position" | CSR | 软件 |
SerialNumber | String | - | String | FruData_DPUCard | 组件序列号 | 查询告警 补充具体的使用场景 | "<=/FruData_DPUCard.BoardSerialNumber" | CSR | 硬件 |
PartNumber | String | - | String | FruData_DPUCard | 组件号 | 查询告警 | "<=/FruData_DPUCard.BoardPartNumber" | CSR | 硬件 |
SegmentId | U8 | - | U8 | - | 组件容器ID | 查询电子标签 | 1 | CSR | 软件 |
Function | String | - | String | - | 部件功能信息 简要描述功能,仅用于告警则不用配置 | 查询电子标签 | "memory" | CSR | 软件 |
PreviousSN | String | "" | String | - | SN号变更时自动更新为上一次的SN号 | 查询告警 热插拔部件 | "" | BMC内部设置 | 软件 |
ReplaceFlag | U8 | 0 | 0或1 | - | SN号变更时自动更新 0:未更换 1:已更换 | 查询告警 | 0 | BMC内部设置 | 软件 |
NodeId | String | - | String | - | 节点的ID | 查询电子标签 | "2" | CSR | 软件 |
SyncHealthEnabled | Boolean | false | - | - | 表示是否需要同步相同Name的Component对象的Health属性,true:同步,false:不同步 | CSR 配置 | false | CSR配置 | 硬件 |
📊 设备类型枚举
说明:
Type字段为部件类型,其取值与Fru类Type字段一致。Fru Type与Component Type定义方式相同(Fru Type的例外部分单独划分)。
| 类型ID(十进制) | 类型ID(十六进制) | 部件类型名称 |
|---|---|---|
| 0 | 0x00 | CPU |
| 1 | 0x01 | Memory(内存) |
| 2 | 0x02 | Hard disk(硬盘) |
| 3 | 0x03 | Power supply unit(PSU电源模块) |
| 4 | 0x04 | Fan(风扇) |
| 5 | 0x05 | Hard Drive Backplane(硬盘背板) |
| 6 | 0x06 | Screw-in RAID controller card(插拔RAID控制卡) |
| 7 | 0x07 | UNKNOWN(未定义) |
| 8 | 0x08 | PCIe cards(PCIe卡) |
| 9 | 0x09 | AMC board(AMC单板) |
| 10 | 0x0A | HBA Controller Card(HBA控制卡) |
| 11 | 0x0B | mezzanine card(夹层卡) |
| 12 | 0x0C | UNKNOWN(未定义) |
| 13 | 0x0D | NIC(网卡) |
| 14 | 0x0E | Memory board(内存板) |
| 15 | 0x0F | PCIe riser card(PCIe Riser卡) |
| 16 | 0x10 | PCBA(主板) |
| 17 | 0x11 | LCD |
| 18 | 0x12 | Chassis(机箱) |
| 19 | 0x13 | NCM(节点控制器模块) |
| 20 | 0x14 | Switch Module(交换模块) |
| 21 | 0x15 | Storage Board(存储板) |
| 22 | 0x16 | Chassis Backplane(机箱背板) |
| 23 | 0x17 | SMM/CMC(集中管理模块) |
| 24 | 0x18 | Fan Backplane(风扇背板) |
| 25 | 0x19 | PSU Backplane/Power Transfer Board(电源背板/电源转接板) |
| 26 | 0x1A | BMC board(BMC单板) |
| 27 | 0x1B | MMC/MM board(外设管理板) |
| 28 | 0x1C | Twin Node Backplane(双子节点背板) |
| 29 | 0x1D | Base Plane(基础交换平面) |
| 30 | 0x1E | Fabric Plane(Fabric交换平面) |
| 31 | 0x1F | Switch Mezz(交换夹层卡) |
| 32 | 0x20 | LED |
| 33 | 0x21 | SD Card(SD卡) |
| 34 | 0x22 | Security Module(安全模块TPM/TCM) |
| 35 | 0x23 | I/O Board(IO单板) |
| 36 | 0x24 | CPU Board(CPU板) |
| 37 | 0x25 | RMC(机架管理模块) |
| 38 | 0x26 | PCIe Adapter(PCIe SSD转接卡) |
| 39 | 0x27 | PCH |
| 40 | 0x28 | Cable(线缆/内部连接) |
| 41 | 0x29 | Port(端口) |
| 42 | 0x2A | LSW |
| 43 | 0x2B | PHY |
| 44 | 0x2C | System(业务系统/产品) |
| 45 | 0x2D | M.2 Transfer Card(M.2转接卡) |
| 45 | 0x2D | Expander(扩展器,某机型专用) |
| 46 | 0x2E | LED Board(LED板) |
| 47 | 0x2F | LPM(LPM/PBI板) |
| 48 | 0x30 | PIC Card(PIC卡) |
| 49 | 0x31 | Button(按钮) |
| 50 | 0x32 | Expander(通用扩展板) |
| 51 | 0x33 | CPI(集中控制分区单元) |
| 52 | 0x34 | ACM(高级时钟模块) |
| 53 | 0x35 | CIM(中央接口模块) |
| 54 | 0x36 | PFM(电源风扇完整性模块) |
| 55 | 0x37 | KPAR(多分区系统) |
| 56 | 0x38 | JC(JC芯片) |
| 57 | 0x39 | SCM(系统计算模块) |
| 58 | 0x3A | Minisas HD channel(MINISAS HD通道) |
| 59 | 0x3B | SATA DOM channel(SATADOM通道) |
| 60 | 0x3C | GE channel(GE通道) |
| 61 | 0x3D | XGE channel(XGE通道) |
| 62 | 0x3E | PCIe Switch(PCIe交换) |
| 63 | 0x3F | Interface Device(接口组件/接口板) |
| 64 | 0x40 | xPU Board(xPU载板/xPU板) |
| 65 | 0x41 | Disk BaseBoard(硬盘基板) |
| 66 | 0x42 | VGA Interface Card(VGA转接卡) |
| 67 | 0x43 | Pass-Through Card(透传卡) |
| 68 | 0x44 | Logical Driver(逻辑硬盘) |
| 69 | 0x45 | PCIe Retimer(PCIe重定时器) |
| 70 | 0x46 | PCIe Repeater(PCIe中继器) |
| 71 | 0x47 | SAS |
| 72 | 0x48 | Memory Channel(内存通道) |
| 73 | 0x49 | BMA |
| 74 | 0x4A | LOM |
| 75 | 0x4B | Signal Adapter Board(信号转接板) |
| 76 | 0x4C | Horizontal Connection Board(水平转接板) |
| 77 | 0x4D | Node(节点) |
| 78 | 0x4E | Asset Locate Board(资产管理板) |
| 79 | 0x4F | Unit(安装位置) |
| 80 | 0x50 | RMM(机柜管理模块) |
| 81 | 0x51 | Rack(机柜) |
| 82 | 0x52 | BBU(备电模块) |
| 83 | 0x53 | OCP Card(OCP卡) |
| 84 | 0x54 | Leakage Detection Card(漏液检测卡) |
| 85 | 0x55 | MESH Card(Mesh卡) |
| 86 | 0x56 | NPU(神经网络计算芯片) |
| 87 | 0x57 | CIC Card(融合接口卡) |
| 88 | 0x58 | Expansion Module(扩展模块) |
| 89 | 0x59 | Fan Module(风扇模块) |
| 90 | 0x5A | AR Card(AR卡) |
| 91 | 0x5B | Converge Board(融合板) |
| 92 | 0x5C | SoC Board(SoC PCBA) |
| 93 | 0x5D | Expand Board(扩展板) |
| 94 | 0x5E | HiAM |
| 95 | 0x5F | Optical Module(光模块) |
| 96 | 0x60 | HDU(高压配电单元) |
| 97 | 0x61 | NP(网络加速板) |
| 98 | 0x62 | LCN(局域计算网络) |
| 192 | 0xC0 | BCU(基础计算单元) |
| 193 | 0xC1 | EXU(系统扩展单元) |
| 194 | 0xC2 | SEU(存储扩展组件) |
| 195 | 0xC3 | IEU(IO扩展组件) |
| 196 | 0xC4 | CLU(散热组件) |
| 197 | 0xC5 | SSU |
| 252 | 0xFC | XXX Software Events(某产品软件告警) |
| 253 | 0xFD | PoDManager(PoDManager系统软件) |
| 255 | 0xFF | Reserved(保留。 用作扩展或特殊场景定义,禁止作为有效的设备类型使用) |
🔗 动态关联机制
语法规范
使用 #/xxx 或 <=/xxx 格式实现属性间的动态关联:
yaml
# 语法格式
属性名: "<=/目标类.属性名"
# 实际示例
Location: "<=/PCIeDevice_1.Position" # 关联PCIe设备位置
SerialNumber: "<=/FruData_DPUCard.BoardSerialNumber" # 关联FRU序列号
PartNumber: "<=/FruData_DPUCard.BoardPartNumber" # 关联FRU部件号关联说明
- Location: 关联PCIe设备或其他容器的位置信息
- SerialNumber: 从FRU数据中动态获取序列号
- PartNumber: 从FRU数据中动态获取部件号
📂 分类标准
硬件属性
- 定义:与物理器件直接相关的参数
- 特点:通常固定不变,与硬件BOM表对应
- 示例:
Type,Presence,PowerState,BoardId,SerialNumber,PartNumber
软件属性
- 定义:用于逻辑控制和软件管理的参数
- 特点:由BMC内部逻辑动态提供和管理
- 示例:
FruId,Instance,Name,Health,UniqueId,Manufacturer,GroupId,Location,SegmentId,Function,PreviousSN,ReplaceFlag,NodeId
📝 配置示例
标准CPU组件配置
json
{
"Component": {
"FruId": 255,
"Instance": 2,
"Type": 0,
"Name": "Cpu2",
"Presence": 1,
"PowerState": 1,
"Health": 0,
"BoardId": 65535,
"UniqueId": "N/A",
"Manufacturer": "HUAWEI",
"GroupId": 1,
"Function": "processor"
}
}内存组件配置
json
{
"Component": {
"FruId": 10,
"Instance": 1,
"Type": 1,
"Name": "Memory1",
"Presence": 1,
"PowerState": 1,
"Health": 0,
"BoardId": 65535,
"UniqueId": "N/A",
"Manufacturer": "HUAWEI",
"GroupId": 1,
"Function": "memory",
"SegmentId": 1,
"NodeId": "1"
}
}带FRU关联的DPU卡配置
json
{
"Component": {
"FruId": 20,
"Instance": 1,
"Type": 5,
"Name": "DPUCard1",
"Presence": 1,
"PowerState": 1,
"Health": 0,
"BoardId": 65535,
"UniqueId": "N/A",
"Manufacturer": "HUAWEI",
"GroupId": 2,
"Location": "<=/PCIeDevice_1.Position",
"SerialNumber": "<=/FruData_DPUCard.BoardSerialNumber",
"PartNumber": "<=/FruData_DPUCard.BoardPartNumber",
"Function": "accelerator",
"SegmentId": 1,
"NodeId": "1"
}
}热插拔组件配置
json
{
"Component": {
"FruId": 30,
"Instance": 1,
"Type": 3,
"Name": "HotSwapCard1",
"Presence": 1,
"PowerState": 1,
"Health": 0,
"BoardId": 65535,
"UniqueId": "N/A",
"Manufacturer": "HUAWEI",
"GroupId": 3,
"SerialNumber": "<=/FruData_HotSwap.BoardSerialNumber",
"PartNumber": "<=/FruData_HotSwap.BoardPartNumber",
"Function": "expansion",
"PreviousSN": "",
"ReplaceFlag": 0,
"SegmentId": 1,
"NodeId": "1"
}
}🔧 使用指南
配置步骤
- 确定组件类型:根据硬件BOM表确定Type类型
- 设置基本信息:配置FruId、Instance、Name等基本属性
- 配置状态属性:设置Presence、PowerState等状态信息
- 关联FRU数据:通过动态关联获取序列号、部件号等信息
- 设置逻辑分组:配置GroupId、SegmentId、NodeId等逻辑属性
- 功能描述:根据需要配置Function功能描述
- 告警关联:配置Health属性用于告警状态管理
注意事项
- 名称唯一性:同一个position中Name需要保证唯一
- FruId配置:仅用于告警的组件可配置FruId为255
- 动态关联:SerialNumber和PartNumber需要确保关联的FRU数据存在
- 热插拔支持:热插拔组件需要配置PreviousSN和ReplaceFlag
- Health状态:Health属性由BMC内部根据告警严重程度自动更新
- Type取值:Type类型取值见上文【设备类型枚举】表
性能建议
- 合理分组:使用GroupId对相关组件进行逻辑分组
- 状态监控:定期检查Presence和PowerState状态
- 告警集成:合理配置Health属性实现告警状态同步
- FRU优化:避免过度频繁的FRU数据关联更新
故障排查
- 组件不在位:检查Presence状态和硬件连接
- 电源状态异常:检查PowerState和电源管理配置
- 告警状态错误:检查Health属性和告警关联配置
- FRU数据缺失:检查动态关联的FRU数据源是否存在