Mettre à niveau les images de nœud Azure Kubernetes service (AKS)
Azure Kubernetes Service (AKS) fournit régulièrement de nouvelles images de nœud. Il est donc utile de fréquemment mettre à niveau vos images de nœud pour utiliser les fonctionnalités AKS les plus récentes. Les images de nœud Linux sont mises à jour chaque semaine et les images de nœud Windows le sont chaque mois. Les annonces de mise à niveau d’images sont incluses dans les Notes de publication d’AKS et le déploiement de ces mises à jour dans toutes les régions peut prendre jusqu’à une semaine. Vous pouvez aussi effectuer automatiquement des mises à niveau d’images de nœud et les planifier en utilisant une maintenance planifiée. Pour plus d’informations, consultez Mettre à niveau automatiquement les images de nœud.
Cet article explique comment mettre à niveau des images de nœud de cluster AKS et comment mettre à jour des images de pool de nœuds sans mettre à niveau la version Kubernetes. Pour plus d’informations sur la mise à niveau de la version Kubernetes pour votre cluster, consultez Mettre à niveau un cluster AKS.
Notes
Le cluster AKS doit utiliser des groupes de machines virtuelles identiques pour les nœuds.
Il n’est pas possible de passer à une version antérieure d’une image de nœud (par exemple AKSUbuntu-2204 vers AKSUbuntu-1804 ou AKSUbuntu-2204-202308.01.0 vers AKSUbuntu-2204-202307.27.0).
Rechercher les mises à niveau d’images de nœud disponibles
Vérifiez les mises à niveau d’image de nœud disponibles à l’aide de la commande
az aks nodepool get-upgrades
.az aks nodepool get-upgrades \ --nodepool-name <node-pool-name> \ --cluster-name <cluster-name> \ --resource-group <resource-group>
Dans la sortie, recherchez et notez la valeur
latestNodeImageVersion
. Cette valeur est la dernière version de l’image de nœud disponible pour votre pool de nœuds.Vérifiez la version actuelle de votre image de nœud pour la comparer à la dernière version en utilisant la commande
az aks nodepool show
.az aks nodepool show \ --resource-group <resource-group> \ --cluster-name <cluster-name> \ --name <node-pool-name> \ --query nodeImageVersion
Si la valeur
nodeImageVersion
est différente de lalatestNodeImageVersion
, vous pouvez mettre à niveau votre image de nœud.
Mettre à niveau toutes les images de nœud dans l’ensemble des pools de nœuds
Mettez à niveau toutes les images de nœud dans tous les pools de nœuds de votre cluster à l’aide de la commande
az aks upgrade
avec l’indicateur--node-image-only
.az aks upgrade \ --resource-group <resource-group> \ --name <cluster-name> \ --node-image-only
Vous pouvez vérifier l’état des images de nœud à l’aide de la commande
kubectl get nodes
.Remarque
Cette commande peut différer légèrement selon l’interpréteur de commandes que vous utilisez. Pour plus d’informations sur les environnements Windows et PowerShell, consultez la documentation Kubernetes JSONPath.
kubectl get nodes -o jsonpath='{range .items[*]}{.metadata.name}{"\t"}{.metadata.labels.kubernetes\.azure\.com\/node-image-version}{"\n"}{end}'
Une fois la mise à niveau terminée, utilisez la commande
az aks show
pour obtenir des détails sur le pool de nœuds mis à jour. L’image de nœud actuelle est affichée dans la propriéténodeImageVersion
.az aks show \ --resource-group <resource-group> \ --name <cluster-name>
Mettre à niveau un pool de nœuds spécifique
Mettez à jour l’image du système d’exploitation du pool de nœuds sans effectuer de mise à niveau du cluster Kubernetes en utilisant la commande
az aks nodepool upgrade
avec l’indicateur--node-image-only
.az aks nodepool upgrade \ --resource-group <resource-group> \ --cluster-name <cluster-name> \ --name <node-pool-name> \ --node-image-only
Vous pouvez vérifier l’état des images de nœud avec la commande
kubectl get nodes
.Notes
Cette commande peut différer légèrement selon l’interpréteur de commandes que vous utilisez. Pour plus d’informations sur les environnements Windows et PowerShell, consultez la documentation Kubernetes JSONPath.
kubectl get nodes -o jsonpath='{range .items[*]}{.metadata.name}{"\t"}{.metadata.labels.kubernetes\.azure\.com\/node-image-version}{"\n"}{end}'
Une fois la mise à niveau terminée, utilisez la commande
az aks nodepool show
pour obtenir des détails sur le pool de nœuds mis à jour. L’image de nœud actuelle est affichée dans la propriéténodeImageVersion
.az aks nodepool show \ --resource-group <resource-group> \ --cluster-name <cluster-name> \ --name <node-pool-name>
Mettre à niveau les images de nœud à l’aide de l’augmentation du nombre de nœuds
Pour accélérer le processus de mise à niveau des images de nœud, vous pouvez mettre à niveau vos images de nœud à l’aide d’une valeur personnalisable d’augmentation du nombre de nœuds. Par défaut, AKS utilise un nœud supplémentaire pour configurer les mises à niveau.
Mettez à niveau les images de nœud avec l’augmentation du nombre de nœuds en utilisant la commande
az aks nodepool update
avec l’indicateur--max-surge
pour configurer le nombre de nœuds utilisés pour les mises à niveau.Remarque
Pour en savoir plus sur les compromis des différents paramètres
--max-surge
, consultez Personnaliser la mise à niveau avec l’augmentation du nombre de nœuds.az aks nodepool update \ --resource-group <resource-group> \ --cluster-name <cluster-name> \ --name <node-pool-name> \ --max-surge 33% \ --no-wait
Vous pouvez vérifier l’état des images de nœud avec la commande
kubectl get nodes
.kubectl get nodes -o jsonpath='{range .items[*]}{.metadata.name}{"\t"}{.metadata.labels.kubernetes\.azure\.com\/node-image-version}{"\n"}{end}'
Obtenez les détails du pool de nœuds mis à jour en utilisant
az aks nodepool show
pour obtenir les détails du pool de nœuds mis à jour. L’image de nœud actuelle est affichée dans la propriéténodeImageVersion
.az aks nodepool show \ --resource-group <resource-group> \ --cluster-name <cluster-name> \ --name <node-pool-name>
Étapes suivantes
- Pour plus d’informations sur les dernières images de nœud, consultez les notes de publication d’AKS.
- Apprenez à mettre à niveau la version de Kubernetes avec la section Mettre à niveau un cluster AKS.
- Appliquez automatiquement des mises à niveau de pools de nœuds et de clusters avec GitHub Actions.
- En savoir plus sur les pools de nœuds multiples avec Créer plusieurs pools de nœuds.
- Découvrez les bonnes pratiques de mise à niveau avec Correctif et conseils de mise à niveau AKS.
Azure Kubernetes Service