Monitorare server ESX(i) con Nagios tramite plugin check_esx su CentOS

monitoresx1

check_esx3.pl è un plugin che permette di monitorare i componenti critici dei server ESX(i) tramite il sistema Nagios.

Per funzionare correttamente, il plugin necessita del package Perl-SDK di VMware e deve essere installato in un sistema in cui sia presente Nagios.

 

Procedura

Dal sito VMware scaricare VMware-vSphere-Perl-SDK versione 4.1 e copiarlo sul sistema di monitoraggio Nagios.

monitoresx2

# tar -xzvf VMware-vSphere-Perl-SDK-4.1.0-254719.i386.tar.gz
# cd vmware-vsphere-cli-distrib
# ./vmware-install.pl

L’installazione inizia visualizzando l’EULA. E’ necessario scorrerla tutta per procedere.

monitoresx3

Accettare l’EULA digitando yes e premere Invio.

monitoresx4

Accettare la directory predefinita /usr/bin e premere Invio.

monitoresx5

Per poter utilizzare il plugin è necessario installare il componente Nagios::Plugin. L’installazione è possibile farla tramite il comando yum.

# yum install perl-Nagios-Plugin

monitoresx6

Scaricare dal sito git.op5.org il plugin check_esx3.pl.

# wget “http://git.op5.org/git/?p=nagios/op5plugins.git;a=snapshot;h=1fe4ba671d29dcdf7c281b686ec39a291632ae4c;sf=tgz” -O check_esx3.pl

monitoresx7

Rendere il file eseguibile tramite il comando chmod.

# chmod +x check_esx3.pl

Copiare il file nella directory /usr/lib/nagios/plugins.

# cp check_esx3.pl /usr/lib/nagios/plugins/

monitoresx8

Tramite vSphere Client –> Local Users & Groups, creare un utente che sarà utilizzato dal plugin per monitorare il sistema. Prestare attenzione al formato della password che richiede certi criteri di password complexity.

monitoresx9

In vSphere Client –> Permissions, assegnare il ruolo di Read-only all’utente appena creato e cliccare su OK.

monitoresx10

Per testare se il plugin funziona, digitare da console:

# cd /usr/lib/nagios/plugins
# ./check_esx3.pl -H IP_Address_ESX -u AccountMonitor -p Password -l cpu -s usage -w 80 -c 90

monitoresx11

Testato che il plugin funziona correttamente, definire il comando check_esx in Nagios prestando attenzione alla sintassi. Editare il file /etc/nagios/resource.cfg ed impostare le variabili dell’utente utilizzato dal plugin per accedere al server ESX(i).

USER2$=account
USER3$=password

# vi /etc/nagios/resource.cfg

monitoresx12

Per monitorare il carico della CPU, ad esempio, utilizzare la seguente sintassi:

$USER1$/check_esx3.pl -H $HOSTADDRESS$ -u $USER2$ -p $USER3$ -l cpu -s usage -w $ARG1$ -c $ARG2$

monitoresx13

Alcuni esempi di configurazione:

disk
command_name   check_esx_disk
command_line   $USER1$/check_esx3.pl -H $HOSTADDRESS$ -u $USER2$ -p $USER3$ -l vmfs -w $ARG1$ -c $ARG2$

ram
command_name   check_esx_ram
command_line   $USER1$/check_esx3.pl -H $HOSTADDRESS$ -u $USER2$ -p $USER3$ -l mem -s usagemb -w $ARG1$ -c $ARG2$

swap
command_name   check_esx_swap
command_line   $USER1$/check_esx3.pl -H $HOSTADDRESS$ -u $USER2$ -p $USER3$ -l mem -s swap -w $ARG1$ -c $ARG2$

status
command_name   check_esx_status
command_line   $USER1$/check_esx3.pl -H $HOSTADDRESS$ -u $USER2$ -p $USER3$ -l runtime -s status

nic
command_name   check_esx_nic
command_line   $USER1$/check_esx3.pl -H $HOSTADDRESS$ -u $USER2$  -p $USER3$ -l net -s nic

issues
command_name   check_esx_issues
command_line   $USER1$/check_esx3.pl -H $HOSTADDRESS$ -u $USER2$ -p $USER3$ -l runtime -s issues

Altri parametri di configurazione sono disponibili nel sito op5.com.

Configurati i parametri da monitorare, Nagios è in grado di visualizzare lo stato del server ESX(i) specificato.

monitoresx14

Un plugin molto comodo che permette di tenere sotto controllo i server ESX(i) diventati ormai i core system in molte aziende.

1

3 Comments

  1. DvD 21 Maggio 2013
    • Paolo 21 Maggio 2013
      • DvD 23 Maggio 2013