Q36 — AWS SAA-C03 第2章
第 36/65 問 | ← 第2章
Q101. ある会社が、Amazon Elastic Container Service(Amazon ECS)上で複数のアプリケーションをコンテナとして実行しています。これらのアプリケーションは、ECSクラスター内で動作しています。ユーザーはApplication Load Balancer(ALB)を介してアプリケーションにアクセスしています。 ユーザーから、毎朝9時から9時30分までの間、アプリケーションの応答が遅いという報告があります。この時間帯を過ぎると、その後は問題が発生しません。この問題を解決するために、ソリューションアーキテクトは何を推奨すべきでしょうか?
- A. ステップスケーリングポリシーを設定したAuto Scalingグループを作成し、ECSインスタンスをそのAuto Scalingグループにアタッチする。
- B. スケジュールスケーリングポリシーを設定したAuto Scalingグループを作成し、ECSインスタンスをそのAuto Scalingグループにアタッチする。 ✓
- C. 2台のECSインスタンスを持つ第2のECSクラスターを作成し、一部のアプリケーションをこの第2のECSクラスターにデプロイする。
- D. ECSインスタンスの前に第2のALBを追加し、この第2のALBがECSインスタンス上の一部のアプリケーションにトラフィックをルーティングするように設定する。
正解: B. スケジュールスケーリングポリシーを設定したAuto Scalingグループを作成し、ECSインスタンスをそのAuto Scalingグループにアタッチする。
解説
この問題は、毎朝9:00~9:30という予測可能な時間帯に一時的な負荷増加(例:業務開始時の同時アクセス集中)が発生していることを示しています。このような定期的かつ予測可能な負荷変動には、事前にインスタンス数を増やす「スケジュールスケーリング」が最も適しています。ステップスケーリング(A)はメトリクスに基づく動的スケーリングであり、遅延が発生してからスケールアウトを開始するため、既にパフォーマンス低下が始まっている状況では対応が遅れます。一方、スケジュールスケーリング(B)は、あらかじめ定義された時刻(例:毎日9:00)に自動的にインスタンス数を増やし、9:30に元に戻すといった制御が可能で、このシナリオに最適です。CとDは、負荷分散の観点からは一見有効に思えますが、根本原因(朝のピーク負荷への事前対応不足)を解決しておらず、またECSクラスターやALBの構成を複雑化するだけで、スケーリングによるリソース最適化にはなりません。