フェールオーバーのテストと実行
災害復旧計画を検証するために無停止のテスト フェールオーバーを実行し、RTO と RPO の達成状況を記録して、訓練後にテスト リソースをクリーンアップします。
「フェールオーバーのテストと実行」はCoddyKit上の無料Cloud & IT Cert Prepレッスンです。 これはレッスン4/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはCloud & IT Cert Prep学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 Cloud & IT Cert Prepコースには全4レッスンが含まれています。
フェールオーバーのテストが重要な理由
一度もテストされていないディザスター リカバリー計画は、単なる仮説にすぎません。テスト フェールオーバーを使用すると、ソース環境を中断したり継続中のレプリケーションを停止したりせずに、VM が正常に起動すること、アプリケーションが開始すること、ターゲット リージョンでネットワーク接続が機能することを検証できます。多くの組織では、実際に災害が発生して初めて DR 計画の不備に気付きますが、その時点では計画の問題が最大の被害につながります。定期的なテスト フェールオーバーは、ほとんどの規制フレームワークでコンプライアンス要件となっています。
テスト フェールオーバーと実際のフェールオーバー
ASR は、3 種類のフェールオーバー操作をサポートしています。テスト フェールオーバーでは、レプリケーションやソース環境に影響を与えず、分離されたネットワーク(ターゲット VNet を指定します)にフェールオーバーした VM のコピーを作成します。計画フェールオーバーは、スケジュールされた移行やメンテナンスに使用します。残りの変更を最初に同期してからソースをシャットダウンし、フェールオーバーします。計画外フェールオーバーは実際の災害時に使用し、最終同期を待たずに最新の復旧ポイントから直ちにフェールオーバーします。
テスト フェールオーバーの実行
ポータルでテスト フェールオーバーを実行するには、保護された項目を選択し、Test Failover をクリックして、復旧ポイント(最新のクラッシュ整合性、最新のアプリ整合性、または特定の時点)を選択し、ターゲット仮想ネットワーク(通常は専用の分離されたテスト VNet)を選択します。ASR はレプリカ ディスクを使用して、ターゲット リージョンで VM を起動します。テスト VM はレプリカと並んで表示されますが、完全に独立しているため、本番環境には影響しません。テスト後、Cleanup test failover をクリックしてテスト VM を削除します。
# Initiate a test failover for a protected VM
az asr replication-protected-items failover-commit \
--fabric-name myFabric \
--protection-container myContainer \
--name myProtectedVM \
--resource-group myRG \
--vault-name myVault復旧ポイントの選択
フェールオーバー中は、ASR の保持期間内から復旧ポイントを選択します。選択肢は次のとおりです。Latest (lowest RPO) — 最も新しいクラッシュ整合性のある復旧ポイントで、データ損失を最小限に抑えます。Latest processed — 最近処理された復旧ポイントで、数分遅れている場合があります。Latest app-consistent — 最も新しいアプリ整合性のある復旧ポイントで、より古い場合がありますが、アプリケーションをクリーンな状態で確実に復旧できます。Custom — インシデント発生前の既知の正常な状態に復旧するための、特定の古い復旧ポイントです。
復旧計画
復旧計画は、複数の保護された VM をグループ化し、フェールオーバーの順序とタイミングを定義します。最初に起動する VM(データベース サーバーをアプリケーション サーバーより先にするなど)を指定したり、手動承認ゲートを追加して人による検証のためにフェールオーバーを一時停止したり、Azure Automation runbookを挿入してフェールオーバー前後のスクリプト(DNS レコードの更新、ロード バランサーの構成、通知の送信など)を実行したりできます。復旧計画は、テスト フェールオーバーで個別にテストできます。
テスト中の RTO の測定
テスト フェールオーバーでは、実際の RTO (Recovery Time Objective) を測定できます。フェールオーバーを開始した時点でストップウォッチを開始し、アプリケーションが完全に機能してユーザーからアクセスできるようになった時点で停止します。Azure 間のフェールオーバーは、単一の VM で通常 15~30 分で完了しますが、依存関係のある多層アプリケーションではさらに時間がかかる場合があります。予想外に時間がかかった手順(DNS の伝播やアプリケーションのウォームアップなど)を記録し、次回のテストまでに対処してください。
計画フェールオーバーのコミット
計画フェールオーバー(新しいリージョンへの移行など)の後、Commit を実行してフェールオーバーを確定します。コミットすると、ソースからのレプリケーションが停止し、ターゲット VM が新しいプライマリとして設定されます。コミット後は再保護を有効にしてレプリケーションの方向を反転し、元のソース リージョンを新しい DR ターゲットにすることができます。これにより、インシデントの解決後に元のリージョンへフェールバックできます。
元のリージョンへのフェールバック
フェールバックとは、災害や計画された移行の後にワークロードを元のリージョンへ戻すプロセスです。手順は、フェールオーバーした VM を再保護し(レプリケーションの方向を反転して、新しいプライマリから元のリージョンへレプリケートします)、初期同期が完了するまで待機してから、元のリージョンへ計画フェールオーバーを実行します。フェールバックには、元のソース インフラストラクチャが引き続き存在している必要があります。破壊されている場合は、フェールバックする前にランディング ゾーンを再構築する必要があります。
テスト リソースのクリーンアップ
テスト フェールオーバーの後は、ポータルで Cleanup test failover を実行して、テスト VM と関連ディスクを削除する必要があります。クリーンアップしないと、テスト VM が稼働し続け、コンピューティング料金が発生します。クリーンアップ手順によって保護された項目のテスト フェールオーバー状態もリセットされるため、今後もう一度テストを実行できます。クリーンアップを自動化し(たとえば、Automation runbook を使用してテスト開始の 1 時間後にスケジュールします)、テスト VM の放置による数日間の稼働を防止してください。
# Script to list VMs in the test-failover resource group for cleanup audit
az vm list \
--resource-group myDRTestRG \
--query '[].{Name:name, Status:powerState}' \
--show-details \
--output tableDR ドリルのドキュメント化
すべての DR テストでは、テストした日付とシナリオ、使用した復旧ポイント、達成した RTO と RPO、発見した問題、および実施した是正措置を記録した DR ドリル レポートを作成してください。このドキュメントは、定期的な DR テストを義務付ける ISO 27001 や SOC 2 などのフレームワークにおける監査要件を満たします。ドリル レポートは、IT チームと事業継続チームの両方が安全にアクセスできる場所に保管してください。
ASR の価格とライセンス
Azure Site Recovery の料金は、保護されたインスタンスごとに月額で適用されます。この料金には、レプリケーション サービスとオーケストレーションの両方が含まれます。また、ターゲット リージョンのレプリカ マネージド ディスクと、レプリケーション中のキャッシュ ストレージ アカウントで使用するストレージに対しても課金されます。レプリケーション トラフィックの Azure リージョン間の送信データ転送には、通常のエグレス料金が課金されます(ペア リージョン間のエグレスが無料である Azure Backup とは異なります)。オンプレミスから Azure へのレプリケーションでは、Azure VM の Windows Server ライセンスに Azure Hybrid Benefit を適用してコストを削減できます。
クイック チェック
このレッスンで扱った Microsoft Azure Fundamentals (AZ-900) の概念について、理解度を確認します。
レッスンのまとめ
このレッスンでは、テスト フェールオーバーによって、本番環境に影響を与えず、分離されたネットワークで DR 計画を検証できること、復旧計画によって、手動ゲートと自動化された runbook の手順を含めて複数 VM のフェールオーバー順序を定義できること、そしてフェールバックによって、災害後にレプリケーションの方向を反転してワークロードを元のリージョンへ戻せることを学びました。次は、グローバルなコンテンツ配信を高速化する Azure CDN について説明します。
よくある質問
「フェールオーバーのテストと実行」レッスンは無料ですか?
はい。「フェールオーバーのテストと実行」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、Cloud & IT Cert Prepコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 Cloud & IT Cert Prepコースには全4レッスンが含まれています。
「フェールオーバーのテストと実行」で何を学びますか?
災害復旧計画を検証するために無停止のテスト フェールオーバーを実行し、RTO と RPO の達成状況を記録して、訓練後にテスト リソースをクリーンアップします。 ブラウザで直接実行するハンズオンコードでCloud & IT Cert Prepを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。
Cloud & IT Cert Prepを始めるのに経験は必要ですか?
事前経験は必要ありません。CoddyKitのCloud & IT Cert Prepは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン4/4です。
「フェールオーバーのテストと実行」レッスンにはどのくらい時間がかかりますか?
ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。
このCloud & IT Cert Prepレッスンでコードを書いて実行できますか?
はい。すべてのCloud & IT Cert Prepレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。