Mises à niveau du pool de nœuds bleu-vert dans Azure Kubernetes Service (AKS) (préversion)

Les mises à niveau bleu-vert vous permettent de mettre à niveau vos pools de nœuds AKS côte à côte en créant un pool de nœuds vert parallèle avec la nouvelle configuration tout en conservant le pool de nœuds bleus existant. Cette stratégie vous permet de tester et de valider la nouvelle configuration avant de changer de trafic, avec la possibilité de restaurer rapidement si des problèmes se produisent.

Cet article explique quand utiliser des mises à niveau bleu-vert, comment fonctionne le processus, les options de configuration et les considérations relatives à l’utilisation de cette stratégie de mise à niveau.

Quand utiliser des mises à niveau bleu-vert

Note

Gardez à l’esprit que les mises à niveau bleues vertes nécessitent un double niveau de capacité de nœud pendant le processus de mise à niveau, ce qui peut entraîner une augmentation des coûts et des besoins en ressources.

Prenez en compte les mises à niveau de type bleu-vert quand :

  • Vous avez besoin de tests granulaires et de vérification des charges de travail par lot.
  • Vous devez valider les nouvelles configurations de nœud avant d'activer le trafic de production.
  • Vous souhaitez une fonctionnalité de restauration instantanée sans reprovisionner des nœuds.
  • Vous mettez à niveau des charges de travail de production critiques qui ne peuvent pas tolérer une interruption.
  • Vous devez tester la compatibilité des applications avec les nouvelles versions de Kubernetes.

Si vous utilisez actuellement un processus de déploiement bleu-vert manuel pour les mises à niveau de pool de nœuds et que vous souhaitez automatiser ce flux de travail, envisagez d’utiliser des mises à niveau de pool de nœuds bleu-vert AKS à la place. Pour plus d’informations sur le processus manuel de mise à niveau bleu-vert, consultez Mises à niveau manuelles du pool de nœuds bleu-vert.

Quand utiliser des mises à niveau progressives standard

Les mises à niveau progressives standard peuvent être plus appropriées dans les scénarios suivants :

  • Environnements de développement ou de test avec tolérance de temps d’arrêt.
  • Déploiements sensibles aux coûts où le doublement temporaire est prohibitif.
  • Applications sans état simples avec une bonne gestion des interruptions.
  • Environnements avec un quota ou une capacité disponible limité.

Prerequisites

  • Quota suffisant pour doubler la capacité du pool de nœuds.
  • Azure CLI version 2.64.0 ou ultérieure. Recherchez votre version à l’aide de la az --version commande. Si vous devez installer ou mettre à niveau, consultez Installer Azure CLI.
  • L’extension aks-preview Azure CLI installée et mise à jour vers la dernière version.
  • Version 2025-08-02-preview de l’API ou ultérieure.
  • Autoscaler de cluster configuré (recommandé, mais non obligatoire).

Installer l’extension aks-preview Azure CLI

Important

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

Installez ou mettez à jour l’extension aks-preview à l’aide des commandes az extension add et az extension update.

# Install the aks-preview extension
az extension add --name aks-preview

# Update the aks-preview extension
az extension update --name aks-preview

Fonctionnalités prises en charge pour les mises à niveau bleu-vert

Actuellement, les mises à niveau bleues prennent en charge les fonctionnalités suivantes :

Limitations et considérations relatives à la mise à niveau bleu-vert

Actuellement, les mises à niveau bleues ne prennent pas en charge les fonctionnalités suivantes :

Gardez à l’esprit les considérations suivantes lors de l’utilisation de mises à niveau bleu-vert :

