ある企業がAzure上にマイクロサービスアーキテクチャを構築しようとしている。各マイクロサービスはDockerコンテナとしてパッケージ化されており、数十のサービスが協調して動作する。コンテナの自動デプロイ・スケーリング・ロードバランシング・自己修復(障害コンテナの自動再起動)を一元管理したい。最も適切なAzureサービスはどれか。
- A. Azure Functions:サーバーレスのイベント駆動関数実行環境
- B. Azure Kubernetes Service(AKS):Kubernetesをベースとしたフルマネージドコンテナオーケストレーション
- C. Azure Container Instances(ACI):個別のコンテナをサーバーレスで実行する
- D. Azure App Service(コンテナ対応):コンテナをWebアプリとしてホストするPaaS
解答と解説を見る
正解: B
Azure Kubernetes Service(AKS)はKubernetesのマネージドサービスで、コントロールプレーンの管理はAzureが担当し、顧客はワーカーノードプールとアプリケーションの管理に集中できる。マイクロサービスの自動デプロイ・スケーリング・ロードバランシング・障害コンテナの自動再起動(自己修復)・ローリングアップデートなど大規模コンテナオーケストレーションに必要な機能をすべて提供する。選択肢CのACIは個々のコンテナをシンプルに実行するサービスで、複数サービスのオーケストレーション機能がない。選択肢AAzure Functionsはサーバーレス関数実行基盤でコンテナオーケストレーションの役割は持たない。選択肢DAzure App Serviceコンテナ対応は単一または少数のコンテナWebアプリに適しており、数十のマイクロサービスを協調管理するオーケストレーション機能としてはAKSが適切。
📚 関連サービスの解説: Azure Kubernetes Service(AKS)