在 AKS 中,具有相同設定的節點會組成節點集區。 每個集區都包含執行應用程式的 VM。 在先前的教學課程中,您已建立具有單一節點集區的 Azure Linux 容器主機叢集。 為了滿足應用程式不同的運算或儲存需求,你可以建立額外的使用者節點池。
在這個教學中,五部分中的第二部分,你將學習如何:
- 新增 Azure Linux 節點集區。
- 檢查節點集區的狀態。
本教學課程中的命令會使用在 教學 1:使用適用於 AKS 的 Azure Linux 容器主機建立叢集 中設定的環境變數。
在稍後的教學課程中,您會了解如何將節點移轉至 Azure Linux,並啟用遙測來監視您的叢集。
先決條件
- 在先前的教學課程中,您已建立並部署 Azure Linux 容器主機叢集。 若您尚未完成這些步驟,而想要繼續操作,請從教學課程 1:使用適用於 AKS 的 Azure Linux 容器主機建立叢集開始。
- 您需要最新版的 Azure CLI。 執行
az --version以尋找版本。 如果您需要安裝或升級,請參閱 安裝 Azure CLI。
設定環境變數
設定以下環境變數,為每個部署建立獨特的資源名稱。 用你選擇的名字取代佔位符 <your-node-pool-name> 。 你可以選擇性地加上隨機後綴以確保獨特性。 節點集區的名稱必須以小寫字母開頭,而且只能包含英數字元。 針對 Linux 節點集區,長度必須介於 1 到 12 個字元之間。
# Set random suffix for uniqueness
export RANDOM_SUFFIX=$(openssl rand -hex 3)
# Set node pool name
export NODE_POOL_NAME="<your-node-pool-name>$RANDOM_SUFFIX"
新增 Azure Linux 節點集區
用 az aks nodepool add 指令,並指定 --os-sku AzureLinux,將 Azure Linux 節點池加入現有叢集。 以下範例建立一個節點池,在叢集中運行三個節點,教學1:建立包含 Azure Linux 容器主機的 AKS 叢集。
az aks nodepool add \
--resource-group $RESOURCE_GROUP \
--cluster-name $CLUSTER_NAME \
--name $NODE_POOL_NAME \
--node-count 3 \
--os-sku AzureLinux
輸出範例:
{
"agentPoolType": "VirtualMachineScaleSets",
"count": 3,
"name": "alnodepool",
"osType": "Linux",
"provisioningState": "Succeeded",
"resourceGroup": "testAzureLinuxResourceGroupxxxxx",
"type": "Microsoft.ContainerService/managedClusters/agentPools"
}
檢查節點集區狀態
用指令 az aks nodepool list 檢查你的節點池狀態。
az aks nodepool list --resource-group $RESOURCE_GROUP --cluster-name $CLUSTER_NAME
輸出範例:
[
{
"agentPoolType": "VirtualMachineScaleSets",
"availabilityZones": null,
"count": 1,
"enableAutoScaling": false,
"enableEncryptionAtHost": false,
"enableFips": false,
"enableNodePublicIp": false,
"id": "/subscriptions/REDACTED/resourcegroups/myAKSResourceGroupxxxxx/providers/Microsoft.ContainerService/managedClusters/myAKSClusterxxxxx/agentPools/nodepoolx",
"maxPods": 110,
"mode": "System",
"name": "nodepoolx",
"nodeImageVersion": "AKSUbuntu-1804gen2containerd-2023.06.06",
"orchestratorVersion": "1.25.6",
"osDiskSizeGb": 128,
"osDiskType": "Managed",
"osSku": "Ubuntu",
"osType": "Linux",
"powerState": {
"code": "Running"
},
"provisioningState": "Succeeded",
"resourceGroup": "myAKSResourceGroupxxxxx",
"type": "Microsoft.ContainerService/managedClusters/agentPools",
"vmSize": "Standard_DS2_v2"
},
{
"agentPoolType": "VirtualMachineScaleSets",
"availabilityZones": null,
"count": 3,
"enableAutoScaling": false,
"enableEncryptionAtHost": false,
"enableFips": false,
"enableNodePublicIp": false,
"id": "/subscriptions/REDACTED/resourcegroups/myAKSResourceGroupxxxxx/providers/Microsoft.ContainerService/managedClusters/myAKSClusterxxxxx/agentPools/npxxxxxx",
"maxPods": 110,
"mode": "User",
"name": "npxxxxxx",
"nodeImageVersion": "AzureLinuxContainerHost-2023.06.06",
"orchestratorVersion": "1.25.6",
"osDiskSizeGb": 128,
"osDiskType": "Managed",
"osSku": "AzureLinux",
"osType": "Linux",
"powerState": {
"code": "Running"
},
"provisioningState": "Succeeded",
"resourceGroup": "myAKSResourceGroupxxxxx",
"type": "Microsoft.ContainerService/managedClusters/agentPools",
"vmSize": "Standard_DS2_v2"
}
]
後續步驟
在本教學課程中,您已將 Azure Linux 節點集區新增至現有的叢集。 在下一個教學課程中,您會了解如何將現有的節點移轉至 Azure Linux。