次の方法で共有


ブロック BLOB のオブジェクト レプリケーションを構成する

オブジェクト レプリケーションを使用すると、ソース ストレージ アカウントと宛先アカウントの間でブロック BLOB を非同期にコピーできます。 オブジェクト レプリケーションを構成するときに、ソース ストレージ アカウントと宛先アカウントを指定するレプリケーション ポリシーを作成します。 レプリケーション ポリシーには、ソース コンテナーと宛先コンテナーを指定し、レプリケートするソース コンテナー内のブロック BLOB を示す 1 つ以上のルールが含まれます。 オブジェクト レプリケーションの詳細については、「ブロック BLOB のオブジェクト レプリケーション」を参照してください。

この記事では、Azure portal、PowerShell、または Azure CLI を使用してオブジェクト レプリケーション ポリシーを構成する方法について説明します。 また、Azure Storage リソース プロバイダー クライアント ライブラリのいずれかを使用して、オブジェクト レプリケーションを構成することもできます。

[前提条件]

オブジェクト レプリケーションを構成する前に、ソース ストレージ アカウントと移行先ストレージ アカウントがまだ存在しない場合は作成します。 ソース アカウントと移行先アカウントには、汎用 v2 ストレージ アカウントまたは Premium ブロック BLOB アカウントのいずれかを指定できます。 詳細については、Azure Storage アカウントの作成に関するページを参照してください。

オブジェクト レプリケーションでは、ソース アカウントと移行先アカウントの両方で BLOB のバージョン管理が有効になっており、その BLOB 変更フィードがソース アカウントに対して有効になっている必要があります。 BLOB のバージョン管理の詳細については、 BLOB のバージョン管理に関するページを参照してください。 変更フィードの詳細については、 Azure Blob Storage での変更フィードのサポートに関するページを参照してください。 これらの機能を有効にすると、追加コストが発生する可能性があることに注意してください。

ストレージ アカウントのオブジェクト レプリケーション ポリシーを構成するには、ストレージ アカウント以上のレベルをスコープとする Azure Resource Manager 共同作成者 ロールが割り当てられている必要があります。 詳細については、Azure ロールベースのアクセス制御 (Azure RBAC) ドキュメントの Azure 組み込みロール を参照してください。

階層型名前空間が有効になっているアカウントでは、オブジェクト レプリケーションはまだサポートされていません。

両方のストレージ アカウントにアクセスしてオブジェクト レプリケーションを構成する

ソース ストレージ アカウントと移行先ストレージ アカウントの両方にアクセスできる場合は、両方のアカウントでオブジェクト レプリケーション ポリシーを構成できます。 次の例は、Azure portal、PowerShell、または Azure CLI を使用してオブジェクト レプリケーションを構成する方法を示しています。

Azure portal でオブジェクト レプリケーションを構成する場合は、ソース アカウントでポリシーを構成するだけで済みます。 ソース アカウントの構成を完了すると、Azure ポータルにより、宛先アカウントにポリシーが自動的に作成されます。

Azure portal でレプリケーション ポリシーを作成するには、次の手順に従います。

  1. Azure portal でソース ストレージ アカウントに移動します。

  2. [ データ管理] で、[ オブジェクト レプリケーション] を選択します。

  3. [レプリケーション ルールの作成] を選択します。

  4. 移行先のサブスクリプションとストレージ アカウントを選択します。

  5. [ コンテナー ペアの詳細 ] セクションで、ソース アカウントからソース コンテナーを選択し、移行先アカウントから宛先コンテナーを選択します。 Azure portal から、レプリケーション ポリシーごとに最大 10 個のコンテナー ペアを作成できます。 10 個を超えるコンテナー ペア (最大 1000 個) を構成するには、「 JSON ファイルを使用したオブジェクト レプリケーションの構成」を参照してください。

    次の図は、一連のレプリケーション規則を示しています。

    Azure portal のレプリケーション 規則を示すスクリーンショット

  6. 必要に応じて、プレフィックス パターンに一致する BLOB のみをコピーする 1 つ以上のフィルターを指定します。 たとえば、プレフィックス bを指定した場合、その文字で始まる名前の BLOB のみがレプリケートされます。 プレフィックスの一部として仮想ディレクトリを指定できます。 最大 5 つのプレフィックス一致を追加できます。 プレフィックス文字列はワイルドカード文字をサポートしていません。

    次の図は、レプリケーション ルールの一部としてコピーされる BLOB を制限するフィルターを示しています。

    レプリケーション ルールのフィルターを示すスクリーンショット

  7. 既定では、コピー スコープは新しいオブジェクトのみをコピーするように設定されています。 コンテナー内のすべてのオブジェクトをコピーするか、カスタム日時からオブジェクトをコピーするには、 変更 リンクを選択し、コンテナー ペアのコピー スコープを構成します。

    次の図は、指定した日時以降にオブジェクトをコピーするカスタム コピー スコープを示しています。

    オブジェクト レプリケーションのカスタム コピー スコープを示すスクリーンショット

  8. [ 保存して適用] を選択してレプリケーション ポリシーを作成し、データのレプリケートを開始します。

オブジェクト レプリケーションを構成すると、次の図に示すように、レプリケーション ポリシーと規則が Azure portal に表示されます。

Azure portal のオブジェクト レプリケーション ポリシーを示すスクリーンショット

JSON ファイルを使用してオブジェクト レプリケーションを構成する

ソース ストレージ アカウントに対するアクセス許可がない場合、または 10 個を超えるコンテナー ペアを使用する場合は、移行先アカウントでオブジェクト レプリケーションを構成し、ポリシー定義を含む JSON ファイルを別のユーザーに提供して、ソース アカウントで同じポリシーを作成できます。 たとえば、移行元アカウントが移行先アカウントとは異なる Microsoft Entra テナントにある場合は、このアプローチを使用してオブジェクト レプリケーションを構成できます。

