SAA-C03弾力性に優れたアーキテクチャの設計MEDIUM単一選択

ある企業が、Amazon RDS for MySQL(Single-AZ)を本番環境で使用している。データベースの可用性を向上させ、RTO を 2 分以内にしたい。また、読み取り負荷が増加しているため、読み取りクエリのスケーリングも必要である。コード変更を最小限にしながら実現する最も適切なソリューションはどれか。

  1. A. RDS を Multi-AZ 配置に変更し、読み取り専用のリードレプリカを 1 台追加する。アプリケーションの書き込みはプライマリエンドポイント、読み取りはリードレプリカエンドポイントに向ける。
  2. B. EC2 インスタンスに MySQL をインストールしてクラスター構成を自前で構築し、フェイルオーバーを手動で制御する。
  3. C. RDS の自動バックアップを有効化し、障害時に最新のスナップショットから新しい RDS インスタンスを起動する。
  4. D. Amazon Aurora MySQL に移行し、Multi-AZ(2 コピー以上)構成と Aurora Replicas を使用する。クラスターエンドポイントを書き込みに、リーダーエンドポイントを読み取りに使用する。
解答と解説を見る

正解: D

Amazon Aurora MySQL は Multi-AZ かつ複数 AZ にまたがる 6 つのデータコピーを持ち、フェイルオーバー時間は通常 30 秒以下(多くの場合 10〜20 秒)である。Aurora Replicas は最大 15 台まで追加でき、リーダーエンドポイントで読み取り負荷を分散できる。MySQL 互換なので、接続文字列の変更のみでコードの書き換えを最小限に抑えられる。選択肢AのRDS Multi-AZ + リードレプリカも有効だが、RDS Multi-AZ のフェイルオーバーには通常 1〜2 分かかり、RTO 2 分以内をギリギリ満たすか満たさない可能性がある。Aurora の方がフェイルオーバーが速い。選択肢Cのスナップショットからの復元は、新インスタンスの起動に数分〜10 分以上かかる場合があり、RTO 2 分以内を保証できない。選択肢BはEC2 上の自前 MySQL クラスターで管理・運用負荷が非常に高く、マネージドサービスの利点を捨てることになる。

▸ この試験を本気で演習する(全150問・無料)