prometheus metriques manquantes sur certaines instances

Posté par henri87 le 26/01/2025
RÉSOLU

henri87

Membre depuis le 16/06/2024

slt la team

on a un gros cluster avec des centaines d'instances (aws ec2) et prometheus qui scrape les metrics. tout marchait niquel et là depuis qques jours on a des "holes" dans les graphiques, des metrics qui manquent pour une dizaine d'instances random. prometheus nous remonte des erreurs

context deadline exceeded
ou
server returned HTTP 404 Not Found
pour ces instances là

les instances sont up l'exporter node_exporter tourne bien dessus j'ai même essayé de faire un curl manuel vers

http://instance-ip:9100/metrics
et ça marche. le security group est ok pas de changement. prometheus est bien configuré pour autodiscover via consul

je comprends pas pourquoi c'est que certaines instances et pas toutes et pourquoi c'est apparu d'un coup. une idée ?

Commentaires

ldupre

Membre depuis le 15/08/2024

check si tes instances qui posent problème sont pas sur des sous-réseaux différents avec des règles de routage ou des NACLs un peu plus restrictives. des fois on oublie un petit truc à ce niveau là qui bloque un port

henri87

Membre depuis le 16/06/2024

j'ai vérifié les vpc les subnets et les nacl sont identiques pour toutes les instances. y'a rien qui justifie un blocage sélectif

michelle29

Membre depuis le 25/06/2024

c possible que consul mette à jour un peu lentement ou qu'il y ait des données périmées pour ces instances là ? ou que l'instance consul qui est interrogée par prometheus ait elle-même un souci de connectivité ?

veronique-bouvier

Membre depuis le 18/12/2024

le

HTTP 404 Not Found
est chelou si le curl marche. ça ressemble plus à un truc côté prometheus lui-même genre la config de scrape ou le service discovery qui merde pour ces targets là. t'as essayé de reload prometheus ou de checker ses logs d'autodiscovery ?

henri87

Membre depuis le 16/06/2024

j'ai reload prometheus plusieurs fois. les logs d'autodiscovery via consul semblent ok. ce qui me frustre c'est le curl qui passe nickel depuis la machine prometheus vers l'exporter des instances qui ont des problèmes. c'est vraiment intermittent et random

ldupre

Membre depuis le 15/08/2024

si le curl marche et que prometheus balance des 404, ça veut dire que l'url qu'il essaie de scraper est pas la bonne ou que l'exporter renvoie 404 si l'ip est pas celle attendue. j'ai déjà vu des configs d'exporter où tu devais specifier l'ip locale pour qu'il réponde sur la bonne interface

mais le deadline exceeded c'est plus réseau. ptete un souci de dns reverse lookup si prometheus fait ça pour les noms d'hotes ?

henri87

Membre depuis le 16/06/2024

bon j'ai trouvé ! c'était une combinaison de deux trucs. d'abord des dns reverse qui prenaient trop de temps et prometheus passait en timeout pour certaines ip. et ensuite un petit bug dans notre script de déploiement qui parfois ne mettait pas le bon ip dans consul pour l'exporter ce qui causait le 404. merci à tous pour l'aide ça m'a bien orienté !

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