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