Esercitazione: Aggiungere un pool di nodi Azure Linux al cluster Servizio Azure Kubernetes (AKS) esistente

Nel servizio Azure Kubernetes i nodi con le stesse configurazioni vengono raggruppati in pool di nodi. Ogni pool contiene le VM che eseguono le applicazioni. Nell'esercitazione precedente è stato creato un cluster host contenitore Linux di Azure con un singolo pool di nodi. Per soddisfare i diversi requisiti di calcolo o archiviazione delle applicazioni, è possibile creare pool di nodi utente aggiuntivi.

In questa esercitazione, parte 2 di cinque, si apprenderà come:

  • Aggiungere un pool di nodi Linux di Azure.
  • Controllare lo stato dei pool di nodi.

I comandi di questa esercitazione utilizzano le variabili di ambiente impostate in Tutorial 1: Creare un cluster con Azure Linux Container Host for AKS.

Nelle esercitazioni successive si apprenderà come eseguire la migrazione dei nodi in Linux di Azure e abilitare i dati di telemetria per monitorare i cluster.

Prerequisiti

Impostare le variabili di ambiente

Impostare le variabili di ambiente seguenti per creare nomi di risorse univoci per ogni distribuzione. Sostituire il segnaposto <your-node-pool-name> con un nome di propria scelta. Facoltativamente, è possibile aggiungere un suffisso casuale per garantire l'univocità. Il nome di un pool di nodi deve iniziare con una lettera minuscola e può contenere solo caratteri alfanumerici. Per i pool di nodi Linux, la lunghezza deve essere compresa tra 1 e 12 caratteri.

# 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"

Aggiungere un pool di nodi Linux di Azure

Aggiungere un pool di nodi Linux Azure al cluster esistente usando il comando az aks nodepool add e specificare --os-sku AzureLinux. L'esempio seguente crea un pool di nodi che include tre nodi nel cluster dell'Esercitazione 1: Creare un cluster con l'host contenitori Azure Linux per il servizio Azure Kubernetes.

az aks nodepool add \
    --resource-group $RESOURCE_GROUP \
    --cluster-name $CLUSTER_NAME \
    --name $NODE_POOL_NAME \
    --node-count 3 \
    --os-sku AzureLinux

Output di esempio:

{
  "agentPoolType": "VirtualMachineScaleSets",
  "count": 3,
  "name": "alnodepool",
  "osType": "Linux",
  "provisioningState": "Succeeded",
  "resourceGroup": "testAzureLinuxResourceGroupxxxxx",
  "type": "Microsoft.ContainerService/managedClusters/agentPools"
}

Controllare lo stato del pool di nodi

Controllare lo stato dei pool di nodi usando il az aks nodepool list comando .

az aks nodepool list --resource-group $RESOURCE_GROUP --cluster-name $CLUSTER_NAME

Output di esempio:

[
  {
    "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"
  }
]

Passo successivo

In questa esercitazione è stato aggiunto un pool di nodi Linux di Azure al cluster esistente. Nell'esercitazione successiva si apprenderà come eseguire la migrazione di nodi esistenti in Azure Linux.