Besoins en ressources Considérations relatives à la complexité Facteurs de temps
* Nécessite deux fois la capacité de nœud pendant le processus de mise à niveau, ce qui entraîne une augmentation des coûts d’infrastructure.
* Vous avez besoin d’un quota de calcul supplémentaire dans votre abonnement Azure pour prendre en charge le doublement temporaire des nœuds.
* Vous pouvez rencontrer des limites de capacité régionales pendant les périodes de pointe d’utilisation.
* Nécessite une planification minutieuse des charges de travail stateful pour garantir l'intégrité des données pendant la migration.
* Nécessite une surveillance supplémentaire pour les pools de nœuds bleus et verts pendant la période de transition.
* Durée de mise à niveau globale plus longue par rapport aux mises à niveau sur place.
* La période de vérification prolonge la durée avant la transition finale.

Flux de travail de mise à niveau bleu-vert

Le processus de mise à niveau bleu-vert crée un environnement parallèle pour des transitions sécurisées entre les versions du pool de nœuds. Vous pouvez effectuer une mise à niveau et une validation vers le nouveau pool vert après la validation ou la mise à niveau et revenir au pool bleu d’origine si vous rencontrez des problèmes.

Scénario de mise à niveau et de validation

Le diagramme suivant illustre le flux de travail de mise à niveau et de validation :

Diagramme montrant le flux de travail de scénario de mise à niveau et de validation.

Le processus de mise à niveau et de validation est le suivant :

  1. Nœuds bleus cordonnés : les nœuds bleus existants sont marqués comme non planifiables.
  2. Créer un pool vert : le nouveau pool de nœuds verts est approvisionné avec la configuration mise à jour.
  3. Opération parallèle : les pools bleus et verts s’exécutent simultanément.
  4. Migration progressive : les charges de travail sont progressivement vidées des nœuds bleus et replanifiées en nœuds verts par lots.
  5. Valider le pool vert : surveillez et testez les charges de travail sur le nouveau pool pendant la migration.
  6. Transition complète : après la dernière période de validation, le pool bleu est supprimé et le vert devient principal.

Scénario de mise à niveau et de retour en arrière

Le diagramme suivant illustre la mise à niveau et la restauration du flux de travail :

Diagramme montrant le flux de travail de mise à niveau et de restauration.

Le processus de mise à niveau et de restauration est le suivant :

  1. Nœuds bleus cordonnés : les nœuds bleus existants sont marqués comme non planifiables.
  2. Créer un pool vert : le nouveau pool de nœuds verts est approvisionné avec la configuration mise à jour.
  3. Opération parallèle : les pools bleus et verts s’exécutent simultanément.
  4. Détecter les problèmes : identifiez les problèmes lors de la validation sur le pool vert .
  5. Exécuter le rétablissement : retirer le cordon des nœuds bleus, vider le pool vert et migrer les charges de travail vers les nœuds bleus.
  6. État de restauration : le pool vert est supprimé et le système retourne à la configuration d’origine.

Choisir votre stratégie de mise à niveau

Lors de la création ou de la mise à niveau d’un pool de nœuds AKS, vous pouvez spécifier la stratégie de mise à niveau (upgradeStrategy) à utiliser. Les stratégies disponibles sont les suivantes :

Stratégie Descriptif
Rolling (valeur par défaut) Mise à niveau continue standard où les nœuds sont mis à jour un par un.
BlueGreen Crée un pool vert parallèle avec la nouvelle configuration tout en conservant le pool de nœuds bleus existant.

Personnaliser les propriétés de mise à niveau bleu-vert

Vous pouvez personnaliser les propriétés de mise à niveau bleu-vert suivantes (NodePoolBlueGreenUpgradeSettings) :

