View a markdown version of this page

Restaurer le cluster à la version précédente de Kubernetes - Amazon EKS

Aidez à améliorer cette page

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Pour contribuer à ce guide de l'utilisateur, cliquez sur le GitHub lien Modifier cette page sur qui se trouve dans le volet droit de chaque page.

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Restaurer le cluster à la version précédente de Kubernetes

Avec la restauration de la version Amazon EKS, vous pouvez rétablir le plan de contrôle Kubernetes de votre cluster vers la version mineure précédente après avoir effectué une mise à niveau sur place. Si vous rencontrez des problèmes après la mise à niveau, tels que des incompatibilités d'applications, une utilisation obsolète des API ou un comportement inattendu, vous pouvez revenir en arrière pour restaurer votre cluster dans un état connu comme bon.

Lors d'une restauration, Amazon EKS rétablit la version précédente du serveur d'API Kubernetes et des composants du plan de contrôle tout en préservant toutes les données etcd, les charges de travail des clients et les volumes persistants.

Qu'est-ce qui est annulé ?

  • Version du serveur d'API Kubernetes

  • Composants du plan de contrôle et leurs configurations

  • Version de plate-forme (revient à la dernière version de plate-forme pour la version précédente de Kubernetes)

  • Nœuds de travail en mode automatique EKS. Pour les clusters exécutant le mode automatique EKS, EKS gère automatiquement le retour en arrière des nœuds de travail en mode automatique avant de revenir au plan de contrôle. Pour de plus amples informations, veuillez consulter Rétrograder les clusters en mode automatique EKS.

Ce qui n'est PAS annulé

  • données etcd. Tous les états, ressources et configurations du cluster sont préservés.

  • Charges de travail des clients. Vos pods, vos déploiements et vos services continuent de fonctionner.

  • Modules complémentaires EKS. Add-on les versions restent inchangées. Vous les gérez séparément.

  • Volumes et données persistants. Toutes les données des clients restent intactes.

  • Self-managed nœuds et nœuds hybrides. Il vous incombe de les annuler.

  • Groupes de nœuds gérés. Vous devez les annuler séparément à l'aide de l' UpdateNodegroupVersion API.

Conditions préalables

Avant de pouvoir annuler un cluster, toutes les conditions suivantes doivent être remplies :

Exigence Détails

fenêtre de 7 jours

L'annulation doit être initiée dans les 7 jours suivant la fin de la mise à niveau. Après 7 jours, le rollback n'est plus disponible.

Cluster amélioré

Le cluster doit avoir été mis à niveau vers sa version actuelle par le biais d'une mise à niveau sur place. Les clusters créés dans leur version actuelle ne peuvent pas être annulés.

Version unique uniquement

Vous ne pouvez revenir en arrière que par une seule version mineure (N à N-1). Si vous êtes passé de la version 1.31 à la version 1.32 puis à la version 1.33, vous ne pouvez revenir qu'à la version 1.32, pas à la version 1.31.

Version prise en charge

La restauration de version est disponible pour les versions EKS actuellement prises en charge.

Politique d'assistance étendue

Pour revenir à une version bénéficiant d'un support étendu, vous devez d'abord modifier la politique de mise à niveau du cluster enEXTENDED.

Aucune mise à niveau automatique à la fin du support étendu

Si votre cluster a été automatiquement mis à niveau à la fin du support étendu, vous ne pouvez pas revenir à la version précédente. Si votre cluster a été automatiquement mis à niveau à la fin du support standard, vous pouvez revenir en arrière, mais vous devez d'abord modifier la politique de mise à niveau enEXTENDED.

État du cluster

Le cluster doit être en ACTIVE état. Vous ne pouvez pas lancer de restauration alors qu'une autre mise à jour est en cours.

Compatibilité des fonctionnalités EKS

Si une fonctionnalité EKS activée sur votre cluster n'est pas prise en charge dans la version précédente, la demande de restauration échoue. Cette vérification ne peut pas être contournée par. --force

Outre les exigences précédentes, certaines conditions rendent le retour en arrière impossible, même avec le --force drapeau. Cela inclut : le cluster a été créé avec la version actuelle, plus de 7 jours se sont écoulés depuis la mise à niveau, le cluster a déjà été à nouveau mis à niveau vers une version plus récente ou une fonctionnalité EKS rétroincompatible a été activée à la limite de version actuelle.

Résumé

