系统运行48小时后web界面硬盘预估寿命显示–问题分析
更新时间: 2026/05/28
在Gitcode上查看源码

问题背景

  • 单板类型:NA
  • 软件版本:openUBMC 25.09。
  • 涉及功能:硬盘信息,存储管理。
  • 触发条件:系统运行48小时后web界面硬盘预估寿命显示–。
  • 业务表现:预期web界面硬盘预估寿命正常显示;实际系统运行48小时后web界面硬盘预估寿命显示–。

问题复现步骤

  1. 环境配置硬盘。
  2. 系统上电后运行48小时
  3. 查看BMC存储管理界面硬盘信息。

关键日志信息

查看app.log可以看到如下日志:

text
2026-03-10 07:12:08.151949 storage NOTICE: rpc_service_subhealth.lua(252): set drive:Disk3 estimatedremaininglifespan:4294967294
2026-03-10 07:12:08.166686 metric_analyzer NOTICE: diagnose.lua(969): Disk3 set EstimatedRemainingLifespan 4294967294 successfully
......
2026-03-10 07:42:08.359838 storage NOTICE: rpc_service_subhealth.lua(191): start get drives estimatedlifespan diag info
.......
2026-03-10 10:12:09.982869 metric_analyzer NOTICE: lifespan_diagnose.lua(82): Disk3 calculate estimated lifespan firstly
2026-03-10 10:12:10.321275 storage NOTICE: rpc_service_subhealth.lua(252): set drive:Disk3 estimatedremaininglifespan:4294967294
2026-03-10 10:12:10.325611 metric_analyzer NOTICE: diagnose.lua(969): Disk3 set EstimatedRemainingLifespan 4294967294 successfully

定位过程

  1. 显示–表示支持获取预估寿命,但48h后仍未呈现数值。
  2. 48小时期间BMC没有复位过。
  3. 这个属性由RAS设置,storage返回数据给RAS。
  4. 查看日志发现metric_analyzer 通过rpc接口给在位硬盘预估寿命默认赋初值4294967294也就是0XFFFFFFFE,代表预估寿命还在计算中。
  5. EstimatedRemainingLifespan 为0XFFFFFFFE时,表示支持计算该盘的动态预估寿命,但还没达到计算条件。

问题原因

预估寿命信息没有变化为具体值,因为计算的关键指标“剩余磨损率”变化次数不满足计算要求。当上电时间小于1个月(720h)时判定为"新盘",新盘可24h内显示具体值;否则判定为"老盘",需要剩余磨损率变化2次。

解决方案

该现象是正常的,属于非问题。

计算预估寿命依赖剩余磨损率,必须在剩余磨损率发生变化后触发计算。

  • 48小时,是因为24小时采集一次数据,只有采集到三组数据,才会显示到有效的计算结果值。
  • 三组数据,是因为每个盘首次采集到认为无效,第二组数据和第三组数据作为有效值进行计算。

所以,48小时是首次支持后最快显示预估值的时间点,而不是一定会显示预估值的时间点。