Surveillance système · 9 min read · Oct 09, 2025

Construire un système de surveillance avec Grafana et Prometheus sur Debian 12

Grafana est une plateforme de visualisation de données open-source et multi-plateforme développée par Grafana Labs. Grafana fournit une application web interactive de visualisation de données qui inclut des graphiques, des diagrammes et des alertes. Avec Grafana, vous pouvez interroger, visualiser, configurer des alertes et explorer des métriques, des journaux et des traces de TSDB. C’est un outil puissant qui transforme les données de la base de données de séries temporelles (TSDB) en un graphique et une visualisation éclairants.

Dans Grafana, vous pouvez ajouter vos données de base de données de séries temporelles via la ‘Source de données’. Grafana prend en charge plusieurs sources de données telles que Prometheus, InfluxDB, PostgreSQL, Loki, Jaeger, Graphite, Google Cloud Monitoring, AWS CloudWatch, Azure Monitor, et bien d’autres.

Dans ce guide, vous allez installer Grafana sur le serveur Debian 12 avec Nginx comme proxy inverse, puis ajouter Prometheus comme source de données et configurer le tableau de bord Grafana pour la surveillance du système.

Prérequis

Avant de commencer, assurez-vous d’avoir les éléments suivants :

  • Un serveur Debian 12 pour l’installation de Grafana.
  • Un serveur Debian 12 avec Prometheus et Node Exporter installés - Comment installer Prometheus et Node Exporter sur Debian 12.
  • Un utilisateur non-root avec des privilèges d’administrateur sudo.

Ajout du dépôt Grafana

Dans ce guide, vous allez installer Grafana via le dépôt officiel de Grafana. Pour ce faire, vous devez ajouter le dépôt Grafana à votre serveur Debian.

Pour commencer, exécutez la commande suivante pour installer les dépendances de base sur votre machine Debian.

sudo apt install gnupg2 apt-transport-https software-properties-common wget

install basic deps

Maintenant, ajoutez la clé GPG et le dépôt Grafana en exécutant la commande suivante.

curl -fsSL https://packages.grafana.com/gpg.key | sudo gpg --dearmor -o /etc/apt/trusted.gpg.d/grafana.gpg  
echo 'deb [signed-by=/etc/apt/trusted.gpg.d/grafana.gpg] https://packages.grafana.com/oss/deb stable main' | sudo tee /etc/apt/sources.list.d/grafana.list

Enfin, mettez à jour et rafraîchissez votre index de paquets Debian pour appliquer les modifications.

sudo apt update

setup repo

Installation de Grafana

Maintenant que vous avez ajouté le dépôt Grafana, vous allez installer Grafana via APT. Ensuite, vous configurerez l’utilisateur administrateur et le mot de passe pour votre installation de Grafana.

Installez Grafana sur votre système Debian en utilisant la commande suivante. Saisissez y pour continuer l’installation.

sudo apt install grafana

install grafana

Après l’installation, rechargez le gestionnaire systemd en exécutant la commande suivante.

sudo systemctl daemon-reload

Ensuite, démarrez et activez le service grafana-server en utilisant la commande ci-dessous.

sudo systemctl start grafana-server  
sudo systemctl enable grafana-server

start enable grafana

Une fois que le grafana-server est en cours d’exécution, vérifiez-le en utilisant la commande ci-dessous. Si tout se passe bien, vous devriez voir que le grafana-server est activé et en cours d’exécution.

sudo systemctl status grafana-server

verify grafana

Enfin, lancez votre navigateur web et visitez l’adresse IP de votre serveur avec le port par défaut de Grafana 3000, tel que http://192.168.5.20:3000/.

Saisissez l’utilisateur par défaut admin et le mot de passe admin, puis cliquez sur Connexion.

login grafana

Maintenant, changez le mot de passe admin par défaut avec un nouveau mot de passe. Ensuite, cliquez sur Soumettre pour confirmer.

change admin password

Lorsque le processus est terminé, vous devriez voir le tableau de bord Grafana comme suit :

grafana dashboard

Configuration de Grafana

Avec Grafana installé, l’étape suivante consiste à configurer Grafana en modifiant la configuration par défaut /etc/grafana/grafana.ini et à définir http_addr sur localhost, http_port sur 3000, et le domaine avec un nom de domaine local grafana.howtoforge.local.

Ouvrez la configuration par défaut de Grafana /etc/grafana/grafana.ini en utilisant la commande de l’éditeur nano suivante.

sudo nano /etc/grafana/grafana.ini

Changez la configuration par défaut avec les lignes suivantes. Dans cet exemple, vous exécuterez Grafana sur localhost et avec le nom de domaine local grafana.howtoforge.local.

[server]  
# L'adresse IP à laquelle se lier, vide se liera à toutes les interfaces  
http_addr = localhost  
  
# Le port http à utiliser  
http_port = 3000  
  
