マルチAZと単一障害点(SPOF)の排除

単一AZ・単一インスタンス構成のリスクと、ELB・マルチAZ・DNS・Elastic IPによる冗長化の考え方を整理します。

学習順Step 58 / 61サービスAWS基礎試験ドメイン弾力性

単一障害点(SPOF)とは

SPOF(Single Point of Failure)は、その1か所が止まるとシステム全体が止まる構成要素です。例として、1つの AZ にしか置いていない EC2、ロードバランサー配下に実質1台しかいない構成、単一の NAT やファイアウォールにすべてのトラフィックが依存している状態などが挙げられます。

入門の解説では「単一 AZ・単一 VPC のシンプル構成は、SPOF によりダウンタイムに弱い」という対比がよく使われ、SAA では マルチ AZ・ELB・RDS マルチ AZ がセットの正解パターンとして繰り返し登場します。

高可用を「サービス側」と「自分で組む」に分ける

AWS のサービスは、そもそもマルチ AZ/冗長ストレージが前提のものが多い一方、次のようなユーザーがアーキテクチャで高可用を作る代表が試験で問われます。

  • EC2 上のアプリケーション … 複数台+ ELB、または Auto Scaling。
  • RDS … マルチ AZ、リードレプリカ、バックアップ/DR 戦略。
  • ELB … 複数 AZ のターゲット、ヘルスチェック。
  • Direct Connect … 回線冗長や BGP など、オンプレ接続の信頼性設計。

「S3 はイレブンナインの耐久性だから、そこに載せるアプリも自動で高可用」という誤答が出やすいので、オブジェクトストレージの耐久性コンピュートの可用性は切り離して考えます。

マルチ AZ とロードバランサー

複数の AZ にアプリケーション層をまたがせ、ロードバランサーでユーザーからのトラフィックを分散すると、1つの AZ で障害が起きても、他 AZ のターゲットへ切り替わりやすくなります。ELB はリージョン単位のサービスであり、複数 AZ のサブネットにまたがって配置します。ELB 単体がリージョンをまたぐわけではない点(別リージョンの冗長は Route 53 等の別レイヤー)も、選択肢で区別されます。

データベースについては RDS のマルチ AZ で同期スタンバイを別 AZ に置き、障害時に自動フェイルオーバーする構成が代表的です。リードレプリカは読み取り負荷の分散やレポート用途に使いますが、マルチ AZ のスタンバイの代替ではなく、目的が読み取りスケールと DR に寄る、と整理すると誤答を避けやすいです。

DNS と Elastic IP の使い分け

  • Amazon Route 53ヘルスチェック付きフェイルオーバーや加重ルーティングで、アクティブ/スタンバイ複数リージョンの切り替えに使います。グローバルな到達性のレイヤーです。
  • Elastic IP(EIP) … インスタンス障害時に、同じパブリック IP を別インスタンスへ再関連付けし、クライアントや上位 DNS の変更を減らします。多くの解説で「インスタンス入れ替え時の IP の移動」として説明されます。

本番の Web トラフィックでは、EIP を直接クライアントに固定で見せるより、ELB の DNS 名Route 53 のエイリアスを向ける構成の方が一般的です。試験では「恒久運用で可用性と運用負荷のバランスがよいのはどれか」として ELB が選ばれやすいです。

リージョン・AZ・VPC のレイヤー

信頼性の設計では、次の階層が一文の問題文にまとめられることがあります。

  • リージョン … 災害隔離の最大単位。バックアップやスタンバイを別リージョンに置くと耐障害性は上がるが、レイテンシ・コスト・データ整合の議論が増える。
  • AZ … 同一リージョン内の独立したデータセンタ群。マルチ AZ はここをまたぐ冗長。
  • VPC/サブネット … パブリック・プライベートの切り分け、セキュリティグループでアプリ層と DB 層を分離。

典型アーキテクチャの「積み上げ」(全体像の整理)

ステップバイステップのハンズオンでは、次のような段階的な積み上げで説明されることが多いです(用語のつながりを試験で再現しやすくします)。

  1. パブリック/プライベートサブネットを 複数 AZ に配置。
  2. インターネット向け ELB と、プライベート側の アプリ EC2(のちに Auto Scaling)。
  3. RDS をプライベートに配置し、マルチ AZ でスタンバイと自動フェイルオーバー。
  4. 静的データやバックアップ先として S3、必要に応じて VPC エンドポイント

各層で「ここが止まったらどうするか」を一つずつ潰す、という進め方が、信頼性設計の実務でも同じです。

試験で混同しやすい対比

論点 覚え方
マルチ AZ(RDS) 同期スタンバイ同一リージョンの高可用・スタンバイは通常クエリ不可
リードレプリカ 非同期読み取り・台数や昇格の挙動はエンジンにより異なる
クロスリージョンのレプリカ/スナップショット DR やローカル読み取りの文脈で登場しやすい

公式ドキュメント(深掘り)

重要ポイント

  • 単一AZ・単一EC2はSPOFになりやすく、ELB+複数AZでアプリ層の冗長化が定番
  • RDSのマルチAZは同期スタンバイと自動フェイルオーバー、リードレプリカは読み取りスケールが主目的
  • Route 53のフェイルオーバーとElastic IPは到達性の切り替えに使うが用途が異なる
  • 高可用がAWS側で保証されるサービスと、ユーザー設計が必要なサービスを区別する
  • リージョン/AZ/VPC/サブネットの選択が信頼性とコストの両方に効く

このトピックの学習を完了しますか?

完了状態はいつでも切り替えられます