Inicio Linux & Systems Networks & Infrastructure Cybersecurity Cloud & DevOps SIEM & Monitoring DFIR & Threat Intel Development & Other Todas las categorias Herramientas

Monitorización de un servidor Netapp en Nagios

Monitorización de un servidor Netapp en Nagios

Tabla de contenidos

Pues ahora vamos a monitorizar un servidor  de almacenamiento Netapp, Para su monitorización vamos a utilizar el protocolo SNMP(Si no lo sabéis activar SNMP en una netapp AQUI tenemos un manual) y los chequeos van a ser de Memoria, CPU, Disco, PING, temperatura, ventiladores, Fallo de disco y batería.

Una vez ya tenemos instalado y configurado  SNMP vamos a empezar a monitorizar.

Definir los comandos: 

para definir tenemos que añadir los siguientes comandos al fichero commands.cfg, este fichero estará… dependiendo de la instalación que habríais realizado:

bash
vi /etc/nagios3/commands.cfg

Y añadimos lo siguiente:

bash
define command {

command_name check_netapp_cpu

command_line /usr/bin/perl $USER1$/check_netapp3.pl -H $HOSTADDRESS$ -C public -v $ARG1$ -w $ARG2$ -c $ARG3$

}
define command{

command_name check_netapp_diskused

command_line /usr/bin/perl $USER1$/check_netapp_disk -H $HOSTADDRESS$ -C $ARG1$ -t $ARG2$ -v DISKUSED -o $ARG3$ -w $ARG4$ -c $ARG5$

}
define command{

command_name check_netapp_nvram

command_line $USER1$/check_netapp -H $HOSTADDRESS$ -P 1 -C $ARG1$ -t $ARG2$ -v NVRAM

}
define command{

command_name check_netapp_faileddisk

command_line $USER1$/check_netapp -H $HOSTADDRESS$ -P 1 -C $ARG1$ -t $ARG2$ -v FAILEDDISK

}
define command{

command_name check_netapp_fan

command_line $USER1$/check_netapp -H $HOSTADDRESS$ -P 1 -C $ARG1$ -t $ARG2$ -v FAN

}
define command{

command_name check_netapp_power

command_line $USER1$/check_netapp -H $HOSTADDRESS$ -P 1 -C $ARG1$ -t $ARG2$ -v PS

}
define command{

command_name check_netapp_temp

command_line $USER1$/check_netapp -H $HOSTADDRESS$ -P 1 -C $ARG1$ -t $ARG2$ -v TEMP

}

Creamos las carpetas donde vamos a alojar los archivos de configuración 

bash
mkdir /etc/nagios3/etc/cfg/Netapp/

Accedemos al direcctorio 

text
cd /etc/nagios3/etc/cfg/Netapp/

Creamos el fichero hosts.cfg con el siguiente contenido

bash
hostgroup_name grupo-netapp

alias Almacenamiento Netapp

members redorbitanetapp_192.168.1.18

}
#Ping to hosts
define service {

use netapp-srv

hostgroup_name grupo-netapp

service_description netapp redorbitanetapp – ping

check_command check_ping!100.0,10%!500.0,20%

}

#Hosts Definition
define host {

use netapp-srv

host_name redorbitanetapp_192.168.1.18

alias redorbitanetapp

address 192.168.1.18

}

Creamos el fichero templete.cfg en el cual vamos a definir los servicios. 

text
define host {

name netapp-srv

flap_detection_enabled 1

notification_period 24×7

notification_options d,u,r

retain_status_information 1

retain_nonstatus_information 1

contact_groups grupo-netapp

# check_command check_command_blank

max_check_attempts 3

register 0
}
define service {

name netapp-srv

check_period 24×7

flap_detection_enabled 1

notification_period 24×7

notification_options w,u,c,r

parallelize_check 1

retain_status_information 1

retain_nonstatus_information 1

max_check_attempts 3

normal_check_interval 3

retry_check_interval 1

contact_groups grupo-netapp

register 0

}

 Definimos el archivo de contacto contacts.cfg

bash
define contact{

contact_name grupo-netapp

alias grupo-netapp

service_notification_period 24×7

host_notification_period 24×7

service_notification_options w,u,c,r

host_notification_options d,r

service_notification_commands notify-service-by-email

host_notification_commands notify-host-by-email

email root@localhost

}

define contactgroup {

contactgroup_name grupo-netapp

alias Grupo de Linux

members grupo-netapp

}

Y por ultimo definimos los chequeos redorbitanetapp.cfg

