代码仓
中
CSR配置字典之Component类
更新时间: 2026/11/09
在AtomGit上查看源码

📋 文档信息 ​

项目内容
文档标题Component类配置字典
版本v1.2
创建日期2025-01-27
最后更新2026-11-07
维护状态✅ 活跃维护

📋 变更历史记录 ​

文档变更记录 ​

版本发布日期变更类型变更内容影响范围维护人员
v1.02025-01-27初始版本创建Component类配置字典全新文档系统管理员
v1.12026-11-03优化内联Type部件类型枚举取值(替换原"参考IDP文档"引用)Type字段系统管理员
v1.22026-11-07修订与模型同步,补充 CSR 属性:SyncHealthEnabledComponent待补充

🎯 类概览 ​

Component 类 ​

属性值
类名称Component
功能描述硬件模块组件管理,提供硬件组件的基本信息、状态管理和告警关联功能
所属SIG组hardware
所属组件component
责任人硬件组件管理组
最后更新2026-11-07
状态🟢 正常运行

📊 属性定义详表 ​

必选属性 ​

属性名类型默认值取值范围动态关联描述使用场景举例来源分类
FruIdU8255U8-关联Fru的Fruid
如果仅用于告警则配置255
查询电子标签255CSR软件
InstanceU8-U8-组件设备Number
即器件在整个单板中的编号
查询电子标签/查询告警2CSR软件
TypeU8-设备类型枚举,取值范围:0~98、192~197、252、253,255为保留值,详细取值见下文【设备类型枚举】表-部件类型查询电子标签/查询告警0CSR硬件
NameString-String-部件名称
同一个position中需要保证唯一
补充告警和电子标签各自关注
查询电子标签/查询告警"Cpu2"CSR软件
PresenceU8-0或1-部件在位状态
0:不在位
1:在位
查询电子标签/查询告警1CSR硬件
PowerStateU8-0或1-部件电源状态
0:下电
1:上电
查询电子标签/查询告警1CSR硬件

可选属性 ​

属性名类型默认值取值范围动态关联描述使用场景举例来源分类
HealthU8-U8-关联告警时,如果告警则会根据告警严重程度进行更新查询告警0BMC内部设置软件
BoardIdU1665535U16-组件单板BoardId查询电子标签65535CSR硬件
UniqueIdString"N/A"String-组件唯一标识
Vendor + ComponentID
查询电子标签"N/A"CSR软件
ManufacturerString"HUAWEI"String-组件厂商信息查询电子标签"HUAWEI"CSR软件
GroupIdU81U8-组件逻辑组Id查询电子标签/查询告警1CSR软件
LocationString-StringPCIeDevice_1组件的容器查询电子标签/查询告警"<=/PCIeDevice_1.Position"CSR软件
SerialNumberString-StringFruData_DPUCard组件序列号查询告警
补充具体的使用场景
"<=/FruData_DPUCard.BoardSerialNumber"CSR硬件
PartNumberString-StringFruData_DPUCard组件号查询告警"<=/FruData_DPUCard.BoardPartNumber"CSR硬件
SegmentIdU8-U8-组件容器ID查询电子标签1CSR软件
FunctionString-String-部件功能信息
简要描述功能,仅用于告警则不用配置
查询电子标签"memory"CSR软件
PreviousSNString""String-SN号变更时自动更新为上一次的SN号查询告警
热插拔部件
""BMC内部设置软件
ReplaceFlagU800或1-SN号变更时自动更新
0:未更换
1:已更换
查询告警0BMC内部设置软件
NodeIdString-String-节点的ID查询电子标签"2"CSR软件
SyncHealthEnabledBooleanfalse--表示是否需要同步相同Name的Component对象的Health属性,true:同步,false:不同步CSR 配置falseCSR配置硬件

📊 设备类型枚举 ​

说明:Type字段为部件类型,其取值与Fru类Type字段一致。Fru Type与Component Type定义方式相同(Fru Type的例外部分单独划分)。

