Instiq
第4章 · インフラストラクチャの設計·v2.0.0·更新 2026/6/4·読了目安 約11分

変更要約: AZ-305 第4章を深掘り(比較表・シナリオ・FAQ・ひっかけ・深掘り段落を各節に追加、図を日本語版に対応)

4.1コンピュートの設計

この節の要点

コンピュートの選択——仮想マシン/VMSSApp ServiceAzure FunctionsAKS/ACI/Container Apps——を理解します。ワークロードに合う実行基盤を選びます。

インフラ設計の中心はコンピュートの選択です。制御の必要性とマネージドの度合いで、VM からサーバーレスまで選びます。

4.1.1コンピュートの選択肢

Azure のコンピュート選択を制御とマネージドのトレードオフで示した図。完全制御が必要なら仮想マシン(IaaS・VMSS でスケール)、Web/API を手軽にホストするなら App Service(PaaS・自動スケール/スロット)、イベント駆動の従量課金なら Azure Functions(サーバーレス)、コンテナは Kubernetes が必要なら AKS、単発/バッチコンテナなら ACI、サーバーレスにマイクロサービスを動かすなら Container Apps、を並べた図。
コンピュートの選択
  • VM/VMSS:OS まで完全制御(IaaS)。VMSS で同一 VM を自動スケール
  • App Service:Web/API を手軽にホストする PaaS(自動スケール/デプロイスロット)。
  • Azure Functionsイベント駆動・従量課金のサーバーレス。
  • AKS/ACI/Container AppsAKS=KubernetesACI=単発/バッチContainer Apps=サーバーレスなマイクロサービス
試験ポイント

「OS 完全制御=VM、同一 VM のスケール=VMSS」「Web/API の手軽な PaaS=App Service」「イベント駆動の従量課金=Functions」「Kubernetes=AKS、単発コンテナ=ACI、サーバーレスなコンテナ=Container Apps」 は AZ-305 で頻出です。可能な限りマネージド(PaaS/サーバーレス)を選び、運用負荷を下げます。

AZ-305 のコンピュート設計は「制御の必要性・スケール特性・コストモデル・移植性の要件から最適な実行基盤を選ぶ」ことを問います。VM/VMSS は OS まで完全制御でき、レガシーや特殊要件に対応する一方、パッチ/可用性/スケールを自分で設計します(VMSS は同一イメージの自動スケール、可用性ゾーン分散、スポット/低優先度でコスト最適化)。App Service は Web/API を素早くホストする PaaS で、デプロイスロット(ステージング→本番スワップで無停止リリース)・自動スケール・カスタムドメイン/証明書を備え、App Service Environment(ASE)で隔離も可能です。Azure Functions はイベント駆動・消費プラン(従量・自動スケール・コールドスタートあり)/Premium(事前ウォーム・VNet 統合)/専用から選び、Durable Functions で状態を持つオーケストレーションも可能です。コンテナは、AKS(Kubernetes 標準・大規模/複雑なオーケストレーション)、ACI(軽量・単発/バースト・サーバーレスに 1 コンテナ)、Container Apps(KEDA ベースの自動スケール・Dapr 統合のサーバーレスマイクロサービス、Kubernetes を意識せず使える)を使い分けます。設計の要は、運用負荷を最小化する方向(IaaS→PaaS→サーバーレス)で検討しつつ、移植性(K8s)や特殊要件があるときだけ制御寄りに降りることです。

要件選択要点
OS/ミドルウェアの完全制御VM / VMSSIaaS・自分でパッチ/スケール設計
Web/API を低運用でApp ServicePaaS・スロット/自動スケール
イベント駆動・断続Azure Functions消費/Premium/専用・Durable
コンテナAKS / ACI / Container AppsK8s / 単発 / サーバーレスマイクロ
補足

シナリオ:マイクロサービス化した Web バックエンドを、Kubernetes の運用負荷を負わずにイベントに応じて 0 までスケールさせたい。→ Azure Container Apps(KEDA ベースの自動スケールで需要 0 時はインスタンス 0、Dapr でサービス間連携)を選択。フロントの公開 API は API Management をゲートウェイにし、断続的なバックグラウンド処理は Azure Functions(消費プラン)で補います。Kubernetes の細かい制御が必須なら AKS に切り替えます。

補足

FAQ:AKS と Container Apps はどちらを選ぶ? Kubernetes の標準 API・既存マニフェスト・きめ細かい制御(カスタムオペレーター、特殊なネットワーク/ストレージ)が要るなら AKS。Kubernetes の運用を避けつつコンテナのマイクロサービスをサーバーレスに動かしたい(自動スケール/0 スケール、Dapr/KEDA 内蔵)なら Container Apps。単発/バッチの 1 コンテナだけなら ACI が最軽量です。

注意

ひっかけ:「運用負荷を最小化して Web アプリをホスト」の要件で VM(IaaS) を選ぶのは誤り——VM は OS パッチ/スケール/可用性を自分で設計する必要があり最も負荷が高いです。素直に App Service(PaaS)やコンテナのサーバーレス系を選びます。また「イベント駆動の従量課金」を常時起動の VM/専用プランで満たそうとするのも非効率で、Functions の消費プランが正解です。

4.1.2この節のまとめ

  • 制御=VM/VMSS/Web=App Service/イベント=Functions
  • コンテナ=AKS(K8s)/ACI(単発)/Container Apps(サーバーレス)

進捗の記録にはログインが必要です。

理解度チェック

(軽い確認用)

Q1. Web アプリを最小の運用負荷でホストし、自動スケールやデプロイスロットも使いたい。何を選びますか?

Q2. イベント駆動の短時間処理を、サーバー管理なしで使った分だけ課金されたい。何を使いますか?

Q3. 既存の Kubernetes 資産を活かして、コンテナをオーケストレーションしたい。何を使いますか?

理解度を確認第4章「インフラストラクチャの設計」の問題を解く

学習の記録を残しませんか

参考書はすべて無料で読めます。無料登録すると、問題集での演習・既読と進捗の記録・間違えた問題の復習・ハイライトが使えます。