miércoles, 14 de marzo de 2012

Nagios, Monitorización de Routers y Switches

En esta publicación, explicare brevemente el proceso de monitorizar un switch cisco por medio de la herramienta nagios, el proceso para monitorizar un enrutador es el mismo. Es importante recordar que solamente es posible monitorizar dispositivos que sean administrables.

Los equipos no administrables no pueden ser monitorizados de ninguna manera, debido a que estos no poseen una dirección IP. La selección de equipos de telecomunicaciones no administrables, realmente dependerá de los alcances que se pretenden en una red.

En este caso explicare la forma de monitorizar un switch cisco modelo 2950T de 24 puertos, para este equipo verificaremos las perdidas de paquetes, tiempo de respuesta y verificaremos el tiempo que este ha estado disponible, mediante el uso de snmp.


Lo primero que hay que hacer es saber que nagios esta compuesto por una serie de archivos relacionados uno con otro, por lo que se deberá de tener mucho cuidado de no nadar alguno de estos. Al principio puede resultar muy difícil detectar problemas o errores en estos archivos, sin embargo existen formas de remediar este problema.

La ubicación de los archivos de configuración puede cambiar dependiendo de la distribución de Linux que se utiliza, en este caso estaré utilizando Fedora Core 16 el directorio esta en la siguiente ruta: /etc/nagios

Linux# cd /etc/nagios
Linux# ls
cgi.cfg  generic-service.cfg  lcgdm-commands.cfg  lcgdm-services.cfg  nrpe.cfg  passwd
conf.d   htpasswd.users       lcgdm-hosts.cfg     nagios.cfg          objects   private


entraremos al directorio objects y visualicemos el contenido.

Linux# cd objects
Linux# ls

commands.cfg  contacts.cfg  localhost.cfg  printer.cfg  switch.cfg  templates.cfg  timeperiods.cfg  windows.cfg

El primer archivo que modificaremos sera el switch.cfg para agregar la información del switch cisco que estaremos monitorizando con Nagios


Archivo de configuración donde se debera de ingresar los switches que se estaran monitorizando en Nagios.

Linux# vi switch.cfg

###############################################################################
###############################################################################
#  
# HOST DEFINITIONS
#
###############################################################################
###############################################################################

# Define the switch that we'll be monitoring


define host{
        use                 generic-switch
        host_name           sw-central
        alias               sw-central
        address             192.168.1.12
        hostgroup           switches-l2
        }

###############################################################################
###############################################################################
#
# HOST GROUP DEFINITIONS
#
###############################################################################
###############################################################################

# Create a new hostgroup for switches

define hostgroup{
        hostgroup_name  switches-l2            
        alias           Network Switches       
        }

###############################################################################
###############################################################################
#
# SERVICE DEFINITIONS
#
###############################################################################
###############################################################################
# Create a service to PING to switch


define service{
        use                     generic-service
        host_name               sw-central    
        service_description     PING
        check_command           check_ping!200.0,20%!600.0,60%
        normal_check_interval   5
        retry_check_interval    1             
        }

# Monitor uptime via SNMP

define service{
      use                     generic-service
      host_name               sw-central
      service_description     Uptime
      check_command    check_snmp!-C public -o .1.3.6.1.2.1.1.3.0
        }
##################################################

Una vez agregado estos parámetros es necesario entrar al archivo de configuración general de nagios, /etc/nagios/nagios.cfg y descomentariar la linea que indica cual es archivo donde se encuentran las configuraciones de switches.

Linux# vi /etc/nagios/nagios.cfg

# Definitions for monitoring a router/switch
#cfg_file=/etc/nagios/objects/switch.cfg


Una vez que se localicen estas lineas basta con descomentar la segunda linea para que quede de la siguiente manera:

# Definitions for monitoring a router/switch
cfg_file=/etc/nagios/objects/switch.cfg


Guarde los cambios y salga del archivo, con esto ya debería de estar agregado un nuevo equipo, al cual se le están controlando dos procesos, icmp y tiempo de vida del equipo. Sin embargo recuerde que debera de reiniciar el servicio de nagios cada vez que realice un cambio, para que estos cambios funcionen. 

Linux# /etc/init.d/nagios restart
 

14 comentarios:

Giovani Castillo (Ipswich) dijo...

Excelente aporte, ahora a poner en practica

Derman Zepeda dijo...

Gracias mi estimado... pronto espero tener listo uno mas,,,,

Anónimo dijo...

Felicitaciones por tan buen material disponible, grande el hombre que posee sabiduria, pero aun mas grande el que la comparte.

Anónimo dijo...

Muy bueno me gustaria saber como instalar el comando check_snmp

Juan Jose Garces Garcia dijo...

Buenas, he seguido tus pasos y me dá el siguiente error, aunque realmente hago ping contra destino...

(Return code of 127 is out of bounds - plugin may be missing)
Debian 6.0.5 + Nagios 3.4.1

Gracias

elviscanal dijo...

Gracias por el manual,, pero no me queda claro que es lo que debo activar el el switch cisco, osea lo del ping me funciona ok pero lo del snmp aun no me fnciona por mas que lo active pero tiene miles de opciones, no se cuales debo usar y si ponerle public o no se que :S saludos y a ver si me das una pista

Jonathan Jair Ortiz Muñoz dijo...

Una consulta, como puedo monitorizar el consumo de ancho de banda de cada puerto en un switch?

Derman Zepeda dijo...

Bueno mil disculpas px no explique la parte de configuración de snmp en el switch. Lo ideal es configurar lo básico para no comprometer la seguridad o los equipos.

Router


Rout1(config)# snmp-server community clave_asignada RO

donde clave_asignada es la clave utilizada para la comunidad,, otra cosa que podrias revisar es si este numero de objeto que indico en el ejemplo es el mismo para tu equipo, algo asi me sucedio y lo unico es cambiar el numero del OID ".1.3.6.1.2.1.1.3.0"

Bueno, espero que esto sea de utilidad.

Derman Zepeda dijo...

Para la consulta de Jonathan Jair, una buena opcion seria utilizar alguna herramienta como cacti:

Instalacion de Cacti en Linux

Anónimo dijo...

Hasta ahor son muy buenos lo que has echo, una consulta y la confugaracion para enviar por correo algun reporte de caida de equipos desde el nagios podria ser posible???

Anónimo dijo...

Hola buena info, podre saber a que boca estoy conectado del switch con este software? saludos

Anónimo dijo...

Hola! me podrian apoyar con esto:
Estoy configurando una VPN con dos equipos cisco el RV120W Y ES SA520, mi provedor de servicios de interne es telmex, ya hici varias configuraciones y una ellas si me resulto y fue poniendo mis modens en tipo puente y haci pude levantar la VPN. Quisiera saber si hay otra manera para configurar esto sin poner los modens en puente.
SALUDOS.

Anónimo dijo...

Muy incompleta tu info, igual se agradece..

omer dijo...

Gracias Prof. Zepeda por su excelente blog...

Publicar un comentario