Partager via


Utiliser des pools de nœuds Machines Virtuelles (préversion) dans Azure Kubernetes Service (AKS)

Dans cet article, vous découvrez le nouveau type de pool de nœuds Machines Virtuelles (préversion) pour AKS.

Avec les pools de nœuds Machines Virtuelles, AKS gère directement l’approvisionnement et le démarrage de chaque nœud unique. Pour les pools de nœuds Virtual Machine Scale Sets, AKS gère le modèle des Virtual Machine Scale Sets et l’utilise pour assurer la cohérence entre tous les nœuds du pool de nœuds. Les pools de nœuds Machines Virtuelles vous permettent d’orchestrer votre cluster avec les machines virtuelles qui correspondent le mieux à vos charges de travail individuelles.

Vue d’ensemble

Fonctionnement

Un pool de nœuds se compose d’un ensemble de machines virtuelles, où différentes tailles de machine virtuelle sont spécifiées pour prendre en charge différents types de charges de travail. Ces tailles de machine virtuelle, appelées références SKU, sont classées dans différentes familles, optimisées à des fins spécifiques. Pour plus d’informations, consultez les références (SKU) des machines virtuelles.

Pour activer la mise à l’échelle de plusieurs tailles de machine virtuelle, le type de pool de nœuds Machines Virtuelles utilise un ScaleProfile, qui contient les configurations indiquant comment le pool de nœuds peut être mis à l’échelle, en particulier la liste souhaitée de taille et de nombre de machines virtuelles. Un ManualScaleProfile est un profil de mise à l’échelle qui spécifie la taille et le nombre de machines virtuelles souhaitées. Seule une taille de machine virtuelle est autorisée dans un ManualScaleProfile. Vous devez créer un ManualScaleProfile distinct pour chaque taille de machine virtuelle dans votre pool de nœuds.

Remarque

Lors de la création d’un pool de nœuds Machines Virtuelles, vous avez besoin d’au moins un ManualScaleProfile dans le ScaleProfile. Un pool de nœuds Machines Virtuelles peut avoir plusieurs profils de mise à l’échelle manuelle.

Avantages

Les avantages du type de pool de nœuds Machines Virtuelles incluent :

  • Flexibilité : les spécifications de nœud peuvent être mises à jour pour s’adapter à votre charge de travail et à vos besoins actuels.
  • Contrôle affiné : les contrôles au niveau du nœud unique permettent de spécifier et de mélanger des nœuds de différentes spécifications pour lever les restrictions d’un modèle unique et améliorer la cohérence.
  • Efficacité : vous pouvez réduire l’empreinte du nœud pour votre cluster, ce qui simplifie vos besoins opérationnels.

Les pools de nœuds Machines Virtuelles offrent une meilleure expérience pour les charges de travail dynamiques et les exigences de haute disponibilité. Les pools de nœuds Machines Virtuelles vous permettent de configurer plusieurs machines virtuelles de famille similaire dans un pool de nœuds. Votre charge de travail sera automatiquement planifiée sur les ressources disponibles que vous configurez.

Comparaison des fonctionnalités

Le tableau suivant montre une comparaison des pools de nœuds Machines Virtuelles avec les pools de nœuds Scale Set standard.

Type de pool de nœuds Fonctionnalités
Pool de nœuds Machines Virtuelles Vous pouvez ajouter, supprimer ou mettre à jour des nœuds dans un pool de nœuds. Les types de machines virtuelles peuvent être toute machine virtuelle du même type de famille (par exemple, Série D, Série A, etc.).
Pool de nœuds basé sur un groupe de machines virtuelles identiques Vous pouvez ajouter ou supprimer des nœuds de la même taille et du même type dans un pool de nœuds. Si vous ajoutez une nouvelle taille de machine virtuelle au cluster, vous devez créer un nouveau pool de nœuds.