ポリシー定義を含む JSON ファイルを作成する方法については、 ポリシー定義ファイルを参照してください。

ストレージ アカウントでは、テナント間オブジェクトレプリケーションが既定で許可されます。 テナント間のレプリケーションを防ぐために、 AllowCrossTenantReplication プロパティを設定して、ストレージ アカウントのテナント間オブジェクト レプリケーションを禁止できます。 詳細については、「 Microsoft Entra テナント間でのオブジェクト レプリケーションの防止」を参照してください。

このセクションの例では、移行先アカウントでオブジェクト レプリケーション ポリシーを構成し、そのポリシーの JSON ファイルを取得し、別のユーザーがソース アカウントでポリシーを構成するために使用できる方法を示します。

Azure portal で JSON ファイルを使用して宛先アカウントのオブジェクト レプリケーションを構成するには、次の手順に従います。

  1. レプリケーション先アカウントのレプリケーション ポリシーを定義するローカル JSON ファイルを作成します。 Azure Storage でポリシー ID が定義されるように、 policyId フィールドを 既定値 に設定します。

    レプリケーション ポリシーを定義する JSON ファイルを簡単に作成する方法は、まず Azure portal で 2 つのストレージ アカウント間にテスト レプリケーション ポリシーを作成することです。 その後、レプリケーション規則をダウンロードし、必要に応じて JSON ファイルを変更できます。

  2. Azure portal で、移行先アカウントの オブジェクト レプリケーション 設定に移動します。

  3. [ レプリケーション 規則のアップロード] を選択します。

  4. JSON ファイルをアップロードします。 次の図に示すように、作成されるポリシーとルールが Azure portal に表示されます。

    JSON ファイルをアップロードしてレプリケーション ポリシーを定義する方法を示すスクリーンショット

  5. [ アップロード] を選択して、レプリケーション先アカウントにレプリケーション ポリシーを作成します。

その後、ソース アカウントを構成するために別のユーザーに提供できるポリシー定義を含む JSON ファイルをダウンロードできます。 この JSON ファイルをダウンロードするには、次の手順に従います。

  1. Azure portal で、移行先アカウントの オブジェクト レプリケーション 設定に移動します。

  2. 次の図に示すように、ダウンロードするポリシーの横にある [ その他 ] ボタンを選択し、[ ルールのダウンロード] を選択します。

    JSON ファイルにレプリケーション ルールをダウンロードする方法を示すスクリーンショット

  3. JSON ファイルをローカル コンピューターに保存して、別のユーザーと共有し、ソース アカウントでポリシーを構成します。

ダウンロードした JSON ファイルには、Azure Storage が宛先アカウントのポリシーに対して作成したポリシー ID が含まれます。 ソース アカウントでオブジェクト レプリケーションを構成するには、同じポリシー ID を使用する必要があります。

Json ファイルをアップロードして、Azure portal を使用して宛先アカウントのレプリケーション ポリシーを作成しても、ソース アカウントに同じポリシーが自動的に作成されない点に注意してください。 Azure Storage がオブジェクトのレプリケートを開始する前に、別のユーザーがソース アカウントにポリシーを作成する必要があります。

レプリケーション メトリックを構成する

レプリケーション メトリックを有効にする

新規および既存のオブジェクト レプリケーション ポリシーの両方でレプリケーション メトリックを有効にすることができます。 メトリックの監視が開始されるまでに数分かかる場合があります。

メトリックを有効にするには、新しい [メトリック] 列の [オブジェクト レプリケーション] ブレードを使用するか、"..." から OR ポリシー行でポリシーの [ルールの編集] セクションを編集します。

既存のデータをコピーするように構成されているポリシーでメトリックを有効にした場合、ポリシーが一覧表示の最初のフェーズで動作している間に、最初に量が増える可能性があります。 これが完了すると、レプリケーションが開始されます。

レプリケーション メトリックを表示する

[メトリック] 列の [表示 ] リンクをクリックすると、監視メトリックを表示できます

Azure Monitor でメトリックをさらに表示するには、メトリックのグラフをクリックします。 これにより、より多くのフィルター機能を備えた Azure Monitor メトリック ビューが表示されます。

BLOB のレプリケーションの状態を確認する

ソース アカウント内の BLOB のレプリケーションの状態は、Azure portal、PowerShell、または Azure CLI を使用して確認できます。 オブジェクト レプリケーションのプロパティは、レプリケーションが完了するか失敗するまで設定されません。

Azure portal でソース アカウント内の BLOB のレプリケーションの状態を確認するには、次の手順に従います。

  1. Azure portal でソース アカウントに移動します。
  2. ソース BLOB を含むコンテナーを見つけます。
  3. BLOB を選択して、そのプロパティを表示します。 BLOB が正常にレプリケートされた場合は、[ オブジェクト レプリケーション ] セクションに状態が [完了] に設定されていることがわかります。 このコンテナーのオブジェクト レプリケーションを管理する規則のレプリケーション ポリシー ID と ID も一覧表示されます。

ソース アカウント内の BLOB のレプリケーションの状態を示すスクリーンショット

レプリケーション ポリシーを削除する

レプリケーション ポリシーとそれに関連付けられている規則を削除するには、Azure portal、PowerShell、または CLI を使用します。

Azure portal でレプリケーション ポリシーを削除するには、次の手順に従います。

  1. Azure portal でソース ストレージ アカウントに移動します。
  2. [ 設定] で、[ オブジェクト レプリケーション] を選択します。
  3. ポリシー名の横にある [ その他 ] ボタンを選択します。
  4. [ ルールの削除] を選択します

次のステップ