一文了解如何系统验证分布式存储可靠性
作者:深耕行业的 SmartX 金融团队
背景
分布式存储以及衍生超融合架构经过多年的发展,客户部署规模已从十几节点扩大到几百节点,支撑的业务从边缘走向一般生产,甚至关键生产业务,例如数据库场景。分布式架构的可靠性和容错能力,以及各种极端故障场景的影响范围和恢复时长,是客户主要关注的 SLA 指标。基于此,本文剖析分布式架构原理,定义各种故障场景及标准验证方法,希望在发现问题、优化产品的同时,为用户提供横向对比不同产品可靠性的参考依据。
本文仅针对分布式架构异常场景中的 I/O 连续性和副本安全问题进行展开,并重点探索故障模拟以及监控的可行技术手段。
分布式架构故障分类:
磁盘故障
HBA/RAID 卡故障
网络故障
系统/节点故障
服务组件异常
磁盘故障
为了理解不同磁盘故障对集群造成的影响,首先需要了解分布式存储常见分区结构特征。
启动分区(Boot):为了提高 OS 本身对单块磁盘的异常容忍能力,通常需要部署在 RAID1 分区之上,采用硬件 RAID,无需独立引导磁盘;但当使用软件 RAID,则需要一个“引导分区先引导 RAID,再加载 OS”的过程,此时 Boot 分区需要独立磁盘或 RAID1 保护。
系统分区(OS):部署在 2 块磁盘上(硬件 RAID/软件 RAID)。
元数据分区(MetaData):承载集群关键元数据。
缓存分区(Cache):提高 I/O 读写性能。
日志分区(Journal):用于写操作异常后的数据恢复与校验。
持久化存储分区(Partition):大容量存储空间,数据最终都会落在此分区。
不同产品设计时,会基于自身需求和产品特点,将不同的分区和磁盘组合使用,当磁盘故障时,造成的影响也会因架构设计的不同,有一定的区别性。例如:
磁盘组合设计一
Boot + OS + MetaData(RAID 保护)
Cache + Journal(数据副本保护)
Partition(数据副本保护)
磁盘组合设计二
Boot(RAID 保护)
OS + MetaData(RAID 保护)/Cache + Journal(数据副本保护)
Partition(数据副本保护)
……
磁盘 - 不可访问
磁盘 - 访问错误
磁盘 - I/O 超时/无响应
超时指的是发往磁盘 I/O 没有在规定的时间内返回,原因可能包含多种,如磁盘/HBA 固件版本异常、内核模块异常等。
磁盘 - 延迟较高
延迟较高指的是磁盘处于慢速状态,I/O 没有达到超时异常,但是响应速度明显低于预期,通常触发条件为磁盘异常或者 HBA 固件异常。在异常情况下涉及到慢速设备的 I/O 均会受到影响。
磁盘 - 性能下降
SSD 随着使用时间的增长有可能会出现峰值性能下降的情况,作为存储系统自身,可能比较难在不影响业务的情况下感知到这一现象。通常此类场景应该会伴随着延迟升高或者寿命告警等 S.M.A.R.T. 参数变化。
磁盘 - 寿命不足
此类异常仅作为警示指标,常见如下:
S.M.A.R.T. 工具返回的磁盘总体健康状态。
剩余寿命百分比(仅 SSD 具备此指标,HDD 不具备)。
扇区的重定向次数(在部分扇区/颗粒损坏时,固件可以将部分区域屏蔽,引导写入未统计在标称容量中的预留区域)。
HBA/RAID 故障
NVMe 通过 PCIe 通道与 CPU 直连,故不存在 HBA/RAID 卡故障。而本地存储 SSD 和 HDD 一般都挂载在同一块 HBA/RAID 上,HBA/RAID 故障可能会同时影响多块磁盘设备。HBA/RAID 故障可能会导致部分或者全部磁盘变为异常状态,异常状态包括:
I/O 错误
I/O 无响应
I/O 延迟高
无法挂载磁盘
……
并可能发生多个磁盘出现上述故障叠加。影响情况与磁盘异常中多个磁盘同时异常一致。
部分遇到的 HBA/RAID 故障无法通过重启系统或者服务自动修复,需要人工介入升级固件或者整体替换 HBA/RAID 卡修复。
网络故障
网络中断
网络延迟
网络风暴
如果网络中出现持续性网络风暴(通常会由核心交换机异常或是配置了错误的全局网络策略引发),丢包率大量上升,间歇性导致数据链路断开,延迟大幅度增加且不稳定。并且可能会出现集群元数据服务正常,但是节点间数据链路处于异常的状态(理论上是小概率事件,但可能存在)。可能会出现大量的剔除副本请求,导致大量副本进入降级状态,触发数据恢复(也会受网络影响),有数据安全风险。
异常
系统与节点异常
服务异常
以上就是我们整理的分布式存储故障和异常类型,以及通过故障模拟检验架构可靠性的完整方法体系。后续,SmartX 将结合客户案例,分享如何在实践中检验分布式存储架构可靠性,敬请期待!
点击阅读原文,或扫描下方二维码,下载《SmartX 分布式块存储 ZBS 自主研发之旅》,深入了解 ZBS 如何利用架构优化、数据同步协议 RDMA、接入协议 NVMe-oF 等技术提升性能与可靠性。
推荐阅读: