クイック スタート: Azure Kubernetes Service (AKS)用の Azure Linux コンテナー ホストを使用してクラスターを作成する

AKS 用の Azure Linux コンテナー ホストは、高速なブート時間、予測可能な更新プログラム、および厳密なセキュリティの既定値を提供し、AKS ライフサイクルの緊密な統合を実現します。 Microsoftは、カーネルから CVE 応答までの完全なスタックを所有し、運用を簡素化し、顧客のオーバーヘッドを削減します。 詳細については、「Azure Linux for AKS」を参照してください。

このクイック スタートでは、次の方法について説明します。

  • Kubernetes CLI、kubectl をインストールします。
  • Azure リソース グループを作成します。
  • Azure Linux コンテナー ホスト クラスターを作成してデプロイする。
  • Azure Linux コンテナー ホスト クラスターに接続するように kubectl を構成する。

Note

Azure Linux 4.0 は現在、preview であり、評価とテストの目的に厳密に限定されています。 運用環境での使用には適していません。

Prerequisites

  • 最新バージョンの Azure CLI が必要です。 バージョンを確認するには、az --version を実行します。 インストールまたはアップグレードが必要な場合は、Azure CLI のインストールを参照してください。

環境変数の設定

デプロイ全体で一貫した名前付けになるように、次の環境変数を設定します。 このクイック スタートでは、リソース グループ名を testAzureLinuxResourceGroup に、クラスター名を testAzureLinuxCluster に設定し、場所を EastUS2 に設定します。

export RESOURCE_GROUP=testAzureLinuxResourceGroup
export CLUSTER_NAME=testAzureLinuxCluster
export LOCATION=EastUS2

リソース グループを作成します

Azure Linux コンテナー ホストを使用してクラスターを作成するには、次を使用します。

  • Azure リソース グループ: Azure リソースがデプロイおよび管理される論理コンテナー。
  • AKS: 運用環境に対応した Kubernetes クラスターをすばやく作成できる、ホスト型 Kubernetes サービス。

リソース グループを作成するときは、場所を指定する必要があります。 この場所は次のとおりです。

  • リソース グループ メタデータのストレージの場所。
  • リソースの作成時に別のリージョンを指定しない場合、Azure でリソースを実行する場所。

前に設定したリソース グループ名とリージョン環境変数を指定して、 az group create コマンドを使用してリソース グループを作成します。

az group create --name $RESOURCE_GROUP --location $LOCATION

出力例:

{
  "id": "/subscriptions/xxxxx/resourceGroups/testAzureLinuxResourceGroup",
  "location": "EastUS2",
  "managedBy": null,
  "name": "testAzureLinuxResourceGroup",
  "properties": {
    "provisioningState": "Succeeded"
  },
  "tags": null,
  "type": "Microsoft.Resources/resourceGroups"
}

Azure Linux コンテナー ホスト クラスターを作成する。

az aks create パラメーターを指定した --os-sku コマンドを使用して AKS クラスターを作成し、Azure Linux イメージを使用して Azure Linux コンテナー ホストをプロビジョニングします。 次の例では、testAzureLinuxCluster という名前の Azure Linux コンテナー ホスト クラスターをリソース グループ testAzureLinuxResourceGroup に作成します。

az aks create --name $CLUSTER_NAME --resource-group $RESOURCE_GROUP --os-sku AzureLinux

出力例:

{
  "id": "/subscriptions/xxxxx/resourceGroups/testAzureLinuxResourceGroup/providers/Microsoft.ContainerService/managedClusters/testAzureLinuxCluster",
  "location": "EastUS2",
  "name": "testAzureLinuxCluster",
  "properties": {
    "provisioningState": "Succeeded"
  },
  "type": "Microsoft.ContainerService/managedClusters"
}

数分後、コマンドが完了し、クラスターに関する情報が JSON 形式で返されます。

kubectl を使用してクラスターに接続する

  1. kubectl コマンドを使用して、Kubernetes クラスターに接続するように az aks get-credentials を構成します。 次の例では、前に作成したリソース グループとクラスター名を使用して、Azure Linux Container Host クラスターの資格情報を取得します。

    az aks get-credentials --resource-group $RESOURCE_GROUP --name $CLUSTER_NAME
    
  2. kubectl get nodes コマンドを使用してクラスター ノードの一覧を返して、クラスターへの接続を確認します。

    kubectl get nodes
    

    出力例:

    NAME                           STATUS   ROLES   AGE     VERSION
    aks-nodepool1-00000000-0       Ready    agent   10m     v1.34.4
    aks-nodepool1-00000000-1       Ready    agent   10m     v1.34.4
    

    すべてのノードに Ready 状態が表示され、Azure Linux コンテナー ホスト クラスターが実行されていて到達可能であることを確認します。

リソースをクリーンアップする

このクラスターを引き続き使用する予定がない場合は、 az group delete コマンドを使用して継続的な料金が発生しないように、リソース グループを削除します。 リソース グループを削除すると、AKS クラスターと関連付けられているすべてのリソースが削除されます。

az group delete --name $RESOURCE_GROUP --yes --no-wait

Linux コンテナー ホスト クラスター Azure実行できるようになったので、次のことができます。