Microsoft AZ-204: Azure コンテナーソリューション — 学習ガイド

こちらの一部です: Microsoft Azure Developer Associate AZ-204 — 学習ガイド. 検証済みの解答で練習: Microsoft試験ハブ, または時間制限付き模擬試験に挑戦: ExamRoll.io.

概要

Azureは、単一コンテナの実行、オーケストレーションされたクラスター、そしてセキュアなエンタープライズグレードのイメージサプライチェーンにわたる、幅広いコンテナオプションを提供します。Azure Container Instances (ACI) は、サーバーを管理することなくLinuxまたはWindowsコンテナを実行するための最も迅速な方法です。Azure Kubernetes Service (AKS) は、高度なスケジューリング、ネットワーキング、セキュリティ、DevOps統合を備えたマイクロサービスをスケーリングする、マネージドKubernetesコントロールプレーンです。Azure Container Registry (ACR) は、ビルド、タグ付け、プッシュ/プル、Helm配布フローの基盤となる、プライベートで地理的に複製されたレジストリです。Dockerイメージの構築とライフサイクル管理を習得することは、これらのいずれのプラットフォームにおいても信頼性の高いデプロイを行うための基礎となります。このセクションでは、YAMLによるデプロイ、Helmパッケージング、サービスの公開、アイデンティティ/セキュリティパターンなど、各要素がどのように連携するかについて、実践的で開発者中心の視点から解説します。

DockerとAzure Container Registry (ACR)

信頼性の高いコンテナデリバリーは、堅実なDockerの基礎から始まります。各イメージはDockerfileの命令によって形成されるレイヤーで構成されており、レイヤーの再利用とキャッシュヒットは、ビルドの高速化に不可欠です。

ACRを使用して、イメージとHelmチャートをプライベートに保存および配布します:

Azure Container Instances (ACI)

ACIは、クラスター管理なしでオンデマンドでコンテナを実行します。主要な単位はコンテナグループで、これは同じホストOSカーネル、ライフサイクル、IP、ボリュームを共有する、共同でスケジュールされたコンテナのセットです。コンテナグループを使用して、サイドカーパターン(例:ログシッパー、プロキシ)を実装したり、メインプロセスとヘルパーを組み合わせたりします。

Azure Kubernetes Service (AKS)

AKSは、ノードプール、自動スケーリング、そして詳細なネットワーク/IDオプションを備えたマネージドコントロールプレーンを提供します。

ノードプールは、キャパシティとワークロードの配置を構成します。システムノードプールはコアサービスを実行し、ユーザーノードプールはアプリケーションPodを実行します。複数のプールを使用して、CPU/メモリ/GPUの要件、OS (Linux/Windows)、VMサイズ、アベイラビリティゾーンによってワークロードを分離します。taint/tolerationを使用してシステムプールを保護し、ラベルで選択を行い、クラスターオートスケーラーで保留中のPodに基づいてノードを追加/削除します。サイジングの際には、ノードごとのmaxPodsとPod密度を考慮してください。

Podのスケジューリングは、リソース要求/制限、QoSクラス (Guaranteed/Burstable/BestEffort)、および制約によって駆動されます。nodeSelector/affinityとanti-affinityを使用してPodを適切なプールに配置し、レプリカをゾーンや障害ドメインに分散させます。Topology spread constraintsは、均等な分散を改善します。重要なサービスには、PodDisruptionBudgetsとPriorityClassesを定義して、自発的な中断やプリエンプションの振る舞いを制御します。DaemonSetsはノードごとのエージェント(ロギング、モニタリング)を配置し、CronJobsは定期的なタスクのためにコンテナをスケジュールします。

