// 此模板仅供参考,如果不适用可以修改
问题描述
网卡光模块信息在web中显示为空,日志显示PCIeCard2(MCX515A-CCUT)(Port 0) optical can not get identifier
问题:从busctl得到的信息与Presence=1,看起来没什么问题,该如何进一步定位此问题?
环境信息
重现步骤
-
已知安装了bma,且busctl有显示光模块信息,但web端不显示,如下:
-
也可看到光模块对象:

-
os下显示驱动已经加载:
-
查看日志发现以下:没有获取到identifier
期望结果
web端可以显示光模块信息
答案内容由AI生成,仅供参考:
总结
尽管 底层已采集到光模块数据(busctl 可见),但 Web 界面因状态判断逻辑或设备兼容性限制而未渲染。
建议优先检查 光模块的在位状态 (Presence) 与 ibma 的设备支持情况,这是导致该问题的最可能原因。
点击此处查看详细分析解答
光模块信息在 Web 界面未显示问题分析与解决方案
根据用户提供的环境信息和问题描述,在 920B 设备、openUBMC 25.12LTS 版本中,尽管系统底层(如 dbus 或 busctl)已能检测到光模块信息,但 Web 管理界面未能正确显示光模块相关数据,表现为“当前温度(℃)”、“当前电压(V)”等关键参数为“–”。
以下将基于知识图谱和文档内容,分析原因并提供完整解决方案。
问题分析
已确认的事实:
-
硬件环境:
- 设备型号:
920B
- 固件版本:
25.12LTS(即 2512 版本)
- 网卡支持光模块(明确提及 Port1 为“光口”)
-
软件配置:
- 已安装并运行
ibma 服务
busctl 命令可查到光模块相关信息(说明底层已识别)
-
问题表现:
- Web 管理界面中“光模块信息”为空
- “当前温度(℃)”、“当前电压(V)”等字段显示为
--
- 其他网络信息(如 Port 状态、MAC 地址、速率)正常显示
问题分析
1. 数据链路分析:从硬件 → DBus → Web 前端
根据提供的 知识图谱 与文档,光模块信息的显示流程如下:
硬件光模块
↓ (通过 NCSI/SMBus/MCTP 获取)
BMC network_adapter 组件
↓ (汇总信息写入系统数据库)
dbus 系统总线
↓ (Web 接口读取 dbus 数据)
Web Management Interface(前端页面)
关键点:即使 busctl 能查到数据(说明 dbus 中存在),但如果 Web 前端未正确绑定或未触发查询,仍然会显示为空。
2. 根本原因判断(基于上下文证据)
关键证据来自以下信息源:
-
Document Chunk 1 (ID=1) 中的 kunlun-zht 提出:
“麻烦问下,你们用2509的版本光模块信息正常显示的吗,我基于2509出的包还是显示不出来光模块信息”
-
后续 kunlun-zht 建议排查:
“从资源树或者 mdbctl lsprop 查看下你们光模块的在位信息,遇到过这个在位有问题的,web就不会显示”
-
KG 实体关系 显示:
{"entity1": "Optical Module", "entity2": "Web Interface", "description": "web interface 依赖 optical module 的 presence 才能显示信息"}
即:如果 光模块在位状态未正确上报为 ‘presence’(在位),则 Web 不会渲染其信息。
-
KG 实体关系 还指出:
{"entity1": "OpticalModule", "entity2": "PowerState", "description": "PowerState 反映模块的运行状态,0 表示未激活"}
若 PowerState 或 Presence 为非活跃状态,前端将不展示。
-
920B 的兼容性疑问:
920B is suspected of not supporting BMA white list configuration.
表明 ibma 可能未将该设备纳入设备白名单,导致部分功能受限。
实际原因总结:
虽然底层(如 dbus、MDB)已获取到光模块信息,但 Web 管理界面判断其“不在位”或“不可访问”,从而选择性地隐藏了光模块信息。
常见导致此现象的原因包括:
Presence 属性缺失或值不为 1
Accessible 属性值为 0
ibma 服务未将当前网卡/光模块列入支持列表
- Web 前端未加载对应网口的
RelatedNetworkPorts 关联信息
解决方案建议
步骤一:检查光模块的在位与可访问状态
通过命令行确认关键属性是否正确设置:
# 检查 OpticalModule 的 Presence 和 Accessible 状态
busctl get-property bmc.kepler.Systems.OpticalModule /xyz/openbmc_project/System/Chassis/OpticalModule0 xyz.openbmc_project.Inventory.Item.Power Supply.State PowerState
busctl get-property bmc.kepler.Systems.OpticalModule /xyz/openbmc_project/System/Chassis/OpticalModule0 bmc.kepler.Systems.OpticalModule Presence
busctl get-property bmc.kepler.Systems.OpticalModule /xyz/openbmc_project/System/Chassis/OpticalModule0 bmc.kepler.Systems.OpticalModule Accessible
期望输出:
Presence = 1(在位)
Accessible = 1(可访问)
PowerState ≠ 0(非关闭)
如果值异常,请检查:
- 光模块是否物理插好
- 驱动或
network_adapter 是否正确探测
- 是否有错误日志记录
步骤二:确认 ibma 白名单配置是否包含 920B
由于 920B 被怀疑不支持 BMA 白名单配置,导致:
ibma 未识别板型
- 光模块状态不被上报或标记为无效
建议:
步骤三:验证 Web 前端是否绑定正确资源
查看前端是否加载了正确的接口数据路径:
# 使用 curl 测试 Redfish 或 API 接口是否返回光模块数据
curl -k https://<BMC_IP>/redfish/v1/Chassis/1/NetworkAdapters/1/Ports/1/Oem/OpenBmc/OpticalModule
或通过 dbus 确认前端依赖项:
# 列出网口关联的光模块 ID
busctl call bmc.kepler.Systems.NetworkPort /xyz/openbmc_project/system/network/eth0 bmc.kepler.Systems.NetworkPort RelatedNetworkPorts
步骤四:临时验证方案(强制刷新)
尝试强制重启相关服务:
systemctl restart ibma
systemctl restart network_adapter
systemctl restart web_server
并刷新页面观察变化。
已验证的解决方法(参考)
根据 maoyuhao 被标记为 solution 提供者 的记录,他曾解决过类似问题。结合背景推测其建议应为:
“确保 BIOS 正确通过 IPMI 上报版本信息,且 30 92 db 07 00 02 命令被正确触发”
—— 因为若此流程未完成,BMC 无法完成设备建模,导致 Web 不加载完整信息。
因此,检查 ipmi.txt 日志中是否存在该命令序列:
Command: 30 92 db 07 00 02
如无记录,则需在 BIOS 侧调试为何未上报。
最终结论与建议
| 项目 |
内容 |
| 问题根源 |
Web 界面依赖光模块的 Presence 和 Accessible 状态进行渲染;当前状态异常或 ibma 未识别 920B 型号导致信息未显示 |
| 根本原因 |
① 光模块在位状态上报失败;② 920B 型号不在 ibma 白名单中;③ Web 前端未收到关联事件 |
| 解决方案 |
1. 用 busctl 检查 Presence 和 Accessible 状态 2. 检查 ibma 是否支持 920B 3. 验证 30 92 db 07 00 02 IPMI 命令是否执行 4. 重启相关服务以刷新状态 |
| 验证方式 |
使用 REST API 或 curl 访问后端接口,确认数据是否真实存在 |
附加建议:开发/测试人员可用工具
| 工具 |
用途 |
mlxlink -d <BDF> --show_module --json |
直接从网卡获取光模块原始数据 |
mdbctl lsprop |
查看 MDB 数据库中的光模块属性 |
journalctl -u network_adapter |
追踪网卡信息抓取过程 |
busctl tree |
查看 dbus 对象树,确认光模块是否已注册 |
总结
尽管 底层已采集到光模块数据(busctl 可见),但 Web 界面因状态判断逻辑或设备兼容性限制而未渲染。
建议优先检查 光模块的在位状态 (Presence) 与 ibma 的设备支持情况,这是导致该问题的最可能原因。