RAID集中最大磁盘数量的准则?


13

在使用条带化的任何RAID级别中,增加物理磁盘的数量通常可以提高性能,但同时也增加了集合中任何一个磁盘发生故障的机会。我有一个主意,即在给定的RAID集中我不应该使用超过6-8个磁盘,但这更多的是传承知识,而不是经验中的硬事实。谁能给我一个好的规则,并给出背后的原因以获取一组磁盘中的最大磁盘数量?

Answers:


10

RAID系统中建议的最大磁盘数量差异很大。这取决于多种因素:

  • 磁盘技术 SATA可以容忍比SAS / FC更小的阵列,但是这种情况正在改变。
  • RAID控制器限制 RAID控制器本身可能具有基本最大值。如果基于SCSI且每个可见磁盘均为LUN,则7/14规则适用。如果基于FibreChannel,则最多可以包含120个或更多可见磁盘。
  • RAID控制器处理器如果使用任何类型的奇偶校验RAID,则RAID卡中的CPU将成为限制数据写入速度的限制。该卡将有一个基本的最大值。当驱动器出现RAID5 / 6 LUN故障时,您会看到它,因为性能下降将影响与RAID卡关联的所有LUN。
  • 总线带宽 U320 SCSI和FibreChannel都有其自身的限制。对于SCSI,如果控制器支持,则将RAID成员保留在不同通道上可以增强并行性并提高性能。

对于基于SATA的RAID,如果使用RAID5,则您不希望拥有超过6.5TB的原始磁盘。过去了,RAID6是一个更好的主意。这是由于不可恢复的读取错误率。如果阵列的大小太大,则丢失后在阵列重建期间发生不可恢复的读取错误的可能性会越来越高。如果发生这种情况,那就非常糟糕。使用RAID6可以大大减少这种情况。但是,SATA驱动器的质量最近一直在提高,因此这可能不再适用。

阵列中的主轴数量并没有让我真正担心,因为在U320上使用500GB驱动器达到6.5TB很简单。如果这样做,最好将一半驱动器放在一个通道上,将一半驱动器放在另一个通道上,以减少总线侧的I / O争用。SATA-2的速度如此之快,即使只有两个以最大速率传输的磁盘也会使总线/通道饱和。

SAS磁盘的MTBF速率低于SATA(同样,这种情况正在开始改变),因此那里的规则不太牢固。

有些FC阵列在内部使用SATA驱动器。那里的RAID控制器非常复杂,这混淆了经验法则。例如,HP EVA阵列阵列将磁盘分组为LUN所在的“磁盘组”。控制器有意将LUN的块放置在非顺序位置,并对幕后的块执行负载均衡,以最大程度地减少热点。长话大说,它们在多通道I / O,LUN中涉及的心轴以及处理冗余方面给您带来了很多繁重的负担。

总结起来,磁盘的故障率不会驱动RAID组中有多少个主轴的规则,而性能却不会。在大多数情况下。


3

如果您正在寻找性能,那么了解用于将驱动器连接到阵列的互连很重要。对于SATA或IDE,您将分别查看每个通道1或2(假设您使用的是具有独立通道的控制器)。对于SCSI,这在很大程度上取决于总线拓扑。早期的SCSI的设备限制为每个链(也就是每个控制器)7个设备ID,其中一个必须是控制器本身,因此每个SCSI链将有6个设备。较新的SCSI技术使该数字几乎翻了一番,因此您将看到12+。关键是所有驱动器的总吞吐量不能超过互连模块的容量,否则,当驱动器达到最佳性能时,它们将“空转”。

请记住,驱动器并不是这里唯一的薄弱环节。每个没有冗余的互连都会导致单个故障点。 如果您不相信我,请在单链SCSI控制器上设置RAID 5阵列,然后将控制器短路。 您还能获得数据吗? 是的,这就是我的想法。

