Décrivez le bogue
Nous ne pouvons pas détacher les volumes attachés aux nœuds supprimés dans Trident 21.10.1. Dans Trident v21.07.2, ces volumes seraient automatiquement détachés après une certaine période. Si je comprends bien, ce détachement de force est effectué par AttachDetachController après ReconcilerMaxWaitForUnmountDuration .
Il semble que ce changement soit introduit dans ce commit . Ce commit oblige le ControllerUnpublishVolume de Trident à vérifier l'existence du nœud. Si le nœud n'existe pas, ControllerUnpublishVolume renvoie désormais une erreur NotFound , de sorte que le détachement du volume échoue toujours lorsque le nœud est déjà supprimé.
En cas de défaillance du serveur, le détachement de volume peut échouer et nous n'avons d'autre choix que de supprimer le nœud. Il est donc souhaitable de détacher automatiquement les volumes attachés aux nœuds supprimés.
Environnement
silenceAutosupport: true
(Opérateur Trident)Reproduire
kubectl delete node
Dans VolumeAttachment, l'erreur suivante peut être trouvée.
rpc error: code = NotFound desc = node <NODE_NAME> was not found'
Comportement attendu
Trident détache automatiquement les volumes attachés aux nœuds supprimés.
Nous gérons un cluster Kubernetes de plus de 100 nœuds sur AWS qui s'appuie fortement sur des nœuds ponctuels. Les nœuds ponctuels seront résiliés avec seulement quelques minutes d'avertissement sur AWS, ce qui devrait se produire assez souvent. Même si nous exécutons le gestionnaire de terminaison de nœud en mode SQS et réagissons aux notifications de terminaison ponctuelles avec un drainage automatique des nœuds, nous nous retrouvons généralement dans une situation où le processus de détachement ne se termine pas avant la suppression d'un nœud.
Dans ce scénario, nous rencontrons souvent exactement le même problème que celui décrit par @tksm. Il s'agit d'un problème grave car les charges de travail seront bloquées dans un état de crash en boucle car le PVC ne parvient pas à se connecter après le déplacement du pod vers un nouveau nœud. J'espère que le problème pourra être corrigé.
Une ETA sur un correctif ?
@paalkr , l'équipe travaille actuellement sur un correctif. Nous mettrons à jour ce problème avec un lien vers le commit une fois qu'il sera fusionné.
Excellent! Merci beaucoup.
Commentaire le plus utile
@paalkr , l'équipe travaille actuellement sur un correctif. Nous mettrons à jour ce problème avec un lien vers le commit une fois qu'il sera fusionné.