类型ID(十进制)类型ID(十六进制)部件类型名称
00x00CPU
10x01Memory(内存)
20x02Hard disk(硬盘)
30x03Power supply unit(PSU电源模块)
40x04Fan(风扇)
50x05Hard Drive Backplane(硬盘背板)
60x06Screw-in RAID controller card(插拔RAID控制卡)
70x07UNKNOWN(未定义)
80x08PCIe cards(PCIe卡)
90x09AMC board(AMC单板)
100x0AHBA Controller Card(HBA控制卡)
110x0Bmezzanine card(夹层卡)
120x0CUNKNOWN(未定义)
130x0DNIC(网卡)
140x0EMemory board(内存板)
150x0FPCIe riser card(PCIe Riser卡)
160x10PCBA(主板)
170x11LCD
180x12Chassis(机箱)
190x13NCM(节点控制器模块)
200x14Switch Module(交换模块)
210x15Storage Board(存储板)
220x16Chassis Backplane(机箱背板)
230x17SMM/CMC(集中管理模块)
240x18Fan Backplane(风扇背板)
250x19PSU Backplane/Power Transfer Board(电源背板/电源转接板)
260x1ABMC board(BMC单板)
270x1BMMC/MM board(外设管理板)
280x1CTwin Node Backplane(双子节点背板)
290x1DBase Plane(基础交换平面)
300x1EFabric Plane(Fabric交换平面)
310x1FSwitch Mezz(交换夹层卡)
320x20LED
330x21SD Card(SD卡)
340x22Security Module(安全模块TPM/TCM)
350x23I/O Board(IO单板)
360x24CPU Board(CPU板)
370x25RMC(机架管理模块)
380x26PCIe Adapter(PCIe SSD转接卡)
390x27PCH
400x28Cable(线缆/内部连接)
410x29Port(端口)
420x2ALSW
430x2BPHY
440x2CSystem(业务系统/产品)
450x2DM.2 Transfer Card(M.2转接卡)
450x2DExpander(扩展器,某机型专用)
460x2ELED Board(LED板)
470x2FLPM(LPM/PBI板)
480x30PIC Card(PIC卡)
490x31Button(按钮)
500x32Expander(通用扩展板)
510x33CPI(集中控制分区单元)
520x34ACM(高级时钟模块)
530x35CIM(中央接口模块)
540x36PFM(电源风扇完整性模块)
550x37KPAR(多分区系统)
560x38JC(JC芯片)
570x39SCM(系统计算模块)
580x3AMinisas HD channel(MINISAS HD通道)
590x3BSATA DOM channel(SATADOM通道)
600x3CGE channel(GE通道)
610x3DXGE channel(XGE通道)
620x3EPCIe Switch(PCIe交换)
630x3FInterface Device(接口组件/接口板)
640x40xPU Board(xPU载板/xPU板)
650x41Disk BaseBoard(硬盘基板)
660x42VGA Interface Card(VGA转接卡)
670x43Pass-Through Card(透传卡)
680x44Logical Driver(逻辑硬盘)
690x45PCIe Retimer(PCIe重定时器)
700x46PCIe Repeater(PCIe中继器)
710x47SAS
720x48Memory Channel(内存通道)
730x49BMA
740x4ALOM
750x4BSignal Adapter Board(信号转接板)
760x4CHorizontal Connection Board(水平转接板)
770x4DNode(节点)
780x4EAsset Locate Board(资产管理板)
790x4FUnit(安装位置)
800x50RMM(机柜管理模块)
810x51Rack(机柜)
820x52BBU(备电模块)
830x53OCP Card(OCP卡)
840x54Leakage Detection Card(漏液检测卡)
850x55MESH Card(Mesh卡)
860x56NPU(神经网络计算芯片)
870x57CIC Card(融合接口卡)
880x58Expansion Module(扩展模块)
890x59Fan Module(风扇模块)
900x5AAR Card(AR卡)
910x5BConverge Board(融合板)
920x5CSoC Board(SoC PCBA)
930x5DExpand Board(扩展板)
940x5EHiAM
950x5FOptical Module(光模块)
960x60HDU(高压配电单元)
970x61NP(网络加速板)
980x62LCN(局域计算网络)
1920xC0BCU(基础计算单元)
1930xC1EXU(系统扩展单元)
1940xC2SEU(存储扩展组件)
1950xC3IEU(IO扩展组件)
1960xC4CLU(散热组件)
1970xC5SSU
2520xFCXXX Software Events(某产品软件告警)
2530xFDPoDManager(PoDManager系统软件)
2550xFFReserved(保留。 用作扩展或特殊场景定义,禁止作为有效的设备类型使用)

🔗 动态关联机制 ​

语法规范 ​

使用 #/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"
  }
}

🔧 使用指南 ​

配置步骤 ​

  1. 确定组件类型:根据硬件BOM表确定Type类型
  2. 设置基本信息:配置FruId、Instance、Name等基本属性
  3. 配置状态属性:设置Presence、PowerState等状态信息
  4. 关联FRU数据:通过动态关联获取序列号、部件号等信息
  5. 设置逻辑分组:配置GroupId、SegmentId、NodeId等逻辑属性
  6. 功能描述:根据需要配置Function功能描述
  7. 告警关联:配置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数据源是否存在