Pourquoi ne puis-je pas supprimer mon cluster Amazon EKS ?

Lecture de 5 minute(s)
0

Je ne peux pas supprimer mon cluster Amazon Elastic Kubernetes Service (Amazon EKS). Comment résoudre ce problème ?

Brève description

Pour supprimer un cluster Amazon EKS, vous devez d'abord supprimer tous les groupes de nœuds gérés associés au cluster. Pour plus d'informations, consultez Suppression d'un cluster Amazon EKS.

Remarque : une bonne pratique consiste à supprimer le cluster avec le même outil que celui que vous avez utilisé pour le créer.

Important : si vous créez des équilibreurs de charge à l'aide d'AWS Load Balancer Controller (sur le site Web GitHub), des Application Load Balancer ou des Network Load Balancer sont créés pour vous. Si vous supprimez votre cluster avant de supprimer les entrées Kubernetes ou les services qui gèrent l'équilibreur de charge, vous devez supprimer manuellement l'équilibreur de charge. Voir Supprimer une Application Load Balancer, Supprimer un Network Load Balancer et Supprimer votre équilibreur de charge (Classic).

Si vous ne pouvez toujours pas supprimer vos composants de cluster, envisagez les options suivantes en fonction de votre scénario :

  • Le message d'erreur « La ou les ressources suivantes n'ont pas pu être supprimées » ou « La ressource XXXXXXX possède un objet dépendant » s'affiche. Suivez les étapes de la section Supprimer la pile AWS CloudFormation qui a créé le composant de cluster.
  • Vous avez supprimé votre cluster et les nœuds sont toujours actifs. La suppression d'un cluster ne supprime pas automatiquement les nœuds autogérés. Vous devez supprimer manuellement les nœuds. Suivez les étapes de la section Supprimer les nœuds autogérés.
  • Votre cluster est bloqué dans l'état DELETING. Vérifiez qu'aucune stratégie ou aucun rôle AWS Identity and Access Management (IAM) manquant n'empêche la suppression de votre cluster. Si le rôle IAM est absent, effectuez les étapes de la section Recréer la fonction du service IAM pour Amazon EKS.
  • L'appel d'API Amazon EKS DeleteCluster échoue avec le message d'erreur « Impossible de supprimer car le cluster XXXXXXX est actuellement en cours de mise à jour ». « Toutefois, vous constatez que le cluster est à l'état actif et qu'aucune mise à jour n'est en cours. Dans ce cas, consultez la section Réaliser une mise à niveau automatique de la version de la plateforme Amazon EKS.

Remarque : Il est normal que la suppression de votre cluster prenne du temps. Vous n'êtes pas facturé pour un cluster dont l'état est DELETING.

Solution

Remarque : si vous recevez des erreurs lors de l'exécution de commandes depuis l'Interface de la ligne de commande AWS (AWS CLI), assurez-vous d'utiliser la version la plus récente d'AWS CLI.

Supprimer la pile AWS CloudFormation qui a créé le composant de cluster

1.    Vous pouvez supprimer la pile sur la console AWS CloudFormation. Vous pouvez également utiliser la commande delete-stack de l'AWS CLI.

Si vous ne pouvez pas supprimer votre pile en raison de dépendances, supprimez d’abord manuellement les ressources qui ont les dépendances ou supprimez les dépendances. Essayez ensuite de supprimer la pile à nouveau.

Pour retenir les ressources dont la suppression échoue, ignorez les ressources lorsque vous supprimez la pile. Cette option est disponible uniquement sur les ressources ou les piles qui ont l'état DELETE_FAILED. Les ressources ignorées restent actives dans le compte, mais la pile AWS CloudFormation est supprimée avec succès. Vous pouvez ensuite supprimer les ressources via la Console de gestion AWS

2.    Une fois la pile supprimée, essayez à nouveau de supprimer votre cluster.

Si la suppression de la pile est lente ou si elle échoue, passez en revue l'appel d'API DeleteCluster dans AWS CloudTrail.

Supprimer les nœuds autogérés

Si vous avez créé manuellement une instance Amazon Elastic Compute Cloud (Amazon EC2), mettez fin à votre instance. Si vous avez créé les nœuds par un groupe Auto Scaling, la suppression du groupe Auto Scaling pour supprimer les nœuds. Si vous avez utilisé CloudFormation pour créer les nœuds, supprimez de la pile pour supprimer les nœuds.

Recréer la fonction du service IAM pour Amazon EKS

Vous devez disposer d'une fonction de service IAM qui permet à Amazon EKS de passer des appels vers d'autres services AWS pour vous. Si vous supprimez ou modifiez le rôle après avoir créé le cluster, le cluster ne parvient pas à supprimer certaines ressources. Par exemple, le cluster peut ne pas supprimer l'interface réseau Elastic utilisée pour les communications privées avec les instances du plan de contrôle.

1.    Créez à nouveau le rôle IAM.

Important : assurez-vous de choisir Amazon EKS comme service pour gérer les clusters pour vous.

2.    Attachez les stratégies gérées AmazonEKSClusterPolicy au rôle IAM.

Effectuez une mise à niveau automatique de la version de la plateforme Amazon EKS

Amazon EKS met automatiquement à niveau tous les clusters existants vers la dernière version de la plateforme Amazon EKS pour la version mineure de Kubernetes correspondante. Comme ces mises à jour ne sont pas initiées par vous, elles n'apparaissent pas en tant que mises à jour dans la console. Les mises à niveau automatiques des versions existantes de la plateforme Amazon EKS sont déployées de manière croissante et peuvent prendre un certain temps. Une fois que vos clusters ont atteint leur dernière version de plate-forme pour la version mineure de Kubernetes correspondante, vous pouvez réessayer de supprimer le cluster.


AWS OFFICIEL
AWS OFFICIELA mis à jour il y a un an