物件複寫 (OR) 目前會以非同步方式將所有作業從來源儲存體帳戶複製到一或多個目的地帳戶,不保證完成時間。 不過,隨著物件複寫優先順序複寫的引入,使用者現在可以選擇在其複寫原則中優先複寫作業。
當複寫的來源和目的地帳戶位於同一大陸內時,OR 優先順序複寫也會在 15 分鐘內複寫 99.0% 的物件,以取得支援的工作負載。 如需詳細資訊,請參閱 SLA 條款 ,以取得資格需求的完整清單。
這很重要
OR 優先級複寫已在所有公有雲區域正式推出並提供,但下列情況除外:
若要存取物件複寫優先順序複寫的 Azure 入口網站體驗,請參閱在 Azure 訂用帳戶中設定預覽功能 ,並指定 AllowPriorityObjectReplicationInPortal 為功能名稱。 此預覽功能的提供者名稱為 Microsoft.Storage
優先複製的好處
物件複寫 (OR) 優先順序複寫可大幅改善 Azure 物件複寫的複寫效能和可觀察性。 此外,優先順序複寫隨附服務等級協定 (SLA),只要來源和目的地儲存體帳戶位於相同的大陸內,則可為使用者提供效能保證。 對於所支援的工作負載或是優先複寫,也能在 15 分鐘內完成 99.0% 的物件複寫。 這種程度的保證對於涉及災難恢復、業務連續性和高可用性架構的場景特別有價值。
除了效能保證之外,優先順序複寫還會自動啟用 OR 指標,從而增強對複寫進度的可見性。 這些指標可讓使用者監控待複寫的操作次數和待複寫的位元組數,並分段為時間範圍,例如 0-5 分鐘、5-10 分鐘及其他時間範圍。 這種詳細的見解可幫助團隊主動管理複製健康情況並識別潛在的延遲。 若要深入瞭解 OR 計量,請參閱 複寫計量 一文。
SLA 合格條件與例外規定
啟用物件複寫的優先複寫功能時,使用者除了享有優先複寫的好處外,還可以透過 OR 指標提高對其複寫進度的可視性。 雖然從來源儲存體帳戶到目的地儲存體帳戶的複寫仍會優先排序,但工作負載符合優先順序複寫服務等級協定的資格有限制。 這些限制包括:
- 大於 5 GB 的物件。
- 每秒修改超過 10 次的物件。
- 來源儲存體帳戶和目的地儲存體帳戶不在同一洲內的物件複寫原則。
- 儲存體帳戶符合以下條件:
- 大於 5 PB,或
- 擁有超過 100 億個 Blob,以及
- 在以下時間段:
- 您的儲存體帳戶或複寫原則的資料傳輸速率超過每秒 1 gigabit (Gbps),且產生的寫入累積資料正在進行複寫。
- 您的儲存體帳戶或複寫原則每秒超過 1,000 個 PUT 或 DELETE 作業,且產生的寫入累積資料正在進行複寫,以及
- 在最近建立或更新複寫原則後,現有的 Blob 複寫處於待處理的狀態。 現有的 Blob 複寫估計平均每天以 100 TB 的速度進行,但當具有許多版本的 Blob 存在時,速度可能會降低。
請參閱官方 SLA 條款 ,以取得資格要求的完整清單。
這很重要
雖然儲存體帳戶最多可以有兩個物件複寫原則,但每個來源儲存體帳戶只能在一個物件複寫原則上啟用優先順序複寫。 使用者在決定選擇退出優先順序複寫時應相應地規劃,特別是如果已針對關鍵工作負載啟用此功能。
按功能定價
啟用 OR 優先順序複寫會針對所有新資料輸入產生每 GB 的成本。 如需詳細的 Azure 儲存體定價資訊,請參閱 Azure 儲存體定價 一文。
讀取和寫入交易以及網路輸出的標準成本仍適用於物件複寫。 這些費用與現有的 OR 定價一致,在預估使用優先順序複寫的總成本時應考慮。 如需物件複寫特定定價的概觀,請參閱 物件複寫概觀 文章中的定價區段。
這很重要
客戶可以隨時靈活地禁用優先級複製。 但是,請務必注意,該功能的計費將在停用後持續 30 天。
監視 OR 優先複寫的 SLA 合規性
為了確保透明度並讓客戶能夠追蹤 OR 優先順序複寫的效能,Azure 提供了兩個直接整合到 Azure 入口網站 中的監視工具:PowerShell 和 Azure CLI。 啟用 OR 優先順序複寫時,物件複寫的複寫度量也會自動啟用。 這些指標讓使用者能夠更有效地解決複製延遲問題,並有助於監控他們的 SLA 合規性。 現在支援的指標包括:
-
待復寫的操作:依據時間區間發出從來源儲存帳戶到目的地儲存帳戶的待復寫操作總數
-
待複寫的位元組:按每個時間貯體發出,從來源到目的地儲存帳戶的待複寫位元組總和
前面提到的每個指標都可以使用時間桶維度來查看,包括 0-5 分鐘、10-15 分鐘和 > 24 小時。 具有 OR 優先順序複寫的使用者,希望確保其所有作業能夠在 15 分鐘內完成複寫;他們可以監控較大的時間範圍(例如:30 分鐘 – 2 小時或 8-24 小時),並確保這些範圍的值在整個計費月份中保持為零或盡量接近零。
如需 OR 指標的詳細資訊,請參閱 複寫指標。
使用者也有其他選項,例如檢查其來源 Blob 的複寫狀態。 使用者可以檢查來源 Blob 的複寫狀態,以判斷複寫至目的地是否完成。 一旦複寫狀態標示為 Completed,使用者就可以保證 Blob 在目的地帳戶中可用。 如需詳細資訊檢視, 請檢查 Blob 的複寫狀態。
啟用及停用物件複寫的優先複寫
使用者可以使用 Azure 入口網站、PowerShell 或 Azure CLI 在新的和現有的 OR 原則上啟用 OR 優先順序複寫。 您可以針對現有的 OR 原則啟用它,或者在建立新 OR 原則時啟用它。
在建立新原則期間啟用優先複製
若要啟用 OR 優先順序抄寫於建立新的 OR 政策時,請完成下列步驟:
這很重要
OR 優先級複寫已在所有公有雲區域正式推出並提供,但下列情況除外:
若要存取物件複寫優先順序複寫的 Azure 入口網站體驗,請參閱在 Azure 訂用帳戶中設定預覽功能 ,並指定 AllowPriorityObjectReplicationInPortal 為功能名稱。 此預覽功能的提供者名稱為 Microsoft.Storage
流覽至 Azure 入口網站 並建立新的儲存體帳戶。
選取 [ 建立複寫規則 ] 索引標籤以開啟 [ 建立複寫規則 ] 窗格,如下列螢幕擷取畫面所示。
在 [建立複寫規則] 窗格中,選取您選擇的 [目的地訂用帳戶] 和 [目的地儲存體帳戶]。 選取 [啟用優先順序複寫 ] 核取方塊,如下所示。
從下拉式功能表中選取 [ 來源容器 ] 和 [目的地容器 ] 值,以建立容器配對。 最後,選取 [ 建立 ] 以新增啟用優先順序複寫的新 OR 原則。
執行下列命令之前,請確定您已安裝最新的 Azure PowerShell 版本。 您可以在 Azure PowerShell 中找到安裝指示。
您可以將 Set-AzStorageObjectReplicationPolicy Cmdlet 與 New-AzStorageObjectReplicationPolicyRule Cmdlet 一起使用,以在新原則上啟用 OR 優先順序複寫。 使用下列範例腳本,或參閱 Set-AzStorageObjectReplicationPolicy 以取得更多詳細資訊。
# Login to your Azure account
Connect-AzAccount
# Set variables
$rgname = "<resource-group-name>"
$newAccountName = "<new-account-name>"
$destAccountName = "<destination-account-name>"
$srcAccountName = "<source-account-name>"
$srcAccountResourceID = "<source-account-resourceID"
$srcContainer = "<source-container-name>"
$destContainer = "<destination-container-name>"
# Create a new destination policy with priority replication enabled
$rule1 = New-AzStorageObjectReplicationPolicyRule -SourceContainer $srcContainer `
-DestinationContainer $destContainer
$destPolicy = Set-AzStorageObjectReplicationPolicy -ResourceGroupName $rgname `
-StorageAccountName $destAccountName -PolicyId default `
-SourceAccount $srcAccountResourceID -Rule $rule1 -EnableMetric $true `
-Rule $rule1 -EnableMetric $true -EnablePriorityReplication $true
# Set OR policy on the source account
$srcPolicy = Set-AzStorageObjectReplicationPolicy -ResourceGroupName $rgname -StorageAccountName $srcAccountName -InputObject $destPolicy
# Confirm OR priority replication is enabled
$srcPolicy.PriorityReplication.Enabled
執行下列命令之前,請確定您已安裝最新的 Azure CLI 版本。 您可以在 Azure CLI 中找到安裝指示。
您可以使用此 az storage account or-policy create 指令來建立啟用優先順序複寫的新物件複寫原則。 使用下列範例腳本,或參閱 az storage account create 檔以取得更多詳細資料。
# Login to your Azure account
az login
# Set variables
$rgname = "<resource-group-name>"
$newAccountName = "<new-account-name>"
$destAccountName = "<destination-account-name>"
$srcAccountName = "<source-account-name>"
$srcContainer = "<source-container-name>"
$destContainer = "<destination-container-name>"
# Set OR policy on destination account with priority replication enabled
az storage account or-policy create -n $destAccountName -s $srcAccountName /
--dcont $dstContainer --scont $srcContainer -t "2020-02-19T16:05:00Z" /
--enable-metrics True --priority-replication true
為現有的原則啟用或停用優先複寫
若要為現有的 OR 原則啟用或停用優先複寫,請完成以下步驟:
在 Azure 入口網站中,流覽至您要修改的儲存體帳戶。 在左側導覽窗格中,展開 [ 資料管理 ] 群組,然後選取 [物件複寫]。 預設會選取 [ 您的帳戶 ] 索引標籤,顯示儲存體帳戶的所有現有 OR 原則。
啟用優先順序複寫
找出您要新增優先順序複製的 OR 原則。 選取 [啟用] 連結,位於 [優先順序複寫] 欄,如下列螢幕擷取畫面所示。
在 [啟用優先順序複寫] 對話方塊中,檢閱啟用優先順序複寫的相關資訊。 選取 [啟用] 以啟用所選 OR 原則的優先順序複寫,如下列螢幕擷取畫面所示。
停用優先順序複寫
找出您要從中移除優先順序複寫的 OR 原則,然後選取 [ 更多選項 ] 省略符號。 從下拉式功能表中,選取 [編輯規則] 以開啟 [編輯複寫規則 ] 窗格,如圖所示。
若要停用優先順序複寫,請取消選取 啟用優先順序複寫 核取方塊。 選取 [儲存] 以儲存您的變更,如下列螢幕擷取畫面所示。
執行下列命令之前,請確定您已安裝最新的 Azure PowerShell 版本。 您可以在 Azure PowerShell 中找到安裝指示。
您可以使用 Set-AzStorageObjectReplicationPolicy Cmdlet 在現有原則上啟用或停用 OR 優先順序複寫。 使用下列範例腳本,或參閱 Set-AzStorageObjectReplicationPolicy 以取得更多詳細資訊。
# First, login to your Azure account
Connect-AzAccount
# Next, set your variables
$rgname = "<resource-group-name>"
$newAccountName = "<new-account-name>"
$destAccountName = "<destination-account-name>"
$srcAccountName = "<source-account-name>"
$srcAccountResourceID = "<source-account-resourceID"
$srcContainer = "<source-container-name>"
$destContainer = "<destination-container-name>"
在現有的 OR 原則上啟用優先順序複寫
下列範例 PowerShell 腳本示範如何在現有的 OR 原則上啟用優先順序複寫。
$destPolicy = Set-AzStorageObjectReplicationPolicy -ResourceGroupName $rgname -StorageAccountName $destAccountName `
-PolicyId default -SourceAccount $srcAccountResourceID `
-Rule $rule1 -EnableMetric $true -EnablePriorityReplication $true
$srcPolicy = Set-AzStorageObjectReplicationPolicy -ResourceGroupName $rgname -StorageAccountName $srcAccountName -InputObject $destPolicy -Debug
#Confirm OR Priority Replication is enabled
$srcPolicy.PriorityReplication.Enabled
停用優先順序複寫
下列範例 PowerShell 腳本示範如何停用現有 OR 原則上的優先順序複寫。
$destPolicy = Set-AzStorageObjectReplicationPolicy -ResourceGroupName $rgname -StorageAccountName $destAccountName `
-PolicyId default -SourceAccount $srcAccountResourceID `
-Rule $rule1 -EnableMetric $true -EnablePriorityReplication $false
$srcPolicy = Set-AzStorageObjectReplicationPolicy -ResourceGroupName $rgname -StorageAccountName $srcAccountName -InputObject $destPolicy -Debug
#Confirm that OR Priority Replication is disabled
$srcPolicy.PriorityReplication.Enabled
執行下列命令之前,請確定您已安裝最新的 Azure CLI 版本。 您可以在 Azure CLI 中找到安裝指示。
您可以使用此 az storage account or-policy update 命令來啟用或停用現有的物件複寫原則。 使用下列範例腳本,或參閱 az 儲存體帳戶更新 檔以取得更多詳細資料。
# First, login to your Azure account
az login
# Next, set your variables
$rgname = "<resource-group-name>"
$newAccountName = "<new-account-name>"
$destAccountName = "<destination-account-name>"
$srcAccountName = "<source-account-name>"
$srcContainer = "<source-container-name>"
$destContainer = "<destination-container-name>"
# Enable an existing OR policy on a destination account with priority replication enabled
az storage account or-policy update -n $destAccountName -s $srcAccountName /
--dcont $dstContainer --scont $srcContainer -t "2020-02-19T16:05:00Z" /
--enable-metrics True --priority-replication true
# Disable an existing OR policy on a destination account with priority replication enabled
az storage account or-policy update -n $destAccountName -s $srcAccountName /
--dcont $dstContainer --scont $srcContainer -t "2020-02-19T16:05:00Z" /
--enable-metrics True --priority-replication false