Le résumé général du processus de restauration du cluster Amazon EKS est le suivant :

  1. Consultez les informations sur le niveau de préparation à la restauration pour identifier les problèmes susceptibles d'affecter la restauration.

  2. Résolvez tout problème de blocage (informations sur le statut des erreurs) ou --force utilisez-le pour contourner les vérifications d'informations.

  3. Vérifiez que vos applications, vos contrôleurs personnalisés et vos outils tiers sont compatibles avec la version précédente de Kubernetes.

  4. Si vos nœuds de travail exécutent la même version de Kubernetes que le plan de contrôle, annulez d'abord les nœuds de travail.

  5. Si des modules complémentaires exécutent des versions incompatibles avec la version précédente de Kubernetes, rétrogradez-les vers une version compatible.

  6. Lancez le rollback du plan de contrôle.

  7. Surveillez la progression de l'annulation.

Important

Pour les clusters exécutant le mode automatique EKS, l'étape 4 est gérée automatiquement. Lorsque vous lancez le rollback, EKS annule les nœuds du mode automatique situés avant le plan de contrôle. Pour de plus amples informations, veuillez consulter Rétrograder les clusters en mode automatique EKS.

Étape 1 : Passez en revue les informations sur le niveau de préparation au rollback

Amazon EKS évalue automatiquement votre cluster par rapport à un ensemble de vérifications ponctuelles de l'état de préparation à la restauration et identifie les éventuels problèmes grâce aux informations du cluster répertoriées dans la catégorie. ROLLBACK_READINESS Ces informations apparaissent une fois que vous avez effectué une mise à niveau et restent disponibles pendant la période d'éligibilité à la rétrogradation de 7 jours.

Consulter les informations sur le niveau de préparation à la restauration

AWS Console :

  1. Ouvrez la console Amazon EKS.

  2. Sélectionnez votre cluster.

  3. Accédez à l'onglet Informations sur les mises à niveau. Des informations sur le niveau de préparation au rollback apparaissent ici après une mise à niveau.

  4. Passez en revue les informations présentant le statut ERREUR ou AVERTISSEMENT.

AWS CLI :

aws eks list-insights \ --cluster-name my-cluster \ --region us-west-2 \ --filter '{"categories": ["ROLLBACK_READINESS"]}'

Pour obtenir des détails sur un aperçu spécifique :

aws eks describe-insight \ --cluster-name my-cluster \ --region us-west-2 \ --id <insight-id>

Des informations rafraîchissantes

EKS actualise les informations toutes les 24 heures. Vous pouvez déclencher manuellement une actualisation après avoir résolu les problèmes à l'aide du bouton Actualiser de la console Amazon EKS ou à l'aide de la CLI :

aws eks start-insights-refresh \ --cluster-name my-cluster \ --region us-west-2
Note

EKS actualise automatiquement les informations lorsque vous lancez une restauration afin de garantir que les vérifications sont effectuées par rapport à l'état le plus récent du cluster.

Insight, statut, comportement

Statut Signification Effet sur le rollback

PASSANT

Aucun problème détecté lors de cette vérification

Annulation autorisée

WARNING

Problème potentiel détecté, non bloquant

Annulation autorisée (à titre indicatif uniquement)

ERREUR

Problème de blocage détecté

Annulation bloquée jusqu'à résolution, ou utilisation --force pour contourner

UNKNOWN

Impossible de déterminer le statut

Annulation bloquée jusqu'à résolution, ou utilisation --force pour contourner

Les informations dont le statut est ERROR ou UNKNOWN bloquent l'annulation. Les informations présentant le statut PASSING ou WARNING ne vous empêchent pas de revenir en arrière.

Contrôles de préparation à l'annulation

Amazon EKS effectue une série de vérifications dans le cadre des informations relatives à l'état de préparation au rollback. Ces vérifications évaluent la compatibilité de l'utilisation des API (y compris la détection des modifications au niveau des champs), l'état du cluster, l'asymétrie de version de Kubelet, l'asymétrie de version de Kube-proxy et la compatibilité des versions complémentaires. Pour les clusters exécutant le mode automatique EKS, des contrôles supplémentaires évaluent les budgets d' NodePool interruption, les annotations de non-interruption et les configurations. PodDisruptionBudget

Utilisation de l'indicateur --force

Si les informations relatives à l'état de préparation à la restauration indiquent un état d'ERREUR et que vous souhaitez poursuivre sans résoudre les problèmes, vous pouvez utiliser le --force drapeau pour contourner toutes les vérifications d'informations :

