首页/系统/服务器硬件与 RAID 速查/SMART 趋势监控的落地做法
硬盘故障与更换68 条

SMART 趋势监控的落地做法

单点 SMART 读数的价值有限:把关键属性按日采样入库、画趋势线、设合理阈值,才能在故障前给出可行动的信号。

为什么要看趋势

单次 SMART 读数的价值有限:某个计数不为零并不代表盘马上要坏,读数正常也不能说明它健康。真正有用的是趋势——把关键属性按天采样入库,和前一天比较增量,再用合理的阈值触发告警。这样才能在盘彻底失效之前给出可以行动的信号,把故障处理变成一次有准备的计划性更换。

基本信息

采样对象属性 5、187、188、197、198、199 以及温度
采样频率按日采集,重要业务可提高到每小时
阈值策略增量告警优先于绝对值告警
唯一键按盘序列号而不是设备名建立索引
权限要求root

落地要点

  • 采样对象:重分配计数、待映射扇区、CRC 错误与温度
  • 阈值策略:增量告警优先于绝对值告警
  • 告警闭环:值班确认、处置、记录、复盘四步都要有人负责
  • 唯一键用序列号,换盘后指标不会被错误拼接
  • 趋势图按盘位分组,便于识别局部散热问题
  • 与阵列卡事件日志对齐时间线,判断控制器侧是否同步异常

采样与入库思路

采样与入库思路
# 每日采集关键属性到文本或时序库
smartctl -A /dev/sdb | awk "/Reallocated_Sector_Ct|Current_Pending_Sector|UDMA_CRC/ {print}"
# 与前一日对比,增量非零即进入观察列表
smartctl -A /dev/sdb | grep -i temperature
storcli /c0/eall/sall show all | grep -i -E "SN|Model|Firmware"   # 采集时带上身份字段

属性速查

属性含义告警思路
5 重分配扇区已用备用扇区顶替的坏块增量非零即关注
187 报告不可修正无法纠正的错误出现即进入观察名单
197 待映射扇区等待重映射的坏块增长说明劣化加速
199 CRC 错误链路层校验失败指向线缆与背板问题
温度盘体工作温度按盘位比较,识别积热
监控系统里用盘序列号做唯一键:换盘之后序列号变化,新旧盘的指标不会被错误地拼接到同一条曲线上。
把趋势数据和阵列卡事件日志放在同一条时间线上看:盘侧计数与控制器侧事件对得上,才能说明问题确实出在盘上。

易错点

  • 按设备名做主键:重启或换盘后曲线串台,历史结论全部作废
  • 告警只发不处理:趋势监控失去意义,等于没有做
  • 只看绝对值不看增量:历史计数不会归零,绝对值告警会持续误报
  • 采样频率过低:快速劣化的盘可能在两次采样之间就已经失效

数据来源与参考

  • 监控系统实践(Prometheus 生态通用)
  • smartmontools 手册
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