# Le nom de domaine public utilisé pour accéder à grafana depuis un navigateur  
domain = grafana.howtoforge.local

Lorsque vous avez terminé, enregistrez et quittez le fichier.

Maintenant, exécutez la commande systemctl suivante pour redémarrer le grafana-server et appliquer les modifications. Avec cela, votre installation de Grafana fonctionne uniquement sur localhost.

sudo systemctl restart grafana-server

Installation de Nginx comme proxy inverse

Dans ce guide, vous allez exécuter Grafana avec Nginx comme proxy inverse. Maintenant, complétez les tâches suivantes pour installer et configurer Nginx comme proxy inverse pour votre installation de Grafana.

Exécutez la commande suivante pour installer le serveur web Nginx sur votre machine Debian. Saisissez y pour continuer l’installation.

sudo apt install nginx

install nginx

Après l’installation de Nginx, exécutez la commande de l’éditeur nano suivante pour créer un nouveau fichier de bloc serveur /etc/nginx/sites-available/grafana.conf.

sudo nano /etc/nginx/sites-available/grafana.conf

Insérez la configuration suivante et assurez-vous de changer le nom de domaine dans le paramètre server_name.

# Ceci est requis pour proxy les connexions WebSocket de Grafana Live.  
map $http_upgrade $connection_upgrade {  
    default upgrade;  
    '' close;  
}  
  
server {  
    listen      80;  
    server_name grafana.howtoforge.local;  
  
    root /usr/share/nginx/html;  
    index index.html index.htm;  
  
    access_log /var/log/nginx/grafana-access.log;  
    error_log /var/log/nginx/grafana-error.log;  
  
    location / {  
        proxy_set_header Host $http_host;  
        proxy_pass http://localhost:3000/;  
    }  
  
    # Proxy les connexions WebSocket de Grafana Live.  
    location /api/live {  
        rewrite  ^/(.*)  /$1 break;  
        proxy_http_version 1.1;  
        proxy_set_header Upgrade $http_upgrade;  
        proxy_set_header Connection $connection_upgrade;  
        proxy_set_header Host $http_host;  
        proxy_pass http://localhost:3000/;  
    }  
}

Enregistrez et fermez le fichier une fois terminé.

Ensuite, exécutez la commande suivante pour activer le fichier de bloc serveur /etc/nginx/sites-available/grafana.conf. Puis, vérifiez votre syntaxe Nginx pour vous assurer que vous avez une syntaxe correcte.

sudo ln -s /etc/nginx/sites-available/grafana.conf /etc/nginx/sites-enabled/  
sudo nginx -t

Si vous avez la bonne syntaxe Nginx, vous devriez obtenir la sortie ‘test is successful - syntax is ok‘.

setup nginx reverse proxy

Enfin, exécutez la commande systemctl suivante pour redémarrer le service Nginx et appliquer les modifications. Ensuite, vérifiez Nginx pour vous assurer que le service fonctionne.

sudo systemctl restart nginx  
sudo systemctl status nginx

Dans la sortie suivante, vous devriez voir que le service Nginx est en cours d’exécution.

check nginx

Pour accéder à votre serveur Grafana, vous pouvez modifier le fichier /etc/hosts sur votre machine locale si vous êtes un utilisateur Linux ou MacOS. Pour les utilisateurs de Windows, éditez le fichier C:\Windows\System32\drivers\etc\hosts en tant qu’administrateur.

Saisissez la configuration suivante dans le fichier.

192.168.5.15    grafana.howtoforge.local

Enregistrez et fermez le fichier une fois terminé.

Maintenant, retournez dans le navigateur web et visitez votre nom de domaine local pour le serveur Grafana, tel que http://grafana.howtoforge.local/. Si votre configuration est réussie, vous serez redirigé vers la page de connexion de Grafana.

Connectez-vous avec votre utilisateur admin et votre mot de passe, puis cliquez sur Connexion pour confirmer.

grafana login

Vous devriez maintenant obtenir le tableau de bord admin de Grafana.

admin dashboard

Ajout d’une authentification au serveur Prometheus

Avant d’ajouter Prometheus à Grafana, vous allez configurer l’authentification de base pour Prometheus. Vous allez générer le mot de passe d’authentification de base avec apache2-utils, puis activer basic_auth pour le serveur Prometheus.

Dans cet exemple, Prometheus et Node Exporter sont installés sur des serveurs différents avec l’adresse IP 192.168.5.15 et le nom d’hôte prometheus.

Connectez-vous au serveur Prometheus et installez le paquet apache2-utils via la commande apt ci-dessous.

sudo apt install apache2-utils -y

install apache2-utils

Après cela, générez le nouveau mot de passe pour l’authentification de base de Prometheus. Saisissez votre mot de passe et copiez le mot de passe généré dans vos notes.

htpasswd -nB promadmin

generate password

Maintenant, créez une nouvelle configuration Prometheus /etc/prometheus/web.yml en utilisant la commande de l’éditeur nano suivante.

