Instiq
第3章 · 回復力のあるクラウドソリューション·v2.1.0·更新 2026/6/28·読了目安 約11分

変更要約: in-scope サービス網羅: Elastic Disaster Recovery, Resilience Hub, Compute Optimizer, FSx 4種, Aurora Serverless v2, DocumentDB, MemoryDB for Redis, Redshift, EKS Distro, ROSA, DMS, Transit Gateway, PrivateLink, Client VPN, Site-to-Site VPN

3.2高可用性と自己修復

この節の要点

障害に強い設計——マルチ AZマルチリージョン疎結合(SQS/SNS)自己修復(ヘルスチェック+自動置換)Route 53 ヘルスチェック/フェイルオーバー——を理解します。単一障害点をなくします。

高可用性の鉄則は単一障害点をなくすこと。複数 AZ に冗長化し、疎結合と自己修復で障害を局所化します。

3.2.1高可用性と自己修復の手段

高可用性と自己修復を示した図。複数 AZ にまたがる冗長構成(ELB+Auto Scaling・RDS マルチ AZ)で単一 AZ 障害に耐え、コンポーネントは SQS/SNS で疎結合にして障害を局所化、ヘルスチェック失敗のインスタンスは Auto Scaling が自動で置き換える自己修復、リージョン障害には Route 53 のヘルスチェックとフェイルオーバールーティングで別リージョンへ切替する構成を示した図。
高可用性と自己修復
  • マルチ AZ:複数 AZ に冗長化し、単一 AZ 障害に耐える(RDS マルチ AZ など)。
  • 疎結合SQS/SNS でコンポーネントを分離し、障害を局所化する。
  • 自己修復:ヘルスチェック失敗のインスタンスを Auto Scaling が自動置換
  • Route 53 フェイルオーバー:リージョン障害時に別リージョンへ切替(ヘルスチェック連動)。
試験ポイント

「単一 AZ 障害に耐える=マルチ AZ」「障害の局所化=SQS/SNS で疎結合」「不健全インスタンスの自動置換=Auto Scaling の自己修復」「リージョン障害の切替=Route 53 フェイルオーバー」 は DOP-C02 で頻出です。状態を持たないステートレス設計ほど自己修復が容易です。

注意

単一 AZ や単一インスタンスへの依存は単一障害点になります。状態(セッション等)はインスタンス外(DynamoDB/ElastiCache 等)に持たせ、ステートレスに保ちましょう。

DOP-C02 の可用性設計は「どの障害ドメインに対して、どこまで自動で回復させるか」を問います。マルチ AZ は単一 AZ 障害に耐える基本で、RDS マルチ AZ は同期レプリケーションで待機系へ自動フェイルオーバーし、Aurora はストレージを 3 AZ・6 コピーに分散します。疎結合では、同期呼び出しの連鎖がカスケード障害を生むため、SQS でバッファリングして取り込み側の障害を吸収し、SNS/EventBridge でファンアウトして発行者と購読者を切り離します。キュー+Auto Scaling(キュー長で増減)にすればバックプレッシャーにも追従できます。自己修復は、ヘルスチェック失敗の自動置換に加え、EventBridge+Lambda/SSM Automation で「アラーム→隔離→復旧ランブック実行」を自動化します。リージョン規模の障害には Route 53 のヘルスチェック+フェイルオーバールーティング(アクティブ/パッシブ)や、レイテンシ/加重ルーティングでの分散を使い、データ層は クロスリージョンレプリケーション(S3 CRR、Aurora グローバルDB、DynamoDB グローバルテーブル)で追随させます。設計検証には AWS Resilience Hub でポリシーに対する RTO/RPO 達成度を評価し、Fault Injection Service(FIS)でカオス実験を行って想定どおり自己修復するかを確かめます。ステートレス化(状態を DynamoDB/ElastiCache/外部ストアへ)が、これらの自動回復を成立させる前提です。

障害の範囲対策要点
単一インスタンス障害Auto Scaling 自己修復ヘルスチェック失敗を自動置換
単一 AZ 障害マルチ AZ 冗長化ELB+ASG・RDS マルチ AZ
依存連鎖によるカスケードSQS/SNS で疎結合バッファ+ファンアウトで局所化
リージョン全断Route 53 + クロスリージョンフェイルオーバー+データ複製
補足

シナリオ:注文処理が下流の在庫 API の遅延に引きずられ、ピーク時に全体が詰まる。可用性を上げたい。→ 注文受付と在庫更新の間に SQS を挟んでバッファリングし、消費側を キュー長でスケール。一時的な在庫 API 障害でもメッセージは保持され、復旧後に処理されます。複数購読者が要るイベントは SNS/EventBridge でファンアウト。これで一部の遅延・障害が全体を止めない疎結合になります。

補足

FAQ:マルチ AZ とマルチリージョンはどう違う? マルチ AZ は1 つのリージョン内で AZ 障害に耐える設計で、多くのワークロードの基本。マルチリージョンはリージョン全断や広域災害に備えるもので、コストと複雑さが増します。要件の可用性目標(RTO/RPO)が「リージョン障害でも継続」を求めるかで判断します。

注意

