Dans un article précédent, je vous présentais une solution pour superviser un serveur VMware ESX(i). Elle reposait sur l’utilisation du plugin Nagios check_esx3.pl de la société OP5.
A l’aide du client vSphere, il est possible d’obtenir la consommation d’un serveur VMware ESX(i) (test effectué avec un serveur Dell PowerEdge R710).
Cette donnée de performance ne pouvait pas être mesurer avec le plugin Nagios check_esx3.pl. J’ai donc décidé d’implémenter cette fonctionnalité.
– Placez-vous dans le répertoire suivant : cd /usr/local/src/
– Téléchargez le plugin Nagios : wget "http://git.op5.org/git/?p=nagios/op5plugins.git;a=blob_plain;f=check_esx3.pl" -O check_esx3.pl
– Téléchargez le patch pour prendre en compte la consommation des serveurs VMWare ESX(i) : wget http://www.be-root.com/downloads/nagios/check_esx3/0001-check_esx3.pl-Added-power-consumption.patch
– Appliquez le patch sur le plugin check_esx3.pl : patch < 0001-check_esx3.pl-Added-power-consumption.patch
Ce patch a été récemment soumis à la liste de diffusion des utilisateurs OP5 pour intégrer le plugin check_esx3.pl. Je n’ai pas encore eu de réponse pour le moment.
– Copiez ce script dans le répertoire contenant les plugins Nagios : cp check_esx3.pl /usr/local/nagios/libexec/
– Rendez le script exécutable : chmod +x /usr/local/nagios/libexec/check_esx3.pl
– Modifiez le propriétaire pour ce script : chown nagios:nagios /usr/local/nagios/libexec/check_esx3.pl
– Vérifiez la consommation d’un serveur VMware ESX(i) : /usr/local/nagios/libexec/check_esx3.pl -H xxx.xxx.xxx.xxx -u supervision -p MotDePasse -l power -w 500 -c 600
CHECK_ESX3.PL OK - power=216.22 Watts | power=216.22W;500;600
– Ajoutez la définition de l’objet command : vi /etc/nagios/objects/commands.cfg
define command { command_name check_esx_power command_line $USER1$/check_esx3.pl -H $HOSTADDRESS$ -u $USER2$ -p $USER3$ -l power -w $ARG1$ -c $ARG2$ }
– Ajoutez la définition de l’objet host pour le serveur : vi /etc/nagios/objects/hosts.cfg
define host { host_name server01 use generic_host alias VMware ESXi address xxx.xxx.xxx.xxx contact_groups +admin }
– Ajoutez la définition de l’objet service pour le serveur : vi /etc/nagios/objects/services.cfg
define service { host_name server01 use generic_service service_description Puissance check_command check_esx_power!917!966 contact_groups +admin }
– Rechargez la configuration de Nagios : service nagios reload
La configuration de Nagios dépend bien entendu de la structure que vous avez adopté.