aws eks update-cluster-version \ --name my-cluster \ --kubernetes-version 1.30 \ --force \ --region us-west-2
Avertissement

L'utilisation --force contourne toutes les vérifications analytiques (ERROR, WARNING, UNKNOWN) et passe directement à l'annulation. EKS ne peut garantir la sécurité du rollback lorsque les contrôles analytiques sont contournés. Vous acceptez l'entière responsabilité de tout problème qui pourrait survenir.

Le --force drapeau contourne uniquement les vérifications d'aperçu. Il ne contourne pas les validations préalables telles que le délai de 7 jours, le contrôle de la version de création ou le contrôle de restauration séquentiel. Pour les clusters en mode automatique, --force ne remplace pas les contrôles d'interruption. NodePool les budgets d'interruption, les PDB et les annotations « ne pas perturber » sont toujours respectés.

Étape 2 : Préparation des nœuds de travail

Avant de restaurer le plan de contrôle, assurez-vous que vos nœuds de travail sont compatibles avec la version cible. La politique de distorsion des versions de Kubernetes exige que les nœuds de travail ne puissent pas exécuter une version plus récente que le plan de contrôle.

Mode automatique EKS

Aucune action requise. Lorsque vous lancez le rollback, EKS annule automatiquement les nœuds du mode automatique situés avant le plan de contrôle. Pour de plus amples informations, veuillez consulter Rétrograder les clusters en mode automatique EKS.

Groupes de nœuds gérés (MNG)

Vous devez rétablir la version précédente de vos groupes de nœuds gérés avant de restaurer le plan de contrôle. Utilisez l'UpdateNodegroupVersionAPI :

aws eks update-nodegroup-version \ --cluster-name my-cluster \ --nodegroup-name my-nodegroup \ --kubernetes-version 1.30 \ --region us-west-2

La mise à jour du groupe de nœuds respecte vos paramètres de mise à jour (maxUnavailableoumaxUnavailablePercentage) et votre stratégie de mise à jour (Rolling ou Force) configurés.

Self-managed nœuds et nœuds hybrides

Vous êtes responsable de la restauration des nœuds autogérés et des nœuds hybrides. Mettez à jour les AMI ou les configurations de votre nœud pour utiliser la version précédente de Kubernetes avant de restaurer le plan de contrôle.

Fargate

La restauration de version n'est pas prise en charge pour les nœuds de travail Fargate. Vous pouvez annuler le plan de contrôle d'un cluster qui utilise Fargate, mais les pods Fargate exécutant la même version de Kubernetes que le plan de contrôle déclenchent l'aperçu biaisé de la version de Kubelet avec le statut ERROR.

EKS ne peut pas restaurer automatiquement les pods Fargate vers une ancienne version de Kubelet.

Solution : si des pods Fargate exécutent la même version de Kubernetes que le plan de contrôle, supprimez ces pods avant de lancer la restauration. Réduisez ensuite votre plan de contrôle. Tous les pods restants sont lancés avec la version annulée lorsque vous les redéployez.

Vous pouvez également l'utiliser --force pour contourner la vérification des informations. Cependant, le fait de poursuivre une violation de distorsion de version de Kubelet peut entraîner un comportement inattendu de vos charges de travail Fargate jusqu'à ce que ces pods soient remplacés.

Étape 3 : annuler le plan de contrôle du cluster

Vous pouvez lancer une restauration à l'aide de la AWS console, de la AWS CLI ou de l'API EKS.

Cluster de restauration à l'aide du AWS Console

  1. Ouvrez la console Amazon EKS.

  2. Sélectionnez votre cluster.

  3. Choisissez le menu déroulant Actions.

  4. Choisissez la version du cluster Rollback.

  5. Consultez le résumé de la rétrogradation, y compris les éventuels avertissements.

  6. Choisissez la version Rollback.

L'annulation prend plusieurs minutes. Pour les clusters en mode automatique, la phase de restauration des nœuds peut prendre plus de temps. Pour de plus amples informations, veuillez consulter Rétrograder les clusters en mode automatique EKS.

Cluster de restauration à l'aide du AWS INTERFACE DE LIGNE DE COMMANDE (CLI)

Utilisez la update-cluster-version commande existante avec la version précédente (N-1) de Kubernetes :

aws eks update-cluster-version \ --name my-cluster \ --kubernetes-version 1.30 \ --region us-west-2

Exemple de réponse :

