故障存储:
64TB存储服务器/文件系统:ext4
故障现象:
该存储服务器使用RAID5阵列来实现数据冗余,是一台较老旧的存储设备,后期由于三块盘的离线导致整个阵列崩溃。存储服务器主要保存流媒体文件,数据量大约在60TB左右。恢复要求:最大化恢复要求多媒体文件可以正常解码播放。
故障分析:
在开始分析前先对RAID5做个简单的介绍:
RAID5
应该是应该是目前最常见的 RAID 等级,它的原理与
RAID4 相似,区别在于校验数据分布在阵列中的所有磁盘上,而没有采用专门的校验磁盘,对于数据和校验数据,它们的写操作可以同时发生在完全不同的磁盘上。因此,RAID5 不存在 RAID4 中的并发写操作时的校验盘性能瓶颈问题。另外,RAID5 还具备很好的扩展性。
声明一下以上信息是AI说的,和本人无关。总结来看RAID5就是通过把校验块P动态分布在每个条带中从而达到安全冗余,其允许离线的磁盘数量为1,从图1中可以看到,在缺少1块盘的情况下,RAID管理程序可以通过校验块和数据块异或得到缺失的数据块。
图1:RAID5的基本原理图(P为校验块)
本例中由于缺失三盘导致RAID5阵列崩溃,其中两块盘损坏严重无恢复可能,有一块盘则通过更换磁头成功恢复,最后的情况就是整个阵列缺失了两块盘。而RAID5最高要求是允许一块盘离线,所以最终阵列缺少一块磁盘。
通过分析阵列信息并找一块空盘补齐阵列,根据RAID5的原理图得知在少一块盘的情况下,每个条带都会出现缺失,这就导致数据会出现异常。所以获取完整数据是不切实际的,最后经过扫描恢复得到了目录信息。当然恢复后的多媒体文件基本上无法播放,这个和客户的要求大相径庭,所以需要进入下一步修复的环节。
故障处理:
经过沟通发现这是一个相对比较复杂的场景,存在多路视频、麦克风等采集设备,这些原始数字信息采集后先交付音频处理设备进行画面和声音编码,然后以RTP网络推流的形式传送到存储服务器进行保存(类似于图2),最终的多媒体文件使用mp4结构进行“封装”打包。


