Share via


設定區塊 Blob 的物件複寫

物件複寫會以非同步方式複製來源儲存體帳戶與目的地帳戶之間的區塊 Blob。 當設定物件複寫時,您會建立複寫原則,其指定來源儲存體帳戶和目的地帳戶。 複寫原則包含一或多個規則,其指定來源容器和目的地容器,並指出將複寫來源容器中的哪些區塊 Blob。 如需物件複寫的詳細資訊,請參閱區塊 Blob 的物件複寫

本文說明如何使用 Azure 入口網站、PowerShell 或 Azure CLI 來設定物件複寫原則。 您也可以使用其中一個 Azure 儲存體資源提供者用戶端程式庫來設定物件複寫。

必要條件

在您設定物件複寫之前,請先建立來源和目的地儲存體帳戶 (如果尚未建立)。 來源和目的地帳戶可以是一般用途 v2 儲存體帳戶或進階區塊 Blob 帳戶。 如需詳細資訊,請參閱建立 Azure 儲存體帳戶

物件複寫需要為來源和目的地帳戶啟用 Blob 版本設定,而且已為來源帳戶啟用 Blob 變更摘要。 若要深入瞭解 Blob 版本設定,請參閱 Blob 版本設定。 若要深入瞭解變更摘要,請參閱 Azure Blob 儲存體中的變更摘要支援。 請記住,啟用這些功能可能會導致額外成本。

若要設定儲存體帳戶的物件複寫原則,您必須將 Azure Resource Manager 參與者角色指派給儲存體帳戶層級或更高的層級。 如需詳細資訊,請參閱 Azure 角色型存取控制 (Azure RBAC) 文件中的 Azure 內建角色

在已啟用階層命名空間的帳戶中,尚未支援物件複寫。

設定可存取這兩個儲存體帳戶的物件複寫

如果您可以存取來源和目的地儲存體帳戶,則可以在這兩個帳戶上設定物件複寫原則。 下列範例示範如何使用 Azure 入口網站、PowerShell 或 Azure CLI 來設定物件複寫。

當您在 Azure 入口網站中設定物件複寫時,您只需要設定來源帳戶的原則。 當您針對來源帳戶設定原則之後,Azure 入口網站會自動在目的地帳戶上建立原則。

若要在 Azure 入口網站中建立複寫原則,請遵循下列步驟:

  1. 巡覽至 Azure 入口網站的 [來源儲存體帳戶]。

  2. 在 [資料管理] 下,選取 [物件複寫]

  3. 選取 [建立複寫規則]

  4. 選取 [目的地訂用帳戶] 和 [目的地儲存體帳戶]。

  5. 在 [容器配對詳細資料] 區段中,從來源帳戶中選取來源容器,並從目的地帳戶中選取目的地容器。 您可以從 Azure 入口網站中的每個複寫原則建立最多 10 組容器配對。 若要設定超過 10 組容器配對 (最多 1000 組),請參閱使用 JSON 檔案設定物件複寫

    下圖顯示一組複寫規則。

    Screenshot showing replication rules in Azure portal

  6. 如有需要,請指定一或多個篩選,以便僅複製符合前置詞模式的 Blob。 例如,如果指定前置詞 b,則只會複寫名稱開頭為該字母的 Blob。 您可指定虛擬目錄作為前置詞的一部分。 您可以新增最多五個前置詞相符項目。 前置詞字串不支援萬用字元。

    下圖顯示篩選會限制哪些 Blob 符合複寫規則並接受複製。

    Screenshot showing filters for a replication rule

  7. 根據預設,複製範圍會設定為只複製新的物件。 若要複製容器中的所有物件,或從自訂日期和時間開始複製物件,請選取 [變更] 連結,並設定容器配對的複製範圍。

    下圖顯示自訂複製範圍,其會從指定的日期和時間開始複製物件。

    Screenshot showing custom copy scope for object replication

  8. 選取 [儲存並套用] 以建立複寫原則,並開始複寫資料。

設定物件複寫之後,Azure 入口網站會顯示複寫原則和規則,如下圖所示。

Screenshot showing object replication policy in Azure portal

使用 JSON 檔案設定物件複寫

如果您沒有來源儲存體帳戶的權限,或是您要使用超過 10 組容器配對,則可以在目的地帳戶上設定物件複寫,並將包含原則定義的 JSON 檔案提供給其他使用者,以在來源帳戶上建立相同的原則。 例如,如果來源帳戶與目的地帳戶位於不同的 Microsoft Entra 租用戶,則您可以使用此方法來設定物件複寫。

