あるECサイトは、単一アベイラビリティゾーン(AZ)のAmazon RDS for PostgreSQLでデータベースを運用しており、99.9%の可用性SLAをユーザーに約束しています。データベースはシステム全体の単一障害点となっています。アプリケーションの変更を最小限に抑えながら、費用対効果の高い方法で可用性を向上させるには、次のどの対策が最も適切ですか?
Amazon Auroraに移行し、Aurora Global Databaseでクロスリージョン冗長化する
Aurora Global Databaseはクロスリージョン対応で可用性は高まりますが、単一AZ冗長化の要件に対して過剰かつ高コストな構成です。
D
毎日RDSスナップショットを取得し、プライマリ障害時に新しいAZでリストアする
スナップショットリストアはRTO(Recovery Time Objective:目標復旧時間)が30分以上となり、99.9%のSLAを達成できません。
解説
RDSマルチAZは同期レプリケーションによる自動フェイルオーバー(通常1~2分)を提供し、アプリケーション変更不要で最も費用対効果の高い可用性向上手段です。
選択肢BのリードレプリカおよびAZをまたいだフェイルオーバーの構成は、手動昇格とアプリケーション側の接続文字列変更が必要で運用負荷が高まります。
選択肢CのAurora Global Databaseはクロスリージョン対応で可用性は高まりますが、単一AZ冗長化の要件に対して過剰かつ高コストな構成です。
選択肢DのスナップショットリストアはRTO(Recovery Time Objective:目標復旧時間)が30分以上となり、99.9%のSLAを達成できません。