AZ-305:Designing Microsoft Azure Infrastructure Solutions インフラストラクチャソリューションの設計 問1
インフラストラクチャソリューションの設計/コンピューティングソリューションの設計ある企業では、コンテナーイメージとして実装済みのデータ集計処理を、毎晩 1 回、完了まで最長 4 時間かけて実行しています。処理の実行中だけコンピューティング料金が発生する構成にし、クラスターやノードの管理はチームで行いたくありません。実行は時刻で起動します。この要件を満たす設計として適切なものはどれですか。
当サイトのオリジナル問題(AZ-305:Designing Microsoft Azure Infrastructure Solutionsの出題範囲「インフラストラクチャソリューションの設計」に対応。実際の試験問題ではありません)
- AAzure Functions の従量課金プランで、タイマートリガーの関数として処理を実装する
- BAKS クラスターを作成し、Kubernetes の CronJob として処理をスケジュールする
- CAzure Container Apps のジョブ(スケジュールトリガー)として処理を実行する
- D仮想マシンスケールセットを用意し、Azure Automation で夜間だけ起動して処理を実行する
正解:C
解説
Azure Container Apps のジョブは、コンテナー化された処理を手動・スケジュール・イベントのいずれかで起動し、完了まで実行して終了するワークロード向けの機能です。実行中のレプリカに対してのみ課金され、基盤となる Kubernetes クラスターを自分で運用する必要もありません。Azure Functions の従量課金プランは 1 回の実行時間に上限(最大 10 分)があるため、4 時間の処理には向きません。AKS はクラスターやノードプールの運用が必要で、仮想マシンスケールセットは OS 以下の管理が必要になるため、運用負荷の要件に合いません。
選択肢ごとの解説
- A誤り。Azure Functions の従量課金プラン(レガシー)は 1 回の実行時間に上限があり(既定 5 分・最大 10 分)、4 時間の処理は完了できません。Flex 従量課金などは実行時間の上限を延長できますが、本問の肢は従量課金プランを指定しています。
- B誤り。CronJob は要件の時刻起動を満たせますが、AKS クラスターとノードプールの運用・アップグレードが必要になります。クラスター管理をしたくないという要件に反します。
- C正しい。Container Apps のジョブはスケジュールトリガーでコンテナーを起動し、完了まで実行して終了します。実行時間中だけ課金され、クラスター管理も不要です。
- D誤り。スケールセットの VM は OS・パッチ・ランタイムの管理が必要で、コンテナーイメージの実行基盤としても運用負荷が高くなります。管理を避けたい要件に合いません。