Le but de l’article est de proposer une supervision avec Centreon des machines virtuelles KVM sous Proxmox.
Le plugin pve-monitor
pve-monitor est un plugin Nagios de supervision de clusters Proxmox. Il permet une supervision des services via l’API de PVE afin d’obtenir une vision claire de l’état du cluster.
Actuellement, le plugin est capable de superviser les éléments suivants:
- Machine virtuelles KVM,
- Conteneurs LXC et OpenVZ
- Espaces de stockage local et distant
- hyperviseurs
Dans mon cas, je souhaite seulement superviser mes machines virtuelles KVM, car les hyperviseurs et le stockage sont déjà superviser par Centreon.
L’installation de pve-monitor est réalisée dans le répertoire suivant : /home/centreon/
Installation des prés-requis sur le serveur Centreon pour pve-monitor
- Centos 6.8 :
yum install perl-CPAN perl-JSON perl-libwww-perl perl-IO-Socket-SSL perl-YAML
apt install git libjson-perl libwww-perl libio-socket-ssl-perl libswitch-perl
Installer le module Perl proxmox-ve-api-perl
- Centos 6.8 :
cpan Net::Proxmox::VE
Debian 8 :
cpan install Net::Proxmox::VE
Installation de pve-monitor
- Clonage :
git clone https://github.com/dpiquet/pve-monitor.git
/usr/lib/nagios/plugins/
:cd pve-monitor cp pve-monitor.pl /usr/lib/nagios/plugins/
Configuration de pve-monitor
- Configuration du fichier
pve-monitor.conf
(à faire pour tous les noeuds Proxmox sauf ceux qui sont en cluster) :
nano pve-monitor.conf
##configuration du nœud proxmox node proxmox-01 { address 10.8.8.216 port 8006 # Optional, default is 8006 monitor_account root monitor_password SuperMDPd3laMort realm pam # Optional, default is pam mem 80 90 # optional, not monitored if not defined cpu 80 95 # optional disk 80 90 # optional } ##Configuration des VMs, attention faut indiquer le nom de la VM et non son numéro d'ID ! et autant de fois qu'il y a de VM qemu centreon { mem 80 90 cpu 80 95 disk 80 90 } qemu fog { mem 80 90 cpu 80 95 disk 80 90 } ##Configuration du stockage storage deb-nfs-01 { disk 80 90 node proxmox-01 }
- Supervision des VMs :
/usr/lib/nagios/plugins/pve-monitor.pl --conf pve-monitor.conf --qemu
centreon (proxmox-01) OK : cpu OK (0.23%), mem OK (33.28%), disk OK (0.00%) uptime 233584 fog (pve-02) OK : cpu OK (1.24%), mem WARNING (81.25%), disk OK (0.00%) uptime 20350
Ici la VM fog est gérée par le 2ème nœud Proxmox.
/usr/lib/nagios/plugins/pve-monitor.pl --conf pve-monitor.conf --storages
deb-nfs-01 (proxmox-01) OK : disk 51.26%
Stockage commun aux deux nœuds Proxmox.
Configuration de pve-monitor dans Centreon
Exemple de configuration simple du plugin pve-monitor dans Centreon :
Plop, as-tu testé zabbix ? Moins sexy que centreon, mais je dirais que tu as plus rapidement toutes les cheks/metrics et les seuils sont déjà plutôt bien réglés ^^.
Salut Hayou,
oui j’ai aussi testé Zabbix mais il est trop usine à gaz et beaucoup moins sexy que Centreon…
Salut,merci pour ton tuto.
Pourquoi le disk est OK (0,00%) toujours alors que l’on utilise ?
J’ai une erreur : Could not connect to any server !
Pourtant j’ai bien préciser le nom de mon node tel qu’il apparait dans mon menu proxmox sous Datacenter.
J’ai préciser le compte et mdp root.
Et pour le quemi mit le nom de la VM et non son ID.
Bonjour,
Je ne comprends pas ce commentaire : « (à faire pour tous les noeuds Proxmox sauf ceux qui sont en cluster) »
Comment fait-on avec un cluster ?
Visiblement je me retrouve obligé de déclarer tous mes noeuds sinon, bien il ne check qu’un seul noeud.
Pareil pour la partie « storages », on est obligé de définir un node, mais dans le cas d’un volume RBD par exemple, il est présent sur tous les nodes, si le node qui est déclaré dans la conf est down, alors je vais avoir une alarme comme quoi le volume est down ?
Cordialement,
Mick