演習 - 準拠している Kubernetes クラスターを設定する

完了

この演習では、Azure Kubernetes Service (AKS) クラスターを設定します。 AKS クラスターは、Azure Arc を使用する Kubernetes 上の Azure App Service 用に承認された Kubernetes ディストリビューションです。ただし、この機能は AKS クラスターのみに制限されるものではありません。 あらゆるパブリック クラウド プロバイダー、オンプレミス、エッジにデプロイされた CNCF 認定、Arc テスト済みのあらゆる Kubernetes クラスターが考えられます。 このユニットの演習は次のタスクで構成されています。

  1. AKS クラスターをデプロイします。
  2. AKS クラスターに接続します。

Note

Azure Arc を使用する Kubernetes 上の Azure App Service では、AKS クラスターの Windows ノード プールはサポートされていません。

Note

このモジュールのホスト プラットフォームとして AKS を選択することは、Azure Arc を使用する Kubernetes 上の Azure App Service の意図した主なユース ケースを表すものではありません。Azure Arc を使用する Kubernetes 上の Azure App Service は、任意の準拠している Azure Arc 対応 Kubernetes クラスターで実行するように設計されています。

これは、このモジュールの演習シーケンスの 2 番目です。 これらの演習では、Azure Arc を使用して Kubernetes に Azure App Service Web アプリを実装する手順について説明します。シーケンスは次の演習で構成されています。

  1. ラボ環境を準備します。
  2. Kubernetes クラスターを設定します。
  3. Kubernetes クラスターを Azure Arc に接続します。
  4. Azure Arc 対応 Kubernetes クラスターに App Service を実装します。
  5. App Service Web アプリを Azure Arc 対応 Kubernetes クラスターにデプロイします。
  6. ラボ環境をクリーンアップします。

Depiction of this module's exercise sequence with additional sub-steps illustrated for the second exercise (Set up a Kubernetes cluster).

タスク 1: AKS クラスターをデプロイする

Azure Arc を使用する Kubernetes 上の Azure App Service をサポートするには、サポートされている AKS クラスターを次の要件でデプロイします。

  • サポートされている Kubernetes バージョン 1.20.x 以降を実行します。
  • Kubectl バージョン 1.20.x 以降。
  • ロード バランサーがフロントエンド サービスとして搭載されている。
  • Microsoft Entra ID を有効にします。
  • Azure Arc ディストリビューションを使用する Kubernetes に承認された Azure App Service を構成する。

次の手順を使って、Azure Arc を使用する Kubernetes 上の Azure App Service をサポートする AKS クラスターをデプロイします。

  1. Azure Cloud Shell ペインに Bash セッションが表示されているブラウザー ウィンドウで、次のコマンドを実行します。 これらのコマンドでは、AKS クラスターを含むリソース グループ、AKS クラスター、およびその Azure リージョンに名前を割り当てる変数の値を設定します (<azure_region> プレースホルダーは、AKS でサポートされている任意のリージョンの名前に置き換えてください)。

    K8S_CLUSTER_RG_NAME=k8sAKS-RG
    K8S_CLUSTER_NAME=k8sAKS-c$RANDOM
    LOCATION=<azure_region>
    
  2. 次のコマンドを実行して、AKS クラスターを含むリソース グループを作成してから、AKS クラスターをプロビジョニングします。

    az group create -l $LOCATION -n $K8S_CLUSTER_RG_NAME
    az aks create -g $K8S_CLUSTER_RG_NAME -n $K8S_CLUSTER_NAME -l $LOCATION --enable-aad --generate-ssh-keys
    

    Note

    クラスターのプロビジョニングが完了するまで待ちます。 これには 5 分ほどかかります。

タスク 2: AKS クラスターに接続する

デプロイした AKS クラスターでは、Microsoft Entra ID が有効になっています。 そのため、認証にデバイス コードベースのログインを使用するオプションがあります。 しかし、シンプルなものにしておくために、代わりに Azure Kubernetes Service クラスターの管理者組み込みロールを使用して、クラスターの管理者資格情報を取得します。

Note

AKS と Microsoft Entra ID の統合の詳細については、「AKS マネージド Microsoft Entra 統合」を参照してください。

  1. 次のコマンドを実行して、クラスターから管理者資格情報を取得し、ローカルの kubeconfig ファイルにマージします。

    az aks get-credentials -g $K8S_CLUSTER_RG_NAME -n $K8S_CLUSTER_NAME --admin
    
  2. 次のコマンドを実行して、クラスターに正常に接続したかどうかを判断します。

    kubectl get ns
    

    Note

    出力には、既定およびシステムの名前空間の一覧が含まれているはずです。

  3. 出力を調べ、ターゲット AKS クラスター上の名前空間が一覧表示されていることを確認します。

おめでとうございます。 このモジュールの 2 番目の演習を完了しました。 AKS クラスターをデプロイし、それに接続しました。