今天,情况已经发生了一点变化。驱动器尚未推进在性能方面很多,但是看到的进步是足够显着的,因此除非您使用“驱动器场”,否则性能往往不是问题,在这种情况下,您所谈论的是完全不同的基础架构并且这个答案/对话是没有意义的。您可能更担心的是数据冗余。由于多种因素,RAID 5处于鼎盛时期,但这些因素已经改变。我想您会发现RAID 10可能更符合您的喜好,因为它可以提供更多的冗余来防止驱动器故障,同时提高读取性能。写入性能会稍有下降,但是可以通过增加活动通道来缓解。我每天都会采用4盘RAID 10而不是5盘RAID 5的设置,因为RAID 10设置可以承受(特定情况下)两盘驱动器的故障,而RAID 5阵列只会滑倒而死两驱动器故障。除了提供稍微更好的冗余外,您还可以缓解“控制器作为单点故障” 将镜像分为两个相等的部分,每个控制器仅处理条带。如果控制器发生故障,您的条带不会丢失,只会丢失镜像效果。

当然,这对于您的情况也是完全错误的。 您将需要查看速度,容量和冗余之间的权衡。 就像古老的工程玩笑“更快,更便宜,选择任意两个”一样,您会发现您可以使用适合自己的配置,即使它不是最佳选择。


2

RAID 5我会说每个阵列0个驱动器。请参阅http://baarf.com/或其他类似来源的文章。

RAID 6我会说5个驱动器+每个阵列的每个热备用1个。减少任何数量,您最好还是进行RAID 10,增加风险因素,应该使用RAID 10。

RAID 10随心所欲。


1

我使用7作为“魔术”最大数。对我而言,这是在冗余空间损失(在这种情况下,约为14%)与重建时间(即使LUN在重建期间可用)或增加大小以及MTBF之间的良好折衷。

显然,当使用SAN 14磁盘盒时,这对我非常有用。我们的两个客户有10个磁盘盒,魔术数7减少到了5。

总的来说,5-7对我有用。抱歉,我也没有任何科学数据,只是从2001年开始使用RAID系统。


因此,您可以放心地说“将机柜切成两半”,这听起来像是。我有一个12磁盘盒,我有10个磁盘和2个热备用RAID 10阵列,但是幸运的是,我还没有重建它。
马特·西蒙斯

1

有效的最大值是RAID控制器带宽。

假设磁盘读取速度最大为70MB /秒。在峰值负载下,您不能足够快地铲除数据。对于繁忙的文件服务器(RAID 5)或数据库服务器(RAID 10),您可以快速实现。

SATA-2是300MB / S接口规格,SCSI Ultra 320会更加一致。您正在使用6到10个磁盘,因为您不会经常达到峰​​值。


0

RAID中的磁盘限制过去由SCSI BUS上的设备数确定。一条总线上最多可以连接8或16个设备,并且控制器被视为一个设备-因此它是7或15个磁盘。

因此,很多RAID是7个磁盘(一个是热备用),这意味着还剩6个磁盘-或14个磁盘有1个热备用。

因此,RAID组中磁盘的最大问题可能是您需要多少IOPS。

例如,一个10k RPM SCSI磁盘可能运行约200 IOPS-如果您在RAID 5中有7个磁盘-您将失去1个磁盘进行奇偶校验,但随后有6个磁盘用于读/写,理论上最大为1200 IOPS-如果您需要更多IOPS-添加更多磁盘(每个磁盘200 IOPS)。

更快的磁盘15k RPM SAS可能会达到250 IOPS,等等。

然后总是有SSD(每个磁盘30,000 IOPS)并且它们可以突袭(尽管确实很昂贵)。

而且我认为SAS对于设备数量(例如16,000个驱动器)具有惊人的最高价值


0

使用RAID6和SATA,我已经在11个磁盘上取得了不错的成功……还有一个热备份(某些故障控制器将需要两个热备份来重建RAID6)。这很方便,因为许多JBOD像HP MSA60一样以12个磁盘为一组。


0

除非您在链条(raid卡,链接)的较窄点达到总线的最大速度,否则它才有意义。当您在PCI总线上添加许多1GbE NIC时,这没有任何意义。

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.