Blog ENI : Toute la veille numérique !
Accès illimité 24h/24 à tous nos livres & vidéos ! 
Découvrez la Bibliothèque Numérique ENI. Cliquez ici
💥 Les 22 & 23 novembre : Accès 100% GRATUIT
à la Bibliothèque Numérique ENI. Je m'inscris !
  1. Livres et vidéos
  2. Prometheus et Grafana
  3. Surveillance de base de données
Extrait - Prometheus et Grafana Surveillez vos applications et composants système
Extraits du livre
Prometheus et Grafana Surveillez vos applications et composants système
2 avis
Revenir à la page d'achat du livre

Surveillance de base de données

Objectifs du chapitre et prérequis

1. Contexte et prérequis

Dans un système d’information, les bases de données sont généralement l’objet d’une attention particulière : elles détiennent l’information des applications et sont par conséquent particulièrement critiques. En conséquence, elles font l’objet d’une attention poussée afin de se prémunir au maximum des pertes de performances ou de données.

De son côté, Prometheus ne sait pas communiquer directement avec ces dernières et il est nécessaire de faire appel à un exporteur. Dans ce qui va suivre, le lecteur abordera cette thématique avec quelques exemples d’exporteurs disponibles avec quelques exemples d’alertes intéressantes pour chaque cas.

2. Fichiers téléchargeables

Vous pouvez récupérer les exemples sur le repository GitHub suivant : https://github.com/EditionsENI/prometheus-grafana

Vous pouvez également récupérer ces fichiers dans l’archive chapitre-14.tar.gz depuis la page Informations générales.

Surveillance de base de données PostgreSQL

1. Contexte

PostgreSQL (ou Postgres) est une base de données relationnelle et objet créée par Michael Stonebraker. Son développement est fait sur un modèle open source (licence PostgreSQL similaire aux licences BSD/MIT) et est disponible sur la plupart des systèmes du marché. Sa principale caractéristique est d’être pratiquement conforme avec l’ensemble des normes ANSI SQL 89, 92, 99, 2003 et 2008. Il offre également la possibilité de stocker des types non structurés (comme du JSON par exemple).

N’hésitez pas à consulter l’article à son sujet sur Wikipedia : https://fr.wikipedia.org/wiki/PostgreSQL

2. Exporteur PostgreSQL

a. Présentation de l’exporteur

La communauté Prometheus maintient un exporteur dédié à la surveillance de cette brique : postgres_exporter.

Ce dernier est téléchargeable en version 0.9.0 (au moment de l’écriture de ce livre) à l’adresse suivante : https://github.com/prometheus-community/postgres_exporter

Dans le cas d’une distribution Linux tournant sur architecture AMD64, l’archive de la version 0.9.0 portera le nom : postgres_exporter-0.9.0.linux-amd64.tar.gz.

Tout comme pour la plupart des exporteurs de Prometheus, ce dernier est écrit en Go et se présente sous la forme d’un binaire sans dépendance système.

Enfin, c’est un produit open source distribué sous licence Apache.

b. Installation de l’exporteur

La décompression de l’archive se fait à l’aide de la commande tar, puis des options xfvz suivies du nom de l’archive à décompresser.

Voici la commande complète à utiliser :

$ tar xfvz postgres_exporter-0.9.0.linux-amd64.tar.gz 

Cette dernière renvoie la liste des fichiers décompressés :

postgres_exporter-0.9.0.linux-amd64/ 
postgres_exporter-0.9.0.linux-amd64/LICENSE 
postgres_exporter-0.9.0.linux-amd64/postgres_exporter 

La décompression va créer le répertoire postgres_exporter-0.9.0.linux-amd64 avec deux fichiers :

  • Fichier LICENSE : licence logicielle de l’exporteur.

  • Fichier postgres_exporter : binaire de l’exporteur.

L’exporteur est disponible...

Surveillance base de données MySQL/MariaDB

1. Contexte

MySQL est un moteur de base de données SQL distribué sous double licence GPL et propriétaire. La première version de ce logiciel est relativement ancienne et date de 1994. Le nom du produit vient de la concaténation My (prénom de la fille d’un des co-créateurs du logiciel, Michael Widenius) et de SQL (Structured Query Language). La société à l’origine de ce produit (MySQL AB) a été tout d’abord rachetée par Sun Microsystems en 2008 pour être ensuite reprise par Oracle au moment du rachat de Sun en 2010.

Suite à ce rachat, Michael Widenius a décidé de créer un clone (fork) et l’a prénommé MariaDB, d’après le prénom de sa seconde fille (Maria).

Au niveau norme, MySQL est compatible avec SQL2. Toutefois, le moteur n’est pas compatible avec les normes plus récentes et certaines fonctions ne respectent pas la syntaxe recommandée.

À noter que ce logiciel fait partie de l’acronyme LAMP (Linux Apache MySQL PHP) et qu’il s’agit d’un logiciel particulièrement utilisé sur Internet. Il était par exemple utilisé pour le site Wikipedia jusqu’en 2012. Il a été remplacé par la suite par MariaDB.

Pour en savoir plus sur ce logiciel, n’hésitez pas à consulter l’article Wikipedia suivant : https://fr.wikipedia.org/wiki/MySQL

2. Exporteur MySQL

a. Présentation de l’exporteur

Tout comme pour l’exporteur PostgreSQL, l’exporteur de MySQL/MariaDB se présente sous la forme d’un binaire statique sans dépendance. Il est accessible à l’emplacement suivant : https://github.com/prometheus/mysqld_exporter

Au moment de la rédaction de ces lignes, l’exporteur est sorti en version 0.13.0. Il se présente sous la forme d’une archive tar.gz. Dans le cas d’une version AMD64 pour Linux, l’archive prendra le nom suivant :

mysqld_exporter-0.13.0.linux-amd64.tar.gz 

b. Installation de l’exporteur

Le lancement de l’exporteur ne diffère pas de celui pour la base PostreSQL et la première étape consiste à décompresser l’archive téléchargée...