在聚合之间移动卷 - FSx 适用于 ONTAP

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

在聚合之间移动卷

向文件系统添加高可用性 (HA) 对时,需要通过向新聚合迁移卷来重新平衡现有的数据。要在聚合之间移动卷,可以使用 ONTAP CLI 中的 volume move 命令。

在使用 volume move 命令之前,应考虑以下几点:

  • 使用 volume move 命令会影响性能,因为该命令会消耗文件系统上的网络和磁盘资源。因此,我们建议在低活动时期进行聚合间卷移动。或者,可以在移动卷时将文件系统的网络吞吐量利用率和磁盘吞吐量利用率降低至不超过 50%。

  • 为了减少对文件系统的性能影响,我们建议每次在两个 HA 对和聚合之间移动单个卷。例如,如果文件系统有四个 HA 对,我们建议每次移动两个卷(假设不是从相同的 HA 对移动卷,也不是向同一 HA 对移动卷)。ONTAP 支持每次在每个 HA 对上移动最多八个卷,但同时移动更多的卷会降低客户端 I/O 和任何进行中卷移动的性能。

  • 存储在受影响卷的 SSD 层上的任何数据以物理方式移动到不同文件服务器上的一组不同磁盘中。此操作在后台进行,需要一定的时间。传输所需的时间取决于文件系统的吞吐能力以及文件系统上的活动量。但是,可以对卷移动进行限制。有关更多信息,请参阅 限制卷移动

  • 存储在容量层上的任何数据并非以物理方式进行移动,因为 HA 对具有相同的容量池存储。因此,移动大部分数据已分层的卷会更快。请记住,文件元数据始终存储在 SSD 层。有关更多信息,请参阅 卷数据分层

卷移动阶段

卷移动操作分为以下两个阶段:复制阶段和割接阶段。在复制阶段,现有数据被复制到卷的新聚合中。在割接阶段,ONTAP 尝试最后一次快速传输到卷的新聚合。这包括传输在传输阶段写入的所有数据,以及将新流量重定向到卷的新聚合。割接窗口默认为 30 秒,在此窗口内,卷的所有 I/O 将暂停。如果 ONTAP 无法在割接窗口内执行所有这些步骤,就会失败。默认情况下,ONTAP 将尝试连续进行三次割接。如果连续三次尝试均告失败,则 ONTAP 将每小时重试一次,直到成功为止。您可以通过在割接阶段开始之前减小或暂停卷的 I/O 流量来减小文件系统的负载,以确保割接阶段取得成功。

开始卷移动

启动卷移动
  1. 要访问 NetApp ONTAP CLI,请运行以下命令在 Amazon FSx for NetApp ONTAP 文件系统的管理端口上建立 SSH 会话。将 management_endpoint_ip 替换为文件系统管理端口的 IP 地址。

    [~]$ ssh fsxadmin@management_endpoint_ip

    有关更多信息,请参阅 使用管理文件系统 ONTAP CLI

  2. 运行 volume move start ONTAP CLI 命令。替换以下值:

    • vserver_name 替换为托管当前移动卷的 SVM 的名称。

    • volume_name 替换为卷组件的名称(例如,vol1__0001)。

    • aggregate_name 替换为卷的目标聚合的名称。

    • -enforce-network-throttling 可限制卷移动的总吞吐量。该项为可选项。

    ::> volume move start -vserver svm_name -volume volume_name --destination-aggregate aggregate_name -foreground false [Job 1] Job is queued: Move "vol1__0001" in Vserver "svm01" to aggregate "aggr1". Use the "volume move show -vserver svm01 -volume vol1__0001" command to view the status of this operation.
重要

移动卷会消耗源和目标文件服务器的网络与磁盘资源。因此,工作负载的性能会受到任何进行中卷移动的影响。此外,在卷移动的割接阶段,卷的 I/O 流量将临时暂停。

监控卷移动

监控卷移动
  • 要查看卷移动操作的状态,可使用 volume move show ONTAP CLI 命令。

    ::> volume move show -vserver svm_name -volume volume_name Vserver Name: svm01 Volume Name: vol1__0001 Actual Completion Time: - Bytes Remaining: 1.00TB Specified Action For Cutover: retry_on_failure Specified Cutover Time Window: 30 Destination Aggregate: aggr2 Destination Node: FsxId01234567890abcdef-03 Detailed Status: Transferring data: 12.23GB sent. Percentage Complete: 1% Move Phase: replicating Prior Issues Encountered: - Estimated Remaining Duration: 00:40:25 Replication Throughput: 434.3MB/s Duration of Move: 00:00:27 Source Aggregate: aggr1 Source Node: FsxId01234567890abcdef-01 Move State: healthy

    命令输出显示完成移动的估计时间。完成后,Move phase 将显示 completed 状态。

保持平衡 FlexGroup 卷

为了使您的工作负载以最佳状态运行,您的 FlexGroup 体积应跨越所有聚合,并且每个聚合物的组成体积数量为偶数。我们建议每个聚合有八个组件。重新平衡时,请考虑以下情况 FlexGroup 卷:

  • 移动 FlexGroup 现有聚合中的成分:如果您移动 FlexGroup's 成分交易量改为原本平衡的另一个总量 FlexGroup,然后应将另一个利用率较低的成分移到原始聚合中。这样可以确保您的 FlexGroup 每个总成分的数量为偶数。

    移动 FlexGroup 添加 HA 对后将成分转换为新聚合:如果您移动 FlexGroup's 在添加 HA 对后,将成分卷扩展到新聚合,则应扩展 FlexGroup 在损失成分股的总量中还有其他成分。这样可以确保您的 FlexGroup 每个总成分的数量为偶数。有关更多信息,请参阅 正在扩大 FlexGroup 卷

限制卷移动

如果要限制在文件系统上进行卷移动的带宽,可以在操作开始时添加 -enforce-network-throttling 选项。

注意

使用此选项会影响传入 SnapMirror 文件系统的复制数据传输。跟踪如何配置文件系统的复制选项,因为设置这些选项后就无法查看。

限制卷移动
  1. 该限制操作使用全局复制节流。要设置全局复制限制,请在中使用以下命令 ONTAP CLI。

    ::> options -option-name replication.throttle.enable on
  2. 指定复制可使用的最大总带宽,并替换以下选项:

    • kbs_throttle具有用于任何复制的最大所需吞吐量(包括 SnapMirror 和音量移动),以每秒千字节为单位。

    ::> options -option-name replication.throttle.incoming.max_kbs kbs_throttle ::> options -option-name replication.throttle.outgoing.max_kbs kbs_throttle