次の方法で共有


カスタマーマネージド (計画外) フェールオーバーのしくみ

カスタマーマネージド (計画外) フェールオーバーを使用すると、プライマリ リージョンのストレージ サービス エンドポイントが利用できなくなった場合に、geo 冗長ストレージ アカウント全体をセカンダリ リージョンにフェールオーバーできます。 フェールオーバーの間に、元のセカンダリ リージョンが新しいプライマリ リージョンになります。 その後、すべてのストレージ サービス エンドポイントは "新しい" プライマリ リージョンにリダイレクトされます。 ストレージ サービス エンドポイントの停止が解決されたら、別のフェールオーバー操作を実行して、元のプライマリ リージョンに "フェールバック" できます。

この記事では、カスタマーマネージド (計画外) フェールオーバーとフェールバックの間、プロセスの各ステージで何が起きるのかを説明します。

重要

Azure Data Lake Storage Gen2 が有効になっているアカウントのカスタマーマネージド (計画外) フェールオーバーは、現在プレビュー段階であり、すべてのパブリック GRS/GZRS リージョンでサポートされています。

ベータ版、プレビュー版、または一般提供としてまだリリースされていない Azure の機能に適用される法律条項については、「Microsoft Azure プレビューの追加使用条件」を参照してください。

重要

SSH ファイル転送プロトコル (SFTP) が有効になっているアカウントに対する顧客管理 (計画外の) フェールオーバーは現在プレビュー段階であり、すべての GRS/GZRS リージョンでサポートされています。

ベータ版、プレビュー版、または一般提供としてまだリリースされていない Azure の機能に適用される法律条項については、「Microsoft Azure プレビューの追加使用条件」を参照してください。

計画外フェールオーバーとフェールバックの間の冗長性管理

ヒント

計画外フェールオーバーおよびフェールバック プロセス中のさまざまな冗長性状態の詳細を理解するには、「Azure Storage の冗長性」を参照してそれぞれの定義を確認してください。

ストレージ アカウントが geo 冗長ストレージ (GRS) または読み取りアクセス geo 冗長ストレージ (RA-GRS) 冗長として構成されている場合、ローカル冗長ストレージ (LRS) のプライマリとセカンダリ両方のリージョン内でデータが 3 回レプリケートされます。 ストレージ アカウントが geo ゾーン冗長ストレージ (GZRS) または読み取りアクセス geo ゾーン冗長ストレージ (RA-GZRS) のレプリケーション用に構成されている場合、データはゾーン冗長ストレージ (ZRS) のプライマリ リージョン内でゾーン冗長になり、LRS セカンダリ リージョン内で 3 回レプリケートされます。 アカウントが読み取りアクセス (RA) 用に構成されている場合は、セカンダリ リージョンからのデータの読み取りは、そのリージョンへのストレージ サービス エンドポイントが利用可能である場合にのみ実行できます。

カスタマーマネージド (計画外) フェールオーバー プロセスの間に、ストレージ サービス エンドポイントのドメイン ネーム システム (DNS) エントリが切り替えられます。 ストレージ アカウントのセカンダリ エンドポイントが新しいプライマリ エンドポイントになり、元のプライマリ エンドポイントは新しいセカンダリになります。 フェールオーバーの後、元のプライマリ リージョン内のストレージ アカウントのコピーは削除され、ストレージ アカウントはそのまま "新しい" プライマリ リージョン内ローカルで 3 回レプリケートされます。 その時点で、ストレージ アカウントはローカル冗長となり、LRS を利用するようになります。

元々と現在の冗長構成は、ストレージ アカウントのプロパティ内に保存されます。 この機能を使用すると、フェールバック時に元の構成に戻ることができます。 結果として得られる冗長性構成の完全な一覧については、復旧計画とフェールオーバーに関する記事をご覧ください。

フェールオーバーの後で geo 冗長性を回復するには、アカウントを GRS として再構成する必要があります。アカウントが geo 冗長として再構成されると、Azure はすぐに新しいプライマリ リージョンから新しいセカンダリへのデータのコピーを開始します。 ストレージ アカウントをセカンダリ リージョンへの読み取りアクセス用に構成すると、そのアクセスが利用できるようになります。 ただし、プライマリからセカンダリ リージョンへのレプリケーションが完了するにはある程度の時間がかかる場合があります。

