Azure認定資格 WEB問題集&徹底解説

AZ-900:Microsoft Azure Fundamentals

Azure Kubernetes Service (AKS) の概要と試験出題ポイントは?

Azureサービスの一つであるAzure Kubernetes Service (AKS)はどんな内容なのでしょうか?また、Azure認定資格の AZ-900:Azure Fundamentals に合格するためには、サービスのどんなポイントを押さえておけばよいのでしょうか?
ここでは、そんなあなたの疑問に回答していきたいと思います

Azure Kubernetes Service (AKS) 徹底解説

1. サービス概要

Azure Kubernetes Service (AKS) は、フルマネージドな Kubernetes コンテナオーケストレーションサービスです。 Kubernetes クラスターのデプロイ、管理、スケーリングを簡素化し、開発者がコンテナ化されたアプリケーションの構築、デプロイ、管理に集中できるようにします。 AKS は、Azure のインフラストラクチャ上で Kubernetes を実行するための複雑さを抽象化し、開発者と運用チームに、高い可用性、セキュリティ、およびスケーラビリティを提供します。 マイクロサービスアーキテクチャ、コンテナベースのアプリケーション、DevOps パイプラインなど、幅広いユースケースに対応できます。

AKS は、Kubernetes のエキスパートでなくても、Kubernetes の力を活用できる優れた選択肢です。

2. 主な特徴と機能

2.1 マネージド Kubernetes

AKS は、Kubernetes コントロールプレーンを自動的に管理し、アップグレード、パッチ適用、スケーリングなどの運用タスクを Azure が担当します。

2.2 統合された ID およびセキュリティ

AKS は、Azure Active Directory (Azure AD) と統合されており、Kubernetes リソースへのアクセス制御と認証を容易にします。また、Azure Policy を使用して、セキュリティとコンプライアンスのポリシーを適用できます。

2.3 開発者向けツール

AKS は、Helm、Draft、Visual Studio Code などの一般的な開発者向けツールと統合されており、コンテナ化されたアプリケーションの開発、デプロイ、および管理を簡素化します。

2.4 スケーラビリティ

AKS は、自動スケーリングをサポートしており、アプリケーションの需要に基づいて、ノードの数とポッドの数を自動的に調整できます。これにより、リソースの効率的な使用と、アプリケーションの可用性の維持を両立できます。

2.5 ネットワーク

AKS は、Azure Virtual Network と統合されており、コンテナ化されたアプリケーションを他の Azure サービスやオンプレミスネットワークと安全に接続できます。また、Kubernetes ネットワークポリシーを使用して、ポッド間のトラフィックを制御できます。

2.6 ストレージ

AKS は、Azure Disks、Azure Files、Azure Blob Storage などのさまざまなストレージオプションをサポートしています。これにより、コンテナ化されたアプリケーションに永続的なストレージを提供できます。

2.7 監視とロギング

AKS は、Azure Monitor と統合されており、クラスターのパフォーマンスとヘルス状態を監視できます。また、Kubernetes のログを Azure Monitor Logs に収集し、分析できます。

3. アーキテクチャおよび技術要素

  1. ユーザーが Azure Portal、CLI、PowerShell、または SDK を介して AKS クラスターを作成/管理。
  2. ユーザーは、ノードのサイズ、数、ネットワーク構成などのクラスター構成を指定。
  3. Azure が、Kubernetes コントロールプレーンとエージェントノードを自動的にプロビジョニング。
  4. Kubernetes コントロールプレーンは Azure によって完全に管理され、高可用性とセキュリティが確保される。
  5. エージェントノードは、ユーザーのアプリケーションコンテナを実行し、Kubernetes によってオーケストレーションされる。
  6. Azure Virtual Network が、クラスター内のすべてのコンポーネント間のネットワーク接続を提供する。

AKS は、Azure Resource Manager (ARM) を使用して管理され、Azure の他のサービス (Azure Container Registry、Azure DevOps など) と統合できます。

4. セキュリティと認証・認可

  • Azure Active Directory (Azure AD): Azure AD を使用して、AKS クラスターへのアクセスを制御できます。
  • Azure Role-Based Access Control (RBAC): RBAC を使用して、AKS リソースへのアクセス権限を、ロールに基づいて付与/制限できます。
  • ネットワークポリシー: Kubernetes ネットワークポリシーを使用して、ポッド間のトラフィックを制御できます。
  • Kubernetes シークレット: Kubernetes シークレットを使用して、機密情報を安全に管理できます。
  • Azure Policy: Azure Policy を使用して、セキュリティとコンプライアンスのポリシーを適用できます。

