Outils pour utilisateurs

Outils du site


software:applications:prometheus:installation_docker

Installer Prometheus via Docker

Tester l'image

On peut rapidement tester le fonctionnement d'un serveur Prometheus avec la commande:

docker run --rm --detach --name promtest -p 9090:9090 prom/prometheus:v2.29.0

La commande ci-dessus se charge de télécharger l' image et de créer un conteneur avec une configuration simple. Le service est exposé sur le port 9090.

Prometheus expose lui même des métriques consultables à l'URL http://localhost:9090/metrics

Intégration docker-compose

Ci-dessous un exemple de définition d'un service via docker-compose

# creation du répertoire dédié au service
$ mkdir -p prometheus/conf
 
# Extraction de la configuration par défaut d'un conteneur jetable
$ docker container run --rm --detach --name promtest -p 9090:9090 prom/prometheus:v2.29.0
$ docker cp promtest:/etc/prometheus/prometheus.yml prometheus/conf  
$ docker container stop promtest

Création d'un volume distinct pour le stockage des données:

$ docker volume create prometheus_data

Création d'un réseau dédié:

$ docker network create vnet-prometheus
dc-prometheus.yml
version: "3.3"

networks:
  vnet-prometheus:
    external:
      name: vnet-prometheus

volumes:
  prometheus_data:
    external: true
 

services:
  prometheus:
    image: prom/prometheus:v2.29.0
    restart: unless-stopped
    ports:
      - 9090:9090
    environment: {}
    networks:
      - vnet-prometheus
    volumes:
      - type: bind
        source: $PWD/prometheus/conf/prometheus.yml
        target: /etc/prometheus/prometheus.yml
        read_only: true
      # Volume de stockage indépendant pour les données 
      - type: volume
        source: prometheus_data
        target: /prometheus
        read_only: false

Pour lancer le service:

$ docker-compose -f dc-prometheus.yml up -d prometheus

A ce stade, le service est fonctionnel. Le fichier de configuration minimal est éditable directment dans ./prometheus/conf/prometheus.yml. Le serveur Prometheus exporte et enregistre ses propres métriques.

Pour arrêter le service:

$ docker-compose -f dc-prometheus.yml down

Les options

Lors du lancement de Prometheus, de nombreuses options peuvent être définies sur la ligne de commande. Pour visualiser l'état des options consulter la page

Période de rétention

Par défaut la période de rétention des données est de 15 jours. Cette période peut être modifiée via l'option --storage.tsdb.retention. Dans l'extrait ci-dessous le docker-compose utilise l'option pour redéfinir la période de rétention par défaut:

version: "3.3"
...
services:
  prometheus:
    image: prom/prometheus:v2.29.0
    restart: unless-stopped
    ports: []
    environment: {}
    command:
      - "--config.file=/etc/prometheus/prometheus.yml"
      - "--storage.tsdb.path=/prometheus"
      - "--web.console.libraries=/usr/share/prometheus/console_libraries"
      - "--web.console.templates=/usr/share/prometheus/consoles"
      - "--web.enable-admin-api"
      - "--storage.tsdb.retention=90d"

Références

software/applications/prometheus/installation_docker.txt · Dernière modification : 2023/02/14 18:07 de yoann