Tutoriel : Ajouter un pool de nœuds Linux Azure à votre cluster Azure Kubernetes Service (AKS) existant

Dans AKS, les nœuds avec les mêmes configurations sont regroupés dans des pools de nœuds. Chaque pool contient les machines virtuelles qui exécutent vos applications. Dans le tutoriel précédent, vous avez créé un cluster hôte de conteneur Azure Linux avec un pool de nœuds unique. Pour répondre aux besoins de calcul ou de stockage variables de vos applications, vous pouvez créer des pools de nœuds utilisateur supplémentaires.

Dans ce tutoriel, partie deux sur cinq, vous apprendrez à :

  • Ajouter un pool de nœuds Azure Linux.
  • Vérifier l’état de vos pools de nœuds.

Les commandes de ce didacticiel utilisent les variables d’environnement définies dans Tutorial 1 : créez un cluster avec l’hôte de conteneur Linux Azure pour AKS.

Dans les tutoriels ultérieurs, vous apprenez à migrer des nœuds vers Azure Linux et à activer la télémétrie pour surveiller vos clusters.

Prerequisites

Définir des variables d’environnement

Définissez les variables d’environnement suivantes pour créer des noms de ressources uniques pour chaque déploiement. Remplacez l’espace réservé <your-node-pool-name> par un nom de votre choix. Vous pouvez éventuellement ajouter un suffixe aléatoire pour garantir l’unicité. Le nom d’un pool de nœuds doit commencer par une lettre minuscule et ne peut contenir que des caractères alphanumériques. Pour des pools de nœuds Linux, la longueur doit être comprise entre 1 et 12 caractères.

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

Ajouter un pool de nœuds Azure Linux

Ajoutez un pool de nœuds Linux Azure à votre cluster existant à l’aide de la commande az aks nodepool add et spécifiez --os-sku AzureLinux. L’exemple suivant crée un pool de nœuds qui exécute trois nœuds dans le cluster à partir de Tutorial 1 : créer un cluster avec l’hôte de conteneur Linux Azure pour AKS.

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

Exemple de sortie :

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

Vérifier l’état du pool de nœuds

Vérifiez l’état de vos pools de nœuds à l’aide de la az aks nodepool list commande.

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

Exemple de sortie :

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

Étape suivante

Dans ce tutoriel, vous avez ajouté un pool de nœuds Azure Linux à votre cluster existant. Dans le tutoriel suivant, vous apprenez à migrer des nœuds existants vers Azure Linux.