Files
2026-06-09 18:40:21 +02:00

5.0 KiB


title: Prometheus created: 2026-06-06 updated: 2026-06-06 type: app tags: [catalogue, monitoring, observability, time-series, kubernetes, go] confidence: high contested: false sources: [https://selfh.st/apps/?tag=Monitoring, https://github.com/prometheus/prometheus]

📊 Prometheus

Le standard industriel pour la collecte et le stockage de métriques time-series. Indispensable pour Kubernetes et microservices.

📋 Informations Générales

Champ Valeur
Site web prometheus.io
GitHub prometheus/prometheus
License Apache-2.0
Langage Go
Étoiles GitHub 64k
Dernière MAJ 2026-06-05
Catégorie [[cat-monitoring

📝 Description

Prometheus est un système de monitoring time-series conçu pour la fiabilité et la scalabilité. Utilisé par des milliers d'entreprises.

Caractéristiques :

  • Modèle pull : Prometheus scrape les endpoints HTTP /metrics
  • Time series database haute performance
  • PromQL : langage de query puissant
  • Alertmanager : gestion des alertes
  • Multi-dimensional : labels sur les métriques
  • Service discovery : auto-découverte des cibles (K8s, Consul, etc.)
  • Storage : local (filesystem) ou remote
  • Federation : Prometheus qui scrape d'autres Prometheus

Public cible : production, microservices, Kubernetes, équipes DevOps.

Inconvénient : complexe à mettre en place, pas de GUI native (utiliser Grafana).

🚀 Installation

Option 1 : Docker Compose (avec Grafana et Node Exporter)

# docker-compose.yml
version: '3.8'
services:
  prometheus:
    image: prom/prometheus:latest
    container_name: prometheus
    restart: unless-stopped
    volumes:
      - ./prometheus.yml:/etc/prometheus/prometheus.yml
      - prometheus-data:/prometheus
    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'
    ports:
      - "9090:9090"

  grafana:
    image: grafana/grafana:latest
    container_name: grafana
    restart: unless-stopped
    ports:
      - "3000:3000"
    volumes:
      - grafana-data:/var/lib/grafana
    environment:
      - GF_SECURITY_ADMIN_USER=admin
      - GF_SECURITY_ADMIN_PASSWORD=***

  node-exporter:
    image: prom/node-exporter:latest
    container_name: node-exporter
    restart: unless-stopped
    ports:
      - "9100:9100"
    volumes:
      - /proc:/host/proc:ro
      - /sys:/host/sys:ro
      - /:/rootfs:ro

volumes:
  prometheus-data:
  grafana-data:

Option 2 : Configuration (prometheus.yml)

# prometheus.yml
global:
  scrape_interval: 15s

scrape_configs:
  - job_name: 'prometheus'
    static_configs:
      - targets: ['localhost:9090']

  - job_name: 'node'
    static_configs:
      - targets: ['node-exporter:9100']

  - job_name: 'docker'
    static_configs:
      - targets: ['cadvisor:8080']

⚙️ Configuration Initiale

  1. Lancer la stack (Docker Compose ci-dessus)
  2. Accéder à Prometheus : http://IP:9090
  3. Tester une query : up (retourne 1 si scrape OK, 0 sinon)
  4. Accéder à Grafana : http://IP:3000 (admin/admin)
  5. Ajouter Prometheus comme data source : http://prometheus:9090
  6. Importer un dashboard : Dashboards > Manage > Import > ID 1860 (Node Exporter Full)

🔄 Alternatives

Open Source

  • app-netdata — Pour visualisation temps réel
  • app-glances — Plus simple
  • VictoriaMetrics — TSDB compatible Prometheus, plus performant
  • InfluxDB + Telegraf — Alternative TSDB

Comparaison Prometheus vs autres

Critère Prometheus InfluxDB VictoriaMetrics
Modèle Pull Push Pull
Query language PromQL InfluxQL / Flux PromQL
Ecosystem Énorme Grand Compatible Prom
Performance
Cloud-native ⚠️
Kubernetes Standard ⚠️

Verdict : Prometheus pour le standard. VictoriaMetrics si vous avez énormément de métriques.

Propriétaires (ce que Prometheus remplace)

  • Datadog ($15+/host/mois)
  • New Relic (cher)
  • Dynatrace (cher)
  • Wavefront (VMware, cher)

🔐 Sécurité

  • Auth basique ou OAuth sur Prometheus UI
  • TLS pour les scrape configs
  • Grafana : SSO, RBAC
  • Alertmanager : auth + TLS

📚 Ressources

Pages Liées