警告

アカウントが geo 冗長として再構成された後、新しいプライマリ リージョンの既存のデータが新しいセカンダリに完全にコピーされるまでに、かなり時間がかかる場合があります。

大きなデータ損失を防ぐため、フェールバックを行う前に、最終同期時刻プロパティの値を確認してください。 データ損失が発生していないかを評価するには、最終同期時刻を、データが新しいプライマリに最後に書き込まれた時刻と比較します。

フェールバック プロセスは基本的にフェールオーバー プロセスと同じですが、レプリケーションの構成がフェールオーバー前の元の状態に復元される点が異なります。

フェールバックの後で、geo 冗長を利用するようにストレージ アカウントを再構成できます。 元のプライマリが ZRS として構成されていた場合は、GZRS または RA-GZRS として構成できます。 その他のオプションについては、「ストレージ アカウントのレプリケーション方法の変更」を参照してください。

計画外フェールオーバーを開始する方法

計画外フェールオーバーを開始する方法については、「アカウント フェールオーバーの開始」を参照してください。

注意事項

通常、計画外フェールオーバーには、何らかのデータ損失とファイルおよびデータの不整合の可能性が伴います。 この種類のフェールオーバーを開始する前に、アカウント フェールオーバーがデータに与える影響を理解しておくことが重要です。

データ損失と不整合の可能性について詳しくは、「データ損失と不整合を予測する」をご覧ください。

計画外フェールオーバーおよびフェールバック プロセス

このセクションでは、カスタマーマネージド (計画外) フェールオーバーのフェールオーバー プロセスの概要を示します。

計画外フェールオーバーの移行の概要

カスタマーマネージド (計画外) フェールオーバーの後:

  • セカンダリ リージョンが新しいプライマリになります
  • 元のプライマリ リージョン内のデータのコピーが削除されます
  • ストレージ アカウントが LRS に変換されます
  • geo 冗長が失われます

次の表は、カスタマーマネージド (計画外) フェールオーバーとフェールバックのすべてのステージにおける冗長構成の状態をまとめたものです。

変更元
configuration
の後
failover
geo 冗長性の
再有効化後
の後
フェールバック
geo 冗長性の
再有効化後
GRS LRS GRS 1 LRS GRS 1
GZRS LRS GRS 1 ZRS GZRS 1

1 geo 冗長性は、カスタマーマネージド (計画外) フェールオーバーの間に失われるため、手動で再構成する必要があります。

計画外フェールオーバーの移行の詳細

以下の図は、geo 冗長用に構成されたストレージ アカウントでのお客様が管理する (計画外の) フェールオーバーとフェールバックのプロセスを示したものです。 GZRS と RA-GZRS の切り替えの詳細は、GRS と RA-GRS とは若干異なります。

通常の動作 (GRS/RA-GRS)

通常の状況では、クライアントはストレージ サービス エンドポイントを通してプライマリ リージョンのストレージ アカウントにデータを書き込みます (1)。 その後、データはプライマリ リージョンからセカンダリ リージョンに非同期的にコピーされます (2)。 次の図は、GRS として構成されたストレージ アカウントの、プライマリ エンドポイントが使用可能な通常状態を示したものです。

クライアントがプライマリ リージョン内のストレージ アカウントにデータを書き込むしくみを示す図。

ストレージ サービス エンドポイントがプライマリ リージョンで使用できなくなる (GRS/RA-GRS)

何らかの理由でプライマリ ストレージ サービス エンドポイントが使用できなくなった場合 (1)、クライアントはストレージ アカウントに書き込むことができなくなります。 停止の根本原因によっては、セカンダリ リージョンへのレプリケーションが機能しなくなる可能性があるので (2)、何らかのデータ損失を覚悟しておく必要があります。 次の画像は、プライマリ エンドポイントが利用できなくなったシナリオの復旧が発生する前の状態を示しています。

