MAP 6001:更换 RAID 0 阵列中的脱机 SSD

MAP 6001:此过程用于更换在仍是存储池成员的情况下发生故障的固态驱动器 (SSD)。

开始之前

如果您不熟悉这些维护分析过程 (MAP),请先阅读使用维护分析过程

此 MAP 适用于具有内部闪存驱动器的型号。 在开始此过程之前,请确保您知道所使用的型号。要确定您正在使用的型号,请查找节点前部用于标识型号类型的标签。

注意:
  1. 在开始这些步骤之前,先备份系统配置。
  2. 如果驱动器 use 属性为 member 并且必须更换驱动器,请在执行任何操作之前先与系统支持中心联系。

关于此任务

仅在 RAID 0(条带分割)阵列中的驱动器发生故障时,才执行以下步骤:

过程

  1. 记录依赖于发生故障的驱动器的所有卷拷贝、MDisk 和存储池的属性。
    1. 通过使用 lsdrive CLI 命令,利用 status 等于 offlineuse 等于 failed 来确定驱动器标识和错误序列号。
    2. 通过使用 lsevent <seq_no> CLI 命令,查看脱机原因。
    3. 通过使用 lsdrive <drive_id> CLI 命令,获取有关脱机驱动器的详细信息。
    4. 记录每个脱机驱动器的 mdisk_idmdisk_namenode_idnode_nameslot_id
    5. 通过对子步骤 1c 中标识的每个 MDisk 使用 lsmdisk <mdisk_id> CLI 命令,获取发生故障的驱动器的存储池。

      通过更换一个存储池中所有发生故障的驱动器,继续以下步骤。 记录选中驱动器的节点、插槽和标识。

    6. 通过使用 lsmdisk -filtervalue mdisk_grp_id=<grp id> CLI 命令,确定存储池中的所有 MDisk。
    7. 标识内部 MDisk(ctrl_type 等于 4)以及包含 SSD 的 MDisk(ctrl_type 等于 6)。
    8. 通过对子步骤 1f 中找到的每个 MDisk 使用 lsmdiskmember <mdisk_id> CLI 命令,查找存储池中具有扩展数据块的卷。

      可能会为每个 MDisk 返回相同的卷。

    9. 通过使用 lsvdisk <vdisk_id> CLI 命令,记录在步骤 1h 中列出的每个卷上的所有属性。对于每个卷,检查其是否具有表明已制作镜像的联机卷拷贝。在步骤 9 中使用此信息。
    10. 通过使用 lsdrive -filtervalue mdisk_id=<mdisk_id> CLI 命令,获取存储池中每个内部 MDisk 内所有驱动器的列表。在步骤 8 中使用此信息。
    11. 通过使用 lsmdisk <mdisk_id> CLI 命令,记录存储池中所有 MDisk 的所有属性。在步骤 8 中使用此信息。
    12. 通过使用 lsmdisk <mdisk_id> CLI 命令,记录存储池的所有属性。在步骤 7 中使用此信息。
    注: 如果列出的卷具有已镜像的联机同步拷贝,那么可以从该拷贝恢复所拷贝的卷数据。未镜像卷上的所有数据都将丢失,必须从备份复原。
  2. 通过使用 rmmdiskgrp -force <mdiskgrp id> CLI 命令,删除存储池。

    同时还会删除存储池中的所有 MDisk 和卷拷贝。如果任何卷拷贝是某个卷的最后一个同步拷贝,那么还会删除未同步的所有拷贝,即使它们不在存储池中。

  3. 使用子步骤 1e 中记录的驱动器标识,通过 chdrive 命令将驱动器的 use 属性设置为 unused
    chdrive -use unused <id of offline drive>
    这样会从驱动器列表中移除该驱动器。
  4. 遵循物理说明更换或卸下驱动器。
    有关如何完成过程的信息,请参阅卸下和更换部件
    这样会创建一个新的驱动器对象,且 use 属性设置为 unused。此操作可能需要几分钟时间。
  5. 通过使用 lsdrive CLI 命令,获取新驱动器的标识。
  6. 将新驱动器的 use 属性更改为 candidate
    chdrive -use candidate <drive id of new drive>
  7. 使用与已删除的存储池相同的属性创建存储池。使用在子步骤 1l 中记录的属性。
    mkmdiskgrp -name <mdiskgrp name as before> -ext <extent size as before>
  8. 通过使用步骤 1j 和 1k 中的信息,重新创建存储池中先前存在的所有 MDisk。
    • 对于内部 RAID 0 MDisk,使用以下命令:
      mkarray -level raid0 -drive <list of drive IDs> -name 
      <mdisk_name> <mdiskgrp id or name>

      其中,-name <mdisk_name> 为可选,但是您可以使用该参数,使新阵列具有与旧阵列相同的 MDisk 名称。

    • 对于外部 MDisk,使用 addmdisk CLI 命令。
    • 对于非 RAID 0 MDisk,使用 mkarray CLI 命令。
  9. 对于在删除 MDisk 组前具有联机的同步镜像卷拷贝的所有卷,通过指定以下命令,在新存储池中添加卷拷贝以恢复冗余:
    addvdiskcopy -mdiskgrp <mdiskgrp id> -vtype striped -easytier 
    <on or off as before> <vdisk_id>
  10. 对于无联机的同步镜像拷贝的任何卷,重新创建该卷,并从备份复原数据或者使用其他方法。
  11. 通过使用步骤 1b 中的错误序列号,将驱动器错误标记为已纠正。
    cherrstate -sequencenumber <error_sequence_number>