オブジェクト レプリケーション (OR) は現在、完了時間が保証されていない状態で、ソース ストレージ アカウントから 1 つ以上の宛先アカウントにすべての操作を非同期的にコピーします。 ただし、オブジェクト レプリケーションの優先順位レプリケーションが導入されたので、ユーザーはレプリケーション ポリシー内の操作のレプリケーションに優先順位を付けることを選択できるようになりました。
レプリケーションのソース アカウントと移行先アカウントが同じ大陸内にある場合、OR 優先度レプリケーションでは、サポートされているワークロードに対して 15 分以内に 99.0% のオブジェクトもレプリケートされます。 詳細については、資格要件の包括的な一覧の SLA 条件 を参照してください。
Important
OR Priority Replication は一般公開されており、次の例外を除き、すべてのパブリック クラウド リージョンで提供されます。
オブジェクト レプリケーションの優先順位レプリケーションの Azure portal エクスペリエンスにアクセスするには、「 Azure サブスクリプションでプレビュー機能を設定 する」を参照し、機能名として AllowPriorityObjectReplicationInPortal を指定します。 このプレビュー機能のプロバイダー名は次のとおりです。 Microsoft.Storage
優先順位レプリケーションの利点
オブジェクト レプリケーション (OR) 優先度レプリケーションにより、Azure オブジェクト レプリケーションのレプリケーションのパフォーマンスと可観測性が大幅に向上します。 さらに、優先順位レプリケーションには、ソースと宛先のストレージ アカウントが同じ大陸内に存在する場合に、ユーザーにパフォーマンス保証を提供するサービス レベル アグリーメント (SLA) が付属しています。 サポートされているワークロードまたは優先度レプリケーションでは、15 分以内に 99.0% のオブジェクトもレプリケートされます。 このレベルの保証は、ディザスター リカバリー、ビジネス継続性、高可用性アーキテクチャを含むシナリオに特に価値があります。
優先順位レプリケーションでは、パフォーマンスの保証に加えて、OR メトリックが自動的に有効になり、レプリケーションの進行状況の可視性が向上します。 これらのメトリックを使用すると、ユーザーは、0 ~ 5 分、5 ~ 10 分などのタイム バケットにセグメント化された、レプリケーションが保留中の操作数とバイト数を監視できます。 この詳細な分析情報は、チームがレプリケーションの正常性を事前に管理し、潜在的な遅延を特定するのに役立ちます。 OR メトリックの詳細については、 レプリケーション メトリック に関する記事を参照してください。
SLA の適格性と除外
オブジェクト レプリケーションの優先度レプリケーションが有効になっている場合、ユーザーは優先順位付けされたレプリケーションと、OR メトリックからのレプリケーションの進行状況の可視性の向上の恩恵を受けます。 ソース ストレージ アカウントから移行先ストレージ アカウントへのレプリケーションには優先順位が付けられますが、優先順位レプリケーションのサービス レベル アグリーメントの対象となるワークロードには制限があります。 次のような制限です。
- 5 ギガバイト (GB) を超えるオブジェクト。
- 1 秒あたり 10 回以上変更されるオブジェクト。
- ソース ストレージ アカウントと移行先ストレージ アカウントが同じ大陸内にないオブジェクト レプリケーション ポリシー。
- 指定されたストレージ アカウントは次の通りです:
- 5 ペタバイト (PB) を超える、または
- 100 億個より多くの BLOB がある。そして
- 次の条件に該当する期間中:
- ストレージ アカウントまたはレプリケーション ポリシーのデータ転送速度が 1 ギガビット/秒 (Gbps) を超え、結果として生じる書き込みのバック ログがレプリケートされます。
- ストレージ アカウントまたはレプリケーション ポリシーが 1 秒あたり 1,000 個の PUT 操作または DELETE 操作を超え、結果の書き込みのバック ログがレプリケートされ、
- 既存の BLOB レプリケーションは、最近のレプリケーション ポリシーの作成または更新後に保留中です。 既存の BLOB レプリケーションは、平均して 1 日あたり 100 TB で進行すると推定されますが、多くのバージョンの BLOB が存在する場合、速度が低下する可能性があります。
資格要件の包括的な一覧については、公式の SLA 条件 を参照してください。
Important
ストレージ アカウントには最大 2 つのオブジェクト レプリケーション ポリシーを含めることができますが、優先順位レプリケーションは、ソース ストレージ アカウントごとに 1 つのオブジェクト レプリケーション ポリシーでのみ有効にできます。 ユーザーは、優先度レプリケーションをオプトアウトすることを決定する際に、特に重要なワークロードに対して機能が有効になっている場合に計画する必要があります。
機能の価格
OR 優先度レプリケーションを有効にすると、すべての新しいデータイングレスに対して GB 単位のコストが発生します。 Azure Storage の価格の詳細については、 Azure Storage の価格 に関する記事を参照してください。
読み取りトランザクションと書き込みトランザクションの標準コスト、およびネットワーク エグレスの場合は、オブジェクト レプリケーションに引き続き適用されます。 これらの料金は既存の OR 価格と一致するため、優先度レプリケーションの合計コストを見積もるときに考慮する必要があります。 オブジェクト レプリケーション固有の価格の概要については、オブジェクト レプリケーションの 概要 に関する記事の価格セクションを参照してください。
Important
お客様は、優先度レプリケーションをいつでも無効にできる柔軟性を備えています。 ただし、機能の課金は無効になってから 30 日間継続されることに注意してください。
OR 優先度レプリケーションの SLA コンプライアンスを監視する
透明性を確保し、お客様が OR 優先度レプリケーションのパフォーマンスを追跡できるようにするために、Azure には、Azure portal、PowerShell、Azure CLI に直接統合された 2 つの監視ツールが用意されています。 OR 優先度レプリケーションが有効になっている場合、オブジェクト レプリケーションのレプリケーション メトリックも自動的に有効になります。 これらのメトリックにより、ユーザーはレプリケーションの遅延のトラブルシューティングを行い、ユーザーが SLA コンプライアンスを監視するのに役立ちます。 現在サポートされているメトリックは次のとおりです。
-
レプリケーションの保留中の操作: タイム バケットごとに出力されたソースから宛先のストレージ アカウントへのレプリケーションが保留中の操作の合計数
-
レプリケーションの保留中のバイト数: タイム バケットごとに出力されたソースから宛先のストレージ アカウントへのレプリケーションが保留中のバイト数の合計
前述の各メトリックは、0 ~ 5 分、10 ~ 15 分、 > 24 時間を含むタイム バケットのディメンションで表示できます。 すべての操作が 15 分以内にレプリケートされるようにする OR 優先度レプリケーションを持つユーザー。は、より大きなタイム バケット (例: 30 分から 2 時間または 8 ~ 24 時間) を監視し、請求月全体でゼロまたはゼロに近いことを確認できます。
OR メトリックの詳細については、 レプリケーション メトリックを参照してください。
ユーザーには、ソース BLOB のレプリケーション状態の確認など、他のオプションもあります。 ユーザーは、ソース BLOB のレプリケーション状態を確認して、宛先へのレプリケーションが完了したかどうかを判断できます。 レプリケーションの状態が Completed としてマークされると、ユーザーは BLOB が移行先アカウントで使用可能であることを保証できます。 詳細ビューについては、 BLOB のレプリケーションの状態を確認してください。
オブジェクト レプリケーションの優先順位レプリケーションを有効または無効にする
ユーザーは、Azure portal、PowerShell、または Azure CLI を使用して、新規と既存の両方の OR ポリシーで OR 優先度レプリケーションを有効にすることができます。 既存の OR ポリシーに対して有効にすることも、新しい OR ポリシーを作成するプロセス中に有効にすることもできます。
新しいポリシーの作成時に優先度レプリケーションを有効にする
新しい OR ポリシーを作成するときに OR 優先度レプリケーションを有効にするには、次の手順を実行します。
Important
OR Priority Replication は一般公開されており、次の例外を除き、すべてのパブリック クラウド リージョンで提供されます。
オブジェクト レプリケーションの優先順位レプリケーションの Azure portal エクスペリエンスにアクセスするには、「 Azure サブスクリプションでプレビュー機能を設定 する」を参照し、機能名として AllowPriorityObjectReplicationInPortal を指定します。 このプレビュー機能のプロバイダー名は次のとおりです。 Microsoft.Storage
Azure portal に移動し、新しいストレージ アカウントを作成します。
次のスクリーンショットに示すように、[ レプリケーション ルールの作成 ] タブを選択して [ レプリケーション ルールの作成 ] ウィンドウを開きます。
[ レプリケーション ルールの作成 ] ウィンドウで、選択した 宛先サブスクリプション と 宛先ストレージ アカウントを選択します。 次のように 、[優先順位レプリケーションを有効にする] チェック ボックスをオンにします。
ドロップダウン メニューから [ソース コンテナー ] と [宛先コンテナー] の値を選択して 、コンテナー ペアを作成します。 最後に、[ 作成 ] を選択して、優先順位レプリケーションが有効になっている新しい OR ポリシーを追加します。
次のコマンドを実行する前に、最新の Azure PowerShell バージョンがインストールされていることを確認してください。 インストール手順については、 Azure PowerShell を参照してください。
Set-AzStorageObjectReplicationPolicy コマンドレットを New-AzStorageObjectReplicationPolicyRule コマンドレットと共に使用して、新しいポリシーで OR Priority Replication を有効にすることができます。 以下のサンプル スクリプトを使用するか、詳細については 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 portal で、変更するストレージ アカウントに移動します。 左側のナビゲーション ウィンドウで、[ データ管理 ] グループを展開し、[ オブジェクト レプリケーション] を選択します。 既定では、[ アカウント ] タブが選択され、ストレージ アカウントのすべての既存の OR ポリシーが表示されます。
優先順位レプリケーションを有効にする
優先的レプリケーションを追加したい OR ポリシーを探します。 次のスクリーンショットに示すように、[優先順位レプリケーション] 列の [有効] リンクを選択します。
[ 優先順位レプリケーションの有効化 ] ダイアログ ボックスで、優先度レプリケーションの有効化に関する情報を確認します。 次のスクリーンショットに示すように、選択した OR ポリシーの優先度レプリケーションを有効 にするには、[有効] を 選択します。
優先順位レプリケーションを無効にする
優先順位レプリケーションを削除する OR ポリシーを見つけて、[ その他のオプション ] 省略記号を選択します。 ドロップダウン メニューから [ルールの 編集 ] を選択し、次のように [ レプリケーション ルールの編集] ウィンドウを開きます。
優先順位レプリケーションを無効にするには、[優先順位レプリケーションを 有効にする] チェック ボックスをオフにします。 次のスクリーンショットに示すように、[ 保存] を 選択して変更を保存します。
次のコマンドを実行する前に、最新の Azure PowerShell バージョンがインストールされていることを確認してください。 インストール手順については、 Azure PowerShell を参照してください。
Set-AzStorageObjectReplicationPolicy コマンドレットを使用して、既存のポリシーで OR Priority Replication を有効または無効にすることができます。 以下のサンプル スクリプトを使用するか、詳細については 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 storage account update のドキュメントを参照して詳細を確認してください。
# 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