16.2. Déterminer pourquoi Prometheus consomme beaucoup d'espace disque


Les développeurs peuvent créer des étiquettes pour définir les attributs des métriques sous la forme de paires clé-valeur. Le nombre de paires clé-valeur potentielles correspond au nombre de valeurs possibles pour un attribut. Un attribut dont le nombre de valeurs potentielles est illimité est appelé attribut non lié. Par exemple, un attribut customer_id est non consolidé car il possède un nombre infini de valeurs possibles.

Chaque paire clé-valeur attribuée a une série chronologique unique. L'utilisation de nombreux attributs non liés dans les étiquettes peut entraîner une augmentation exponentielle du nombre de séries temporelles créées. Cela peut avoir un impact sur les performances de Prometheus et consommer beaucoup d'espace disque.

Vous pouvez utiliser les mesures suivantes lorsque Prometheus consomme beaucoup de disque :

  • Check the number of scrape samples qui sont collectés.
  • Check the time series database (TSDB) status using the Prometheus HTTP API pour plus d'informations sur les étiquettes qui créent le plus de séries temporelles. Cette opération nécessite des privilèges d'administrateur de cluster.
  • Reduce the number of unique time series that are created en réduisant le nombre d'attributs non liés attribués aux mesures définies par l'utilisateur.

    Note

    L'utilisation d'attributs liés à un ensemble limité de valeurs possibles réduit le nombre de combinaisons potentielles de paires clé-valeur.

  • Enforce limits on the number of samples that can be scraped dans des projets définis par l'utilisateur. Cette opération nécessite des privilèges d'administrateur de cluster.

Conditions préalables

  • Vous avez accès au cluster en tant qu'utilisateur ayant le rôle cluster-admin.
  • Vous avez installé l'OpenShift CLI (oc).

Procédure

  1. Dans la perspective Administrator, naviguez vers Observe Metrics.
  2. Exécutez la requête Prometheus Query Language (PromQL) suivante dans le champ Expression. Cette requête renvoie les dix métriques qui ont le plus grand nombre d'échantillons de scrape :

    topk(10,count by (job)({__name__=~".+"}))
  3. Étudier le nombre de valeurs d'étiquettes non liées attribuées à des mesures dont le nombre d'échantillons raclés est plus élevé que prévu.

    • If the metrics relate to a user-defined projectdans le cas d'une charge de travail, passez en revue les paires clé-valeur de métriques attribuées à votre charge de travail. Celles-ci sont mises en œuvre par les bibliothèques client Prometheus au niveau de l'application. Essayez de limiter le nombre d'attributs non liés référencés dans vos étiquettes.
    • If the metrics relate to a core OpenShift Container Platform projectcréez un dossier d'assistance Red Hat sur le portail client Red Hat.
  4. Examinez l'état de la TSDB à l'aide de l'API HTTP Prometheus en exécutant les commandes suivantes en tant qu'administrateur de cluster :

    $ oc login -u <nom d'utilisateur> -p <mot de passe>
    $ host=$(oc -n openshift-monitoring get route prometheus-k8s -ojsonpath={.spec.host})
    $ token=$(oc whoami -t)
    $ curl -H "Authorization: Bearer $token" -k "https://$host/api/v1/status/tsdb"

    Exemple de sortie

    "status": "success",

Ressources supplémentaires

Red Hat logoGithubRedditYoutube

À propos de la documentation Red Hat

Nous aidons les utilisateurs de Red Hat à innover et à atteindre leurs objectifs grâce à nos produits et services avec un contenu auquel ils peuvent faire confiance.

Rendre l’open source plus inclusif

Red Hat s'engage à remplacer le langage problématique dans notre code, notre documentation et nos propriétés Web. Pour plus de détails, consultez leBlog Red Hat.

À propos de Red Hat

Nous proposons des solutions renforcées qui facilitent le travail des entreprises sur plusieurs plates-formes et environnements, du centre de données central à la périphérie du réseau.

© 2024 Red Hat, Inc.