Monitoritzant una cabina HP MSA
Seguim amb més coses que podem monitorar amb Nagios o Centreon! Si tenim en la nostra organització una cabina de magatzem de HP tipo MSA, mar de fibra o iSCSI, aquest és vuestro documento! De manera senzilla podremos absorbir mediante SNMP la informació que ens interessa controlar, Sea el estado de los discos duros, les controladoras, volumenes, RAID, temperatures, estado del chasis, alertas, etc., etc.…
Bé, usaremos un par de scripts en este documento, encara que cada uno és lliure d'usar los que quiera! Empezamos con un genérico que nos checkeará con un solo comandament toda la salud del hardware, checkea todos los sensores de la cabina. Y luego, usamos otro script que es una maravilla y pasándole distintos parámetros podremos ver los ítems de forma individual.
Check generico – Hardware Status,
Necesitaremos descargarnos este script, check_msa_hardware.pl, de la web magnífica Exchange Nagios (com sempre), des de: https://exchange.nagios.org/directory/Plugins/Hardware/Storage-Systems/SAN-and-NAS/Check-HP-MSA-(Modular-Smart-Array)-sensors/details. Aquest script nos valdrà para monitorizar qualsevol HP MSA2312i o HP MSA2012i o HP MSA2012i o HP MSA2012fc o HP MSA2324i o HP P2000 G3 MSA!!!!
El primer de tot, antes de seguir, entrarà en les controladores de las MSA i habilitar SNMP, indicando una comunitat de confianza. Y després ya, després de baixar l'script i deixar-lo a la carpeta de scripts de Centreon '/usr/lib/centreon/plugins', en el meu cas els guardo a '/usr/lib/nagios/plugins', també el farem executable com és habitual ('chmod +x check_msa_hardware.pl')! I ja podrem provar-lo des de shell, mitjançant la següent comanda:
[sourcecode]./check_msa_hardware.pl -H DIRECCIÓ_IP_CONTROLADORA -C COMUNITAT_SNMP -l[/sourcecode]
Amb aquesta comanda, com veurem, llistarà totes les possibilitats que ens donarà la MSA en qüestió, tot el control sobre els sensors de temperatura de les CPU, xassís, controladores, estat de les fonts d'alimentació… Volem de tot. Aquest script el podrem utilitzar per crear un servei de monitorització des de Centreon que li podrem anomenar 'Estat del Hardware'’ o alguna cosa similar, ya que este mismo script como vemos nos checkeará todos los ítems en cada cabina.
Por tanto es lo que haremos a continuación, crearemos el equipo de la cabina en Centreon para poder monitorizarla, para agregarla luego ya los serveis de monitorización que nos interessen. Empezaremos amb el script genérico que acabamos de ver y luego vemos un altre script que permet granularment monitorizar cada ítem que nos interessa ver en la monitorització. Així que com sempre, creamos el host a vigilar, crearem el comandament associat al script i després els serveis sobre aquest comando. Para vigilar el que ens interessa, paso a paso!
Como es habitual, si no tenim la cabina definida al nostre Centre tendrem que darla d'alta com sabemos, “Configuration” > “Hosts” > “Add…” i rellenarem les següents dades & pulsem en 'Save':
- Name: Indicaremos el nombre de la cabina y su controladora, si es que tiene más de una como es habitual.
- Àlies: Indicamos el alias con el que veremos a este equipo en la vigilación, normalment igual que el nombre.
- IP Address / DNS: Dirección IP de la controladora a monitorar. Si tenemos más de una, repetiremos la creación de este host, por tantas controladoras que tengamos, per exemple: CABINA_A, CABINA_B… i després els serveis que crearemos en aquest document, els enlazaremos a totes les controladores que tengams, o bo, cada un que fa com quiera 😉
- SNMP Community / Version: Indicamos la comunitat SNMP que hem establert mitjançant GUI o CLI en la nostra cabana. Normalment versión 2.
- Monitored from: Com sempre, ara si només tenim un aparell central des d'on vigilar, no ens queda més que seleccionarlo. Como veremos más adelante, en instal·lacions grans on vulguem repartir la càrrega, podrem seleccionar un altre origen per executar aquests checks i no sempre la mateixa màquina de Centron (o Nagios en cada cas). O també per si tenim una delegació remota i volem reduir tràfics inútils.
- Templates & Create Services linked to the Template too: Seleccionem 'generic-active-host'’ que és una plantilla genèrica ja precreada, on heretarà les configuracions d'aquesta plantilla, almenys el servei Ping, etc.… I indiquem per tant que ens creï també els serveis que pugui tenir aquesta plantilla.
Seguint per bingo, un cop creat l'host, també necessitem crear la comanda que executarà l'script que hem vist abans. Això és, anem a “Configuration” > “Services” i clonem un existent bo on ja tinguem configurades 'coses'’ com els temps o el que vulguem, creem un de nou, al gust del consumidor. Indicamos los siguientes datos al menos:
- Command Name: Li indiquem un nom, normalment el mateix que el script para recordarlo mejor 😉
- Command Type: Marcamos 'Check’
- Command Line: Ponem lo que ejecutará este comando, por tanto nos valdrá para sacar la salud de todos los sensores de la cabina con '/usr/lib/nagios/plugins/check_msa_hardware.pl -h $HOSTADDRESS$ -C $_HOSTSNMPCOMMUNITY$'.
Podremos canviar otras opciones, ya sea el tipus de gráficas que usará, etc.… Pulsamos en 'Save'.
Lo último ya, una vez que tenemos los pasos hechos; podríem crear un servei que enlazaremos al comandament anterior i lo associem a les controladores de la cabina. Des de “Configuration” > “Services” > “Add…” per crear-lo, o más cómodo, com sempre, serà clonar un servei existente i modificar al menos lo següent:
- Description: Le indicamos el nombre con el que verem el servei vigilado.
- Linked with Hosts: Enlazamos este servei a los hosts creats que sean las controladoras de la MSA.
- Template: Seleccionem 'generic-active-service-custom'.
- Check Command: Seleccionamos el comandament recentment definit 'check_msa_hardware.pl'.
Checkeando de forma individual cada element de la cabina,
Bo, el que s' ha dit, si volem veure l'estat de les discoteces, xassís, ports, redundància de las controladoras, FRUs, sensores o los vdisk directamente, usaremos también esto. Gracias al script 'check_msa2012i_g1’ que podremos bajar de https://exchange.nagios.org/directory/Plugins/Hardware/Storage-Systems/SAN-and-NAS/Check-MSA-2012i-G1/details. Lo diferente de este script es que no usará SNMP, si no consultas de Telnet. Deberemos instalar antes los requisitos necesarios para hacerlo funcionar, desde la shell de nuestro appliance de monitorización, executem:
[sourcecode]perl -MCPAN -e'shell’
Cpan> install Net::Telnet
Cpan> install XML::Simple[/sourcecode]
Una vez completados los requisitos, com sempre, descarreguem l'script i el pugem a l'appliance de monitorització, el deixem a la carpeta d'scripts, el farem executable i el provarem. Mitjançant els següents exemples, podrem extreure informació diferent:
[sourcecode]# Redundància de les controladores:
/usr/lib/nagios/plugins/check_msa2012i_g1 -h ADREÇA_IP -t redundancy
# Comprova els discs:
/usr/lib/nagios/plugins/check_msa2012i_g1 -h ADREÇA_IP -t disks
# Estat del xassis:
/usr/lib/nagios/plugins/check_msa2012i_g1 -h ADREÇA_IP -t enclosure
# Redundància de les controladores:
/usr/lib/nagios/plugins/check_msa2012i_g1 -h ADREÇA_IP -t frus
# Estat dels sensors:
/usr/lib/nagios/plugins/check_msa2012i_g1 -h ADREÇA_IP -t sensors
# Estat dels vdisks
/usr/lib/nagios/plugins/check_msa2012i_g1 -h ADREÇA_IP -t vdisks[/sourcecode]
Aquest script, com molts altres, si us donen problemes, o no dan toda la información que esperáis bien sea por los OIDs obsoletos o que tengamos que añadir manualmente más discos a monitorizar… doncs això, que no va a tocar más remedio que modificarlos, o eso, o buscar otros scripts alternativos. Muchas veces nos tocará hacer los nuestros propios! Este script recuerdo que sólo miraba los 4 primeros discos y un sólo vDisk, es sencillo buscar qué hay que modificar en el script para conseguirlo 😉 Para más ayuda del script le pasáis /h.
Una vez testeado, llest! Nos vamos a Centreon y damos de alta el Comando primeramente, “Configuration” > “Services” y clonamos el comando que creamos antes (per exemple). Modificamos los siguientes datos al menos:
- Command Name: Su nombre, el que s' ha dit, pongo el mismo que el script para recordarlo mejor 😉
- Command Type: Marcamos 'Check’
- Command Line: Lo que ejecutará este comando, usaremos un argumento de variable que le pasaremos des del Servei, quedant: '/usr/lib/nagios/plugins/check_msa2012i_g1 -h $HOSTADDRESS$ -t $ARG 1$’
Grabamos con 'Save',
I res, crearem tots els serveis, crearemos tantos com ens interessen, canviant l'argument amb l'opció que ens interessa, Des de “Configuration” > “Services” > clonem l'anterior que creamos o un qualsevol i canviem:
- Description: Nombre con el que veremos el servei vigilat.
- Linked with Hosts: Enlazamos este servei a los hosts creats que sean las controladoras de la MSA.
- Template: Seleccionem 'generic-active-service-custom'.
- Check Command: Seleccionamos el comandament recién definido 'check_msa2012i_g1'.
- Args: Indicamos l'argument que necessita el script para sacar la informació del ítem que nos interessa, vimos que serían: channel, redundància, discs, enclosure, frus, sensors y vdisks.
Grabamos con 'Save'.
Ara, com sempre, enregistrar exportar les dades i recarregar la configuració para que Centreon pueda llegir els nous canvis que acabamos de meter. Os recuerdo, iremos a “Configuration” > "Pollers" > "Export configuration", seleccionant el nostre poller, marquem els checks i reiniciem & "Export".
Un cop generat tot, ya podremos ir a la parte de monitorización y comprobarlo! Veremos todos los nuevos servicios que hemos creado que monitorizan distintas cosas. Si volem forçar el checkeig, ja sabem, seleccionem els serveis que ens interessin i en el combo seleccionem 'Services – Schedule check (Forced)’. Con eso, ya nuestro pequeño y amado appliance de monitorización controlará nuestras delicadas cabinas, qué fácil resulta dormir tranquilo! Venga que seguimos otro día con más!!! Gaudir-lo!
I per cert, si necesitamos otros checkeos, es tan fácil como buscar en la página de Exchange Nagios lo que queremos!


















