ひっかけ:「ステートフルなセッションを各インスタンスのローカルに保持」したままスケールアウト/自己修復しても、置換時にセッションが失われます。状態は DynamoDB/ElastiCache などインスタンス外へ。また Route 53 フェイルオーバーは ヘルスチェック未設定だと発火しない点に注意します。

3.2.2AWS Resilience Hub — 回復力の評価と継続追跡

Resilience Hub はアプリケーションの回復力(RTO/RPO 目標に対する達成度)を評価・可視化・継続追跡するサービスです。まずアプリケーションのリソース(CloudFormation スタック・Terraform 状態・AppRegistry など)を登録し、回復力ポリシー(目標 RTO と RPO)を定義します。次にサービスが構成を分析し、単一障害点・ギャップ・改善推奨(コンポーネントのマルチ AZ 化など)を洗い出します。推奨は具体的なアクション(例「このターゲットグループを複数 AZ に分散せよ」)として提示され、修正後に再評価して達成度の改善を確認できます。継続評価モード(CI/CD パイプライン統合)では、インフラ変更がデプロイされるたびに自動で再評価し、目標 RTO/RPO を満たさなくなった変更を早期検知します。AWS Fault Injection Service(FIS)とも連携し、カオス実験による実証を組み合わせた回復力の検証が可能です。DevOps 文脈では「設計レビューの代わりに Resilience Hub を定量的ゲートとして CI/CD に組み込む」使い方が典型で、ドリフトを継続的に監視する点が従来の静的アーキテクチャレビューと異なります。

  • ポリシー定義:目標 RTO/RPO を設定し、構成を静的に分析して単一障害点を洗い出す。
  • 改善推奨:具体的なアクション(マルチ AZ 化・バックアップ追加など)を提示し、修正後に再評価。
  • 継続評価(CI/CD 統合):デプロイごとに自動再評価し、ポリシー違反のドリフトを早期検知。
  • FIS 連携:カオス実験の結果と組み合わせ、回復力を実証的に検証。
試験ポイント

「RTO/RPO 達成度を継続的に評価・追跡」「デプロイのたびに回復力ポリシーを自動チェック」「単一障害点と改善推奨を可視化」=Resilience Hub が DOP-C02 での定番対応です。カオス実験=FIS、一時的なフェイルオーバー切替制御=Application Recovery Controller と区別して覚えます。

3.2.3ネットワーク接続 — マルチアカウント/ハイブリッドの高可用性

マルチアカウントやハイブリッドクラウド構成での高可用性は、ネットワーク接続の設計が土台になります。Transit Gateway は多数の VPC とオンプレミスネットワークをハブ&スポークトポロジで一元接続します。VPC ピアリングは 1 対 1 接続のためアカウント数が増えると配線がフルメッシュになり管理コストが爆発しますが、Transit Gateway に集約することでルーティングを一元管理し、単一障害点のない冗長構成を維持できます。PrivateLink は VPC 内のエンドポイント(インターフェイスエンドポイント)から AWS サービスやサードパーティサービスへ、インターネットを経由せずプライベートに接続します。データはパブリック IP やインターネットゲートウェイを通らないため、セキュリティ境界を維持しながらサービス間の接続を確立します。Client VPN個々のクライアント(ラップトップ等) から AWS VPC へ TLS ベースの VPN 接続を確立します。社員のリモートアクセスに使い、クライアント証明書や SAML 認証と組み合わせます。Site-to-Site VPN はオンプレミス拠点と AWS VPC を IPsec で暗号化接続します。2 本のトンネルが自動提供されるため、1 本の障害時も冗長性を確保します。帯域要件が高い場合は専用線の Direct Connect と組み合わせることが多く、VPN はフェイルオーバーや補完として使います。

サービス接続形態主なユースケース
Transit Gateway多 VPC・オンプレをハブ&スポーク集約マルチアカウント間のルーティング一元化
PrivateLinkVPC 内エンドポイント→サービスへプライベートインターネット非経由でサービス利用
Client VPNクライアント→VPC へ TLS VPNリモートワーカーのアクセス
Site-to-Site VPNオンプレ拠点→VPC へ IPsec拠点とクラウドの暗号化接続・DR

3.2.4この節のまとめ

  • HA=マルチ AZ+疎結合(SQS/SNS)
  • 自己修復=ヘルスチェック+自動置換/切替=Route 53
  • 回復力評価=Resilience Hub(RTO/RPO 継続追跡・CI/CD 統合)
  • ネットワーク HA=Transit Gateway(多 VPC 集約)+PrivateLink(プライベート接続)+Client VPN/Site-to-Site VPN(ハイブリッド)

進捗の記録にはログインが必要です。

理解度チェック

(軽い確認用)

Q1. Web 層の単一 AZ 障害でサービス全体が止まらないようにしたい。最も基本的な対策はどれですか?

Q2. インスタンスがヘルスチェックに失敗したら、自動で置き換えて回復させたい。何が行いますか?

Q3. プライマリリージョンが全断したとき、別リージョンの環境へ自動で切り替えたい。何を使いますか?

理解度を確認第3章「回復力のあるクラウドソリューション」の問題を解く