mkdistributedarray

使用 mkdistributedarray 命令创建分布式阵列,并将其添加到存储池。 (使用 mkarray 命令创建非分布式阵列)。

语法

mkdistributedarray -level { raid5 | raid6 } -driveclassdriveclass_id -drivecount4 - 128 [ -stripewidth3-16 ] [ -allowsuperior ] [ -rebuildareas { 1 | 2 | 3 | 4 } ] [ -rebuildareasgoal { 0 | 1 | 2 | 3 | 4 } ] [ -strip { 128 | 256 } ] [ -namenew_name_arg ] [ -encrypt { yes | no } ] [ -slowwritepriority { latency | redundancy } ] { mdiskgrp_id | mdiskgrp_name }

参数

-levelraid5 | raid6
(必需)指定要创建的阵列的 RAID 级别。 值包括:
  • raid5
  • raid6
-driveclassdriveclass_id
(必需)指定用于创建阵列的类。 driveclass_id 必须是数字值(使用 lsdriveclass 命令指定)。
-drivecount4 - 128
(必需)指定用于阵列的驱动器数量。 最小驱动器计数如下所示:
  • RAID-5:4
  • RAID-6: 6
-stripewidth3-16
(可选)指示分布式驱动器集内单个冗余单元的宽度。 值必须是:
  • RAID-5:3 - 16
  • RAID-6:5 - 16

RAID-6 的缺省宽度为 12,RAID-5 的缺省宽度为 10。 宽度加重建区域数必须小于或等于驱动器计数。

-allowsuperior
(可选)指定您可以使用与创建阵列时使用的驱动器种类不完全匹配的驱动器(例如使用不同容量或技术的驱动器)。 系统会在满足驱动器计数时尝试选择与该种类最匹配的驱动器。 在选择更高级别的技术成员之前,可以选择相同技术类型的更高容量的成员。
Note: 要将驱动器 A 视为优于驱动器 B,必须符合以下情况:
  1. 驱动器 A 和 B 均为 use=candidate
  2. 驱动器 A 和 B 位于同一 I/O 组中。
  3. 驱动器 A 的速度等于或大于驱动器 B 的速度。固态驱动器 (SSD) 的速度快于所有硬盘驱动器 (HDD)。 对于 SSD,tech_typetier0_flash 被视为性能优于 tier1_flash
  4. 驱动器 A 的容量等于或大于驱动器 B 的容量。
  5. 驱动器 A 的块大小小于或等于驱动器 B。
  6. 驱动器 A 和 B 具有同一传输协议。
  7. 驱动器 A 和 B 均未压缩驱动器,或者驱动器 A 和 B 压缩的是物理容量和逻辑容量相同的驱动器。
-rebuildareas1 | 2 | 3 | 4
(可选)指定在可用于阵列的所有驱动器之间分布的保留容量。 此容量用于在驱动器发生故障后存储数据。 值包括:
  • 1
  • 2
  • 3
  • 4
针对 RAID-5 和 RAID-6 阵列,该值为 1 - 4(含)。
重建区域的缺省数量随驱动器计数增加而增加。
Note: 重建区域数加条带宽度必须小于或等于总驱动器计数。
-rebuildareasgoal0 | 1 | 2 | 3 | 4
(可选)指定阵列为保持可用而能够锁定的重建区域数量。 如果阵列中可用重建区域数量低于该数字,那么会发出系统警报。
Note: 目标值不应超过为阵列指定的重建区域数量。
值包括:
  • 0
  • 1
  • 2
  • 3
  • 4
-strip 128 | 256
(可选)指定要配置的阵列的条带大小 (KiB)。 该值为 128256
Note: 如果指定了 128 并且候选驱动器的大小大于 4 TB,那么此命令将失败。
-namenew_name_arg
(可选)指定阵列的名称。
-encryptyes | no
(可选)指定要加密的阵列。 值为 yesno。当 lsencryption 的状态设置为 enabled,并且将在其上定义阵列的 I/O 组中的所有节点都支持加密时,该参数缺省为 yes
Note: 仅当在阵列的 I/O 组上启用加密时,其值可以为 yes
如果在 I/O 组不支持加密时指定 -encrypt yes,那么命令将失败。
-slowwriteprioritylatency | redundancy
(可选)控制阵列完成耗时过长的写操作的能力(即使暂时破坏冗余)。
值可以是 latencyredundancy
  • latency 暗示已针对正常的 I/O 操作启用该功能部件
  • redundancy 暗示未针对正常的 I/O 操作启用该功能部件
对于现有阵列,缺省值为 latency 方式。
Important: 如果值为 latency,那么阵列会导致成员驱动器不同步(以保持响应时间)。 如果值为 redundancy,阵列无法导致成员驱动器变为不同步(以保留响应时间),并且 I/O 性能会受到影响。
mdiskgrp_id | mdiskgrp_name
(必需)指示 MDisk 阵列标识或名称。

描述

此命令可创建分布式阵列。

Remember: 您无法创建未加密阵列以添加到加密存储池。
每个分布式阵列均占用 16 个插槽(从可被 16 整除的 MDisk 标识开始)。 请参阅 lsmdisk 命令以了解更多信息。

创建使用 40 个驱动器(种类为 3,含 3 个重建区域)的阵列调用示例

 mkdistributedarray -level raid6 -driveclass 3 -drivecount 40 -stripewidth 10 -rebuildareas 3 mdiskgrp5

生成的详细输出:

MDisk, id [16], sucessfully created

使用驱动器种类创建阵列的调用示例

 mkdistributedarray -level raid5 -driveclass 0 -drivecount 56 -stripewidth 8 -allowsuperior mdiskgrp2

生成的详细输出:

MDisk, id [32], sucessfully created

以下调用示例使用最大数量的重建区域创建阵列,该阵列在使用第二个重建区域时记录了错误

mkdistributedarray -level raid5 -driveclass 5 -drivecount 60 -rebuildareas 4 -rebuildareasgoal 3 mdiskgrp2

生成的详细输出:

MDisk, id [16], sucessfully created

用于创建可能影响 I/O 性能的阵列的调用示例

mkdistributedarray -driveclass 10 -slowwritepriority redundancy 0

生成的详细输出:

MDisk, id [32], sucessfully created

用于建立使用 40 个 3 类驱动器的加密分布式阵列(含 3 个重建区域)的调用示例

mkdistributedarray -level raid6 -driveclass 3 -drivecount 40 -stripewidth 10 -rebuildareas 3 -encrypt yes mdiskgrp5

生成的详细输出:

MDisk, id [16], sucessfully created