text
define service{

use netapp-srv

host_name redorbitanetapp_192.168.1.18

service_description Ocupacion Disco Aggregado0

check_command check_netapp_diskused!public!120!aggr0!80!50

}
define service{

use netapp-srv

host_name redorbitanetapp_192.168.1.18

service_description CPULOAD

check_command check_netapp_cpu!CPULOAD!80!90

}
define service{

use netapp-srv

host_name redorbitanetapp_192.168.1.18

service_description Fallo en disco

check_command check_netapp_faileddisk!public!120

}
define service{

use netapp-srv

host_name redorbitanetapp_192.168.1.18

service_description Estado Bateria Nvram

check_command check_netapp_nvram!public!120

}
define service{

use netapp-srv

host_name redorbitanetapp_192.168.1.18

service_description Temperatura

check_command check_netapp_temp!public!120

}
define service{

use netapp-srv

host_name redorbitanetapp_192.168.1.18

service_description Ventiladores

check_command check_netapp_fan!public!120

}
define service{

use netapp-srv

host_name redorbitanetapp_192.168.1.18

service_description Fuente de Alimentacion

check_command check_netapp_power!public!120
}

Una vez creado el fichero tenemos que añadir la ruta de los mismos en el archivo nagios.cfg

bash
vi /etc/nagios3/nagios.cfg

Al final del archivo añadimos lo siguiente:


bash
############## Monitorización Neapp #############
cfg_file=/etc/nagios3/etc/cfg/Netapp/templete.cfg

cfg_file=/etc/nagios3/etc/cfg/Netapp/hosts.cfg

cfg_file=/etc/nagios3/etc/cfg/Netapp/redorbitanetapp.cfg

cfg_file=/etc/nagios3/etc/cfg/Netapp/contacts.cfg

Chequeamos para ver si no hay ningún error en los archivos de configuración

bash
rokitoh@nagios:/etc/nagios3/etc/cfg/Netapp# /etc/init.d/nagios3 check
Nagios Core 3.2.1

Copyright (c) 2009-2010 Nagios Core Development Team and Community Contributors

Copyright (c) 1999-2009 Ethan Galstad

Last Modified: 03-09-2010

License: GPL
Website: http://www.nagios.org

Reading configuration data…

Read main config file okay…

Processing object config file ‘/etc/nagios3/commands.cfg’…

Processing object config directory ‘/usr/lib/nagios/plugins’…

Processing object config file ‘/usr/lib/nagios/plugins/mailq.cfg’…

Processing object config file ‘/usr/lib/nagios/plugins/snmp_storage.cfg’…

Processing object config file ‘/usr/lib/nagios/plugins/ifstatus.cfg’…

Processing object config file ‘/usr/lib/nagios/plugins/snmp_load.cfg’…

Processing object config file ‘/usr/lib/nagios/plugins/breeze.cfg’…

Processing object config file ‘/usr/lib/nagios/plugins/ftp.cfg’…

Processing object config file ‘/usr/lib/nagios/plugins/apt.cfg’…

Processing object config file ‘/usr/lib/nagios/plugins/tcp_udp.cfg’…

Processing object config file ‘/usr/lib/nagios/plugins/ntp.cfg’…

Processing object config file ‘/usr/lib/nagios/plugins/dummy.cfg’…

Processing object config file ‘/usr/lib/nagios/plugins/mrtg.cfg’…

Processing object config file ‘/usr/lib/nagios/plugins/rpc-nfs.cfg’…

Processing object config file ‘/usr/lib/nagios/plugins/users.cfg’…

Processing object config file ‘/usr/lib/nagios/plugins/games.cfg’…

Processing object config file ‘/usr/lib/nagios/plugins/real.cfg’…

Processing object config file ‘/usr/lib/nagios/plugins/pgsql.cfg’…

Processing object config file ‘/usr/lib/nagios/plugins/snmp_vrrp.cfg’…

Processing object config file ‘/usr/lib/nagios/plugins/flexlm.cfg’…

Processing object config file ‘/usr/lib/nagios/plugins/snmp_win.cfg’…

Processing object config file ‘/usr/lib/nagios/plugins/ssh.cfg’…

Processing object config file ‘/usr/lib/nagios/plugins/ping.cfg’…

Processing object config file ‘/usr/lib/nagios/plugins/news.cfg’…

Processing object config file ‘/usr/lib/nagios/plugins/telnet.cfg’…

Processing object config file ‘/usr/lib/nagios/plugins/radius.cfg’…

Processing object config file ‘/usr/lib/nagios/plugins/fping.cfg’…

