SP恢复BMC出厂设置未生效

问题描述

使用SP管理中的恢复出厂设置功能恢复BMC出厂设置,观察到SP任务执行完成后,BMC没有重启,也没有恢复到还原点的状态。

BMC日志有以下内容,看起来是SP获取BMC还原点失败,请问这个是什么问题
image
SP Failed to get BMC restoration resource respond data information from redfish

但是使用首页的恢复出厂设置功能,BMC会重启,然后恢复到还原点状态。

版本信息

SP:1.20.0.19
openUBMC 2512 LTS

答案内容由AI生成,仅供参考:

解决方案建议

:white_check_mark: 方案一:确保SP成功启动一次以触发恢复任务

由于SP管理页面的恢复出厂设置是“延迟执行”的,必须满足以下条件才能生效:

  1. 在SP管理页面勾选“任务启动使能”;
  2. 执行恢复出厂设置,勾选“iBMC”选项;
  3. 重启服务器并在BIOS界面按F6进入SP模式
  4. SP启动后将读取StstemErase配置文件,执行对应的清除操作,包括BMC恢复出厂设置和重启。

:warning: 注意:如果SP本身启动失败或未进入SP环境,则恢复任务不会被执行。


:white_check_mark: 方案二:优先使用首页恢复出厂设置(推荐)

对于需要立即恢复BMC状态的场景,建议使用首页提供的恢复功能:

  • 访问地址: https://{IP}/UI/Rest/RestoreFactory
  • 行为:
    • 立即开始恢复流程;
    • 自动重启BMC
    • 还原所有配置至出厂默认状态;
  • 适用场景: BMC配置混乱、Web无法登录、需要快速恢复系统等。

:white_check_mark: 方案三:排查Redfish接口通信问题(针对日志报错)

若希望SP也能正常执行BMC恢复,需解决其无法通过Redfish获取资源的问题:

排查步骤:

  1. 检查Redfish服务是否运行正常:
    ps | grep redfish
    
  2. 测试Redfish接口能否访问关键资源:
    GET https://{bmc_ip}/redfish/v1/Managers/1
    
    查看返回中是否包含 OemActions 等字段。
  3. 验证身份认证是否有效,确保SP使用的Token具有足够权限(Administrator级别)。
  4. 检查BMC资源树是否完整,特别是以下路径是否存在:
    • /bmc/kepler/Systems/1/Product
    • /bmc/kepler/product_mgmt

:light_bulb: 提示:该问题可能与 openUBMC 2512 LTS 版本中闭源模块初始化失败或数据库未持久化有关(见KG文档:1711烧片后, 闭源product_mgmt模块资源树路径丢失)。

点击此处查看详细分析解答

SP管理页面恢复出厂设置未生效问题分析

根据您提供的问题描述和日志信息,以下是对此问题的详细分析与解决方案。

问题概述

