technique:monitoring:metrics:prometheus

Métriques système

On veut collecter des métriques systèmes sur les différentes machines virtuelles. Pour cela on utilise Prometheus. Le fonctionnement de Prometheus est simple : un serveur va collecter régulièrement des métriques auprès de plusieurs exporters. Par exemple pour exporter des métriques systèmes, on utilise un node_exporter que l’on installe sur la machine, et on configure le serveur Prometheus (distant potentiellement) pour scraper cet exporter régulièrement.

Pour installer le node_exporter, on fait simplement apt-get install prometheus-node-exporter

On peut vérifier que le service est bien activé et fonctionne avec systemctl status prometheus-node-exporter

Sur le serveur monitoring de Picasoft, on déploie un conteneur Prometheus. On ajoute la configuration Docker Compose suivante :

snippet.yaml
  prometheus:
    image: "prom/prometheus:v2.14.0"
    container_name: prometheus
    links:
      - grafana
    volumes:
      - "/DATA/docker/prometheus/config:/etc/prometheus"
      - "/DATA/docker/prometheus/data:/prometheus"
    restart: always

On créé ensuite un fichier de configuration /DATA/docker/prometheus/config/prometheus.yml pour scrapper les métriques d’un serveur.

snippet.yaml
# my global config
global:
  scrape_interval:     1m # Set the scrape interval to every 1 minute
  evaluation_interval: 1m # Evaluate rules every 1 minute
scrape_configs:
  - job_name: 'pica01'
    static_configs:
    - targets: 
      - 'pica01.picasoft.net:9100'
    relabel_configs:
    - source_labels: [__address__]
      regex: '.*'
      target_label: instance
      replacement: 'pica01'

Enfin, on donne les droits qui vont bien aux fichiers de Prometheus et on le redémarre:

snippet.bash
chown -R 65534:65534 /DATA/docker/prometheus/*
docker restart prometheus
  • technique/monitoring/metrics/prometheus.1584481890.txt.gz
  • de 127.0.0.1