如需如何撰寫 JSON 檔案,包含原則定義的相關資訊,請參閱原則定義檔案

注意

儲存體帳戶預設允許跨租用戶物件複寫。 若要防止跨租用戶進行複寫,您可以將 AllowCrossTenantReplication 屬性設定為禁止儲存體帳戶的跨租用戶物件複寫。 如需詳細資訊,請參閱防止跨 Microsoft Entra 租用戶進行物件複寫

本章節中的範例示範如何在目的地帳戶上設定物件複寫原則,然後取得該原則的 JSON 檔案,以便其他使用者可以使用該原則設定來源帳戶的原則。

若要使用 Azure 入口網站中的 JSON 檔案來設定目的地帳戶的物件複寫,請遵循下列步驟:

  1. 建立本機 JSON 檔案,以定義目的地帳戶的複寫原則。 將 [policyId] 欄位設定為 [預設值],Azure 儲存體將會定義原則識別碼。

    建立 JSON 檔案來定義複寫原則的簡單方式,是先在 Azure 入口網站的兩個儲存體帳戶之間建立測試複寫原則。 然後,您可以下載複寫規則,並視需要修改 JSON 檔案。

  2. 在 Azure 入口網站中,瀏覽至目的地帳戶的物件複寫設定。

  3. 選取 [上傳複製規則]

  4. 上傳 JSON 檔案。 Azure 入口網站會顯示將建立的原則和規則,如下圖所示。

    Screenshot showing how to upload a JSON file to define a replication policy

  5. 選取 [上傳] 以在目的地帳戶上建立複寫原則。

然後,您可以下載 JSON 檔案,其中包含可提供給其他使用者以設定來源帳戶的原則定義。 若要下載此 JSON 檔案,請遵循下列步驟:

  1. 在 Azure 入口網站中,瀏覽至目的地帳戶的物件複寫設定。

  2. 選取您要下載之原則旁的 [更多] 按鈕,然後選取 [下載規則],如下圖所示。

    Screenshot showing how to download replication rules to a JSON file

  3. 將 JSON 檔案儲存至您的本機電腦,以與其他使用者共用,藉此設定來源帳戶的原則。

所下載 JSON 檔案包含 Azure 儲存體為目的地帳戶上原則建立的原則識別碼。 您必須使用相同原則識別碼來設定來源帳戶的物件複寫。

請記住,上傳 JSON 檔案以透過 Azure 入口網站建立目的地帳戶的複寫原則,並不會自動在來源帳戶中建立相同的原則。 在 Azure 儲存體開始複寫物件之前,另一位使用者必須在來源帳戶上建立原則。

檢查 Blob 的複寫狀態

您可以使用 Azure 入口網站、PowerShell 或 Azure CLI 檢查來源帳戶中 Blob 的複寫狀態。 在複寫完成或失敗之前,不會填入物件複寫屬性。

若要在 Azure 入口網站的來源帳戶中檢查 Blob 的複寫狀態,請遵循下列步驟:

  1. 巡覽至 Azure 入口網站的 [來源帳戶]。
  2. 找出包含來源 Blob 的容器。
  3. 選取 Blob 以顯示其屬性。 如果已成功複寫 Blob,您會在 [物件複寫] 區段中看到狀態設定為 [完成]。 此外,也會列出複寫原則識別碼和負責管理此容器物件複寫規則的識別碼。

Screenshot showing replication status for a blob in the source account

如果來源帳戶中 Blob 的複寫狀態指出失敗,則請調查下列可能的原因:

  • 確定已在目的地帳戶上設定物件複寫原則。
  • 確認目的地容器仍然存在。
  • 如果已使用客戶提供的金鑰來加密來源 Blob 作為寫入作業的一部分,則物件複寫將會失敗。 如需客戶提供金鑰的詳細資訊,請參閱針對針對 Blob 儲存體的要求提供加密金鑰

移除複寫原則

若要移除複寫原則及其相關聯的規則,請使用 Azure 入口網站、PowerShell 或 CLI。

若要在 Azure 入口網站中移除複寫原則,請遵循下列步驟:

  1. 巡覽至 Azure 入口網站的 [來源儲存體帳戶]。
  2. 在 [設定] 下,選取 [物件複寫]
  3. 選取原則名稱旁邊的 [更多] 按鈕。
  4. 選取 [刪除規則]

下一步