cake
1
问题描述
如图,当前背板上插了四张盘,前三张是SAS盘,第四章是NVME盘
装了BMA以后,预期web上可以看到四张盘的信息,比如:
实际只有Disk2和Disk23是能显示信息的
OS下查看信息都是正常的
定位发现问题原因:
storage里代码设计为,BMA对SAS/SATA盘使用丝印与盘的NodeId做匹配来更新信息,对NVME盘使用SerialNumber做匹配来更新信息
但是16背板的丝印为:
而盘的NodeId顺序为Disk0-3,Disk8-Disk15,Disk20-Disk23
这样的话信息匹配不上,就会没办法展示信息
想问下这种情况下应该以哪个为准,如果以丝印为准,改背板SR,如果以背板SR为准,那改PSR。两种改法都不难,现在的点在于不懂标准是啥
答案内容由AI生成,仅供参考:
总结
| 以谁为准 |
需要改什么 |
依据 |
| 物理丝印(推荐) |
修改背板SR,使NodeId、Slot等与丝印一致 |
社区案例(BC83NHBN16)和BMA匹配机制要求 |
| 背板SR(连续配置) |
修改PSR以实现全局连续编码,但物理丝印仍需与实际一致 |
客户全局连续需求(如文档片段5),但仍需SR与PSR联动 |
结论:请先明确您的背板实际丝印编号,然后修改背板SR(如BC83NHBC或对应型号的SR文件),使NodeId、RelativeSlot、PcieAddrInfo属性与物理丝印一致。这是保证SAS/SATA盘正常显示的直接措施。NVMe盘的问题需单独检查SerialNumber获取链路。若仍有匹配问题,可参考论坛 SAS/SATA盘信息无法获取完整分析 排查PcieAddrInfo_SAS对象参数。
如果您能提供背板实际丝印的图片或具体数值,社区可以给出更精确的配置建议。
点击此处查看详细分析解答
分析
根据您描述的问题,核心矛盾在于:
- 丝印(物理槽位编号) 与 背板SR中配置的NodeId 不一致,导致BMA对SAS/SATA盘使用丝印‑NodeId匹配时失败,无法显示部分硬盘信息。
- 对于NVMe盘,storage代码使用SerialNumber匹配,与丝印无关,但只显示Disk2和Disk23,说明可能存在额外的配置或获取问题。
已知您的背板为 162.5 NVMe(8SAS/SATA) 型号,其物理端口编号采用非连续方案0‑23(参见知识图谱中 16x2.5英寸NVMe硬盘背板 的描述)。而您提到的盘NodeId顺序为 Disk0‑3, Disk8‑15, Disk20‑23,这正是非连续编号的具体映射。如果当前背板上的实际丝印(机箱标签) 并非这些非连续编号(例如被设计为0‑15连续),则必然导致匹配失败。
标准做法:以物理丝印为准
从社区已有案例和设计规范来看,整机丝印(物理槽位编号)是最终用户可见的标识,背板SR中的NodeId、RelativeSlot、PcieAddrInfo等属性必须与物理丝印保持一致。以下是明确的支撑信息:
1. 社区案例参考
论坛问题 【问题求助】【storage】背板csr中硬盘槽位配置进行调整后,web界面概率出现卡对象重复出现(文档片段4)中:
- 背板型号 BC83NHBN16(与您的16盘背板类似)其实际丝印为
0‑3, 8‑15, 20‑23。
- 但背板SR中最初配置的槽位为 连续的
0‑15,导致丝印与配置不匹配,出现对象重复、信息无法显示等问题。
- 解决方案:将背板SR中
Connector_ComVPDConnect 的Slot、以及 Drive 对象的 Name、NodeId、RelativeSlot 等属性调整为与物理丝印一致的非连续值。
因此,标准的修正方向是:按照实际物理丝印修改背板SR,而非修改PSR(平台SR)。修改PSR会影响整机槽位编码策略,但背板SR是直接对应本背板的丝印配置,才是匹配的切入点。
2. 设计原则
3. 针对NVMe盘
- NVMe盘使用
SerialNumber 进行匹配,不受丝印影响。
- 如果NVMe盘信息未显示,请检查
BMC Dev NVMe Product Info 接口是否能正确获取 SerialNumber(参见知识图谱中 bmc.dev.NVMe.ProductInfo 的关系)。BMA 也可以作为 SerialNumber 的来源(知识图谱BMA实体),确保BMA已正确上报NVMe盘的序列号。
推荐做法
确认物理丝印
- 查看背板上的实际丝印标签(例如机箱标注的硬盘槽位编号)。对于16盘背板,通常为非连续
0‑3, 8‑15, 20‑23 或类似,以实物为准。
修改背板SR(针对SAS/SATA盘)
- 根据物理丝印调整背板SR中以下关键属性(参考
HddBackplane 类的CSR配置,见 CSR配置字典之HddBackplane类):
Drive 对象:Name(如 Disk0、Disk8)、NodeId(如 HDDPlaneDisk0)、RelativeSlot(与物理槽位对应)。
PcieAddrInfo_SAS 对象:PortID、SlotID 等(需匹配实际端口映射,参见SAS/SATA盘的PCIeAddrInfo的PortID是怎样来的)。
Connector_ComVPDConnect:Slot 列表改为非连续值。
- 同时检查 起始槽位
StartSlot(前置背板通常为0,后置背板根据前置硬盘数量设置,见 CSR配置字典)。
验证NVMe盘信息
- 确认
BMC Dev NVMe Product Info 接口正常返回 SerialNumber。
- 若SerialNumber已获取但Web仍不显示,检查storage组件是否通过SerialNumber正确匹配NVMe盘,并确认NVMe盘的
bmc.dev.NVMe.ProductInfo 属性均已配置(知识图谱)。
同步配置PSR(如果需要)
- 如果修改背板SR后,整机丝印需要连续编码(例如客户要求全局从0开始),则需通过 PSR(Platform SR) 调整
DriveSlotAllocationEnabled 等全局开关(参见新增私有对象支持硬盘槽位编码)。但一般情况下,默认以背板物理丝印为准,不强制全局连续;若客户有特殊要求,可在PSR中配置偏移值。
总结
| 以谁为准 |
需要改什么 |
依据 |
| 物理丝印(推荐) |
修改背板SR,使NodeId、Slot等与丝印一致 |
社区案例(BC83NHBN16)和BMA匹配机制要求 |
| 背板SR(连续配置) |
修改PSR以实现全局连续编码,但物理丝印仍需与实际一致 |
客户全局连续需求(如文档片段5),但仍需SR与PSR联动 |
结论:请先明确您的背板实际丝印编号,然后修改背板SR(如BC83NHBC或对应型号的SR文件),使NodeId、RelativeSlot、PcieAddrInfo属性与物理丝印一致。这是保证SAS/SATA盘正常显示的直接措施。NVMe盘的问题需单独检查SerialNumber获取链路。若仍有匹配问题,可参考论坛 SAS/SATA盘信息无法获取完整分析 排查PcieAddrInfo_SAS对象参数。
如果您能提供背板实际丝印的图片或具体数值,社区可以给出更精确的配置建议。