AKSでのデプロイは宣言的です。YAMLマニフェストは、Deployments、StatefulSets、Jobs、Services、IngressのapiVersion、kind、metadata、specを定義します。マニフェストはソース管理に保管し、環境差分はKustomizeオーバーレイでパラメータ化し、kubectl apply -fで適用します。サーバーサイドApplyと適切なラベル/アノテーションは、所有権の管理とドリフト検出に役立ちます。再利用可能なアプリをパッケージ化するには、Helm 3がテンプレートと値をバンドルします。HelmチャートをACRにOCIアーティファクトとしてホストし、helm upgrade –install <release> oci://<acr>.azurecr.io/helm/<chart> -f values.yamlでインストールします。環境ごとにvaluesファイルを使用し、チャートのバージョンを追跡し、迅速な復旧のためにhelm rollbackでロールバックします。

日常的に使用するkubectlコマンド:

AKSのネットワークは、明確な責務を持ってPodとServiceを公開します:

IDと認可は、クラスター内のシークレットなしでAzure ADを統合します:

AKSへのエンドツーエンドのイメージフローは、シンプルかつ安全です。マルチステージイメージをビルドし、不変のバージョンでタグ付けし、ACRにプッシュし、マニフェストやHelmでAKSにデプロイします。AKSはkubeletマネージドIDを使用してACRからプルし、PodはワークロードIDを介してAzureリソースを利用します。サービスはClusterIP/LoadBalancerを介して公開され、TLSとルーティングを一元化するIngressコントローラーで洗練されます。

実践的な問題シナリオ

AdobeのCreative Cloudチームは、モノリシックなメディア処理サービスをマイクロサービスに分解し、低レイテンシーでのグローバル配信と強化されたサプライチェーンを目指しています。

  1. CIでマルチステージDockerfileを使用してイメージをビルド・保存する
  1. レジストリを強化し、パッチ適用を自動化する
  1. 分離されたノードプールとIDを持つAKSを構築する
  1. 宣言的なデプロイとパッケージングを定義する
  1. サービスを公開し、L7セキュリティを適用する
  1. Azureリソースへの安全なワークロードアクセスを実装する
  1. ACIでバッチ処理のオーバーフローを処理する

これらの各選択肢は、Adobeの目標を直接サポートします。geoレプリケーションとプライベートエンドポイントを備えたACR Premiumは、イメージのプルを安全かつ高速化します。専門のノードプールとワークロードIDを持つAKSは、分離と最小権限アクセスを強制します。Helmと宣言的YAMLは、デプロイとロールバックを標準化します。WAFを備えたAGICは、回復力のある安全なL7イングレスを提供します。そしてACIは、永続的なクラスターコストなしでバースト的なバッチ処理を処理します。


Azure Cosmos DB · すべてのドメイン · Azure の認証、承認、およびセキュリティ

これらの問題を練習する → · ExamRoll.ioで時間制限付き練習 →

Pass the whole exam — not just this question

You found this answer. Get every verified question and explanation in one place, and save hours of prep. Free to start.

試験に合格する →

Microsoftを閲覧 →

Related guides

オールインワンアクセス

1つのサブスクリプション。すべての試験。

すべてのプランで、無制限の回答検索、模擬試験、AI解説、および完全なリソースライブラリが利用可能 — 20以上の言語に対応。

月額
24.87
Just €0.83/day
すべて含まれています:
  • 無制限の回答検索
  • 無制限の模擬試験
  • AIを活用した解説
  • 完全なリソースライブラリ
  • 20以上の言語
  • 毎週のコンテンツ更新
  • 特典 & 紹介
  • 優先サポート
無料トライアルを開始

クレジットカード不要*

ベストバリュー
12ヶ月
179.87
Just €0.49/daySave 40%
すべて含まれています:
  • 無制限の回答検索
  • 無制限の模擬試験
  • AIを活用した解説
  • 完全なリソースライブラリ
  • 20以上の言語
  • 毎週のコンテンツ更新
  • 特典 & 紹介
  • 優先サポート
無料トライアルを開始

クレジットカード不要*

✓ 無料プランが含まれています · ✓ いつでもキャンセル可能 · ✓ すべてのプランで製品の全機能が利用可能