mcpField
A
azure-site-recovery

azure-site-recovery

github.com/vinayaklattheクラウド・DevOps17976 回インストール1 日前に更新
リポジトリ

azure-site-recovery について

azure-site-recovery は、重要な Azure ワークロードの災害復旧を計画するスキルで、RPO・RTO の設定とフェールオーバーの調整を支援します。ワークロードの階層化、復旧先の依存関係、定期テストを重視し、レプリケーションとバックアップを区別します。

主な機能

  1. 01ワークロード別の RPO・RTO 設定
  2. 02リージョン間 VM レプリケーションの計画
  3. 03順序付き起動の復旧計画作成
  4. 04復旧リージョンの依存関係整理
  5. 05隔離ネットワークでのテスト計画

活用シーン

  1. 01重要なワークロードのリージョン DR 設計
  2. 02VM のフェールオーバーとフェールバック計画
  3. 03アプリの復旧時間と目標の照合
  4. 04Site Recovery と Azure Backup の併用計画

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/vinayaklatthe/microsoft-security-skills --skill azure-site-recovery

インストール後、Claude Code で/azure-site-recoveryを入力して読み込まれたか確認します。

詳細

Azure Site Recovery

Azure Site Recovery(ASR)は、Azure VM とオンプレミスのマシンをセカンダリリージョンにレプリケートし、フェールオーバーとフェールバックをオーケストレーションすることで、リージョン障害時にもワークロードの可用性を維持する Disaster-Recovery-as-a-Service です。バックアップとは別の機能であり、相互に補完する事業継続の重要な要素です。

使用する場面

テスト済みで、オーケストレーションされたフェールオーバー機能を備えた、重要なワークロード向けのリージョン災害復旧を実現する場合に使用します。このスキルを使って RPO/RTO を設定し、復旧計画を設計し、テストフェールオーバーを実行します。

このスキルを使用しない場面:ポイントインタイムバックアップ(use Azure Backup を使用)、データベースのみの HA、Azure 固有の設計を伴わない一般的な BCDR 戦略。

RPO/RTO によるワークロードの階層化

ワークロード階層RPO 目標RTO 目標戦略
階層 0 - ミッションクリティカル< 1 分< 15 分アクティブ/アクティブのマルチリージョン構成(ASR 単独では不可)。ASR はウォームスタンバイとして使用
階層 1 - ビジネスクリティカル< 15 分< 1 時間ASR の継続的レプリケーション + 自動復旧計画
階層 2 - 重要< 1 時間< 4 時間ASR レプリケーション + 手動フェールオーバー
階層 3 - 標準< 24 時間< 24 時間Azure Backup + セカンダリリージョンへの復元
階層 4 - 開発/テスト7 日7 日Azure Backup のみ。DR なし

経験則: RPO が 1 分未満、または RTO が 15 分未満の場合、ASR だけでは不十分です。

  • アクティブ/アクティブ構成を設計してください。ASR が適しているのは、階層 1 と階層 2(RPO は数分、RTO は 4 時間未満)です。

アプローチ

  1. ワークロードごとに RPO と RTO を定義する — IT が推測するのではなく、ワークロード所有者とビジネス部門の承認を得ます。表に従って階層を設定します。「階層 3 = バックアップからの復元であり、フェールオーバーではない」という前提を文書化します。 確認事項:階層 1/階層 2 の各ワークロードについて、RPO/RTO が文書化され、承認されていること。

  2. ペアリージョンに Recovery Services コンテナーを設定する — レイテンシ、課金、Microsoft が調整するパッチ適用を考慮し、Azure の ペアリージョン(例:North Europe ↔ West Europe)を使用します。ビジネスユニットごとに、リージョンペアあたり 1 つのコンテナーを用意します。 確認事項:セカンダリリージョンにコンテナーがあり、レプリケーションポリシーが作成されていること(例:24 時間の保持期間、4 時間ごとのアプリ整合性スナップショット)。

  3. 階層 1/階層 2 の VM でレプリケーションを有効にする — レプリケーションは VM ごとに設定します。ターゲットリージョン、ターゲット VNet、ターゲットストレージを選択し、ソースで使用している場合は 可用性ゾーン の配置も合わせます。初期レプリケーションには数時間かかることがあるため、帯域幅を計画します。 確認事項:対象となるすべての VM でレプリケーションの正常性が正常であり、最新の復旧ポイントのタイムスタンプが RPO 目標の範囲内であること。

  4. 起動順序を指定した復旧計画を作成する — VM をアプリケーションごとにグループ化し、起動順序(最初に DB 層、次にアプリ層、最後に Web 層)を指定します。DNS 更新、IP 変更、アプリのウォームアップには 前処理/後処理スクリプト(Automation Runbook)を追加します。人による確認が必要な箇所には 手動操作の一時停止 を追加します。 確認事項:テストフェールオーバーで復旧計画のドライランを実施し、オンコールチーム向けのランブックを文書化していること。

  5. 復旧リージョンの依存関係を考慮する — ID(Entra はグローバルですが、AD DC にはリージョン DC または DR DC が必要)、DNS(プライベート DNS ゾーン)、Key Vault(リージョンまたは geo レプリケーション)、ストレージアカウント(GRS または RA-GRS)、ネットワーク(ピアリング、ゲートウェイ、ファイアウォール)、ライセンス。 確認事項:依存関係マップがあり、復旧リージョンで DNS、DC への接続、Key Vault、ゲートウェイ接続が機能していること。

  6. スケジュールに従ってフェールオーバーをテストする — 階層 1 では少なくとも 6 か月ごとに(四半期ごとが望ましい)、セカンダリリージョンの 分離ネットワーク で テストフェールオーバー を実行します。アプリの機能を検証し、RTO 目標と実際の所要時間を比較して記録し、問題を記録します。 確認事項:テストフェールオーバーのレポートで、実際の RTO ≤ 文書化された RTO が示され、問題が 30 日以内にトリアージされていること。

  7. フェールオーバー/フェールバックの手順を計画する — 計画フェールオーバーでは同期して円滑に切り替えます。計画外フェールオーバーでは、最後の復旧ポイントを基準としてデータ損失を抑えます。テストフェールオーバーのライフサイクルの一環として、フェールバック手順もテストします。