Limites

  • La Mise à l’échelle automatique du cluster n’est actuellement pas prise en charge.
  • InifiniBand n’est pas disponible.
  • Les pools de nœuds Windows ne sont pas pris en charge.
  • Cette fonctionnalité n’est pas disponible dans le portail Azure. Les API Azure CLI ou REST doivent être utilisées pour effectuer des opérations CRUD ou gérer le pool.
  • Instantané du pool de nœuds n’est pas pris en charge.
  • Toutes les tailles de machine virtuelle sélectionnées dans un pool de nœuds doivent provenir d’une même famille de machines virtuelles. Par exemple, vous ne pouvez pas combiner un type de machine virtuelle Série N avec un type de machine virtuelle Série D dans le même pool de nœuds.
  • Les pools de nœuds Machines Virtuelles autorisent jusqu’à cinq tailles de machines virtuelles différentes par pool de nœuds.

Prérequis

  • Un abonnement Azure. Si vous n’en avez pas, vous pouvez créer un compte gratuit.
  • La fonctionnalité de pool de nœuds Machines Virtuelles est en préversion. Cette fonctionnalité n’est disponible qu’avec les versions d’API 2023-10-02-preview et ultérieures, ou avec l’extension Azure CLI versions 2.61.0 ou ultérieure.
  • Si vous utilisez Azure CLI, inscrivez l’extension aks-preview ou mettez à jour la version de aks-preview existante vers la version minimale 4.0.0b4.
  • La version mineure minimale de Kubernetes requise pour cette fonctionnalité est la version 1.26.

Installer l’extension Azure CLI aks-preview

Important

Les fonctionnalités d’évaluation AKS sont disponibles en libre-service et font l’objet d’un abonnement. Les préversions sont fournies « en l’état » et « en fonction des disponibilités », et sont exclues des contrats de niveau de service et de la garantie limitée. Les préversions AKS sont, dans la mesure du possible, partiellement couvertes par le service clientèle. Telles quelles, ces fonctionnalités ne sont pas destinées à une utilisation en production. Pour plus d’informations, consultez les articles de support suivants :

  1. Installez l’extension aks-preview à l’aide de la commande az extension add :

    az extension add --name aks-preview
    
  2. Mettez à jour vers la dernière version de l’extension aks-preview à l’aide de la commande az extension update.

    az extension update --name aks-preview
    

Inscrire l’indicateur de fonctionnalité VMsAgentPoolPreview

  1. Sélectionnez l’abonnement dans lequel vous souhaitez activer l’indicateur de fonctionnalité à l’aide de la commande az account set.

    az account set --subscription <subscription-name>
    
  2. Inscrivez l’indicateur de fonctionnalité VMsAgentPoolPreview à l’aide de la commande az feature registration create.

    az feature registration create --namespace Microsoft.ContainerService --name VMsAgentPoolPreview
    

    Quelques minutes sont nécessaires pour que l’état s’affiche Registered (Inscrit).

  3. Vérifiez l’état de l’inscription en utilisant la commande az feature show.

    az feature show --namespace "Microsoft.ContainerService" --name "VMsAgentPoolPreview"
    
  4. Quand l’état reflète Inscrit, actualisez l’inscription du fournisseur de ressources Microsoft.ContainerService à l’aide de la commande az provider register.

    az provider register --namespace "Microsoft.ContainerService"
    

Créer un cluster AKS avec des pools de nœuds Machines Virtuelles

Remarque

Seule une taille de machine virtuelle est autorisée dans un profil de mise à l’échelle et la limite maximale est de cinq profils de mise à l’échelle de machine virtuelle globalement pour un pool de nœuds Machines Virtuelles.

  • Créez un cluster AKS avec des pools de nœuds Machines Virtuelles en utilisant la commande az aks create avec l’indicateur --vm-set-type défini sur "VirtualMachines".

    L’exemple suivant crée un cluster nommé myAKSCluster avec un pool de nœuds Machines Virtuelles contenant deux nœuds, il génère des clés SSH, définit la référence SKU de l’équilibreur de charge sur standard et définit la version Kubernetes sur 1.28.5 :

    az aks create \
        --resource-group myResourceGroup \
        --name myAKSCluster \
        --vm-set-type "VirtualMachines" \
        --node-count 2 \
        --kubernetes-version 1.28.5
    