プライマリが利用不可能であるため、クライアントがデータを書き込むことができない様子を示す図。

計画外フェールオーバー プロセス (GRS/RA-GRS)

データへの書き込みアクセスを復元するには、フェールオーバーを開始することができます。 BLOB、テーブル、キュー、ファイルのストレージ サービス エンドポイント URI は変化しませんが、それらの DNS エントリは、以下に示すようにセカンダリ リージョンを指すよう変更されます。

ユーザーがセカンダリ エンドポイントへのアカウント フェールオーバーを開始する様子を示す図。

通常、カスタマーマネージド (計画外) フェールオーバーには約 1 時間かかります。

フェールオーバーが完了した後、元のセカンダリが新しいプライマリになり (1)、元のプライマリ内のストレージ アカウントのコピーは削除されます (2)。 新しいプライマリ リージョンでは、ストレージ アカウントは LRS として構成され、geo 冗長ではなくなります。 次の図に示すように、ユーザーはストレージ アカウントへのデータの書き込みを再開できます (3)。

セカンダリ リージョンへのフェールオーバー後のストレージ アカウントの状態を示す図。

新しいセカンダリ リージョンへのレプリケーションを再開するには、アカウントを geo 冗長用に再構成します。

重要

geo 冗長性を使用するようにローカル冗長ストレージ アカウントを変換すると、コストと時間の両方がかかることにご注意ください。 詳しくは、「フェールオーバーの時間とコスト」をご覧ください。

GRS を利用するようにアカウントを再構成すると、次の画像に示すように、Azure は新しいセカンダリ リージョン (1) へのデータの非同期コピーを開始します。

セカンダリ リージョンへの GRS としてのフェールオーバー後のストレージ アカウントの状態を示す図。

ここでも、元の停止を引き起こした問題が解決されるまで、新しいセカンダリ リージョンへの読み取りアクセスは利用できません。

計画外フェールバック プロセス (GRS/RA-GRS)

警告

アカウントが geo 冗長として再構成された後、新しいプライマリ リージョンのデータが新しいセカンダリに完全にコピーされるまでに、かなり時間がかかる場合があります。

大きなデータ損失を防ぐため、フェールバックを行う前に、最終同期時刻プロパティの値を確認してください。 最終同期時刻を、データが新しいプライマリに最後に書き込まれた時刻と比較して、失われる可能性のあるデータを評価します。

元の停止を引き起こした問題が解決したら、元のプライマリ リージョンへのフェールバックを開始できます。 次の画像はこのプロセスを説明したものです。

  1. 現在のプライマリ リージョンは読み取り専用になります。
  2. ユーザーが開始したフェールオーバーとフェールバックでは、フェールバック プロセスの間、データはセカンダリ リージョンへのレプリケーションを完了することが許可されません。 そのため、フェールバックを行う前に、最終同期時刻プロパティの値を確認することが重要です。
  3. ストレージ サービス エンドポイントの DNS エントリが切り替えられます。 セカンダリ リージョン内のエンドポイントは、ストレージ アカウントの新しいプライマリ エンドポイントになります。

ユーザーが元のプライマリ リージョンへのアカウント フェールバックを開始する様子を示す図。

フェールバックが完了した後、元のプライマリ リージョンが再び現在のプライマリ リージョンになり (1)、元のセカンダリ内のストレージ アカウントのコピーは削除されます (2)。 プライマリ リージョンのストレージ アカウントはローカル冗長として構成され、geo 冗長ではなくなります。 次の図に示すように、ユーザーはストレージ アカウントへのデータの書き込みを再開できます (3)。

フェールバック後の状態を示す図。

元のセカンダリ リージョンへのレプリケーションを再開するには、アカウントを geo 冗長として構成します。

重要

geo 冗長性を使用するようにローカル冗長ストレージ アカウントを変換すると、コストと時間の両方がかかることにご注意ください。 詳しくは、「フェールオーバーの時間とコスト」をご覧ください。

アカウントを GRS として再構成すると、次の画像に示すように、元のセカンダリ リージョンへのレプリケーションが再開します。

冗長構成が元の状態に戻るしくみを示す図。

関連項目