问题现象:

  • 使用SP管理页面的“恢复出厂设置”功能时,即使勾选了iBMC选项并执行任务,BMC未重启,也未恢复到还原点状态
  • BMC日志中出现错误信息:SP : Failed to get BMC restoration resource respond data information from redfish
  • 但使用首页的恢复出厂设置功能(URL: https://{ip}/UI/Rest/RestoreFactory)则能正常触发BMC重启并完成恢复

关键差异分析:两种恢复出厂设置方式

特性 首页恢复出厂设置 SP管理页面恢复出厂设置
触发路径 https://{ip}/UI/Rest/RestoreFactory https://{ip}/UI/Rest/BMCSettings/SPService/StstemErase
是否立即重启BMC :white_check_mark: :cross_mark:
是否真正恢复出厂状态 :white_check_mark: :warning: 依赖SP后续流程
底层机制 直接调用BMC原生恢复接口 创建SP系统擦除配置文件,等待SP启动时执行

:white_check_mark: 结论:这不是一个“功能失效”问题,而是两种操作的设计逻辑本身就不同。


:magnifying_glass_tilted_left: 根本原因解析

  1. SP管理页面恢复出厂设置的工作机制

    • 该操作并不会立即重置BMC,而是:
      • 在BMC侧创建一个名为 StstemErase 的SP系统擦除配置文件;
      • 设置标记,仅在SP下一次启动时激活该任务
      • 标记中可包含对SP、硬盘、BIOS、iBMC等组件的恢复指令;
    • 因此,仅执行此操作不会立即生效,必须让SP实际运行一次才能触发清除逻辑
  2. 为何日志报错 Failed to get BMC restoration resource respond data information from redfish

    • SP在准备执行恢复任务前,会通过Redfish接口查询BMC的还原点资源信息
    • 如果此时BMC的Redfish服务异常、权限不足、或资源路径丢失(如/bmc/kepler/Systems/1/Product),则会导致SP获取失败;
    • 此错误说明:SP尝试联系BMC获取恢复所需资源失败,导致无法继续执行iBMC恢复流程
  3. 首页恢复出厂设置为何成功?

    • 此接口直接由BMC Web服务处理,不依赖SP;
    • 它调用的是本地BMC系统的原生恢复机制(Recover Manufacturer Default Configuration);
    • 恢复过程完成后自动触发 BMC Restart,从而完成整个恢复流程。

解决方案建议

:white_check_mark: 方案一:确保SP成功启动一次以触发恢复任务

由于SP管理页面的恢复出厂设置是“延迟执行”的,必须满足以下条件才能生效:

  1. 在SP管理页面勾选“任务启动使能”;
  2. 执行恢复出厂设置,勾选“iBMC”选项;
  3. 重启服务器并在BIOS界面按F6进入SP模式
  4. SP启动后将读取StstemErase配置文件,执行对应的清除操作,包括BMC恢复出厂设置和重启。

:warning: 注意:如果SP本身启动失败或未进入SP环境,则恢复任务不会被执行。


:white_check_mark: 方案二:优先使用首页恢复出厂设置(推荐)

对于需要立即恢复BMC状态的场景,建议使用首页提供的恢复功能:

  • 访问地址: https://{IP}/UI/Rest/RestoreFactory
  • 行为:
    • 立即开始恢复流程;
    • 自动重启BMC
    • 还原所有配置至出厂默认状态;
  • 适用场景: BMC配置混乱、Web无法登录、需要快速恢复系统等。

:white_check_mark: 方案三:排查Redfish接口通信问题(针对日志报错)

若希望SP也能正常执行BMC恢复,需解决其无法通过Redfish获取资源的问题:

排查步骤:

  1. 检查Redfish服务是否运行正常:
    ps | grep redfish
    
  2. 测试Redfish接口能否访问关键资源:
    GET https://{bmc_ip}/redfish/v1/Managers/1
    
    查看返回中是否包含 OemActions 等字段。
  3. 验证身份认证是否有效,确保SP使用的Token具有足够权限(Administrator级别)。
  4. 检查BMC资源树是否完整,特别是以下路径是否存在:
    • /bmc/kepler/Systems/1/Product
    • /bmc/kepler/product_mgmt

:light_bulb: 提示:该问题可能与 openUBMC 2512 LTS 版本中闭源模块初始化失败或数据库未持久化有关(见KG文档:1711烧片后, 闭源product_mgmt模块资源树路径丢失)。


建议与总结

建议项 内容
:pushpin: 推荐做法 对于BMC恢复操作,优先使用首页恢复出厂设置功能,确保立即生效;
:gear: SP用途说明 SP主要用于部署操作系统、固件批量升级、硬件诊断,其恢复功能为辅助性质,适用于带外批量运维场景;
:hammer_and_wrench: 故障排查 若需SP执行BMC恢复,请确保其能成功启动,并检查Redfish接口通信状态;
:puzzle_piece: 版本稳定性 openUBMC 2512 LTS 虽为长期支持版本,但仍可能存在Redfish/OEM接口兼容性问题,建议关注后续SP1补丁版本更新。

:white_check_mark: 最终建议操作顺序:

  1. 使用 首页恢复出厂设置 快速恢复BMC;
  2. 若需使用SP进行自动化恢复,请确保SP可独立启动,并修复Redfish通信问题;
  3. 保留日志文件(可通过BMC一键收集)用于进一步分析SP与BMC交互细节。