Raid磁盘阵列真的是100%的安全吗?突袭有哪些常见的故障呢?

  

<强>问:
数据恢复既然是数据灾难的一种补救措施,那设计安全的RAID磁盘阵列系统也会出现数据灾难吗?
<强>答:
突袭设计的初衷大约有3个原因:解决容量问题,解决IO性能问题与解决存储安全(冗余)问题。从数据恢复的角度看,我们暂不讨论容量与IO性能方面,仅讨论存储安全。

突袭中可以起到存储安全的组织方案常见的为RAID1, RAID5及其变形,基本设计思路是相似的,都是能过一定的算法,用多块硬盘之间的算法维护来保证当部分数据异常时,可通过特定算法还原出来。拿RAID5的设计方式来看,举个简单的例子说明一下,如果我们要记录两个数字,那么可以通过再多记录他们的和来达到记录的冗余性,就像我们记录3和5,同时再记录一下8(为3 + 5的和),那么如果我们不记得到底是几和5只需要用8 - 5就可以算出这个丢失的数字了,其余情况依此。在磁盘阵列里同样是以某种算法来达到保全数据的目的,当一组3块盘的RAID5正常工作时,所有写入RAID里的数据都正确地写到特定磁盘地址,同时再生成一个特定的计算值(通常称为校验和),这个时候的读写效率是最好的。但当其中一块盘出现故障时,存储在这块故障盘上的原有数据就要通过其他硬盘的数据恢复出来,当然这个过程中控制器(硬突袭为RAID卡,软RAID实际上是个驱动)会负责这个工作,同时为了保证不宕机,控制器也会保证存储的正常化,不会让操作系统认为硬盘系统出了问题。

  

从上面的原理来看,RAID提供的存储安全还有一些不太容易避免的漏洞,虽然可能性不大,但存储在行动上的数据价值可能无法评估,出丝毫的故障都可能会导致一场大的信息灾难。
 RAID磁盘阵列真的是100%的安全吗?突袭有哪些常见的故障?”> <br/>转入正题,RAID通常出现的故障可能性有:<br/> 1,处于降级状态时,未及时重建:RAID是通过多出来的部分存储空间来提供算法上的数据安全冗余的,但当某些盘出现故障下线后,袭击便不能再提供这种存储冗余,如果管理员不及时更换盘,重建整个卷,这时候其余工作中的硬盘再出现故障,RAID卷便无法正常工作了。这类故障在RAID数据恢复中比例相当高,服务器维护管理跟不上很容易发生。</p>
  <p> <br/> 2,控制器故障:控制器是连接物理硬盘与操作系统之间的数据存储纽带,同时因突袭的组成方式并非自然约定(特定),硬盘容量的大小,硬盘数量的多少,RAID组成级别,逻辑磁盘分割方式,块大小,校验方式等因素组合成不同的RAID信息(RAID元数据),这些突袭信息有时候会写在阵列卡上,有时候会写在硬盘上,还有的时候两者皆有。如果控制器出现故障,很多情况下更换新的控制器并不能突袭信息还原,中低端的控制器出于成本考虑,这方面漏洞更会大得多。同时即使记得住原先的RAID结构,再次重建也都是错误的数据恢复方法(见相关文章)。</p>
  <p> <br/> 3,固件算法缺陷:RAID的创建,重建,降级,保护等工作在控制器的实现上是非常复杂的算法,当然这里面的复杂更多地是提供尽可能万无一失的无漏洞算法,尽管厂商不会轻易承认控制器的错误,但毫无疑问,这些问题在任何一款控制器上都无法避免。因为固件算法上错误,可能会产生很多无法解释的故障。比如在部分服务器数据恢复案例中,有一些早期生产的戴尔2950服务器,会有袭击一块盘离线后故障盘与报警灯不一致的情况,导致客户在更换故障盘重建时拔错盘,整个RAID组崩溃。</p>
  <p> <br/> 4, IO通道受阻导致突袭掉盘:RAID控制器在设计时为了数据的绝对安全,会尽可能避免写数据到不稳定的存储介质上,这样,当控制器与物理硬盘进行IO时,如果时间超过某个阀值,或不满足校验关系,便会认为对应的存储设备已不具备持续工作的能力,但会让其强制下的线,通知管理员尽快解决问题。这种设计的初衷很好,同时也是正确的设计方式,但对于如物理链接线路松动,或因硬盘机械工作时反应超时(可能硬盘还是完好的)等随机原因对控制器而言无法分辨设备是否具备和之前一样的稳定状态,所以很不在意的某些小环节,便会导致RAID卷出现故障,此类故障的发生概率极大,而且无法避免。这也是大多数突袭出现故障后,硬盘并未有故障的原因,我们好多数据恢复服务的客户会因此质疑服务器厂商,实际上是有苦难言的,一定程度上,越是设计安全的控制器,越会发生此类现象。</p>
  <p> <br/> 5,控制器的稳定性:RAID的控制器在网上状态下(无离线盘)工作是最稳定的,相对而言,当部分硬盘损坏(可能是逻辑故障)后离线,控制器便会工作在一个比较吃力的状态,这也是好多中低端的RAID控制器在一块盘离线后读写性能急速下降的原因。控制器的负载太重便会极大地增加数据吞吐时出现IO滞留的可能性,从而导致如上面第4点提及的RAID离线。一个不具备高速硬件处理芯片,不具备高速缓冲的控制器发生这类故障的概率要高得多。为了避免出现故障后数据恢复带来的业务停顿与额外开销,还是尽量不要选择这类磁盘阵列控制器。<h2 class=Raid磁盘阵列真的是100%的安全吗?突袭有哪些常见的故障呢?