Propriété Descriptif Valeurs autorisées Valeur par défaut
drainBatchSize Nombre ou pourcentage de nœuds à vider dans chaque lot pendant la mise à niveau. Le pourcentage est calculé à partir du nombre total de nœuds bleus au début de la mise à niveau. Les nœuds fractionnaires sont arrondis. Entier (par exemple, 5) ou pourcentage (par exemple, 50%). Doit être une valeur non nulle. 10 %
drainTimeoutInMinutes Temps maximal (en minutes) d’attente pour que les pods se terminent proprement sur chaque nœud avant d’échouer la mise à niveau. Respecte les budgets d’interruption des pods pendant ce délai d’attente. Si elle est dépassée, la mise à niveau échoue. Entier compris entre 1 et 1440 (24 heures). 30 minutes
batchSoakDurationInMinutes Temps de pause (en minutes) entre le vidage des lots de nœuds pour permettre l’observation et la validation. Entier compris entre 0 et 1440 (24 heures). 15 minutes
finalSoakDurationInMinutes Temps d’attente (en minutes) après que tous les nœuds sont vidés avant de supprimer les anciens nœuds. Fournit une période de validation finale avant de valider la mise à niveau. Les opérations de rétablissement sont uniquement disponibles pendant cette période finale d’observation. Une fois cette période expirée et le pool bleu supprimé, la restauration n’est plus possible. Entier compris entre 0 et 10080 (sept jours). 60 minutes

Créer un pool de nœuds avec les paramètres de mise à niveau bleu-vert par défaut

  • Créez un pool de nœuds avec la stratégie de mise à niveau bleu-vert par défaut et les paramètres en utilisant la commande az aks nodepool add avec le paramètre --upgrade-strategy défini sur bluegreen. L’exemple suivant crée un pool de nœuds nommé myNodePool dans le cluster myAKSCluster AKS au sein du groupe myResourceGroupde ressources :

    az aks nodepool add \
        --name myNodePool \
        --cluster-name myAKSCluster \
        --resource-group myResourceGroup \
        --upgrade-strategy bluegreen
    

Créer un pool de nœuds avec des paramètres de mise à niveau bleu-vert personnalisés

  • Créez un pool de nœuds avec des paramètres de mise à niveau bleu-vert personnalisés à l’aide de la commande az aks nodepool add avec le paramètre --upgrade-strategy défini sur bluegreen, et définissez les paramètres de mise à niveau bleu-vert personnalisés souhaités. L’exemple suivant crée un pool de nœuds nommé myNodePool dans le cluster myAKSCluster AKS au sein du groupe myResourceGroupde ressources, avec des paramètres de mise à niveau bleu-vert personnalisés :

    az aks nodepool add \
        --name myNodePool \
        --cluster-name myAKSCluster \
        --resource-group myResourceGroup \
        --upgrade-strategy bluegreen \
        --drain-timeout-bg 5 \
        --batch-soak-duration 5 \
        --drain-batch-size 50% \
        --final-soak-duration 180
    

Démarrer une mise à niveau bleu-vert pour un pool de nœuds existant

Important

Lors de la reprise d’une mise à niveau suspendue, vous pouvez mettre à jour les paramètres bleu-vert, mais vous ne pouvez pas modifier la stratégie de mise à niveau ou la version de Kubernetes.

  • Démarrez une mise à niveau bleu-vert d'un pool de nœuds existant en utilisant la commande az aks nodepool upgrade avec le paramètre --kubernetes-version défini sur la version souhaitée. Vous pouvez démarrer une mise à niveau bleu-vert pour un pool de nœuds déjà à l’aide de la stratégie bleu-vert ou pour un pool de nœuds non encore configuré avec la stratégie bleu-vert. Les exemples suivants illustrent les deux scénarios :

    # Start a blue-green upgrade for an existing node pool already using blue-green strategy
    az aks nodepool upgrade \
        --name myNodePool \
        --cluster-name myAKSCluster \
        --resource-group myResourceGroup \
        --kubernetes-version <kubernetes-version>
    
    # Start a blue-green upgrade for an existing node pool not yet using blue-green strategy
    az aks nodepool upgrade \
        --name myNodePool \
        --cluster-name myAKSCluster \
        --resource-group myResourceGroup \
        --kubernetes-version <kubernetes-version> \
        --upgrade-strategy bluegreen
    

