coredns crashlooping aléatoire sur EKS prod

Posté par chevalier-leon le 30/09/2024
RÉSOLU

chevalier-leon

Membre depuis le 14/05/2024

yo la team, on a un truc chelou sur notre cluster EKS de prod. on a des pods qui n'arrivent plus à résoudre de noms dns genre d'un coup. on check les logs de coredns et on voit qu'ils crashloopent par intermittence. pas de pattern clair pour le moment on a des core-dns en 1.8.6. les pods qui tombent sont pas forcément des gros consommateurs de dns.


kubectl get pods -n kube-system | grep coredns
coredns-7f55b95546-abcde   0/1     CrashLoopBackOff   5          2m
coredns-7f55b95546-fghij   1/1     Running            0          1h
coredns-7f55b95546-klmno   0/1     CrashLoopBackOff   8          3m

Commentaires

humbert-susan

Membre depuis le 03/04/2019

salut. vérifie les logs exacts des coredns qui crash. souvent c'est OOMkill. regarde les métriques mémoire et cpu de ces pods dans prometheus/cloudwatch. et check si t'as pas des requêtes DNS bizarres qui les spamment.

chevalier-leon

Membre depuis le 14/05/2024

ok je regarde ça. les logs donnent pas grand chose à part "panic: runtime error: index out of range [0] with length 0" ou des trucs du genre avant le crash. pas de OOMKill visible. cpu/mem sont ok sur le papier pas de spikes anormaux. par contre on a pas mal de services et ça spamme pas mal le control plane pour le service discovery.

anastasie60

Membre depuis le 09/06/2019

panics d'index ça ressemble à un bug de coredns. t'as quelle version exacte ? 1.8.6 c'est pas la dernière. regarde les release notes ou issues github. des fois une mise à jour mineure corrige des trucs de stabilité.

humbert-susan

Membre depuis le 03/04/2019

ouais et check tes nodes. pas de problèmes de conntrack tables full ? genre un truc qui bloque les connexions aux coredns ?

chevalier-leon

Membre depuis le 14/05/2024

conntrack bonne piste j'y avais pas pensé. on a pas mal de traf. je vais monitorer ça. pour la version j'ai vu que la 1.9.3 est sortie mais j'hésite à upgrader en prod sans être sûr que ça fix le problème. et on a pas de dns masq ou node local dns cache. c du direct coredns.

kblanc

Membre depuis le 26/12/2019

une autre piste pour le panic c'est la config de coredns elle-même. t'as customisé le Corefile ? des plugins spécifiques ? parfois une config mal écrite ou un plugin buggé peut faire paniquer coredns.

chevalier-leon

Membre depuis le 14/05/2024

merci j'ai creusé la config. le Corefile est standard pas de plugins exotiques. par contre j'ai vu des alertes sur le nombre de files descriptors open par les coredns pods. ça monte grave avant un crash. j'ai augmenté la limite dans le daemonset pour voir.

humbert-susan

Membre depuis le 03/04/2019

ah ça c intéressant. fd limits ça peut causer des comportements étranges. si tu gères beaucoup de connexions concourantes ou si t'as des clients dns qui gardent les connexions ouvertes longtemps ça peut saturer vite. bon shot pour le fix.

chevalier-leon

Membre depuis le 14/05/2024

bon c'était bien ça ! l'augmentation des fd limits a stabilisé le tout. plus aucun crashloop sur les coredns depuis que j'ai mis la nouvelle config. thx pour les pistes c'était bien utile !

Laisser une réponse

Vous devez être connecté pour poster un message !

Rejoindre la communauté

Recevoir les derniers articles gratuitement en créant un compte !

S'inscrire