Membre depuis le 15/05/2024
Salut la gang j'ai un prometheus qui se fait oomkilled régulièrement sur un cluster k8s de monitoring. on scrape genre 50k métriques par instance et on a pas mal d'instances. on a augmenté la ram allouée au pod mais ça finit toujours par péter. j'ai checké le retention time il est à 15j pas de folie là-dessus. des idées pour réduire la conso mémoire sans virer des métriques essentielles ?
# Partie prometheus.yaml pertinente
global:
scrape_interval: 30s
evaluation_interval: 30s
storage:
tsdb:
retention: 15d
Vous devez être connecté pour poster un message !
Recevoir les derniers articles gratuitement en créant un compte !
S'inscrire
Commentaires
olivier61
Membre depuis le 21/07/2024
yo ! 50k métriques par instance c'est beaucoup. tu as regardé les cardinality des labels ? des fois un label dynamique genre request_id ou session_id explose la cardinality et donc la mémoire de prom. faut virer ces labels useless avec un relabel_config
manon29
Membre depuis le 15/05/2024
ah oui la cardinality j'y avais pas pensé. on a pas mal de labels de traces envoyés par nos apps. je vais regarder les métriques avec les plus hautes cardinalités via le ui de prometheus et essayer de les virer.
olivier61
Membre depuis le 21/07/2024
grave c'est souvent la cause numéro 1 des OOM. tu peux aussi augmenter le scrape_interval si c'est pas critique d'avoir une résolution ultra fine. passer de 30s à 60s réduit la charge et la mémoire nécessaire mais bon c'est un compromis
manon29
Membre depuis le 15/05/2024
j'ai viré quelques labels à haute cardinalité sur nos exporters. la conso ram est redescendue et prometheus tient bon depuis 2h ! merci beaucoup pour le coup de main c'était vraiment ça