Ajouter un pool de nœuds Machines Virtuelles à un cluster existant

  • Ajoutez un pool de nœuds Machines Virtuelles à un cluster existant en utilisant la commande az aks nodepool add avec l’indicateur --vm-set-type défini sur "VirtualMachines".

    L’exemple suivant ajoute un pool de nœuds Machines Virtuelles nommé myvmpool au cluster myAKSCluster. Le pool de nœuds a trois nœuds et une référence SKU de machine virtuelle maximale de Standard_D4s_v3 :

    az aks nodepool add \
        --resource-group myResourceGroup \
        --cluster-name myAKSCluster \
        --name myvmpool \
        --vm-set-type "VirtualMachines" \
        --vm-sizes "Standard_D4s_v3" \
        --node-count 3
    

Ajouter un profil de mise à l’échelle manuelle à un pool de nœuds

  • Ajoutez un profil de mise à l’échelle manuelle à un pool de nœuds à l’aide de az aks nodepool manual-scale add avec l’indicateur --vm-sizes défini sur "Standard_D2s_v3".

    L’exemple suivant ajoute un profil de mise à l’échelle manuelle au pool de nœuds myvmpool dans le cluster myAKSCluster. Le pool de nœuds comprend deux nœuds avec une référence SKU de machine virtuelle de Standard_D2s_v3 :

    az aks nodepool manual-scale add \
        --resource-group myResourceGroup \
        --cluster-name myAKSCluster \
        --name myvmpool \
        --vm-sizes "Standard_D2s_v3" \
        --node-count 2
    

Mettre à jour un profil de mise à l’échelle manuelle existant

  • Mettez à jour un profil de mise à l’échelle manuelle existant dans un pool de nœuds à l’aide de la commande az aks nodepool manual-scale update avec l’indicateur --vm-sizes défini sur "Standard_D2s_v3".

    Remarque

    Utilisez le paramètre --current-vm-sizes pour spécifier la taille du pool de nœuds existant que vous souhaitez mettre à jour. Vous pouvez mettre à jour --vm-sizes et/ou --node-count. Lorsque vous utilisez d’autres outils ou API REST, vous devez passer un champ agentPoolProfiles.virtualMachinesProfile.scale complet lors de la mise à jour du profil de mise à l’échelle du pool de nœuds.

    L’exemple suivant met à jour un profil de mise à l’échelle manuelle sur le pool de nœuds myvmpool dans le cluster myAKSCluster. La commande augmente le nombre de nœuds à cinq et modifie la référence SKU de machine virtuelle de Standard_D4s_v3 à Standard_D8s_v3 :

    az aks nodepool manual-scale update \
        --resource-group myResourceGroup \
        --cluster-name myAKSCluster \
        --name myvmpool \
        --current-vm-sizes "Standard_D4s_v3" \
        --vm-sizes "Standard_D8s_v3" \
        --node-count 5
    

Supprimer un profil de mise à l’échelle manuelle

  • Supprimez un profil de mise à l’échelle manuelle existant à l’aide de la commande az aks nodepool manual-scale delete.

    Remarque

    Le paramètre --current-vm-sizes spécifie la taille du pool de nœuds existant à supprimer. Lorsque vous utilisez d’autres outils ou API REST pour mettre à jour le profil de mise à l’échelle du pool de nœuds, transmettez un champ agentPoolProfiles.virtualMachinesProfile.scale complet.

    L’exemple suivant supprime le profil de mise à l’échelle manuelle pour la référence SKU de machine virtuelle Standard_D8s_v3 dans le pool de nœuds myvmpool.

    az aks nodepool manual-scale delete \
        --resource-group myResourceGroup \
        --cluster-name myAKSCluster \
        --name myvmpool \
        --current-vm-sizes "Standard_D8s_v3"
    

Étapes suivantes

Dans cet article, vous avez appris à utiliser les pools de nœuds Machines Virtuelles dans AKS. Pour en savoir plus sur les pools de nœuds dans AKS, consultez Créer des pools de nœuds.