Prometheus logo

Documentation Utilisée

Préparation du système

1 - Mettre à jour le système

2 - Désactiver SELinux

sudo vim /etc/sysconfig/selinux
> "SELinux=disable"

3 - Relancer le système

sudo reboot

4 - Créer un utilisateur prometheus sans répertoire home. Il ne sera pas possible de se connecter en tant que prometheus

sudo useradd --no-create-home --shell /bin/false prometheus

5 - Créer un espace de travail où seront placés les fichiers de configuration

sudo mkdir /etc/prometheus
sudo mkdir /var/lib/prometheus

6 - Changer le propriétaire de ces dossiers

sudo chown prometheus:prometheus /etc/prometheus
sudo chown prometheus:prometheus /var/lib/prometheus

7 - Créer un dossier prometheus dans le /home/[USER] et s'y placer

mkdir prometheus
cd prometheus

Installation de Prometheus

1 - Télécharger l'archive depuis le dépôt

wget wget https://github.com/prometheus/prometheus/releases/download/v2.11.1/prometheus-2.11.1.linux-amd64.tar.gz

2 - Extraire cette archive dans le dossier courant (Prometheus)

tar -zxvf prometheus-2.11.1.linux-amd64.tar.gz

3 - Renommer le répertoire extrait pour faciliter la manipulation

mv prometheus-2.11.1.linux-amd64 prometheuspackage

4 - Copier les fichiers de configuration dans les bons répertoires

sudo prometheuspackage/prometheus /usr/local/bin/
sudo prometheuspackage/promtool /usr/local/bin/

sudo cp -r prometheuspackage/consoles /etc/prometheus
sudo cp -r prometheuspackage/console_libraries /etc/prometheus

5 - Changer le propriétaire de ces nouveaux fichiers

sudo chown prometheus:prometheus /usr/local/bin/prometheus
sudo chown prometheus:prometheus /usr/local/bin/promtool

sudo chown -R prometheus:prometheus /etc/prometheus/consoles
sudo chown -R prometheus:prometheus /etc/prometheus/console_libraries

Configuration de Prometheus

1 - Créer le [fichier de configuration] (/conf-prometheus/) et ajouter le module prometheus-master.
Cette partie sera à modifier à chaque fois que l'on voudra monitorer un nouveau module. (Par exemple: Grafana, Node-Exporter,...)

sudo vi /etc/prometheus/prometheus.yml
> global:
scrape_interval: 10s
scrape_configs:
  - job_name: 'prometheus_master'
    scrape_interval: 5s
    static_configs:
      - targets: ['localhost:9090']

2 - Changer le propriétaire du fichier

sudo chown prometheus:prometheus /etc/prometheus/prometheus.yml

3 - Éditer le fichier Prometheus Service, pour indiquer les chemins d'accès aux fichiers de configuration

sudo vi /etc/systemd/system/prometheus.service
> [Unit]
  Description=Prometheus
  Wants=network-online.target
  After=network-online.target

  [Service]
  User=prometheus
  Group=prometheus
  Type=simple
  ExecStart=/usr/local/bin/prometheus \
  --config.file /etc/prometheus/prometheus.yml \
  --storage.tsdb.path /var/lib/prometheus/ \
  --web.console.templates=/etc/prometheus/consoles \
  --web.console.libraries=/etc/prometheus/console_libraries

  [Install]
  WantedBy=multi-user.target

4 - Recharger le service

sudo systemctl daemon-reload

5 - Autoriser Prometheus au démarrage du système et le démarrer

sudo systemctl enable prometheus
sudo systemctl start prometheus

6 - Ouvrir le port au niveau du pare-feu et le redémarrer

sudo firewall-cmd --zone=public --add-port=9090/tcp --permanent
sudo systemctl reload firewalld

Fichier de configuration

Fichier de configuration de Prometheus