Sommaire
Nous allons voir dans cet article comment mettre en plas la supervision VMware ESXi afin d’assurer le bon fonctionnement des machines virtuelles et éviter les pannes. Comme d’habitude, nous allons utiliser Centreon et Centreon Plugins Packs pour la supervision ainsi que le module Centreon-vmware.
Ce qu’il vous faut :
- Centreon Server + Centreon Plugin Packs : installation-complete-centreon-2-8-26
- Centreon Plugin Packs : centreon-plugins-monitoring/
- Module Centreon-vmware : centreon-vmware
- SDK Perl VMWare 6.7.0 : VMware-vSphere-Perl-SDK-6.7.0-8156551.x86_64
- VSAN Perl SDK 6.7.0 : sdk/6.7.0/vsan-perl (build : 7917176)
Infrastructure requise :
- VMware ESXi 6.x : esxi-6-7 – installation-de-vmware-esxi-6-0/
- VMware vSphere Web Client : installation-vmware-vcenter-server/
Documentation Centreon :
- Installation SDK et Centreon-vmware : RHEL5/6/Debian Wheezy
- Centreon-vmware : github.com/centreon
UPDATE #1 : SUPERVISION VIA CENTREON WEB
UPDATE #2 : CENTREON 19.04.3 | VMWARE PERL SDK 6.7 | CENTREON_VMWARE 3.0.0
UPDATE #3 : CENTREON 19.10.4 | VMWARE PERL SDK 6.7 | CENTREON_VMWARE 3.1.0 | VSAN SDK PERL 6.7
Install VMware Perl SDK
Pour fonctionner correctement, le connecteur Centreon-VMware utilise VMware vSphere Perl SDK. Téléchargez la bonne version (64bits) selon vos serveurs ESXi sur le site VMware et transférez le fichier sur votre serveur Centreon.
Remarque : je n’ai rien installé sur le serveur Centreon. Lors de l’installation du connecteur VMware et SDK Perl, nous allons surement rencontrer des erreurs de dépendances et nous verrons comment les résoudre.
J’ai transféré le fichier dans le répertoire /tmp :
[root@centreon ~]# cd /tmp/ [root@centreon tmp]# chmod 775 VMware-vSphere-Perl-SDK-6.7.0-8156551.x86_64.tar.gz [root@centreon tmp]# tar xvf VMware-vSphere-Perl-SDK-6.7.0-8156551.x86_64.tar.gz [root@centreon tmp]# [root@centreon tmp]# cd vmware-vsphere-cli-distrib/
[root@centreon vmware-vsphere-cli-distrib]# ll total 100 drwxr-xr-x 10 root root 124 2 avril 11:09 apps drwxr-xr-x 2 root root 4096 2 avril 11:09 bin drwxr-xr-x 3 root root 89 2 avril 11:09 doc drwxr-xr-x 2 root root 26 2 avril 11:09 etc -r--r--r-- 1 root root 93828 2 avril 11:09 FILES drwxr-xr-x 9 root root 94 2 avril 11:09 lib -r--r--r-- 1 root root 3340 2 avril 11:09 Makefile.PL drwxr-xr-x 2 root root 23 2 avril 11:09 man drwxr-xr-x 2 root root 87 2 avril 11:09 resources lrwxrwxrwx 1 root root 35 2 avril 11:09 vmware-install.pl -> bin/vmware-uninstall-vSphere-CLI.pl
Lancez l’installation :
[root@centreon vmware-vsphere-cli-distrib]# ./vmware-install.pl
- Appuyez sur Entrée 2x
- Défiler la licence avec la barre Espace
- Acceptez la licence : yes
Ne pas tenir compte des erreurs WARNING
Erreur 1 :
- Can’t locate Module/Build.pm
- Module : ExtUtils::MakeMaker, Version: 6.96
- Module : Module::Build, Version: 0.4205
Do you accept? (yes/no) yes Thank you. WARNING: The http_proxy environment variable is not set. If your system is using a proxy for Internet access, you must set the http_proxy environment variable . If your system has direct Internet access, you can ignore this warning . WARNING: The ftp_proxy environment variable is not set. If your system is using a proxy for Internet access, you must set the ftp_proxy environment variable . If your system has direct Internet access, you can ignore this warning . Please wait while configuring CPAN ... # Can't locate Module/Build.pm in @INC (@INC contains: /usr/local/lib64/perl5 /usr/local/share/perl5 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5 .). BEGIN failed--compilation aborted. Below mentioned modules with their version needed to be installed, these modules are available in your system but vCLI need specific version to run properly Module: ExtUtils::MakeMaker, Version: 6.96 Module: Module::Build, Version: 0.4205 # Do you want to continue? (yes/no) no
Il faut annuler l’installation et résoudre d’abord le problème.
Installez les packages suivants :
[root@centreon ~]# yum install perl-libwww-per perl-XML-LibXML perl-Class-MethodMaker perl-Crypt-SSLeay perl-SOAP-Lite perl-UUID perl-ZMQ-LibZMQ3
[root@centreon ~]# yum install gcc gcc-c++
Installez ensuite ce module Perl
[root@centreon ~]# yum install perl-Module-Build.noarch
Installation : perl-Module-Build noarch 2:0.40.05-2.el7 base 281 k Installation pour dépendances : perl-CPAN-Meta noarch 2.120921-5.el7 base 113 k perl-CPAN-Meta-Requirements noarch 2.122-7.el7 base 24 k perl-CPAN-Meta-YAML noarch 0.008-14.el7 base 24 k perl-ExtUtils-CBuilder noarch 1:0.28.2.6-292.el7 base 67 k perl-IPC-Cmd noarch 1:0.80-4.el7 base 34 k perl-JSON-PP noarch 2.27202-2.el7 base 55 k perl-Locale-Maketext-Simple noarch 1:0.21-292.el7 base 50 k perl-Module-CoreList noarch 1:2.76.02-292.el7 base 85 k perl-Module-Load noarch 1:0.24-3.el7 base 11 k perl-Module-Load-Conditional noarch 0.54-3.el7 base 18 k perl-Module-Metadata noarch 1.000018-2.el7 base 26 k perl-Params-Check noarch 1:0.38-2.el7 base 18 k perl-Parse-CPAN-Meta noarch 1:1.4404-5.el7 base 14 k perl-Perl-OSType noarch 1.003-3.el7 base 20 k perl-version x86_64 3:0.99.07-3.el7 base 84 k Résumé de la transaction ============================================================================================================================= Installation 1 Paquet (+15 Paquets en dépendance) Taille totale des téléchargements : 926 k Taille d'installation : 2.1 M # Is this ok [y/d/N]: y
Si vous relancez l’installation, il n’y a plus d’erreur. Cependant, nous avons toujours un problème de version avec certains module Perl.
- Module : ExtUtils::MakeMaker, Version: 6.96
- Module : Module::Build, Version: 0.4205
On peut vérifier les versions déjà installées par défaut. Ouvrir le Shell CPAN
[root@centreon vmware-vsphere-cli-distrib]# cpan Terminal does not support AddHistory. cpan shell -- CPAN exploration and modules installation (v1.9800) Enter 'h' for help. cpan[1]#>
Vérifiez la version des deux modules :
cpan[1]#> i ExtUtils::MakeMaker Reading '/root/.cpan/Metadata' Database was generated on Sun, 22 Jul 2018 00:17:02 GMT Module id = ExtUtils::MakeMaker CPAN_USERID BINGOS (Chris Williams <chris@bingosnet.co.uk>) CPAN_VERSION 7.34 CPAN_FILE B/BI/BINGOS/ExtUtils-MakeMaker-7.34.tar.gz UPLOAD_DATE 2018-03-19 MANPAGE ExtUtils::MakeMaker - Create a module Makefile INST_FILE /usr/share/perl5/vendor_perl/ExtUtils/MakeMaker.pm # INST_VERSION 6.68 cpan[2]#> i Module::Build Module id = Module::Build CPAN_USERID LEONT (Leon Timmermans <fawaka@gmail.com>) CPAN_VERSION 0.4224 CPAN_FILE L/LE/LEONT/Module-Build-0.4224.tar.gz MANPAGE Module::Build - Build and install Perl modules INST_FILE /usr/share/perl5/vendor_perl/Module/Build.pm # INST_VERSION 0.4005 cpan[3]>
Mettez à jour les deux modules via CPAN Shell pour avoir la dernière version.
cpan[3]#> upgrade ExtUtils::MakeMaker
cpan[4]#> upgrade Module::Build
Installez également ces deux modules :
cpan[5]#> install YAML
cpan[6]#> install Time::Piece
Quittez le Shell CPAN : exit
Relancez l’installation :
[root@centreon vmware-vsphere-cli-distrib]# ./vmware-install.pl
Patientez …
In which directory do you want to install the executable files? [/usr/bin]
Laissez le répertoire par défaut et Entrée.
N’hésitez pas à mettre à jour les modules Perl sur l’image ci-dessus. Exemple pour mettre à jour le module Try::Tiny v 0.28
[root@centreon tmp]# cpan ... cpan[1]#> upgrade Try::Tiny Reading '/root/.cpan/Metadata' ... Package namespace installed latest in CPAN file Try::Tiny 0.12 0.30 ETHER/Try-Tiny-0.30.tar.gz Running install for module 'Try::Tiny' Running make for E/ET/ETHER/Try-Tiny-0.30.tar.gz ... ...
Installation Centreon-VMware
Passons maintenant à l’installation du connecteur Centreon-vmware sous le serveur Centreon.
Installer le connecteur VMWare :
[root@hd-centreon plugins]# yum install centreon-plugin-Virtualization-VMWare-daemon.noarch
Installer le client :
[root@centreon plugins]# yum install centreon-plugin-Virtualization-Vmware2-Connector-Plugin.noarch
Téléchargez le package depuis Github :
[root@centreon ~]# cd /tmp [root@centreon tmp]# git clone https://github.com/centreon/centreon-vmware.git Cloning into 'centreon-vmware'... remote: Counting objects: 1469, done. remote: Total 1469 (delta 0), reused 0 (delta 0), pack-reused 1469 Receiving objects: 100% (1469/1469), 801.22 KiB | 565.00 KiB/s, done. Resolving deltas: 100% (922/922), done. [root@centreon tmp]#
[root@centreon tmp]# cd centreon-vmware/ [root@centreon centreon-vmware]# [root@centreon centreon-vmware]# ll total 36 drwxr-xr-x 4 root root 34 22 juil. 17:26 centreon -rw-r--r-- 1 root root 1451 22 juil. 17:26 centreon_vmware.pl -rw-r--r-- 1 root root 1562 22 juil. 17:26 changelog drwxr-xr-x 5 root root 48 22 juil. 17:26 contrib drwxr-xr-x 4 root root 26 22 juil. 17:26 doc -rw-r--r-- 1 root root 11358 22 juil. 17:26 LICENSE -rw-r--r-- 1 root root 11357 22 juil. 17:26 LICENSE.txt -rw-r--r-- 1 root root 3462 22 juil. 17:26 README.md [root@centreon centreon-vmware]#
Exécutez ces commandes l’une après l’autre :
[root@centreon centreon-vmware]# cp centreon_vmware.pl /usr/bin/ [root@centreon centreon-vmware]# cp contrib/config/centreon_vmware-conf.pm /etc/centreon/centreon_vmware.pm [root@centreon centreon-vmware]# cp contrib/redhat/centreon_vmware-init /etc/init.d/centreon_vmware [root@centreon centreon-vmware]# cp contrib/redhat/centreon_vmware-sysconfig /etc/sysconfig/centreon_vmware [root@centreon centreon-vmware]# chmod 775 /etc/init.d/centreon_vmware /usr/bin/centreon_vmware.pl [root@centreon centreon-vmware]# [root@centreon centreon-vmware]# mkdir -p /usr/lib/perl5/vendor_perl/centreon/vmware/ /usr/lib/perl5/vendor_perl/centreon/script/ [root@centreon centreon-vmware]# cp centreon/vmware/* /usr/share/perl5/vendor_perl/centreon/vmware/ [root@centreon centreon-vmware]# cp centreon/script/centreon_vmware.pm /usr/share/perl5/vendor_perl/centreon/script/ [root@centreon centreon-vmware]# [root@centreon centreon-vmware]# chkconfig --level 2345 centreon_vmware on [root@centreon centreon-vmware]# [root@centreon centreon-vmware]# cp -R /usr/lib/centreon/plugins /usr/share/perl5/vendor_perl/centreon/
Activer le démarrage automatique :
[root@centreon centreon-vmware]# systemctl daemon-reload [root@centreon centreon-vmware]# systemctl enable centreon_vmware
Ajoutez les droits Centreon à ces deux fichiers :
[root@centreon plugins]# chmod 775 /var/log/centreon/centreon_vmware.log [root@centreon plugins]# chmod 775 /tmp/centreon_vmware/ [root@centreon plugins]# chown centreon: /var/log/centreon/centreon_vmware.log [root@centreon plugins]# chown centreon: /tmp/centreon_vmware/
Configuration de Centreon-VMware afin que l’on puisse se connecter sur le vCenter Server (vSphere Web Client) automatiquement.
Ouvrir le fichier de configuration et ajoutez-y les informations de votre vCenter Server.
[root@centreon centreon-vmware]# cd /etc/centreon
Éditez le fichier :
[root@centreon centreon]# nano centreon_vmware.pm
%centreon_vmware_config = ( vsphere_server => { 'default' => {'url' => 'https://172.16.1.7/sdk', 'username' => 'administrator@vpshere.local', 'password' => 'Pa$$w@rd'} } ); 1;
‘default’ = c’est le nom du container. Il est possible de le modifier et d’en rajouter d’autres vCenter à superviser dans ce fichier même.
Démarrer le service :
[root@centreon centreon]# systemctl start centreon_vmware
[root@hd-centreon plugins]# systemctl status centreon_vmware ● centreon_vmware.service - Centreon VMWare Loaded: loaded (/etc/systemd/system/centreon_vmware.service; enabled; vendor preset: disabled) Active: active (running) since sam. 2020-07-11 16:19:01 CEST; 2s ago Main PID: 22406 (perl) CGroup: /system.slice/centreon_vmware.service ├─22406 /usr/bin/perl /usr/bin/centreon_vmware.pl --logfile=/var/log/centreon/centreon_vmware.log --severity=error └─22413 /usr/bin/perl /usr/bin/centreon_vmware.pl --logfile=/var/log/centreon/centreon_vmware.log --severity=error juil. 11 16:19:01 hd-centreon.cg31.priv systemd[1]: Started Centreon VMWare. juil. 11 16:19:02 hd-centreon.cg31.priv perl[22406]: Cannot open file /var/log/centreon/centreon_vmware.log: est un dossier [root@hd-centreon plugins]#
Testez à l’aide de la commande suivante :
[root@centreon centreon]# /usr/bin/perl /usr/bin/centreon_vmware.pl --config=/etc/centreon/centreon_vmware.pm
Vous devez avoir quelque chose dans ce genre :
"my" variable $be masks earlier declaration in same statement at /usr/share/perl5/vendor_perl/centreon/vmware/cmdnethost.pm line 209. "my" variable $exit masks earlier declaration in same scope at /usr/share/perl5/vendor_perl/centreon/vmware/cmdnethost.pm line 271. 2018-07-22 19:31:04 - Create vsphere sub-process for 'default' 2018-07-22 19:31:04 - [Server accepting clients] 2018-07-22 19:31:04 - 'default' init begin 2018-07-22 19:31:04 - 'default' init done 2018-07-22 19:31:04 - 'default' Vsphere connection in progress 2018-07-22 19:31:05 - 'default' Vsphere connection ok 2018-07-22 19:31:05 - 'default' Create perf counters cache in progress 2018-07-22 19:31:05 - 'default' Create perf counters cache done
Ctrl + C pour arrêter.
Mise à jour Centreon-VMWare
Avec la dernière version des plugins packs centreon, vous allez avoir droit à l’erreur suivante :
UNKNOWN: response format incorrect - need connector vmware version >= 3.x.x
Il suffit de recommencer l’opération avec la dernière version du module Centreon-vmware en écrasant les anciennes fichiers. (Il faut donc re-télécharger le module centreon-vmware)
Remarque : pour écraser les fichiers d’un seul coup, utiliser la commande CP de cette manière : /bin/cp …
Redémarrer ensuite le service centreon_vmware :
[root@hd-centreon ]# systemctl start centreon_vmware [root@hd-centreon ]# systemctl status centreon_vmware ● centreon_vmware.service - Centreon VMWare Loaded: loaded (/etc/systemd/system/centreon_vmware.service; enabled; vendor preset: disabled) Active: active (running) since dim. 2020-07-12 10:15:33 CEST; 4s ago Main PID: 455 (perl) CGroup: /system.slice/centreon_vmware.service ├─455 /usr/bin/perl /usr/bin/centreon_vmware.pl --logfile=/var/log/centreon/centreon_vmware.log --severity=error └─462 /usr/bin/perl /usr/bin/centreon_vmware.pl --logfile=/var/log/centreon/centreon_vmware.log --severity=error juil. 12 10:15:33 hd-centreon.cg31.priv systemd[1]: Started Centreon VMWare. [root@hd-centreon ]#
Si vous avez l’erreur :
Cannot bind ipc '/tmp/centreon_vmware/routing.ipc': Adresse déjà utilisée
Ajoutez les droits Centreon à ces deux fichiers :
[root@centreon plugins]# chmod 775 /var/log/centreon/centreon_vmware.log [root@centreon plugins]# chmod 775 /tmp/centreon_vmware/ [root@centreon plugins]# chown centreon: /var/log/centreon/centreon_vmware.log [root@centreon plugins]# chown centreon: /tmp/centreon_vmware/
Passons maintenant à la supervision des serveurs ESXi.
Supervision VMware ESXi (CLI)
Getmap List ESXi
Avant de commencer, faisons un test pour vérifier le bon fonctionnement de notre installation. Nous allons lister les hôtes ESX et les machines virtuelles :
Depuis votre serveur Centreon :
[root@centreon ~]# cd /usr/lib/centreon/plugins
Lancez la commande suivante :
[root@centreon plugins]# ./centreon_plugins.pl --plugin=apps::vmware::connector::plugin --custommode=connector --connector-hostname=127.0.0.1 --container=default --mode=getmap
J’ai bien la liste :
List ESX host(s): vm-esxi.pixelabs.local [v6.7.0] : vcenter [poweredOff] [root@centreon plugins]#
Et c’est bien le cas :
A vous de jouer maintenant. Voici les modes disponibles :
[root@centreon plugins]# ./centreon_plugins.pl --plugin=apps::vmware::connector::plugin --list-mode Plugin Description: Check VMWare with centreon-vmware connector. Global Options: --mode Choose a mode. --dyn-mode Specify a mode with the path (separated by '::'). --list-mode List available modes. --mode-version Check minimal version of mode. If not, unknown error. --version Display plugin version. --custommode Choose a custom mode. --list-custommode List available custom modes. --multiple Multiple custom mode objects (some mode needs it). Modes Available: alarm-datacenter alarm-host countvm-host cpu-host cpu-vm datastore-countvm datastore-host datastore-io datastore-iops datastore-snapshot datastore-usage datastore-vm device-vm discovery getmap health-host limit-vm list-clusters list-datacenters list-datastores list-nichost maintenance-host memory-host memory-vm net-host service-host snapshot-vm stat-connectors status-host status-vm swap-host swap-vm thinprovisioning-vm time-host tools-vm uptime-host vmoperation-cluster [root@centreon plugins]#
Check-health-ESXi
[root@centreon plugins]# ./centreon_plugins.pl --plugin=apps::vmware::connector::plugin --custommode=connector --connector-hostname=127.0.0.1 --container=default --mode=health-host --esx-hostname='vm-esxi.pixelabs.local' ... OK: 'vm-esxi.pixelabs.local' 0 health checks are green | 'problems'=0;;;0;0 [root@centreon plugins]#
Check-status-ESXi
[root@centreon plugins]# ./centreon_plugins.pl --plugin=apps::vmware::connector::plugin --custommode=connector --connector-hostname=127.0.0.1 --container=default --mode=status-host --esx-hostname='vm-esxi.pixelabs.local' ... OK: 'vm-esxi.pixelabs.local' is OK | [root@centreon plugins]#
Check-datastore-usage
[root@centreon plugins]# ./centreon_plugins.pl --plugin=apps::vmware::connector::plugin --custommode=connector --connector-hostname=127.0.0.1 --container=default --mode=datastore-usage --datastore-name=datastore1 --warning-usage=80 --critical-usage=90 ... OK: Datastore 'datastore1' Total: 56.50 GB Used: 31.41 GB (55.59%) Free: 25.09 GB (44.41%) Provisioned: 34.58 GB (61.21%) | 'used'=33722204160B;0:48533130444;0:54599771750;0;60666413056 'provisioned'=37134115263B;;;0;60666413056 [root@centreon plugins]#
Check-memory-ESXi
[root@centreon plugins]# ./centreon_plugins.pl --plugin=apps::vmware::connector::plugin --custommode=connector --connector-hostname=127.0.0.1 --container=default --mode=memory-host --esx-hostname='vm-esxi.pixelabs.local' --warning-consumed-memory=80 --critical-consumed-memory=90 --sampling-period=20 ... OK: 'vm-esxi.pixelabs.local' Memory Total: 8.00 GB Used: 1.11 GB (13.86%) Free: 6.89 GB (86.14%), Memory state : high | 'used'=1190117376B;0:6871515136;0:7730454528;0;8589393920 'overhead'=0B;;;0; 'state'=0;;;0;3 [root@centreon plugins]#
Afficher de l’aide pour voir les options de seuil : ./centreon_plugins.pl --plugin=apps::vmware::connector::plugin --mode=memory-host --help
--sampling-period
: Choose the sampling period (can change the default sampling for counters). Should be not different than 300 or 20.
Check-status-vm
[root@centreon plugins]# ./centreon_plugins.pl --plugin=apps::vmware::connector::plugin --custommode=connector --connector-hostname=127.0.0.1 --container=default --mode=status-vm --vm-hostname=vcenter ... OK: 'vcenter' is OK | [root@centreon plugins]#
Check-CPU-ESXi
[root@centreon plugins]# ./centreon_plugins.pl --plugin=apps::vmware::connector::plugin --custommode=connector --connector-hostname=127.0.0.1 --container=default --mode=cpu-host --esx-hostname='vm-esxi.pixelabs.local' ... OK: 'vm-esxi.pixelabs.local' Total Average CPU usage '9.98%' on last 5 min | 'cpu_total'=9.98%;;;0;100 'cpu_total_MHz'=676.00MHz;;;0;6784 'cpu0'=8.57%;;;0;100 'cpu1'=11.38%;;;0;100 [root@centreon plugins]#
Check-net-host (traffic)
Check-traffic ESXi
[root@centreon plugins]# ./centreon_plugins.pl --plugin=apps::vmware::connector::plugin --custommode=connector --connector-hostname=127.0.0.1 --container=default --mode=net-host --esx-hostname='vm-esxi.pixelabs.local' --sampling-period=20 ... OK: 'vm-esxi.pixelabs.local' Interface 'vmnic0' Traffic In : 8.19Kb/s (0.00 %), Out : 0.00b/s (0.00 %), Packets In Dropped : 0.00 % (0/208 packets), Packets Out Dropped : 0.00 % (0/24 packets) | 'traffic_in'=8192.00b/s;;;0;1048576000 'traffic_out'=0.00b/s;;;0;1048576000 'packets_dropped_in'=0.00%;;;0;100 'packets_dropped_out'=0.00%;;;0;100 [root@centreon plugins]#
Check-VSAN-Cluster-Usage
Ce nouveau mode nécessite la mise à jour de Centreon_vmware vers la dernière version (3.1.0 à ce jour) et l’installation du package VSAN Perl SDK 6.7+. Sinon, vous allez vous retrouver avec l’erreur suivante :
[root@centreon plugins]# ./centreon_plugins.pl --plugin=apps::vmware::connector::plugin --custommode=connector --connector-hostname=127.0.0.1 --container=default --mode=vsan-cluster-usage UNKNOWN: Vsan is not enabled in vmware connector | [root@hd-centreon plugins]#
Il faut donc télécharger et installer (de la même manière ci-dessus) la dernière version de Centreon_vmware ainsi que le package VSAN Perl SDK 6.7.0 (voir le lien au début de l’article). J’ai pris la même version que VMWare Perl SDK (6.7).
Uploader l’archive VSAN Perl SDK sur votre serveur Centreon dans le dossier /tmp et dézipper l’archive :
[root@centreon plugins]# unzip vsan-sdk-perl.zip
Copier les deux fichiers qui se trouvent dans le répertoire « bindings » à l’emplacement suivant :
[root@centreon plugins]# cp /tmp/vsan-sdk-perl/bindings/* /root/perl5/lib/perl5/VMware/ [root@centreon plugins]# cp /tmp/vsan-sdk-perl/bindings/* /usr/lib/vmware-vcli/VMware/share/VMware/ [root@centreon plugins]# cp /tmp/vsan-sdk-perl/bindings/* /usr/local/share/perl5/VMware/ [root@centreon plugins]# cp /tmp/vsan-sdk-perl/bindings/* /usr/share/perl5/VMware/ [root@centreon plugins]# cp /tmp/vsan-sdk-perl/bindings/* /usr/share/perl5/perl5/
Relancer le connecteur vmware :
[root@centreon ~]# systemctl restart centreon_vmware [root@centreon ~]#
[root@centreon plugins]# ./centreon_plugins.pl --plugin=apps::vmware::connector::plugin --custommode=connector --connector-hostname=127.0.0.1 --container=default --mode=vsan-cluster-usage --cluster-name=DMZ OK: | [root@centreon plugins]#
Remarque : si vous n’avez pas les mêmes variables d’environnement que moi. Les deux fichiers en question doivent se trouver dans les même répertoires que le fichier suivant : VIM25Runtime.pm
Pour cela, vous devez effectuer une recherche pour voir ou se trouve ce fichier. Pour effectuer facilement une recherche, installer le package MLOCATE
Lancer la recherche :
[root@centreon ~]# updatedb [root@centreon ~]# [root@centreon ~]# locate VIM25Runtime.pm /root/perl5/lib/perl5/VMware/VIM25Runtime.pm /usr/lib/vmware-vcli/VMware/share/VMware/VIM25Runtime.pm /usr/local/share/perl5/VMware/VIM25Runtime.pm /usr/share/perl5/VMware/VIM25Runtime.pm /usr/share/perl5/perl5/VMware/VIM25Runtime.pm [root@centreon ~]#
Nous avons donc 5 emplacements. Il faut donc copier les deux fichiers VIM25VsanmgmtRuntime.pm et VIM25VsanmgmtStub.pm dans ces emplacements.
UPDATE #1 : SUPERVISION VIA CENTREON WEB
Supervision VMware ESXi (Centreon Web)
Connectez-vous à l’interface web de Centreon. Nous allons commencer par créer des macros, les commandes, l »hôte ESXi et les services.
- Allez dans : Configuration > Collecteurs > Ressources
- Ajoutez les macros ci-dessous :
- $_SERVICECONNECTOR$
- $_SERVICECONTAINER$
- $_SERVICEMODE$
- $_SERVICEESXNAME$
- $_SERVICEOPTION$
- $_SERVICEWARNING$
- $_SERVICECRITICAL$
Commande-Check-Health-ESXi
Nous allons maintenant créer les commandes. Je vous montres quelques exemples et à vous de faire le reste. En cas de besoin, n’hésitez surtout pas à me demander en commentaire.
- Allez dans Configuration > Commandes > Ajouter
- Nom de commande : Check-Health-ESXi
- Ligne de commande : copier/coller
$USER2$/centreon_plugins.pl --plugin=$_SERVICEPLUGIN$ --custommode=connector --connector-hostname=$_SERVICECONNECTOR$ --container=$_SERVICECONTAINER$ --mode=$_SERVICEMODE$ --esx-hostname=$_SERVICEESXNAME$ $_SERVICEOPTION$
Rappel : $USER2$
chemin des plugins Centreon.
- Décrire les macros
- Sauvegarder
Commande-Check-Memory-ESXi
- Allez dans Configuration > Commandes > Ajouter
- Nom de commande : Check-Memory-ESXi
- Ligne de commande : copier/coller
$USER2$/centreon_plugins.pl --plugin=$_SERVICEPLUGIN$ --custommode=connector --connector-hostname=$_SERVICECONNECTOR$ --container=$_SERVICECONTAINER$ --mode=$_SERVICEMODE$ --esx-hostname=$_SERVICEESXNAME$ --warning-consumed-memory=$_SERVICEWARNING$ --critical-consumed-memory=$_SERVICECRITICAL$ $_SERVICEOPTION$
- Décrire les macros
- Sauvegarder
Commande-Check-CPU-ESXi
- Allez dans Configuration > Commandes > Ajouter
- Nom de commande : Check-CPU-ESXi
- Ligne de commande : copier/coller
$USER2$/centreon_plugins.pl --plugin=$_SERVICEPLUGIN$ --custommode=connector --connector-hostname=$_SERVICECONNECTOR$ --container=$_SERVICECONTAINER$ --mode=$_SERVICEMODE$ --esx-hostname=$_SERVICEESXNAME$ --warning-total-cpu=$_SERVICEWARNING$ --critical-total-cpu=$_SERVICECRITICAL$
- Décrire les macros
- Sauvegarder
Création d’hôte ESXi
- Allez dans Configuration > Hôte > Ajouter
- Adapter les paramètres :
- Sauvegarder
Remarque : voici la commande check_centreon_ping :
$USER1$/check_icmp -H $HOSTADDRESS$ -n $ARG1$ -w $ARG2$ -c $ARG3$
ou encore :
$USER1$/check_centreon_ping -H $HOSTADDRESS$ -w 200,20% -c 500,40%
C’est juste un ping d’hôte.
Création de services
Nous allons maintenant créer les services pour notre ESXi.
Service-Check-Health-ESXi
- Allez dans Configuration > Services > Ajouter
- Description : Check-Health
- Lié aux hôtes : ESXi-HOST (votre serveur ESXi)
- Commande de vérification : sélectionnez la commande : Check-Health-ESXi
- PLUGIN :
apps::vmware::connector::plugin
- CONNECTOR : L’adresse de votre serveur Centreon (localhost ou l’adresse IP). On passe par le fichier de conf centreon_vmware ci-dessous :
- OPTION :
--filter --disconnect-status='ok' --verbose
- Valider la création du service:
Service-Check-CPU-ESXi
- Allez dans Configuration > Services > Ajouter
- Description : Check-CPU
- Lié aux hôtes : ESXi-HOST (votre serveur ESXi)
- Commande de vérification : sélectionnez la commande : Check-CPU-ESXi
- PLUGIN :
apps::vmware::connector::plugin
- Valider
Service-Check-Memory-ESXi
- Allez dans Configuration > Services > Ajouter
- Description : Check-Memory
- Lié aux hôtes : ESXi-HOST (votre serveur ESXi)
- Commande de vérification : sélectionnez la commande : Check-Memory-ESXi
- PLUGIN :
apps::vmware::connector::plugin
- Enregistrer
Monitoring VMWare vCenter ESXi (Résultat)
Exporter la configuration pour prendre en compte les nouveaux services. Voir comment exporter la configuration ici : Exporter
Après quelques secondes, voici le résultat.
C’est terminé les amis. A vous de mettre en place les autres modes. Voir également mon pack d’icônes pour Centreon ici : centreon-icones-pack/
Mon projet sur la mise en place et la supervision d’un serveur VMWare ESXi est terminé . En cas de besoin, n’hésitez pas à me demander en commentaire ou via le forum.
Bonne journée et à bientôt.
Supervision Systèmes & Réseaux
Voir mes articles sur la supervision systèmes & réseaux :
- Supervision Certificat HTTPS/Windows : supervision-des-certificats-https-windows/
- Supervision Web HTTP(S) : supervision-https-response-expected-content-centreon/
- Supervision ORACLE BDD : oracle-database-monitoring-centreon-plugins/
- Supervision EMC VNX : vnx5300-vnx5200-monitoring-centreon/
- Supervision MSSQL : microsoft-sql-server-monitoring/
- Supervision Switch CISCO : switch-cisco-centreon-partie-1-2/
- Supervision VMWARE ESXi : vmware-esxi-6-7-monitoring/
- Supervision EXCHANGE Server : exchange-server-2016-monitoring-actif/
- Supervision Quotas Windows : supervision-des-quotas-windows-nrpe-nsclient/
- Supervision Skype for Business : supervision-microsoft-skype-for-business/
- Supervision HPE Proliant Gen10 : supervision-hpe-proliant-gen10-snmp-restapi/
- Supervision NETAPP SANTricity : supervision-netapp-santricity-storage-restapi/