ガードレール

  • DR はバックアップではありません。ポイントインタイムリストアとランサムウェアからの復旧(イミュータブル/ソフト削除された復旧ポイント)のために、ASR と Azure Backup を組み合わせてください。 ASR は破損も複製します。ランサムウェアに備えるには、イミュータブルなバックアップが必要です。
  • フェールオーバーを定期的にテストしてください。テストされていない DR 計画は、機能ではなく単なる想定です。 テストなしで初めて実際にフェールオーバーすると、うまくいきません。
  • 復旧リージョンの依存関係(ID、DNS、ネットワーク、Key Vault)を考慮してください。 アプリのフェールオーバーは問題なくても、DC や Key Vault にアクセスできなければ、依然として停止したままです。
  • ペアリージョンは重要です。 Microsoft はペア間でパッチ適用を調整します。ペアではないリージョン同士では同じ週にパッチが適用され、両方がオフラインになる可能性があります。
  • レプリケーションだけでなく、復旧計画も用意してください。 レプリケーションはデータを保持し、復旧計画は正しい順序でアプリを起動します。
  • コスト:ASR は VM ごとの月額料金とストレージ料金がかかります。 慎重に階層化してください。すべてを DR 対象にするのは無駄であり、何も DR 対象にしないのは無責任です。

よくあるアンチパターン

  • 「ASR があるから、バックアップは必要ない」 - ASR はランサムウェアによる暗号化も複製します。イミュータビリティを備えたバックアップだけが、ランサムウェアからの復旧手段です。
  • 「安全のため、すべてを複製する」 - コストは 10 倍になり、フェールオーバーは遅くなり、テスト範囲も広がります。RPO/RTO に基づいて階層化してください。
  • 「本番環境でのフェールオーバーは危険なので、テストしない」 - テストフェールオーバーは分離されており、本番環境には影響しません。危険なのはテストしないことです。
  • 「DR 訓練は 2 年前に 1 回実施したきりで、その後は行っていない」 - アーキテクチャに変更が加わっています。Tier 1 では四半期ごとにテストしてください。
  • 「DR リージョンの DC/DNS/Key Vault を忘れた」 - VM は起動しても、アプリは認証も名前解決もできません。依存関係をマッピングしてください。
  • 「すべてのリージョンに単一のグローバル Vault を使用する」 - Vault はリージョン単位です。プライマリの Vault が失われると、DR できません。リージョンペアごとに 1 つ用意してください。

プロンプトの例

  • Azure Site Recovery を使用した災害復旧計画を設計し、明確な RPO/RTO 目標を設定してください。
  • 本番環境に影響を与えずに、テストフェールオーバーを実行するにはどうすればよいですか?
  • リージョン間レプリケーションと、起動順序を指定した復旧計画を設定してください。
  • ランサムウェアへの耐性を高めるため、Azure Backup と併用した DR を計画してください。
  • ペアリージョンへのフェールオーバーに備えて、依存関係(ID、DNS、Key Vault)をマッピングしてください。
  • ワークロードを RPO/RTO に基づいて階層化し、ASR とバックアップのみのどちらを適用するか判断してください。

Microsoft Learn

コメント