Promql Introduction et exemples

Promql Introduction et exemples
Le principal moyen de remettre en question les métriques au sein de Prometheus est par le biais de PromQL, qui signifie Prometheus Inter interroger la langue. Le résultat d'une expression peut être considéré comme un graphique ou exporté à l'aide de l'API HTTP. Les scalaires, les vecteurs de plage et les vecteurs instantanés sont les trois types de données utilisés par PROMQL. Des cordes sont également utilisées, mais uniquement comme littéraux. À mesure que vous vous familiarisez davantage avec les requêtes de Prometheus, cette introduction fournira des exemples et des principes de base de la promql à saisir.

Introduction à Promql

Le langage de requête du système de surveillance de Prometheus est appelé promql. Il est conçu pour créer des requêtes de séries chronologiques graphiques, alertes et dérivées fortes (aka Règles d'enregistrement). PromQL est un tout nouveau langage de requête pour les bases de données de séries chronologiques qui n'ont rien en commun avec les langages de requête antérieurs, tels que SQL dans TimesCaledB, InfluxQL ou Flux.

Lorsque vous arrivez dans le monde passionnant de Prometheus, le début de Promql peut être difficile. Ce tutoriel vous aidera sans aucun doute à démarrer. Parce que Prométhée utilise un modèle de données de séries chronologiques pour stocker les données, les requêtes dans un serveur Prométhée sont différentes des requêtes SQL.

Apprendre à construire de bonnes requêtes PromQL perforantes commence par comprendre comment les données sont maintenues dans Prometheus.

Types de données PROMQL

Prométhée utilise trois types de données pour les mesures: scalaire, vecteur instantané et vecteur de plage. Le scalaire représente une valeur à virgule flottante, qui est le type de données le plus basique de Prometheus. Les scalaires incluent des nombres comme 0, 18.12 et 1 000 000. Dans Prométhée, tous les calculs sont effectués au point flottant.

Les scalaires de regroupement créent un type de données vectoriel instantané comme un ensemble de mesures en un seul moment dans le temps. Le résultat est un vecteur immédiat lorsque vous exécutez une requête qui demande simplement le nom d'une métrique, comme un total des compteurs à distance de vélo. Parce que les métriques ont à la fois des noms et des étiquettes, un seul nom peut avoir de nombreuses valeurs, donc c'est un vecteur plutôt qu'un scalaire.

Le vecteur de plage est obtenu en traçant un tableau de vecteurs à travers le temps. Ni Grafana ni le navigateur d'expression Prometheus intégré ne crée des graphiques directement à partir de vecteurs de plage; Au lieu de cela, ils utilisent des vecteurs ou des scalaires instantanés produits indépendamment pour des points distincts dans le temps.

Étapes pour installer le serveur Prometheus sur Ubuntu

Toutes les étapes pour comprendre la procédure d'installation de Prometheus sur Ubuntu sont détaillées ci-dessous.

Commençons par créer un utilisateur et un groupe pour le système Prometheus. Vous devez taper et exécuter les instructions suivantes:

Créez un utilisateur du système Prométhée puis attachez-le au groupe principal qui est nouvellement établi.

Pour stocker ses données, Prometheus nécessitera un répertoire. L'emplacement du répertoire est / var / lib / prometheus.

Le répertoire de fichiers de configuration principal pour PromEthEus est / etc / prometheus /. Il aura des sous-répertoires différents.

Pour accéder aux fichiers binaires, nous devons d'abord télécharger les plus récents archives de Prometheus et l'extraire. Installez le programme WGET après cela. La sortie est représentée dans l'image apposée:

Ici, nous avons exécuté la commande d'installation wget pour le faire. La sortie est représentée dans l'image apposée:

Ensuite, pour Prometheus, téléchargez les archives binaires les plus récentes. La sortie est représentée dans l'image apposée:

Après cela, vous devez extraire le fichier comme suit. La sortie est représentée dans l'image apposée:

Maintenant, transférez tous les fichiers binaires au répertoire situé sur / usr / local / bin /. Voir la commande donnée dans laquelle nous avons spécifié l'emplacement. La sortie est représentée dans l'image suivante:

Vérifiez la version installée en exécutant la commande jointe. La sortie est représentée dans l'image apposée:

Dans le répertoire / etc, vous devez copier le modèle de configuration Prometheus comme nous l'avons fait dans la capture d'écran ci-dessous:

Cette étape nécessite de déplacer les consoles, ainsi que des bibliothèques de consoles. Pour cela, tapez et exécutez la commande exécutée ci-dessous:

Sur Ubuntu 22.04/20.04/18.04, vous devez configurer Prometheus. Maintenant, créez ou mettez à jour le / etc / prometheus / prometheus.Fichier de configuration YML pour Prometheus.

Les paramètres du modèle doivent ressembler à une image apposée. Vous pouvez enregistrer le fichier après avoir apporté les modifications nécessaires. La sortie est représentée dans l'image suivante.

Maintenant, vous devez maintenant faire un fichier de l'unité de service Prometheus Systemd. Ce fichier unitaire doit être explicitement défini pour administrer le service Prometheus avec SystemD. La sortie est représentée dans l'image apposée:

Changez l'utilisateur et groupe de Prometheus pour posséder ces répertoires. Voir les trois captures d'écran suivantes:

Maintenant, commençons le service en rechargeant le démon systemd:

Exécutez l'instruction «SystemCTl Status Prometheus» pour vérifier l'état. La sortie est représentée dans l'image apposée:

Vous devrez ouvrir le port 9090 si votre serveur a un service de pare-feu actif. Reportez-vous à la commande suivante. La sortie est représentée dans l'image fournie.

Dans votre navigateur Web pertinent, consultez l'adresse IP du serveur Prometheus pour voir si vous pouvez créer un lien vers le port 9090.

Comment accéder à Prometheus à partir de l'interface Web?

Si votre pare-feu (UFW) est en place et fonctionne correctement, ouvrez le port Prometheus. Il se connecte sur le port TCP 9090 par défaut. Prometheus est maintenant opérationnel et prêt à prendre les demandes Web. Vous pouvez y accéder en tapant http: // server-ip-or-hostname: 9090 dans votre navigateur.

Accédez à l'état si vous souhaitez obtenir les informations sur la configuration, l'état, les règles, la cible, etc.

Ici, nous avons cliqué sur les cibles. Ceci est fait pour vérifier le statut du nœud.

Maintenant, vous pouvez utiliser PromQL pour extraire des données intéressantes et exploitables de votre cluster Kubernetes en utilisant un certain nombre de requêtes. Ces requêtes fourniront des informations sur la santé des nœuds, la santé des nœuds, l'utilisation des ressources en grappes, etc.

Nous n'avons utilisé aucune question pour extraire des mesures pertinentes et exploitables de votre cluster Kubernetes, comme indiqué dans l'instantané précédent.

Conclusion:

Promql, comme tout langage de requête mature, est un sujet large et compliqué. Cet article a donné un aperçu des idées pour vous aider à commencer à construire des requêtes qui renvoient des séries chronologiques et des métriques utiles. Vous pouvez suivre toutes les étapes essentielles pour installer le serveur Prométhée répertorié. Nous espérons que vous avez trouvé cet article utile. Consultez les autres articles sur les conseils pour plus de conseils et de tutoriels.