sudo nano /etc/prometheus/web.yml

Ajoutez la configuration suivante pour sécuriser le tableau de bord d’administration de Prometheus avec le module basic_auth.

# basic_auth  
basic_auth_users:  
  promadmin: $2y$05$UlvHd4An.oQRt2UdUXzr9eZ6ShRLe3xYbMhw8ePfvGeLuu0khO4Bu

Enregistrez et fermez le fichier une fois terminé.

Ensuite, ouvrez la configuration par défaut de Prometheus /etc/prometheus/prometheus.yml en utilisant la commande de l’éditeur nano suivante.

sudo nano /etc/prometheus/prometheus.yml

Ajoutez la configuration basic_auth ci-dessous dans le travail Prometheus. Assurez-vous de changer les détails de l’utilisateur et du mot de passe avec vos données.

scrape_configs:  
  # Le nom du travail est ajouté comme une étiquette `job=` à toute série temporelle extraite de cette configuration.  
  - job_name: "prometheus"  
  
    # metrics_path par défaut à '/metrics'  
    # scheme par défaut à 'http'.  
    # Ajoutez des paramètres pour le certificat et l'authentification  
scheme: http  
basic_auth:  
  username: 'promadmin'  
  password: 'password'

Enregistrez et fermez le fichier lorsque vous avez terminé.

add basic_auth

Ensuite, exécutez la commande suivante pour modifier le fichier de service prometheus.

sudo systemctl edit --full prometheus

Changez l’option ExecStart par défaut avec ce qui suit.

ExecStart=/usr/bin/prometheus --config.file=/etc/prometheus/prometheus.yml --web.config.file=/etc/prometheus/web.yml

Enregistrez et fermez le fichier une fois terminé.

Maintenant, exécutez la commande systemctl suivante pour recharger le gestionnaire systemd et appliquer les modifications. Ensuite, redémarrez le service prometheus.

sudo systemctl daemon-reload  
sudo systemctl restart prometheus

Vérifiez le service prometheus en utilisant la commande ci-dessous.

sudo systemctl status prometheus

Dans la section ExecStart, la commande a changé comme suit.

check prometheus

Enfin, ouvrez votre navigateur web et visitez l’adresse IP de Prometheus avec le port 9090 (c’est-à-dire : http://192.168.10.15:9090/). Vous serez invité à entrer l’authentification de base de Prometheus, saisissez votre utilisateur admin et votre mot de passe, puis cliquez sur Se connecter.

login prometheus

Si votre configuration est réussie, vous devriez voir le tableau de bord Prometheus comme suit.

prometheus dashboard

Intégration de Prometheus avec le tableau de bord Grafana

Après avoir configuré l’authentification de base sur Prometheus, vous pouvez ajouter Prometheus comme source de données au tableau de bord Grafana. Il y a deux étapes que vous devez compléter : ajouter Prometheus comme source de données et ensuite importer ou créer un tableau de bord Grafana pour la surveillance de votre système.

Ajout de la source de données Prometheus

Retournez au tableau de bord Grafana, cliquez sur le menu Connexions, et sélectionnez Source de données.

connection data source

Cliquez sur Ajouter une source de données pour continuer.

add data source

Sélectionnez la base de données de séries temporelles Prometheus.

add prometheus data source

Saisissez le nom de la nouvelle source de données et l’hôte Prometheus à http://192.168.5.15:9090/. Dans la section Authentification, sélectionnez Authentification de base et saisissez le nom d’utilisateur et le mot de passe pour Prometheus.

setup prometheus data source

Faites défiler vers le bas et cliquez sur Enregistrer et tester pour confirmer. La sortie ‘Successfully queried the Prometheus API.‘ confirme que Prometheus a été ajouté à Grafana.

add prometheus

Importation du tableau de bord de surveillance

Cliquez sur le menu + en haut à droite et sélectionnez Importer le tableau de bord.

import database

Trouvez votre tableau de bord souhaité sur https://grafana.com/grafana/dashboards/. Ensuite, copiez et collez l’ID du tableau de bord, et cliquez sur Charger pour confirmer. Dans ce cas, nous utiliserons l’ID du tableau de bord 15172.

load dashboard

Saisissez le nom du tableau de bord et sélectionnez la source de données Prometheus. Ensuite, cliquez sur Importer pour confirmer.

import dashboard

Voici un exemple du tableau de bord Grafana amélioré avec Prometheus pour surveiller le système.

dashboard imported

Vous avez maintenant installé avec succès Grafana sur un serveur Debian 12 avec Nginx comme proxy inverse, ajouté Prometheus comme source de données à Grafana, et importé le tableau de bord Grafana pour la surveillance du système.

Share: X/Twitter LinkedIn

Recevez de nouveaux articles dans votre boîte de réception.

Aucun spam. Désabonnez-vous à tout moment.