過去問ドリル

AI-200:Developing AI Cloud Solutions on Azure Azure でのコンテナー化されたソリューションの開発 問5

Azure でのコンテナー化されたソリューションの開発/コンテナー オーケストレーションの実装(Container Apps・AKS)

Azure Container Apps で、Azure Service Bus キューのメッセージを処理するワーカー アプリを動かしています。メッセージが無い時間帯はコストを抑えるためにレプリカを0にし、キューにメッセージがたまったら自動で台数を増やしたいと考えています。適切な構成はどれですか。

当サイトのオリジナル問題(AI-200:Developing AI Cloud Solutions on Azureの出題範囲「Azure でのコンテナー化されたソリューションの開発」に対応。実際の試験問題ではありません)

正解:C

解説

Container Apps は、KEDA(Kubernetes Event-driven Autoscaling)のスケーラーを使ったカスタム スケール ルールに対応しています。Azure Service Bus スケーラーを使うと、キューに残っているメッセージ数に応じてレプリカ数を増減できます。最小レプリカ数を0にすれば、メッセージが無いときはレプリカを0まで減らせます。

選択肢ごとの解説

  • A誤り。HTTP スケール ルールは、HTTP 要求の数に応じてスケールする仕組みです。キューからメッセージを受け取るワーカーには、メッセージ数を基準にするルールが適しています。
  • B誤り。最小レプリカ数を1に固定すると、メッセージが無い時間帯もレプリカが動き続けます。コストを抑えるという要件を満たしません。
  • C正しい。KEDA のスケーラーでイベント(キューのメッセージ数)に応じてスケールし、最小レプリカ数を0にすれば待機中のコストも抑えられます。
  • D誤り。毎時の確認では反応が遅く、運用の手間も増えます。Container Apps に組み込まれたイベント駆動のスケールを使うほうが適切です。
AI-200:Developing AI Cloud Solutions on Azureの問題を演習モードで解く