Processing object config file ‘/usr/lib/nagios/plugins/netware.cfg’…

Processing object config file ‘/usr/lib/nagios/plugins/snmp_cpfw.cfg’…

Processing object config file ‘/usr/lib/nagios/plugins/snmp.cfg’…

Processing object config file ‘/usr/lib/nagios/plugins/snmp_process.cfg’…

Processing object config file ‘/usr/lib/nagios/plugins/procs.cfg’…

Processing object config file ‘/usr/lib/nagios/plugins/ldap.cfg’…

Processing object config file ‘/usr/lib/nagios/plugins/mysql.cfg’…

Processing object config directory ‘/usr/lib/nagios/plugins/doc’…

Processing object config file ‘/usr/lib/nagios/plugins/snmp_int.cfg’…

Processing object config file ‘/usr/lib/nagios/plugins/snmp_mem.cfg’…

Processing object config file ‘/usr/lib/nagios/plugins/snmp_env.cfg’…

Processing object config file ‘/usr/lib/nagios/plugins/load.cfg’…

Processing object config directory ‘/etc/nagios3/conf.d’…

Processing object config file ‘/etc/nagios3/conf.d/timeperiods_nagios2.cfg’…

Processing object config file ‘/etc/nagios3/conf.d/contacts.cfg’…

Processing object config file ‘/etc/nagios3/conf.d/generic-host_nagios2.cfg’…

Processing object config file ‘/etc/nagios3/conf.d/generic-service_nagios2.cfg’…

Processing object config file ‘/etc/nagios3/etc/cfg/Windows/templete.cfg’…

Processing object config file ‘/etc/nagios3/etc/cfg/Windows/hosts.cfg’…

Processing object config file ‘/etc/nagios3/etc/cfg/Windows/cpd01.cfg’…

Processing object config file ‘/etc/nagios3/etc/cfg/Windows/contacts.cfg’…

Processing object config file ‘/etc/nagios3/etc/cfg/Linux/templete.cfg’…

Processing object config file ‘/etc/nagios3/etc/cfg/Linux/hosts.cfg’…

Processing object config file ‘/etc/nagios3/etc/cfg/Linux/cacti.cfg’…

Processing object config file ‘/etc/nagios3/etc/cfg/Linux/contacts.cfg’…

Processing object config file ‘/etc/nagios3/etc/cfg/Netapp/templete.cfg’…

Processing object config file ‘/etc/nagios3/etc/cfg/Netapp/hosts.cfg’…

Processing object config file ‘/etc/nagios3/etc/cfg/Netapp/redorbitanetapp.cfg’…

Processing object config file ‘/etc/nagios3/etc/cfg/Netapp/contacts.cfg’…

Warning: Duplicate definition found for service ‘Uso CPU’ on host ‘cacti_192.168.1.111’ (config file ‘/etc/nagios3/etc/cfg/Linux/cacti.cfg’, starting on line 23)

Warning: Duplicate definition found for service ‘Uso CPU’ on host ‘cacti_192.168.1.111’ (config file ‘/etc/nagios3/etc/cfg/Linux/cacti.cfg’, starting on line 16)

Read object config files okay…
Running pre-flight check on configuration data…
Checking services…

Checked 24 services.

Checking hosts…

Checked 3 hosts.

Checking host groups…

Checked 3 host groups.

Checking service groups…

Checked 0 service groups.

Checking contacts…

Checked 4 contacts.

Checking contact groups…

Checked 4 contact groups.

Checking service escalations…

Checked 0 service escalations.

Checking service dependencies…

Checked 0 service dependencies.

Checking host escalations…

Checked 0 host escalations.

Checking host dependencies…

Checked 0 host dependencies.

Checking commands…

Checked 193 commands.

Checking time periods…

Checked 4 time periods.

Checking for circular paths between hosts…

Checking for circular host and service dependencies…

Checking global event handlers…

Checking obsessive compulsive processor commands…

Checking misc settings…
Total Warnings: 0

Total Errors: 0

Things look okay – No serious problems were detected during the pre-flight check

Y reiniciamos nagios

bash
rokitoh@nagios:/etc/nagios3/etc/cfg/Netapp# /etc/init.d/nagios3 reload

Reloading nagios3 monitoring daemon configuration files: nagios3.

rokitoh@nagios:/etc/nagios3/etc/cfg/Netapp#

Abrimos nagios en nuestro navegador favorito y si todo a salido bien lo tendríamos que tener OK!

Nagios netapp1

Un saludo, rokitoh!

Comentarios