Systèmes d'exploitation

On veut collecter des métriques systèmes (CPU, RAM, disque, réseau, etc.) sur les différentes machines virtuelles et physiques. Pour cela on va utiliser le Prometheus Node Exporter, qui est un exporter officiellement maintenu par Prometheus et qui exporte une très grande quantité de métriques système.

Pour installer le node_exporter, on fait simplement

snippet.bash
apt-get install prometheus-node-exporter

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

Si on souhaite une version plus récente de l’exporter que celle dans les repositories Debian (par exemple si on est encore sur Debian 9) on peut simplement remplacer le binaire (se trouvant de base dans /usr/bin/prometheus-node-exporter) par une version récupérées dans les Release github.

Le node-exporter va exposer des métriques sur le port 9100 de la machine. Ceci signifie que n’importe qui peut récupérer les métriques du serveur. Il est donc nécessaire de configurer du filtrage pour n’autoriser que l’IP de notre serveur de monitoring.
Vérifier qu’UFW a bien été configuré.

Important:

Rajouter une règle sur un UFW non configuré bloquera entièrement l’accès au serveur ! Si la commande ufw status (en root) ne renvoie rien, alors UFW n’est pas configuré, il faut absolument le faire avant.

Ajouter la règle suivante :

snippet.bash
ufw allow proto tcp from <IPv4 monitoring> to any port 9100
ufw allow proto tcp from <IPv6 monitoring> to any port 9100

Du côté de vmagent, il faut ajouter une entrée dans le fichier de configuration Prometheus. Pour cela on va ajouter une entrée dans la section scrape_config du fichier :

snippet.yaml
scrape_configs:
  - job_name: 'pica01'
    static_configs:
    - targets: 
      - 'pica01.picasoft.net:9100'
    relabel_configs:
    - source_labels: [__address__]
      regex: '.*'
      target_label: instance
      replacement: 'pica01'

Note:

Le relabeling permet simplement d’éviter que le nom de domaine et que l’hôte se retrouvent dans le label instance : on ne garde que pica01.

Il suffit enfin de redémarrer vmagent sur la machine qui le fait tourner pour prendre en compte la nouvelle configuration. Le dashboard Grafana s’adapte automatiquement en proposant les machines ajoutées dans la configuration.

  • technique/adminsys/monitoring/collect/system_metrics.txt
  • de ppom