Share via


將增量快照集複製到新的區域

跨區域複製增量快照集有兩個選項。 第一個選項是受控程序 (建議),其會為您執行複製。 此程序由 Azure 處理,可藉由將儲存體帳戶暫存在目標區域中,消除管理複製程序的維護負荷。 Azure 可確保只會將目標區域中最新快照集之後的變更複製到目標區域,以減少資料使用量,進而降低復原點目標。 您可以檢查複製程序,以得知目標快照集何時準備好還原磁碟。 針對受控程序,您只需為跨區域資料傳輸的頻寬成本以及來源快照集上的讀取交易付費。 複製目標快照集時,請不要刪除來源快照集。

第二個選項是手動複製,可讓您取得兩個增量快照集之間的變更 (向下至區塊層級),並將其從一個區域手動複製到另一個區域。 大部分使用者應使用受控程序,但如果您想要改善複製速度,則第二個選項可讓您使用計算資源加快複製。

本文說明如何將增量快照集從一個區域複製到另一個區域。 如需增量快照集的概念詳細資料,請參閱建立受控磁碟的增量快照集

Diagram of Azure orchestrated cross-region copy of incremental snapshots via the clone option.

限制

  • 您可以為每個區域的每個訂用帳戶同時複製 100 個增量快照集。
  • 如果您使用 REST API,則必須使用 2020-12-01 版或更新版本的 Azure 計算 REST API。
  • 您一次只能複製一個特定磁碟的增量快照集。
  • 快照集必須依建立的順序複製。

受控複製

您可以使用 Azure CLI 來複製增量快照集。 您需要最新版的 Azure CLI。 請參閱下列文章,了解如何安裝更新 Azure CLI。

下列指令碼會將增量快照集從一個區域複製到另一個區域:

subscriptionId=<yourSubscriptionID>
resourceGroupName=<yourResourceGroupName>
targetSnapshotName=<name>
sourceSnapshotResourceId=<sourceSnapshotResourceId>
targetRegion=<validRegion>

sourceSnapshotId=$(az snapshot show -n $sourceSnapshotName -g $resourceGroupName --query [id] -o tsv)

az snapshot create -g $resourceGroupName -n $targetSnapshotName -l $targetRegion --source $sourceSnapshotId --incremental --copy-start

檢查複製狀態

您可檢查 CompletionPercent 屬性以檢查個別快照集的狀態。 將 $sourceSnapshotName 取代為快照集的名稱,然後執行下列命令。 屬性的值必須是 100,才能使用快照集來復原磁碟,或產生 SAS URI 以下載基礎資料。

az snapshot show -n $sourceSnapshotName -g $resourceGroupName --query [completionPercent] -o tsv

手動複製

增量快照集提供差異功能。 它們可讓您取得相同受控磁碟的兩個增量快照集之間,向下至區塊層級的變更。 您可以在跨區域複製快照集時,使用此項目來減少資料使用量。 例如,您可以將第一個增量快照集下載為另一個區域中的基底 Blob。 對於後續的增量快照集,您只能將上次快照集之後的變更複製到基底 Blob。 複製變更之後,您可以在基底 Blob 上擷取快照集,代表磁碟在另一個區域中的時間點備份。 您可以從基底 Blob 或從另一個區域中的基底 Blob 上的快照集還原磁碟。

Diagram depicting incremental snapshots copied across regions. Snapshots make various API calls until eventually forming page blobs per each snapshot.

下一步

如果您想要查看範例程式碼以了解使用 .NET 的增量快照集差異功能,請參閱透過增量快照集的差異功能將 Azure 受控磁碟備份複製到另一個區域

如果您對快照集有其他疑問,請參閱常見問題的快照集一節。