管理外部复制

本页面介绍了如何管理外部复制。

查看外部复制详情

如需监控外部复制的复制状态,请在 ONTAP 上查找 NetApp Volumes 复制资源和 SnapMirror 状态。

复制的当前阶段由其 mirrorState 指示:

  • 准备中:基准转移正在进行。

  • 正在转移:增量转移正在进行。

  • 已镜像:复制处于空闲状态,等待开始下一次每小时增量传输。

  • 已停止:用户停止了复制。

  • 外部管理:表示目标卷位于 ONTAP 端。

当目标卷位于 ONTAP 端时,系统会应用 Externally managed 状态。因此,ONTAP 负责管理复制,而 NetApp Volumes 没有关于复制是 Stopped 还是 Mirrored 的信息。如需确定实际状态,您必须使用 snapmirror show 命令直接检查 ONTAP。

请按照以下说明使用 Google Cloud CLI 或 ONTAP CLI 查看外部复制的详细信息:

gcloud

如需查看 NetApp Volumes 上外部复制的详细信息,请执行以下操作:

gcloud netapp volumes replications list --volume=NETAPP_VOLUMES_VOLUME --location=REGION

ONTAP CLI

如需在 ONTAP 上查看外部复制的详细信息,请执行以下操作:

ONTAP> snapmirror show -destination-path SVM_NAME:ONTAP_VOLUME_NAME

停止或暂停外部复制

停止外部复制后,目标卷会变为可读写状态,并且可以修改。停止复制时,不会发生增量转移,但可以再次恢复已停止的复制。

如需在基准复制期间停止正在进行的数据转移,或者在正在进行的增量转移受阻时停止数据转移,您必须执行强制停止操作。强制停止会指示复制保存检查点。恢复操作稍后可以使用此检查点从中断处继续执行。

使用 Google Cloud CLI,按照以下说明停止或暂停外部复制:

gcloud

如需停止或暂停外部复制,请执行以下操作:

gcloud netapp volumes replications stop REPLICATION_NAME \
 --volume=DESTINATION_VOLUME --location=REGION

如果该命令因正在进行基准或增量转移而返回错误,您可以向该命令添加 --force 标志,以强制停止并创建检查点以供后续恢复操作使用。

如果目标卷位于 NetApp Volumes 上,则复制将自动停止。不过,如果目标卷位于 ONTAP 上,您必须在 ONTAP 系统上运行 snapmirror break 命令。如需确定适用于 ONTAP 的正确命令,请使用以下命令:

gcloud netapp volumes replications list --volume=NETAPP_VOLUMES_VOLUME --location=REGION

查找 hybridReplicationUserCommands 输出。运行这些 ONTAP 命令后,复制将停止。您可以在 ONTAP 上运行以下命令来检查状态:

ONTAP> snapmirror show -destination-path SVM_NAME:ONTAP_VOLUME_NAME

NetApp Volumes 无法检测到该命令是否已运行。它会假定复制现在由外部管理,这由 mirrorState 为 Externally managed 表示。

恢复外部复制

当您恢复已停止的外部复制时,目标卷会恢复为与源卷的最新共同检查点或快照。然后,增量转移会从该点开始。此操作会撤消对目标卷内容所做的所有更改,因此请确保这是您需要的结果。 目标卷设置(例如大小、协议设置和政策)不会与源卷同步。

按照以下说明使用 Google Cloud CLI 恢复外部复制:

gcloud

如需恢复外部复制,请执行以下操作:

gcloud netapp volumes replications resume REPLICATION_NAME \
 --volume=DESTINATION_VOLUME --location=REGION

如果目标卷托管在 NetApp Volumes 上,复制将自动恢复。不过,如果目标位置位于 ONTAP 上,您必须在 ONTAP 系统上运行 snapmirror resync 命令:

ONTAP> snapmirror resync -destination-path SVM_NAME:ONTAP_VOLUME_NAME

检查 ONTAP 上镜像的状态:

ONTAP> snapmirror show -destination-path SVM_NAME:ONTAP_VOLUME_NAME

反向并继续外部复制

外部复制的方向可以反转,使当前的目标卷成为新的源卷,反之亦然。新的目标卷将恢复到最近的共同检查点或快照,增量转移将从该点开始。请确保此操作会撤消对新目标卷上的内容所做的所有更改。目标卷设置(例如大小、协议配置和政策)不会与新的源卷同步。

在反转复制之前,必须先停止复制。

必须在 NetApp Volumes 卷上启动方向反转。

使用 Google Cloud CLI,按照以下说明反向复制外部数据:

gcloud

如需逆转外部复制,请执行以下操作:

gcloud netapp volumes replications reverse REPLICATION_NAME \
 --volume=NETAPP_VOLUMES_VOLUME --location=REGION

如果 NetApp Volumes 成为新的目标位置,复制会自动反转。不过,如果 ONTAP 是新目标,您必须在 ONTAP 系统上运行 snapmirror resync 命令。您可以使用以下命令确定 ONTAP 的正确命令:

gcloud netapp volumes replications list --volume=NETAPP_VOLUMES_VOLUME --location=REGION

在输出中查找 hybridReplicationUserCommands 部分。如果您未在 120 分钟内运行 ONTAP 命令,复制将恢复到之前的状态。

您可能会看到的命令示例:

job schedule cron create -name replication-yyy -hour all -minute 0
snapmirror resync -destination-path svm_src:sourcevol -source-path svm_dst:vol_dst
snapmirror modify -destination-path svm_src:sourcevol -source-path svm_dst:vol_dst -schedule replication-yyy

同步外部复制

通过同步操作,您可以对处于镜像传输状态的复制运行手动、非预定和增量传输。此操作可让您在停止复制并将客户端移至目标卷之前,将源中的最新更改发送到目标。

该服务允许您每天每个卷最多运行 5 次同步操作。

按照以下说明使用 Google Cloud CLI 同步外部复制:

gcloud

如需同步外部复制,请执行以下操作:

gcloud netapp volumes replications sync REPLICATION_NAME \
 --volume=DESTINATION_VOLUME --location=REGION

删除外部复制

外部复制删除包括以下步骤:

  1. 确保复制状态为 Stopped

  2. 删除复制。

  3. 考虑使用 cluster peer delete 命令删除外部 ONTAP 集群上与 NetApp Volumes 的集群对等互连,但前提是这是外部 ONTAP 集群的最后一次复制。

  4. 如果为复制配置了任何其他网络,您可以在复制完成后将其移除。

使用 Google Cloud CLI 按照以下说明删除外部复制:

gcloud

如需删除外部复制,请先检查 ONTAP 端是否配置了过时的 SnapMirror 连接:

ONTAP> snapmirror show -destination-path SVM_NAME:ONTAP_VOLUME_NAME

您应该看到没有 SnapMirror 连接,或者看到一个 mirrorState 为 Broken-off 的连接。如果某个连接处于 Broken-off 状态,请继续删除该连接:

ONTAP> snapmirror delete -destination-path SVM_NAME:ONTAP_VOLUME_NAME

接下来,删除 NetApp Volumes 中的复制:

gcloud netapp volumes replications delete REPLICATION_NAME \
 --volume=DESTINATION_VOLUME --location=REGION

后续步骤

在外部复制期间更改卷设置