Utilisation de LibreNMS et Proxmox

Billet posté le 19 nov. 2022

LibreNMS et Proxmox ?

Depuis quelques années j’utilise cet hyperviseur appelé Proxmox. Honnêtement, j’en suis très content et ça fait ce que je veux. Globalement, je créé des machines virtuelles dessus et j’héberge des services à la maison.

J’utilise aussi LibreNMS depuis de nombreuses années. Il me sert principalement à grapher mes interfaces réseaux, RAM et CPU. Le souci c’est que je ne graphais que le serveur physique mais pas du tout les machines virtuelles. Par hasard en trainant un peu sur la nain ternet j’ai tapé “proxmox librenms” et j’ai vu qu’il existait une app pour. Dans la suite de cet article nous expliquerons comment grapher les interfaces réseaux des machines virtuelles tournant sous Proxmox.

Depuis l’interface web de LibreNMS vous allez choisir un device :

  • Devices ;
  • All Devices ;
  • Server ;
  • Choisir un serveur parmis la liste ;
  • cliquer sur l’engrenage (appelé aussi edit) ;
  • choisir “Applications” ;
  • dans la liste qui s’ouvre, choisir “Proxmox” en cliquant sur le bouton pour l’activer.

C’est tout ? Non, c’est tout au niveau de l’interface web de LibreNMS.

Ensuite, je me suis basé sur la documentation officielle de LibreNMS : https://docs.librenms.org/Extensions/Applications/#proxmox. Ce qui suit ci-dessous n’est finalement qu’une traduction en français de la page web.

L’ensemble des commandes ci-dessous est à faire sur l’hyperviseur Proxmox en tant qu’utilisateur root.

Tout d’abord assurez-vous d’avoir la bonne lib perl pour discuter avec Proxmox :

apt-get install libpve-apiclient-perl

Ensuite nous procédons au téléchargement de l’agent Proxmox :

wget https://raw.githubusercontent.com/librenms/librenms-agent/master/agent-local/proxmox -O /usr/local/bin/proxmox

Nous modifions les permissions sur ce script afin de le rendre exécutable :

chmod 755 /usr/local/bin/proxmox

Ensuite nous modifions le fichier de configuration du service snmpd soit /etc/snmp/snmpd.conf pour y ajouter la ligne ci-dessous :

extend proxmox /usr/bin/sudo /usr/local/bin/proxmox

Bien penser à redémarrer le service snmpd :

systemctl restart snmpd

On en profite aussi pour vérifier qu’il est bien redémarré :

systemctl status snmpd

Enfin, la dernière étape consiste à ajouter un bout de configuration sudo. Dans l’exemple j’utilise la distribution Debian donc cela est à adapter pour les autres distributions / OS. Nous lançons la commande visudo afin d’y ajouter l’extrait suivant :

Debian-snmp ALL=(ALL) NOPASSWD: /usr/local/bin/proxmox

Maintenant vous pouvez revenir sur l’interface web de LibreNMS et sur le device où vous avez ajouté l’application Proxmox vous devriez voir les noms des différentes machines virtuelles apparaître. Qu’est-ce que cela donne dans mon cas ?

LibreNMS et Proxmox

Plutôt sympa, non ?