阵列配置

阵列是用于定义逻辑卷或设备的物理设备(驱动器)的有序配置或组。阵列是由磁盘驱动器组成的一种 MDisk;这些驱动器是阵列的成员。 独立磁盘冗余阵列 (RAID) 是用于配置成员驱动器以创建高可用性和高性能系统的一种方法。

系统支持非分布式阵列配置和分布式阵列配置。 在非分布式阵列中,全部驱动器都定义为“热备用”驱动器。 热备用驱动器处于空闲状态,不会处理系统的 I/O,直至发生驱动器故障。 当成员驱动器发生故障时,系统会自动将发生故障的驱动器更换为热备用驱动器。 然后,系统会再同步阵列以恢复冗余。 但是,分布式阵列中的所有成员驱动器都有一个为驱动器故障保留的重建区域。 当驱动器发生故障时,阵列内的所有驱动器都可以处理 I/O 数据,提供更快速的重建。 RAID 级别提供不同程度的冗余和性能,并且可确定阵列中的成员数量。

如果在系统上启用了加密,那么可创建加密阵列和分布式阵列。 有关更多信息,请参阅配置加密

图 1 显示了系统上阵列组件的关系。
图 1. 阵列对象
此图显示了所有系统对象。

阵列

一个非分布式阵列可包含 2 - 16 个驱动器;可使用多个阵列来为池创建容量。 为实现冗余,将分配热备用驱动器,以便在其他任何驱动器发生故障时执行读或写操作。在其他时间内,备用驱动器处于空闲状态,不会处理系统的请求。 当阵列中的成员驱动器发生故障时,数据只能以备用驱动器写入数据的速度恢复到备用驱动器。 由于此瓶颈,重建数据可能会花费多个小时,因为系统要尝试均衡主机和重建工作负载。因此,其余成员驱动器上的负载可能会明显增加。 在整个时间内,重建阵列的 I/O 等待时间会受到影响。 由于卷数据会条带分割到多个 MDisk 上,所以在重建驱动器期间,所有卷都会受到影响。

分布式阵列

分布式阵列配置可创建大型内部 MDisk。 这些阵列(可包含 4 - 128 个驱动器)还包含用于在驱动器发生故障后保持冗余的重建区域。 如果系统上提供的驱动器不足(例如,在少于四个闪存驱动器的配置中),那么无法配置分布式阵列。 分布式 RAID 阵列可解决非分布式阵列配置中的重建瓶颈问题,这是因为重建区域分布在阵列中的所有驱动器中。 重建写工作负载分布在所有驱动器上,而不仅仅是会让阵列上的重建速度更快的单一备用驱动器上。分布式阵列中不需要在发生故障前处于空闲状态的独立驱动器。 备用容量分布在特定重建区域(分布在所有成员驱动器中)中,而不是将一个或多个驱动器分配为备用驱动器。 可以更快地将数据复制到重建区域,并可以更迅速地恢复冗余。 此外,随着重建工作的推进,由于要将所有可用驱动器用于每个卷扩展数据块,因此池的性能更加稳定。 在更换发生故障的驱动器后,会将数据从分布式备用容量中复制回驱动器。 与“热备用”驱动器不同,将在驱动器中未用作重建区域的其他部分中处理读/写请求。重建区域的数量取决于阵列的宽度。 重建区域的大小将决定在无降级风险的前提下分布式阵列可以恢复故障驱动器的次数。 例如,使用 RAID 6 驱动器的分布式阵列可以处理两个并发故障。 重新构建发生故障的驱动器后,阵列可容许另外两次驱动器故障。如果所有重建区域都用于恢复数据,那么阵列会在下一次驱动器发生故障时降级。 在完成阵列配置之前,请验证您的型号是否支持分布式阵列。对于支持分布式阵列的系统,您可以使用管理 GUI 或 expandarray 命令,通过在阵列中包含新驱动器来增加阵列中的驱动器数量。

您可以扩展分布式阵列,以增加阵列的可用容量或添加可用容量。在扩展过程中,系统会自动迁移数据,使新的扩展配置实现最佳性能。分布式阵列扩展支持阵列可用容量逐渐递增,并且兼容其他功能,例如,IBM® Easy Tier® 和数据迁移。

阵列配置准则

管理 GUI 自动缺省设置为推荐的重建区域数量(取决于分布式阵列的当前宽度和其他设置)。 阵列宽度包含了在驱动器发生故障的情况下确保冗余所需的物理驱动器和重建区域的数量。 对于 SAS 连接驱动器的分布式阵列和非压缩 NVMe 的分布式 RAID 阵列,系统建议最多可以有四个重建区域。 压缩 NVMe 的分布式 RAID 阵列支持一个重建区域。其他设置(如驱动器类)也用于确定阵列的最佳配置。 例如,如果要添加存储器或扩展分布式阵列,管理 GUI 将禁用任何与池中已有驱动器不兼容的驱动器类。然后,分析池中的当前阵列配置以推荐条带宽度和驱动器计数。

在设置完系统后,必须通过创建池并为特定池分配存储器来配置存储器。 确保在分配存储器之前创建一个或多个池。在管理 GUI 中,选择 > 操作 > 添加存储器添加存储器选项会自动将现有驱动器配置成阵列。使用 lsarrayrecommendation 命令可显示用于配置阵列的系统建议。为实现最佳控制和灵活性,可以使用 mkarray 命令行界面 (CLI) 命令在系统上配置非分布式阵列。 要配置分布式阵列,可以使用 mkdistributedarray 命令。