mkdistributedarray

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

语法

读取语法图跳过可视语法图 mkdistributedarray -level raid1raid5raid6 -driveclass driveclass_id -drivecount 2 - 128 -stripewidth2-16-allowsuperior-rebuildareas01234-rebuildareasgoal01234-strip256-name新名称参数-encrypt-slowwritepriority等待时间 (latency)redundancy mdiskgrp_idmdiskgrp_name

参数

-level raid1 | raid5 | raid6
(必需)指定要创建的阵列的 RAID 级别。 可能的值包括:
  • raid1
  • raid6
  • raid5
-driveclass driveclass_id
(必需)指定用于创建阵列的类。 driveclass_id 必须是数字值(使用 lsdriveclass 命令指定)。
-drivecount 2-128
(必需)指定驱动器数量。 值必须为范围在 2 到 128 之间的数字。 对于 SSD 和 SCM ,分布式 RAID 1 阵列的值必须在 2-16 范围内。 对于 HDD ,分布式 RAID 1 阵列的值必须在 3-16 范围内。
-stripewidth 2-16
(可选)指示分布式驱动器集内单个冗余单元的宽度。 值必须为:
  • RAID 1: 2
  • RAID 5: 3 - 16
  • RAID 6: 5 - 16

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

如果未指定 -stripewidth 并且 drivecount - rebuildareas 小于缺省条带宽度 (9 表示 RAID 5 , 12 表示 RAID 6) ,那么 stripewidth 设置为 drivecount - rebuildareas。 如果 drivecount - rebuildareas 小于允许的最小值 (3 表示 RAID 5 , 5 表示 RAID 6) ,那么该命令将失败。

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

描述

此命令用于创建分布式阵列。

如果将 MDisk 添加到使用供应策略的池,那么 MDisk 的容量必须与供应策略所定义的容量节省方法相匹配。 例如, 对于定义了使用压缩和去重技术的供应策略的数据缩减池,就无法在其中添加使用自压缩驱动器技术的 MDisk。

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

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

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

生成的详细输出:

MDisk, id [16], sucessfully created