VMWare vCenter Server mit Nagios überwachen

Aus ITwiki
Version vom 2. Oktober 2012, 12:46 Uhr von Flo84 (Diskussion | Beiträge)

Wechseln zu: Navigation, Suche

Vorbereitungen

Wer eine VMWare-Umgebung hat und diese mit Nagios überwachen will, muss ein paar Vorarbeiten leisten, dass die diversen Perl-Plugins auch laufen. In der Regel benötigt man für ein Debian "Squeeze" System folgendes:

  1. Das VMWare vSphere SDK for Perl (gibt's in 32 und 64 Bit!)
  2. apt-get install libssl-dev perl-doc libxml-libxml-perl libxml2-dev uuid-dev

Installation

Um nun das SDK erfolgreich installieren zu können, müssen unter Debian "Squeeze" noch folgende Befehle aufgerufen werden:

cd /usr/src
wget http://search.cpan.org/CPAN/authors/id/J/JN/JNH/UUID-0.04.tar.gz
tar -xzvf UUID-0.04.tar.gz
cd UUID-0.04
perl Makefile.PL

Debian wird vom VMWare SDK nicht offiziell unterstützt, deshalb muss man dem Installer ein Ubuntu vorgaukeln:

echo ubuntu > /etc/tmp-release

Zudem müssen folgende Umgebungsvariablen gesetzt werden:

export http_proxy=
export ftp_proxy=

Jetzt kann das Installationsscript aufgerufen werden:

cd /usr/src
tar -xzvf VMware-vSphere-Perl-SDK-5.0.0-422456.i386.tar.gz
cd vmware-vsphere-cli-distrib
./vmware-install.pl

Problem mit check_vmware_api.pl

Zunächst musste ich per Hand noch Perl-Module nachinstallieren:

perl -MCPAN -e 'install Nagios::Plugin'
perl -MCPAN -e 'install Module::Implementation'

Beachte auch den Beitrag auf exchange.nagios.org für weitere Details / fehlende Module.

Beim Scriptaufruf von check_vmware_api.pl trat dann noch eine Meldung auf, dass die Server-Version nicht geprüft werden konnte. Füge einfach im Script ziemlich weit oben folgendes ein:

$ENV{PERL_LWP_SSL_VERIFY_HOSTNAME} = 0;

Dadurch wird die Hostverifizierung nicht über HTTPS durchgeführt, sondern über HTTP. Der Fehler tritt scheinbar deshalb auf, weil das vom ESX Host / vCenter zur Verschlüsselung verwendete Zertifikat selbst signiert ist und beim Scriptaufruf dadurch kein Zugriff möglich ist.

Nützliche Links