8 commentaires
C'est un problème classique lié au délai de propagation de la mise à jour des endpoints dans les services. Le kube-proxy met du temps à mettre à jour les tables iptables.
Exactement, j'ai l'impression que le trafic continue d'être envoyé vers le pod en terminaison. Le sleep résout le souci mais ça me semble être du bricolage.
Attention à bien vérifier que ton terminationGracePeriodSeconds est supérieur à la valeur du sleep sinon le pod sera tué brutalement.
Merci pour la précision. Je vais ajuster le terminationGracePeriodSeconds à 30 secondes pour être large. C'est quand même dommage qu'il n'y ait pas de native solution plus intelligente.
Tu peux aussi vérifier tes readinessProbes, parfois un échec précoce provoque le retrait du pod avant que le signal SIGTERM ne soit reçu.
Je vais auditer mes probes ce soir. Merci à vous deux pour ces pistes, je pars sur le sleep + ajustement du délai de terminaison.
Laisser une réponse
Vous devez être connecté pour poster un message !
Hello, je constate que lors de chaque déploiement sur mon cluster Kubernetes, j'ai des erreurs 502 intermittentes sur mon ingress Nginx. Il semble que les pods sont supprimés avant que les connexions actives ne soient terminées. J'utilise un déploiement standard sans hook particulier.
Est-ce qu'ajouter un
preStopsleep est la méthode recommandée ou existe-t-il une solution plus propre au niveau du cycle de vie des conteneurs ?