我应该使用“突袭5 +备用”还是“突袭6”?


12

什么是“突袭5 +备用”(摘自用户手册,第4.17.2节,第54页):

RAID5 + Spare:RAID 5 + Spare是一个RAID 5阵列,其中一个磁盘用作备用磁盘,以在磁盘出现故障时立即重建系统(图79)。至少需要四个磁盘。如果一个物理磁盘发生故障,则数据仍然可用,因为它是从奇偶校验块中读取的。来自故障磁盘的数据将重建到热备用磁盘上。更换故障磁盘后,替换磁盘将成为新的热备用磁盘。在单个磁盘发生故障的情况下,不会丢失任何数据,但是,如果在系统可以将数据重建到热备用之前,第二个磁盘发生故障,则阵列中的所有数据都会丢失。


什么是“突袭6”(摘自用户手册,第4.17.2节,第54页):

RAID6:在RAID 6中,数据在所有磁盘上条带化(最少四个),并且每个数据块的两个奇偶校验块(图80中的p和q)写入同一条带中。如果一个物理磁盘发生故障,则可以将发生故障的磁盘中的数据重建到替换磁盘上。此Raid模式最多可支持两个磁盘故障,而不会丢失数据。RAID 6提供了从故障磁盘更快地重建数据的功能。


“突袭5 +备用”和“突袭6”是如此相似……我无法说出区别。

什么时候“突袭5 +备用”是最佳选择?

而“突袭6”何时会成为最佳选择?

手册对5个星级的突袭进行了愚蠢的评估。“突袭5 +备用”仅获得4星,而“突袭6 +”获得5星。如果我盲目地相信手册,我会得出结论,“突袭6”总是更好。“突袭6” 总是更好吗?


1
ServerFault对此进行了很好的讨论。
Brian

1
无论您最终做什么,都只能使用RAID控制器进行袭击,而不能使用主板随附的板载软控制器进行袭击。如果您的主板熄灭,则表示您正在寻求麻烦。
sound2man 2010年

突袭被硬件控制器压低了(我听说针对突袭软件突袭控制器的事情太多了)。
Trevor Boyd Smith,2010年

Answers:


17

