■ はじめに
本記事では、AWSにおいてマルチAZ構成を採用した理由について、インフラ設計の観点から解説します。
本構成は、ポートフォリオ作成の一環として、業務利用を想定して設計したものです。
■ マルチAZ構成とは
マルチAZ構成とは、複数のアベイラビリティゾーン(AZ)にリソースを分散配置する構成です。
これにより、1つのAZで障害が発生した場合でも、サービスを継続することが可能になります。
■ シングルAZ構成の問題点
AZ-1 内にすべてのリソース(EC2、RDS)を配置する構成では、以下の課題があります。
- AZ障害でサービス停止
- 単一障害点(SPOF)が発生
- 可用性が低い
■ マルチAZ構成のイメージ
AZ-1 と AZ-2 にそれぞれEC2を配置し、ALBで負荷分散します。
また、RDSはPrimary / Standby構成とすることで冗長化しています。
■ 採用した理由
■ ① 可用性の向上
AZを分散することで、障害発生時でもサービス継続が可能になります。
■ ② 単一障害点の排除
1台のサーバに依存しない構成とすることで、システム全体の耐障害性を向上させています。
■ ③ 負荷分散
ALBを利用することで、複数のEC2へトラフィックを分散し、パフォーマンス向上を実現しています。
■ ④ データベースの冗長化
RDSをマルチAZ構成とすることで、障害発生時に自動フェイルオーバーが可能です。
■ 設計で意識したポイント
- Public / Privateサブネットの分離
- インターネット公開範囲の最小化
- セキュリティグループによる通信制御
- 将来的なAuto Scalingを考慮
■ コストとのトレードオフ
マルチAZ構成は可用性が向上する一方で、リソースが増えるためコストが増加します。
そのため、システム要件に応じて適切な構成を選択する必要があります。
■ 学び
- 可用性は「構成で担保する」もの
- 冗長化はコストとトレードオフ
- 設計段階で障害を想定することが重要
■ まとめ
マルチAZ構成を採用することで、可用性と耐障害性を大きく向上させることができます。
インフラ設計においては、「障害が起きる前提」で構成を考えることが重要であり、今回の構築を通じてその重要性を学びました。