{ "update": { "id": "e4091a28-ea14-48fd-a8c7-975aeb469e8a", "status": "InProgress", "type": "VersionRollback", "params": [ { "type": "Version", "value": "1.30" }, { "type": "PlatformVersion", "value": "eks.16" } ], "createdAt": "2026-05-12T16:56:01.082000-04:00", "errors": [] } }
Note

EKS exécute une actualisation des informations avant de procéder à l'annulation si les données d'informations sont périmées.

Étape 4 : suivre la progression de la restauration

Vous pouvez surveiller l'état de la restauration de votre cluster à l'aide de la console Amazon EKS ou de la AWS CLI.

AWS CLI :

aws eks describe-update \ --name my-cluster \ --region us-west-2 \ --update-id e4091a28-ea14-48fd-a8c7-975aeb469e8a

AWS Console :

  1. Ouvrez la console Amazon EKS.

  2. Sélectionnez votre cluster.

  3. Accédez à l'onglet Historique des mises à jour.

  4. Localisez l'ID de mise à jour associé à l'annulation pour voir son état actuel.

Transitions de statut

Pour les clusters standard (sans mode automatique) :

InProgress → Successful
InProgress → Failed

Pour les clusters en mode automatique, l'état du cluster reste actif ACTIVE lorsque les nœuds sont en cours de restauration et ne change UPDATING qu'au début de la restauration du plan de contrôle. describe-updateÀ utiliser pour suivre la progression globale de l'annulation. Pour de plus amples informations, veuillez consulter Rétrograder les clusters en mode automatique EKS.

Lorsqu'un Successful statut est affiché, l'annulation est terminée.

Considérations et avertissements

Les informations sont le fruit du meilleur effort et à un moment précis

Les informations du cluster sont évaluées au moment où le rollback est déclenché. Si vous apportez des modifications à votre cluster après avoir vérifié les informations mais avant la fin de la restauration (par exemple, en créant des ressources à l'aide de nouvelles API), ces modifications ne sont pas prises en compte lors de la vérification initiale des informations et peuvent entraîner des problèmes une fois la restauration terminée.

conservation des données etcd

EKS préserve les données etcd pendant le rollback. Les ressources incompatibles contournées à l'aide de l'--forceindicateur restent persistantes et ne sont pas collectées.

Frais d'assistance étendus

Si vous revenez d'une version bénéficiant d'un support standard à une version bénéficiant d'un support étendu, votre cluster commence à encourir des frais de support étendu. Par exemple, si vous passez de la version 1.30 (support étendu) à la version 1.31 (support standard), puis que vous revenez à la version 1.30, les frais d'assistance prolongée reprennent.

Modèle de responsabilité partagée pour le rollback

EKS rétablit le plan de contrôle Kubernetes vers la version souhaitée. Dans le cadre du modèle de responsabilité partagée, vous êtes chargé de vérifier la compatibilité de l'application avec la version précédente :

  • EKS est chargé de rétablir en toute sécurité les composants du plan de commande.

  • Il vous incombe de vous assurer que vos applications, configurations et dépendances sont compatibles avec la version précédente.

  • Vous devez examiner toutes les incompatibilités entre les versions, évaluer l'exposition de votre cluster et atténuer les éventuels problèmes.

CloudFormation comportement de restauration de la pile

Si une mise à jour de CloudFormation pile échoue et déclenche une annulation de pile, le retour à une version de modèle précédente qui spécifie une version inférieure de Kubernetes ne déclenche pas de restauration de version de cluster. La restauration de version doit être explicitement initiée via l' UpdateClusterVersion API, la CLI ou la console.

Annulation et modules complémentaires

EKS n'annule pas automatiquement les versions des modules complémentaires lors d'une restauration de version de cluster. Vous devez gérer les versions complémentaires séparément.

Avant de revenir en arrière sur le plan de contrôle :

  1. Vérifiez la compatibilité des modules complémentaires avec la version cible à l'aide des informations sur le niveau de préparation au rollback.

  2. Si une version complémentaire est incompatible avec la version précédente de Kubernetes, rétrogradez-la d'abord :

aws eks update-addon \
  --cluster-name my-cluster \
  --addon-name vpc-cni \
  --addon-version v1.12.0-eksbuild.2 \
  --region us-west-2

+. Une fois la restauration du plan de contrôle terminée, vérifiez que tous les modules complémentaires fonctionnent correctement.

Note

Les informations sur le niveau de préparation au rollback ne concernent que les versions des EKS-managed modules complémentaires. Pour les modules complémentaires autogérés, il vous incombe de valider la compatibilité avec la version cible avant de revenir en arrière.