5. 料金形態

Azure Kubernetes Service は主に以下に基づく料金体系です:

  • エージェントノード: AKS クラスターで実行される仮想マシンの数、サイズ、および実行時間に応じて課金。
  • ネットワーク: AKS クラスターとの間のネットワークトラフィックに応じて課金。
  • ストレージ: AKS クラスターで使用されるストレージリソース (Azure Disks、Azure Files、Azure Blob Storage) に応じて課金。
  • その他: ロギング、監視、その他の Azure サービスの使用量に応じて課金。

Kubernetes コントロールプレーン自体は、無料で提供されます。

6. よくあるアーキテクチャ・設計パターン

  • マイクロサービスアーキテクチャ: AKS を使用して、個別のマイクロサービスをデプロイし、管理できます。
  • Web アプリケーション: AKS を使用して、Web アプリケーションをコンテナ化し、スケーラブルにデプロイできます。
  • API バックエンド: AKS を使用して、API バックエンドを構築し、スケーラブルにデプロイできます。
  • イベントドリブンアプリケーション: AKS と Azure Event Grid を組み合わせて、イベントドリブンアプリケーションを構築できます。
  • 機械学習ワークロード: AKS を使用して、機械学習モデルをデプロイし、推論を実行できます。

7. 設定・デプロイ手順(ハンズオン例)

  1. Azure Portal、CLI、または PowerShell を使用して、リソースグループを作成。
  2. AKS クラスターを作成 (クラスター名、リージョン、ノードプール構成などを指定)。
  3. `kubectl` コマンドラインツールをインストールし、構成。
  4. Kubernetes マニフェストファイルを作成し、アプリケーションをデプロイ。
  5. サービスを作成し、アプリケーションを公開。
  6. Azure Monitor を使用して、クラスターのパフォーマンスを監視。

8. 試験で問われやすいポイント

8.1 AKS の基本的な概念

  • Q: AKS とは何ですか?
    A: フルマネージドな Kubernetes コンテナオーケストレーションサービスです。
  • Q: AKS の主な利点は何ですか?
    A: マネージド Kubernetes コントロールプレーン、統合された ID およびセキュリティ、開発者向けツール、スケーラビリティ。

8.2 Kubernetes の基本的な概念

  • Q: ポッドとは何ですか?
    A: Kubernetes の最小デプロイ可能なユニットです。
  • Q: サービスとは何ですか?
    A: ポッドの論理的なグループを公開する方法です。
  • Q: デプロイメントとは何ですか?
    A: アプリケーションのdesired state を宣言的に指定する方法です。

8.3 ネットワーク

  • Q: AKS を Azure Virtual Network に統合する利点は何ですか?
    A: 他の Azure サービスやオンプレミスネットワークと安全に通信できる。
  • Q: Kubernetes ネットワークポリシーとは何ですか?
    A: ポッド間のトラフィックを制御するために使用されます。

8.4 セキュリティ

  • Q: AKS クラスターへのアクセスを制御する方法は何ですか?
    A: Azure Active Directory (Azure AD) と Azure Role-Based Access Control (RBAC)を使用。
  • Q: 機密情報を管理する方法は何ですか?
    A: Kubernetes シークレットを使用。

8.5 料金

  • Q: AKS の料金はどのように計算されますか?
    A: エージェントノード、ネットワーク、ストレージ、およびその他の Azure サービスの使用量に基づいて計算。

8.6 ユースケース

  • Q: AKS の一般的なユースケースは何ですか?
    A: マイクロサービスアーキテクチャ、Web アプリケーション、API バックエンド、イベントドリブンアプリケーション、機械学習ワークロード。

8.7 AKS と他の Azure サービスの比較

  • Q: AKS と Azure Container Instances (ACI) の違いは何ですか?
    A: AKS はコンテナオーケストレーションのためのより高度な機能を提供し、ACI はサーバーレスでコンテナを高速に実行するのに適しています。

8.8 その他細かな試験ポイント

  • ノードプールとは
  • スケジューラとは
  • Ingress Controllerとは
  • Azure CNI と Kubenet の違い