Suspendre ou annuler une mise à niveau bleu-vert

  • Suspendre ou annuler une mise à niveau bleue-verte en cours à l’aide de la az aks nodepool operation-abort commande. L’exemple suivant suspend ou annule la mise à niveau bleue verte pour le pool de nœuds nommé myNodePool dans le cluster myAKSCluster AKS au sein du groupe myResourceGroupde ressources :

    az aks nodepool operation-abort \
        --name myNodePool \
        --cluster-name myAKSCluster \
        --resource-group myResourceGroup
    

Annuler une mise à niveau bleu-vert

Une fois qu’une mise à niveau blue-green en cours est annulée, la restauration peut être lancée grâce à la commande az aks nodepool rollback.

La restauration est disponible uniquement pendant la période de stabilisation finale, telle que décrit dans la propriété finalSoakDurationInMinutes.

L'exemple suivant annule une mise à niveau bleu-vert pour le pool de nœuds nommé myNodePool dans le cluster AKS myAKSCluster au sein du groupe de ressources myResourceGroup :

az aks nodepool rollback \
    --name myNodePool \
    --cluster-name myAKSCluster \
    --resource-group myResourceGroup

Questions Fréquemment Posées (FAQ)

Les mises à niveau bleu-vert prennent-elles en charge le paramètre maxUnavailable ?

Non, le maxUnavailable paramètre n’est pas applicable aux mises à niveau bleu-vert. Les pools verts sont créés en dupliquant l’intégralité du pool bleu , ce qui garantit que tous les nœuds restent disponibles pendant le processus de mise à niveau.

Quelles sont les versions de Kubernetes compatibles avec les mises à niveau bleues vertes ?

Les mises à niveau bleues fonctionnent avec toutes les versions kubernetes prises en charge par AKS, y compris les versions prises en charge par la communauté et les versions de support à long terme (LTS), tant que vous utilisez la version de l’API ou une version 2025-08-02-preview ultérieure.

Puis-je utiliser le canal de correctifs de sécurité automatiques avec les mises à niveau blue-green ?

Oui, tant que la stratégie de mise à niveau du pool de nœuds est configurée pour utiliser bleu-vert. Une fois configurés, les correctifs de sécurité suivent le processus de mise à niveau bleu-vert au lieu du mécanisme de mise à jour propagée par défaut.

Que se passe-t-il pour les volumes persistants pendant les mises à niveau bleu-vert ?

Les volumes persistants restent accessibles. Les pods sont drainés de manière ordonnée et replanifiés, tout en conservant leurs volumes attachés.

Puis-je effectuer des mises à niveau bleues vertes sur plusieurs pools de nœuds simultanément ?

Oui, différents pools de nœuds peuvent subir des mises à niveau bleues vertes en parallèle, mais chaque pool ne peut avoir qu’une seule mise à niveau active. Vous ne pouvez pas contrôler l’ordre des mises à niveau sur plusieurs pools.

Comment les mises à niveau blue-green gèrent-elles les configurations spécifiques aux nœuds, telles que les taints et les labels ?

Toutes les configurations de nœud, y compris les teintes, les étiquettes et les annotations, sont automatiquement répliquées dans le pool vert .

Quel est l’impact sur les coûts des mises à niveau bleues vertes ?

Vous êtes facturé pour les deux pools de nœuds pendant la fenêtre de mise à niveau. Veillez donc à planifier un doublement des coûts temporaires pendant la période de transition.

Que se passe-t-il lors d’une défaillance de capacité ?

En cas de défaillance de capacité lors de l’approvisionnement du pool vert , la mise à niveau échoue et le pool bleu n’est pas affecté. Vous pouvez retenter la mise à niveau une fois qu'une capacité suffisante est disponible ou choisir d'annuler.

Que se passe-t-il pendant le rollback ?

Si le nombre de nœuds verts est inférieur ou égal au nombre de nœuds bleus au moment du déclenchement du rétablissement, les nœuds verts sont supprimés et les nœuds bleus sont remis en service (retrait du cordon) afin de reprendre un fonctionnement normal.

Pour en savoir plus sur les mises à niveau de pool de nœuds dans AKS, consultez les articles suivants :