このチュートリアルでは、 5 つのパート 1 で、次の方法を学習します。
- Kubernetes CLI、
kubectlをインストールします。 - Azure リソース グループを作成します。
- ACL クラスターを作成してデプロイします。
- ACL クラスターに接続するように
kubectlを構成します。
後のチュートリアルでは、ACL ノード プールを既存のクラスターに追加し、既存のノードを ACL に移行する方法について説明します。
Azure Container Linux (ACL) に関する考慮事項と制限事項
開始する前に、ACL に関する次の考慮事項と制限事項を確認してください。
- ACL は、AKS v1.34 以降で一般提供されています。
- ACL には、セキュア ブートと vTPM を使用 したトラステッド起動 が必要です。 信頼されていない起動バリアントは使用できません。
- Arm64 の ACL では、Trusted Launch の互換性を有効にするために Cobalt ベース (v6) SKU が必要です。
-
NodeImageおよびNoneは、サポートされている唯一の オペレーティング システム (OS) アップグレード チャネルです。UnmanagedおよびSecurityPatchは、変更できない/usrディレクトリのため、ACL と互換性がありません。 - アーティファクト ストリーミング はサポートされていません。
- ポッドサンドボックス はサポートされていません。
- Confidential Virtual Machines (CVM) は サポートされていません。
- 第 1 世代 VM はサポートされていません。
Prerequisites
- Azure Container Linux には、バージョン 2.86.0 以降Azure CLI必要です。
az versionコマンドを使用してバージョンを検索します。 最新バージョンにアップグレードするには、az upgradeコマンドを使用します。
環境変数の設定
デプロイごとに一意のリソース名を作成するには、次の環境変数を設定します。
export RESOURCE_GROUP="<your-resource-group-name>"
export REGION="<your-region>"
export CLUSTER_NAME="<your-cluster-name>"
リソース グループを作成します
Azureでリソース グループを作成する場合は、場所を指定する必要があります。 この場所は、リソース グループ メタデータのストレージの場所であり、リソースの作成時に別のリージョンを指定しない場合はAzureでリソースが実行されます。
az group create コマンドを使用して、リソース グループを作成します。
az group create --name $RESOURCE_GROUP --location $REGION
出力例:
{
"id": "/subscriptions/xxxxx/resourceGroups/myACLResourceGroup",
"location": "westus",
"managedBy": null,
"name": "myACLResourceGroup",
"properties": {
"provisioningState": "Succeeded"
},
"tags": null,
"type": "Microsoft.Resources/resourceGroups"
}
ACL クラスターを作成する
az aks create パラメーターを指定して --os-sku AzureContainerLinux コマンドを使用して AKS クラスターを作成し、ACL クラスターをプロビジョニングします。 次の例では、3 つのノードを含む ACL クラスターを作成します。
az aks create \
--name $CLUSTER_NAME \
--resource-group $RESOURCE_GROUP \
--os-sku AzureContainerLinux \
--node-count 3 \
--generate-ssh-keys
出力例:
{
"id": "/subscriptions/xxxxx/resourceGroups/myACLResourceGroup/providers/Microsoft.ContainerService/managedClusters/myACLCluster",
"location": "westus",
"name": "myACLCluster",
"properties": {
"provisioningState": "Succeeded"
},
"type": "Microsoft.ContainerService/managedClusters"
}
数分後、コマンドが完了し、クラスターに関する情報が JSON 形式で返されます。
kubectl を使用してクラスターに接続する
kubectl コマンドを使用して、Kubernetes クラスターに接続するように az aks get-credentials を構成します。 次の例では、ACL クラスターの資格情報を取得します。
az aks get-credentials --resource-group $RESOURCE_GROUP --name $CLUSTER_NAME
クラスターへの接続を確認する
クラスター ノードの一覧を返すには、 kubectl get nodes コマンドを使用してクラスターへの接続を確認します。
kubectl get nodes
出力例:
NAME STATUS ROLES AGE VERSION
aks-nodepool1-00000000-0 Ready agent 10m v1.34.0
aks-nodepool1-00000000-1 Ready agent 10m v1.34.0
aks-nodepool1-00000000-2 Ready agent 10m v1.34.0
次のステップ
このチュートリアルでは、ACL クラスターを作成してデプロイしました。 次のチュートリアルでは、既存のクラスターに ACL ノード プールを追加する方法について説明します。