不一定,巡检报告全绿,并不代表磁盘没有风险。很多运维人员默认"盘没报警 = 盘没事",但磁盘故障很少是突然发生的——它是一个渐进过程:坏道从几个 sector 开始蔓延,重试次数逐渐增多,SSD 寿命逐步下降。等巡检能"看到"的时候,往往已经是故障了。
磁盘不会突然坏掉——坏之前,它早就告诉你了。今天讲讲如何在磁盘发生故障之前发现它。
01 / SMART HEALTH SIGNALS
磁盘坏之前,真的有信号吗?
有。信号记录在磁盘自身的健康数据(SMART)中。
最值得关注的两个指标:
|
指标 |
含义 |
危险判定 |
|---|---|---|
|
Reallocated_Sector_Ct(重映射扇区数) |
已经坏掉、被硬盘用备用扇区替换掉的扇区数量 |
大于 0 即说明已出现过坏扇区;持续增长表示状态恶化 |
|
Current_Pending_Sector(待映射扇区数) |
正在尝试修复的坏扇区 |
大于 0 需要警惕;修复失败会转为重映射扇区 |
手动查看(以 /dev/sdc 为例):通过 smartctl 查看 SMART 健康状态与明细指标,返回值非 0,即表示磁盘自身已存在异常。
典型案例 某客户环境 6 月发现一块盘有坏道,但一直未移除。坏道持续蔓延,最终在业务持续写入时把数据写进了即将损坏的区域——三副本集群里这块盘对应的数据恰好没有在其他副本上,结果只能丢弃数据、将 OSD 离线来恢复集群。从"有几个坏道"到"丢数据",中间隔着几个月的窗口期,足够完成处置。
另一个需要特别注意的反面操作:SMART 信息出现问题时,不应通过修改数据库把它"瞒"过去。数据不会说谎,掩盖问题只会延误处理时机、加剧故障风险。
02 / TREND OVER ABSOLUTE
SMART 指标一大堆,单次数值怎么判断?
单次数值容易误判,趋势比绝对值重要。
这也是亚健康检测引入"观察期"机制的原因:
01 坏道类指标(重映射、待映射扇区):超阈值直接定级——这类是实际的物理损伤,无需等待
02 计数型指标:首次检出先进观察期,连续两次检测都异常才升级为警告——避免把偶发抖动当成必然故障
判断标准如下:
|
磁盘类型 |
盯什么 |
预警线 |
|---|---|---|
|
机械盘(HDD) |
重映射扇区、待映射扇区 |
> 0 且持续增长 |
|
SSD |
剩余寿命 |
≤ 20% 警告,≤ 10% 严重,应纳入备盘计划 |
|
NVMe |
磨损度 / 介质错误 / Critical Warning |
三个字段任一异常即关注 |
SSD 和 NVMe 不能只看"健康"一个结论。剩余寿命 20% 时看似尚可,但如果写入量较大,降至 10% 可能只需要几周时间。
另外,RAID 卡环境下系统直连命令看不到成员盘 SMART,需要用 storcli64 /c0/eall/sall show 这类阵列卡工具查询——很多客户认为"做了 RAID 就不用管单盘",实际恰恰相反:RAID 只是提供容错保障,RAID 组里的每一块盘同样需要关注。
03 / SAFE DISK REPLACEMENT
发现亚健康的盘,直接拔了换?
不建议直接拔盘。集群存储环境下,带数据的盘直接下电,轻则触发不必要的数据恢复和迁移,重则副本数跌破安全线。
规范操作分为四步:
01 先看全局 确认集群健康、副本冗余充足,暂时关掉全局高可用开关,避免换盘过程触发意外迁移
02 安全移除 把这块盘对应的 OSD 从存储池正常移除,让数据先在其他副本上补齐
03 清理记录 数据盘管理里删掉已移除的磁盘记录,再物理更换
04 恢复验证 新盘上线后确认集群恢复健康、数据完成均衡,再把之前关掉的开关打开
另一个容易被忽视的信号:换盘记录本身就是风险信号。有客户从 4 月起连续多块数据盘故障换盘(内存、背板、缓存盘都换过),最后在 6 月发生宕机——如果是同一节点反复坏盘,问题可能不在盘上,而在背板、线缆或电源,此时应排查"为什么同一位置反复坏盘",而不是继续逐块更换。
04 / SELF-CHECK CHECKLIST
自查清单
01 清点 SMART 基线 所有主机和存储节点的盘跑一遍 smartctl,把重映射/待映射扇区大于 0 的盘列出来,形成观察名单
02 给观察名单定复查节奏 坏道类指标至少每两周采集一次,看趋势不看单点
03 SSD/NVMe 盘看寿命 剩余寿命低于 20% 的进备盘计划,低于 10% 的立即安排更换
04 回顾过去半年的换盘记录 同一节点换过 2 块以上盘的,排查背板和线缆
05 用工具替代手工 每日轻量采集(分钟级跑完)、按磁盘序列号自动串联历史快照、坏道指标自动定级——这些交给巡检工具做,人只处理"被点名"的盘
05 / VENDOR ESCALATION
什么情况必须联系厂商?
单盘坏道指标持续增长 重映射或待映射扇区每周都在上涨,应尽快进入更换流程
OSD 出现 I/O error 或 PG inconsistent 说明坏道已经影响数据;自行 repair 失败过的更需要上报——有案例 repair 触发存储池延迟突增、业务中断
集群内多块盘同时慢 IO 多盘同时异常往往不是巧合,可能是固件、背板或配置问题
缓存盘故障 缓存盘直接关系到写路径和性能,按紧急处理
同一节点反复坏盘 大概率不是盘的问题,需要厂商排查硬件环境
巡检反映的是当前状态,SMART 趋势预示的是潜在故障。
把磁盘亚健康检测纳入月度例行工作,坏道开始蔓延的第一天就能发现,而不是丢数据的那天才知道。
磁盘亚健康检测(坏道指标自动定级、SSD 寿命分级、每日轻量采集、按序列号串联历史趋势)现已内置在巡检工具中:让工具盯趋势,人只处理"被点名"的盘。
注:本文数据来自 ZStack 平台真实工单与技术支持案例库。

144

被折叠的 条评论
为什么被折叠?