简而言之:

  • 如果安全是您的主要考虑因素,那么就选择RAID6,因为它可以使任何两个同时发生故障的驱动器幸免于难。如果某个驱动器在R5 +备件中发生故障,则无法避免出现另一种故障,直到备用驱动器达到最大速度,这对于大型驱动器可能会花费相当长的时间(而且对于断电的驱动器来说这并非闻所未闻) (例如您的空余时间)最终被召唤时无法旋转)。

  • 如果性能为王,请选择5 +备用,因为当阵列未处于降级状态时,写性能会更好-尽管R5和R6之间的性能差异明显小于R5和其他解决方案之间的差异(如果您拥有好的控制器(例如,一次执行部分块写操作的“大部分时间是两次/三次并发奇偶校验计算,然后两次/三次并发写”,而不是“先读后读(-然后读)-然后奇偶校验” -calc-then-write-then-write(-then-write)”,这是一些非常便宜的控制器和软件RAID可能会执行的操作。

编辑:我第一次错过了一个潜在的重要点:

  • 如果需要考虑功耗,那么如果您的控制器一直保持备用驱动器断电直至需要,则R5 + spare将具有额外的优势。

写得最好/简洁。(在每个要点的前两个字中指出明显的优缺点...非常非常好)。
Trevor Boyd Smith

我很想知道,与数据中心/服务器机房等中的其他所有设备相比,单个额外驱动器的耗电何时真的会成为“关注点”
沃伦(Warren)

一台机器中的单个驱动器,可能不是。但是在colo中,您会获得每机架X-amps的费用,并为任何超出部分支付很多费用(或者完全不允许超过部分费用-有时,如果您过了就变黑了),这可能会很明显。“消耗”的功率也是双重打击:它被转换为噪音和热量,最终您需要更多的功率才能将热量带走。对于整个机架或更大的工具包,每个计算单元额外增加驱动器的总消耗很快就构成了一个足够挑剔的会计师可能会注意到的东西。
David Spillett

7

RAID 5 +热备用:

  • 在同等控制器硬件上的性能优于RAID 6
  • 您不能同时丢失2个磁盘。当您丢失磁盘时,会有一个重建时间(使用热备用),在此期间您没有冗余。这次失败的任何事情都会造成彻底的损失(没有将一切都发送给一家好的数据检查公司,而且要付钱,确实是$$$)

RAID 6:

  • 性能比RAID 5差(取决于控制器,范围从非常明显到几乎没有差异)
  • 您可以同时丢失2个磁盘

对于任何RAID 5或6,必须小心使用不是来自同一生产运行的磁盘。可能会发生(我已经看过!),在一次重建失败后,下一个磁盘由于压力增加而发生故障。来自同一运行的磁盘具有完全相同的固件,并且可能具有非常相似的物理属性。

编辑:选择什么

(这还取决于服务器的性能要求和可承受的风险。)

如果服务器的环境非常适合硬件(彩色,气候化等),则可以使用RAID5 +热备用。

如果环境使短时间内有多个磁盘发生故障(振动,潮湿,脏污)的可能性更大,则选择RAID 6。

始终还要有足够的备份和测试恢复。

编辑2:体面的RAID控制器具有scrubbing,可定期验证所有扇区。


+1表示“具有足够的备份和测试恢复”。这是每个人在开始担心RAID级别之前应该拥有的第一件事。
沃伦

3

RAID5使用一个奇偶校验条带。有必要计算Reed Solomon纠错并为RAID6写两个条带,为RAID5写一条。由于RAID10的成本,RAID5用于存储量巨大的密集型数据库应用程序。RAID5成本从磁盘可用性的67%到94%不等,其中RAID10为50%(更高的存储成本)虽然RAID6由于轮转延迟而具有较低的读取延迟,但是由于以下原因,RAID6的写入速度要慢25%至31%纠错的计算和奇偶校验位的附加写入。

使用驱动器的平均故障间隔时间(MTBF),两个驱动器一次接一个或同时发生故障的概率约为(0.1% x 0.1%)*120.001 x 0.001 * 12; 如果您有1000个驱动器在运行,那么平均每年将损失约1.2个驱动器。每隔8.3年,两个驱动器将一次接一个出现故障。现在,由于驱动器故障不是由于重建过程中驱动器上的重负载而导致的泊松分布,因此在此期间更可能发生第二个驱动器的故障,并且该分布更接近于Gamma分布,在经过一定时间后其值会稍高发生故障。

最重要的是,RAID5的性能在写入和DB应用程序方面均优于RAID6-更好。对于诸如Web服务器之类的经常阅读的应用程序,它没有什么区别,您应该使用RAID6。对于大型存储,使用RAID5而不是RAID10的成本优势是巨大的。如果您负担得起开销,则将RAID10用于磁盘密集型应用程序。RAID10将始终表现更好。

错过的最大底线是RAID不是备份,而是通过提供冗余来限制停机时间的一种方法。如果数据很关键,则应备份它(并测试恢复过程)。

如果一个由10个2TB SAS驱动器组成的RAID阵列发生故障,恢复将花费数千美元,并且要花费数周的时间才能恢复。

所有RAID阵列最终都会失败!


1

从数据完整性的角度严格来讲,是的。您可以安全地输给任何两个驱动器,虽然它是一种罕见的发生丢失2一起严重短身体创伤的系统。

财务上不尽如人意。可以在需要时关闭热备用电源,这意味着它不使用电源,也不会造成磨损。

与往常一样,RAID不能代替适当的异地备份计划。


1

你考虑过10吗?如果您有足够的磁盘用于RAID 6,那么您有足够的空间来进行10个卷。在大多数情况下,10既更快又冗余(以某些磁盘空间为代价)。


10只支持4个磁盘。因此RAID 10不是IMO的选择。
Trevor Boyd Smith,2010年

1
@Trevor RAID 10所支持的任何偶数个磁盘> = 4,如果你可以做RAID 6,可以执行RAID 10
乔尔Coehoorn

1

这些答案似乎是错误的,因为它们仅基于理论驱动性能。考虑一下,如果您有一个具有1 GB缓存的RAID控制器,那么从用户或应用程序的角度来看,写操作(通常是在正常负载下-而不是某种大规模的非正常高负载情况下)是立即进行的-它先进入内存,然后“实际”写入发生在驱动器的性能上。

但是,除非最近或习惯上已经加载了相同的数据,否则无法“伪造”(使用高速缓存加速)读取。突袭6的读取效果更好,并且更能容忍(2个驱动器比一个驱动器)。突袭5的写作速度较慢,重建时确实很慢。

因此,尽管RAID 5实际写入速度会很慢,但它会被良好的RAID控制器隐藏-从用户/应用程序的角度来看,写入发生在内存中。但是,raid 5的读取速度比raid 6慢,除非使用数据已加载或算法保留重复读取的记录,否则使用控制器无法改善。在现实生活中-突袭6获胜。

总而言之,突袭5的编写速度较慢,但​​具有良好的控制力,因此可以使突袭5或6的编写与“感知”的编写性能基本相同(有一些例外)。但是,Raid 6的读取速度更快,控制器在现实工作负载中可能无法帮助提高读取性能。现在添加Raid 6可以经历两次失败,而Raid 5 +1只能失败一次,因此很容易选择Raid 6作为更好的选择:别忘了在Raid 5上进行重建也确实很慢。我还了解到,使用了Raid 6驱动器(因此已正确测试),失败的驱动器往往很快就会失败。阵列运行30天以上后,往往会持续数年。热备件未经测试,实际上可能在需要时立即立即失败。


0

这些是案件的事实,并且毫无争议(任何知道他们在说什么的人):

  1. 实际上,RAID5 + hotspare是您可能选择的最糟糕的RAID选择。
  2. 如果您关心数据(例如,依靠它来保持业务发展),则RAID10应该是默认选择。

如果考虑所有可能的RAID选项,则没有可能RAID5 + hotspare是最佳选择,主要是因为如果您具有RAID5 + hotspare,则意味着您有4个驱动器,而有4个驱动器则可以进行RAID6,甚至更好的是,您可以执行RAID10。

使用4个驱动器,您可以获得所有选择(R5 + HS,R6,R10)中相同的可用存储。

如果您的目标是性能,那么RAID10将优于RAID5和RAID6。

如果您的目标是安全,那么无论有没有热备用,RAID6或RAID10都优于RAID5。哪一个更安全则值得商((6比10)。RAID6可以承受2个驱动器故障,但是由于不可恢复的读取错误(URE),RAID6中的单个驱动器故障也有可能杀死整个阵列。

RAID10由于不是基于奇偶校验的,因此与URE并没有相同的问题。如果奇偶校验RAID(R5等)丢失驱动器,然后遇到URE,则会丢失整个阵列。使用RAID1或RAID10,如果驱动器丢失,然后在镜像磁盘上遇到URE,则只会丢失不可读的扇区。

有关为什么RAID5是最糟糕的选择的详细说明,请参见此处。另请参阅此处,以按驱动器数量列出合理的RAID选择列表。请注意,无论哪种情况,RAID5都不是最佳选择(与热备份无关)。


2
我不同意。RAID5有其用途。(例如,当预算紧张且您确实需要磁盘空间时)。而且由于RAID不能代替在一个磁盘出现故障的情况下仍能替代备份,这足以使您度过难关,直到下午5点,此时人们离开办公室,您进行了紧急维护。
Hennes 2013年

“最佳选择”和“您可以负担得起的最佳选择”之间是有区别的。RAID5从来都不是最佳选择。人们来到这里以获得最佳答案,人们应该离开这里,知道RAID5总是比最好的要差。从数学上可以证明,在某些情况下,RAID0比RAID5更可靠。这就是RAID5的可怕程度。在许多情况下,RAID5可能无法达到下午5点。在RAID5方面,理论与现实世界之间存在很大差异。看到这里
user1594322 2013-09-25

我完全不清楚为什么您说RAID10与URE没有相同的问题。使用四驱动器RAID10设置时,如果丢失一个驱动器并在其相应的镜像上遭受URE损坏,则同样会费劲。
克里斯·埃德蒙顿(ChrisInEdmonton),

如果RAID10的驱动器发生故障,然后在正常运行的驱动器上具有URE,则只会丢失不可读的扇区,而不会丢失整个阵列。更新了答案。
user1594322
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.