规划网络时,必须考虑所使用的 RAID 配置的类型。 系统支持非分布式阵列或分布式阵列配置。
一个非分布式阵列可包含 2 - 16 个驱动器;可使用多个阵列来为池创建容量。 为实现冗余,在其他任何驱动器发生故障时,都将分配备用驱动器(“热备用”驱动器)以执行读或写操作。 在其他时间内,备用驱动器处于空闲状态,不会处理系统的请求。 当阵列中的成员驱动器发生故障时,数据只能以备用驱动器写入数据的速度恢复到备用驱动器。 由于此瓶颈问题,所以重建数据可能会花费几个小时,这是因为系统要尝试均衡主机和重建工作负载。 因此,其余成员驱动器上的负载可能会明显增加。 在整个时间内,重建阵列的 I/O 等待时间会受到影响。 由于卷数据会条带分割到多个 MDisk 上,所以在重建驱动器期间,所有卷都会受到影响。
分布式阵列配置可创建大型内部 MDisk。 这些阵列(可包含 4 - 128 个驱动器)还包含用于在驱动器发生故障后保持冗余的重建区域。 如果系统上提供的驱动器不足(例如,在少于四个闪存驱动器的配置中),那么无法配置分布式阵列。 分布式 RAID 阵列可解决非分布式阵列配置中的重建瓶颈问题,这是因为重建区域分布在阵列中的所有驱动器中。 重建写工作负载分布在所有驱动器中,而不仅仅是分布在单个备用驱动器中,因此,阵列上的重建速度更快。 分布式阵列中不需要在发生故障前处于空闲状态的独立驱动器。 备用容量分布在特定重建区域(分布在所有成员驱动器中)中,而不是将一个或多个驱动器分配为备用驱动器。 可以更快地将数据复制到重建区域,并可以更迅速地恢复冗余。 此外,随着重建工作的推进,由于要将所有可用驱动器用于每个卷扩展数据块,因此池的性能更加稳定。 在更换发生故障的驱动器后,会将数据从分布式备用容量中复制回驱动器。 与“热备用”驱动器不同,将在驱动器中未用作重建区域的其他部分上处理读/写请求。 重建区域的数量取决于阵列的宽度。 重建区域的大小将决定在无降级风险的前提下分布式阵列可以恢复故障驱动器的次数。 例如,使用 RAID 6 驱动器的分布式阵列可以处理两个并发故障。 在重建发生故障的驱动器后,阵列可再容许两个驱动器故障。 如果所有重建区域都用于恢复数据,那么阵列会在下一次驱动器发生故障时降级。 在完成阵列配置之前,请验证您的型号是否支持分布式阵列。
分布式 RAID 的概念是指将宽度为 W 的阵列分布在一组 X 个驱动器之间。 例如,您可能具有跨一组 40 个驱动器分布的 2+P RAID-5 阵列。 阵列类型和宽度定义冗余的级别。 在先前示例中,有 33% 的容量开销用于奇偶性校验。 如果需要重建阵列步幅,那么必须读取两个组件条来为第三个组件重建数据。 集合大小定义分布式阵列所使用的驱动器数量。 显然,要求性能和可用容量根据集合中的驱动器数量进行扩展。 分布式阵列的另一个关键特性是,集合包括也分布于一组驱动器之间的备用条带,而不是具有热备件。 数据和备件照此分布,以致于如果集合中的一个驱动器发生故障,那么可通过以远远大于单个组件的速率将数据重建到备用条带上来复原冗余。
分布式阵列用于创建大型内部受管磁盘。 它们可以管理 4 到 128 个驱动器,并且包含各自的重建区域,以在驱动器发生故障时完成错误恢复。 因此,重建时间会显著缩短,从而减少卷因恢复冗余产生额外负载而造成的暴露。 由于这些受管磁盘的容量可能非常大,当其配置在系统中时,整体限制会发生更改,从而使其能够虚拟化。 对于每个分布式阵列,会保留 16 个 MDisk 的扩展数据块分配空间,从而从整体池 4096 中移除其他 15 个 MDisk 标识。 分布式阵列还旨在提供统一的性能级别。 如果驱动器类似(例如,驱动器具有相同属性,但是容量更大),那么分布式阵列可以包含多个驱动器种类,以实现此性能。 分布式阵列中的所有驱动器都必须来自同一 I/O 组,以维护简单配置模型。
分布式阵列的一个缺点是,阵列冗余包含数量更多的组件。 因此,平均故障间隔时间 (MTBF) 会缩短。 更快的重建时间可改善 MTBF;但在 MTBF 变为不可接受之前,阵列的分布广泛程度仍有一定限制。