Monitorizando una cabina HP MSA
Seguimos con más cosicas que podemos monitorizar con Nagios o Centreon! Si tenemos en nuestra organización una cabina de almacenamiento de HP tipo MSA, sea de fibra o iSCSI, este es vuestro documento! De una manera sencilla podremos absorber mediante SNMP la información que nos interese controlar, sea el estado de los discos duros, las controladoras, volumenes, RAID, temperaturas, estado del chasis, alertas, eta abar, eta abar…
Ondo, usaremos un par de scripts en este documento, aunque cada uno es libre de usar los que quiera! Empezamos con uno genérico que nos checkeará con un sólo comando toda la salud del hardware, checkea todos los sensores de la cabina. Eta ondoren, 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 (como siempre), etik: https://exchange.nagios.org/directory/Plugins/Hardware/Storage-Systems/SAN-and-NAS/Check-HP-MSA-(Modular-Smart-Array)-sensors/details. Este script nos valdrá para monitorizar cualquier HP MSA2312i o HP MSA2012i o HP MSA2012fc o HP MSA2324i o HP P2000 G3 MSA!!!!
Lo primero de todo, antes de seguir, será entrar en las controladoras de las MSA y habilitar SNMP, indicando una comunidad de confianza. Y luego ya, scripting jaitsi eta Centreon-en script karpetan utzita '/usr/lib/centreon/plugins', nire kasuan '/usr/lib/nagios/plugins' karpetan gordetzen ditut, exekutagarria ere egingo dugu ohitura bezala ('chmod +x check_msa_hardware.pl')! Eta orain shell-etik probatu ahal izango dugu, hurrengo komandoaren bitartez:
[sourcecode]./check_msa_hardware.pl -H KONTROLADORE_IP_HELBIDEA -C SNMP_KOMUNITATEA -l[/sourcecode]
Komando horrekin ikusiko dugunez MSAk emango dizkigun aukera guztiak listatuko ditu, CPUetako tenperatura sentsoreen kontrol guztiak, chasisak, kontroladoreak, elikatze iturrien egoera… Denetarik dator. Script hau erabil dezakegu Centreon-etik monitorizazio zerbitzu bat sortzeko, eta 'Hardware Status' deitu ahal izango diogu’ edo antzeko zerbait, 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 servicios de monitorización que nos interesen. Empezaremos con el script genérico que acabamos de ver y luego vemos otro script que permite granularmente monitorizar cada ítem que nos interesa ver en la monitorización. Así que como siempre, creamos el host a monitorizar, crearemos el comando asociado al script y luego los servicios sobre este comando. Para monitoriza lo que nos interese, paso a paso!
Como es habitual, si no tenemos la cabina definida en nuestro Centreon tendremos que darla de alta como sabemos, “Konfigurazioa” > “Hosts” > “Gehitu…” y rellenamos los siguientes datos & pulsamos en 'Save':
- Izena: Indicaremos el nombre de la cabina y su controladora, si es que tiene más de una como es habitual.
- Alias: Indicamos el alias con el que veremos a este equipo en la monitorización, normalmente igual que el nombre.
- IP helbidea / DNS: Dirección IP de la controladora a monitorizar. Si tenemos más de una, repetiremos la creación de este host, por tantas controladoras que tengamos, adibidez: CABINA_A, CABINA_B… y luego los servicios que crearemos en este documento, los enlazaremos a todas las controladoras que tengamos, edo bueno, cada uno que haga como quiera 😉
- SNMP komunitatea / Version: Indicamos la comunidad SNMP que hemos establecido mediante GUI o CLI en nuestra cabina. Normalmente versión 2.
- Monitored from: Betiko moduan, por ahora si sólo tenemos un appliance central desde donde monitorizar, no nos queda más que seleccionarlo. Como veremos más adelante, en instalaciones grandes donde queramos repartir la carga, podremos seleccionar otro origen para ejecutar estos checks y no siempre la misma máquina de Centron (o Nagios en cada caso). O también por si tenemos una delegación remota y queremos reducir tráficos tontos.
- Txantiloiak & Create Services linked to the Template too: Seleccionamos 'generic-active-host’ que es una plantilla genérica ya precreada, donde heredará las configs de dicha plantilla, al menos el servicio Ping, eta abar… E indiquemos por tanto que nos cree también los servicios que pueda tener dicha plantilla.
Siguiendo para bingo, una vez creado el host, también necesitamos crear el comando que ejecutará el script que hemos visto antes. Esto es, vamos a “Konfigurazioa” > “Zerbitzuak” y clonamos uno existente bueno donde tengamos ya configuradas 'cosas’ denborekin edo nahi dugun moduan, bat berria sortzen dugu, al gusto del consumidor. Gutxienez hurrengo datuak adierazten ditugu:
- Agindua izenae: Izena adierazten diegu, normalean script-arekin berdina da, gogoratzeko errazago 😉
- Komando mota: ‘Check’ markatzen dugu’
- Command Line: Agindu honek exekutatuko duena jartzen dugu, beraz, kabinako sentsore guztien osasuna ateratzeko erabiliko dugu '/usr/lib/nagios/plugins/check_msa_hardware.pl -h $HOSTADDRESS$ -C $_HOSTSNMPCOMMUNITY$' komandoarekin.
Beste aukera batzuk aldatu ahal izango ditugu, adibidez erabiliko dituen grafiko motak, eta abar… ‘Save’-ean klik egiten dugu.
Azkenik, pauso guztiak eginda daudenean; zerbitzu bat sor dezakegu, aurreko komandoari lotuko diogu eta kabinako kontroladoreekin lotuko dugu. Honetatik “Konfigurazioa” > “Zerbitzuak” > “Gehitu…” sortzeko, edo erosoagoa, como siempre, existitzen den zerbitzu bat klonatzea eta gutxienez hurrengo hau aldatzea izango da:
- Deskribapena: Le indicamos el nombre con el que veremos el servicio monitorizado.
- Gurekin lotutako Host-ak: Enlazamos este servicio a los hosts creados que sean las controladoras de la MSA.
- Txantiloia: 'generic-active-service-custom' hautatzen dugu.
- Check Command: Seleccionamos el comando recién definido 'check_msa_hardware.pl'.
Checkeando de forma individual cada elemento de la cabina,
Onena, esandakoa, si queremos ver el estado de los discos, chasisak, portuak, redundancia 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, ejecutamos:
[sourcecode]perl -MCPAN -e'shell’
Cpan> install Net::Telnet
Cpan> install XML::Simple[/sourcecode]
Una vez completados los requisitos, como siempre, gure script-a deskargatu eta monitorizazio aparailura igo dugu, scripts karpetan utziko dugu, exekutagarri egingo dugu eta probatuko dugu. Hurrengo adibideei esker, informazio desberdina lor dezakegu:
[sourcecode]# Kontroladoreen redundantzia:
/usr/lib/nagios/plugins/check_msa2012i_g1 -h IP_HELBIDEA -t redundancy
# Diskoak egiaztatzen ditu:
/usr/lib/nagios/plugins/check_msa2012i_g1 -h IP_HELBIDEA -t disks
# Chasisen egoera:
/usr/lib/nagios/plugins/check_msa2012i_g1 -h IP_HELBIDEA -t enclosure
# Kontroladoreen redundantzia:
/usr/lib/nagios/plugins/check_msa2012i_g1 -h IP_HELBIDEA -t frus
# Sentsoreen egoera:
/usr/lib/nagios/plugins/check_msa2012i_g1 -h IP_HELBIDEA -t sensors
# Vdisk-en egoera
/usr/lib/nagios/plugins/check_msa2012i_g1 -h IP_HELBIDEA -t vdisks[/sourcecode]
Script hau, beste askorekin batera, problemak ematen badizkizu, 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… pues eso, 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, prest! Nos vamos a Centreon y damos de alta el Comando primeramente, “Konfigurazioa” > “Zerbitzuak” y clonamos el comando que creamos antes (adibidez). Modificamos los siguientes datos al menos:
- Command Name: Su nombre, esandakoa, pongo el mismo que el script para recordarlo mejor 😉
- Komando mota: ‘Check’ markatzen dugu’
- Command Line: Lo que ejecutará este comando, zerbitzutik pasatuko dizkiogun aldagaien argumentua erabiliko dugu, geratzen dira: '/usr/lib/nagios/plugins/check_msa2012i_g1 -h $HOSTADDRESS$ -t $ARG1$'’
'Save' erabiliz gordetzen dugu,
Eta ezer, zerbitzu guztiak sortzen joango gara, interesatzen zaizkigun guztien kopurua sortuko dugu, argumentua interesatzen zaigun aukera aldatuarekin, Honetatik “Konfigurazioa” > “Zerbitzuak” > aurreko sortutakoa klonatzen dugu edo edozein eta aldatzen dugu:
- Deskribapena: zerbitzu monitorizatua ikusi ahal izango dugun izena.
- Gurekin lotutako Host-ak: Enlazamos este servicio a los hosts creados que sean las controladoras de la MSA.
- Txantiloia: 'generic-active-service-custom' hautatzen dugu.
- Check Command: Bereziki definitutako komandoa aukeratzen dugu 'check_msa2012i_g1'.
- Args: Scriptak behar duen argumentua zehazten dugu interesa dugun elementua ateratzeko, ikus genituen hauek izango lirateke: channel, redundancy, disks, enclosure, frus, sensors eta vdisks.
'Save' erabiliz gordetzen dugu.
orain, como siempre, datuak esportatzea eta konfigurazioa berriro kargatzea gogoratu behar da, Centreon-ek sartzen ditugun aldaketa berriak irakurriko ditzan. Gogorarazten dizuet, iremos a “Configuration” > “Pollers” > “Export configuration”, seleccionando nuestro poller, marcamos los checks y reiniciamos & “Export”.
Una vez generado todo, ya podremos ir a la parte de monitorización y comprobarlo! Veremos todos los nuevos servicios que hemos creado que monitorizan distintas cosas. Si queremos forzar el checkeo, ya sabemos, seleccionamos los servicios que nos interesen y en el combo seleccionamos 'Services – Schedule immediate check (Indartutako)’. 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!!! Disfrutarlo!
Eta gainera, si necesitamos otros checkeos, es tan fácil como buscar en la página de Exchange Nagios lo que queremos!
















































