Nagios
Nagios
Nagios
Oscar A. Serqun
aserquen@unprg.edu.pe aserquen@gmail.com
Agenda
Introduccin
4
Las redes de computo de las organizaciones, se vuelven cada vez mas complejas y la exigencia de la operacin es cada vez mas demandante. Las redes, cada vez mas, soportan aplicaciones y servicios estratgicos de las organizaciones. Por lo cual el anlisis y monitoreo de redes se ha convertido en una labor cada vez mas importante y de carcter pro-activo para evitar problemas.
..Que hacer?
Para prevenir errores en un sistema existente podemos utilizar un equipo que se ocupe de estar controlado y observando el funcionamiento de la red,
aserquen@gmail.com
Monitoreo de red
Describe el uso de un sistema que constantemente monitoriza una red de computadoras en busca de componentes defectuosos o lentos, para luego informar a los administradores de redes mediante correo electrnico, u otras alarmas. Es un subconjunto de funciones de la administracin de redes
aserquen@gmail.com
Algunas Consideraciones
7
Mientras que un sistema de deteccin de intrusos monitorea una red por amenazas del exterior (externas a la red). Un sistema de monitoreo de red busca problemas causados por la sobrecarga y/o fallas en los servidores, como tambin problemas de la infraestructura de red (u otros dispositivos).
aserquen@gmail.com
Herramientas de Monitoreo
aserquen@gmail.com
aserquen@gmail.com
Introduccin
10
Herramienta principalmente de monitorizacin activa de disponibilidad Posiblemente la ms utilizada en la categora de software libre. GNU General Public License Interfaz Web:
13
14
15
Monitorizacin remota
A travs de tuneles SSL cifrados o SSH.
16
Diseo
Diseo simple de plugins, que permiten a los usuarios desarrollar sus propios chequeos de servicios dependiendo de sus necesidades, usando sus herramientas preferidas (Bash, C++, Perl, Ruby, Python, PHP, C#, Java, etc.).
Ventajas
17
La arquitectura es muy simple, por lo que es fcil escribir plugins (en cualquier lenguaje) Existen docenas de plugins, muchos contribuidos por terceros 3 se lo hace ya mejor chequeos en paralelo.
aserquen@gmail.com
Ms Ventajas
18
Programacin de chequeos inteligente. Busca una distribucin equitativa de la carga de la mquina que ejecuta Nagios, y la mquina siendo chequeada Configuraciones (en archivos de texto) muy detalladas y basadas en plantillas Lea su configuracin al nivel de directorio. Tu decides como definir los archivos.
Ventajas
19
Diferenciacin entre lo que est 'cado' y lo que est 'inalcanzable' as no se tratar de hacer chequeos de los maqunas no 'inalcanzable'
contactos y listas de contactos dispositivos y grupos de dispositivos servicios y grupos de servicios. horarios definidos por grupos o personas. El estado de servicio:
aserquen@gmail.com
Ventajas
20
Estado de Servicio:
En la configuracin de un servicio la option notification_options tiene lo siguiente posibilidades: d: DOWN: El servicio o host esta caido u: UNREACHABLE: Cuando el host no es visible o es inalcanzable r: RECOVERY: (OK) Cuando el host se recupero f: FLAPPING: Cuando el host se inicia o detiene, o el estado es indeterminado. n: NONE: No enviar notificaciones
Monitoreo de Servidores con Nagios - Oscar A. Serquen aserquen@gmail.com
Ventajas
21
Mecnica de chequeos
22
Uno nodo o dispositivo (host) consta de uno o ms servicios a chequear (PING, HTTP, MYSQL, SSH, etc)
Nagios chequea peridicamente cada servicio de cada nodo y determina si ha habido algn cambio de estado: CRITICAL WARNING UNKNOWN
A cada cambio de estado, se le puede asignar: Opciones de notificacin (como vimos antes) Operaciones de manejo de eventos (event handlers)
Monitoreo de Servidores con Nagios - Oscar A. Serquen aserquen@gmail.com
Mecnica de chequeos
23
Parmetros
Intervalo de chequeo normal Intervalo de re-chequeo Nmero mximo de chequeos Perodo de chequeo
Los chequeos de nodo (host) slo se ejecutan cuando ninguno de los servicios responde
Mecnica de chequeos
24
As se puede demorar hasta que un host cambia su estado a down (no disponible/alcanzable) por el hecho de que Nagios hace un chequeo de servicios primero, despus se hace el chequeo de nodo y no se considera que un host esta DOWN hasta que lo hace el chequeo 3 veces (por defecto). Puedes cambiar el numero de chequeos.
25
Concepto de Parents
ejemplo, el parent de un pc conectado a un switch seria el switch. Nos permite especificar los dependencias que hayan en la red entre maquinas, switches, routers, etc. Evita que Nagios manda alarmas si un parent ya no responde.
26
Donde queda tu servidor de Nagios en la red va a cambiar como vea y monitorea nodos y servicios. Nagios apoya el concepto de servidores en paralelo que corren en otro partes de tu red. Asi, probablemente mejor que el servidor corre cerca el borde de tu red y no adentro.
27
28
29
Monitoreo de Linux/Unix
30
Monitoreo de Router/Switch
Archivos de Configuracin
31
aserquen@gmail.com
32
Archivos de Configuracin
Controla el interfaz de Web y los opciones de seguridad. nagios.cfg El archivo principal de configuracin objects/* El resto de los archivos de configuracion por servicios, grupos, nodos, etc.
33
Archivos de Configuracin
Bajo /usr/local/nagios/etc/objets/*
contacts.cfg usuarios y grupos template.cfg plantilla host (defecto) , plantilla servicio (defecto) hostgroups.cfg definiciones de grupos de hosts services.cfg que servicios chequear timeperiods.cfg cuando chequear y como y quien a notificar
Monitoreo de Servidores con Nagios - Oscar A. Serquen aserquen@gmail.com
34
Archivos de Configuracin
Extra o opcionales Bajo /usr/local/nagios/etc/objets/*
definicion de ruta por defecto informacion extra por nodos grupos de maqunas y servicios definicion de monitoreo por el servidor de Nagios (localhost) definicion de un grupos de nodos definicion de un grupo de switches definicion de un grupo de routers
Configuracin Principal
35
la ubicacin de los dems archivos de configuracin Comportamiento de Nagios en general Importante ajustar para asegurar un buen desempeo en instalaciones con cientos de servicios monitorizados
Ver:
Configuracin de CGI
36
Archivo: /usr/local/nagios/etc/cgi.cfg
Activar autenticacin en Apache va .htpasswd (o Radius/Ldap) Listar los nombres de usuario en las variables de autorizacin: authorized_for_system_information authorized_for_configuration_information authorized_for_system_commands authorized_for_all_services authorized_for_all_hosts authorized_for_all_service_commands authorized_for_all_host_commands
Configuracin de Perodos
37
24x7 24 Hours A Day, 7 Days A Week 00:00-24:00 00:00-24:00 00:00-24:00 00:00-24:00 00:00-24:00 00:00-24:00 00:00-24:00
38
# 'check-host-alive' command definition define command{ command_name check-host-alive command_line $USER1$/check_ping -H $HOSTADDRESS$ -w 2000.0,60% -c 5000.0,100% -p 1 -t 5 }
Comandos de notificacin
39
Permite utilizar cualquier mtodo de notificacin, siempre que se pueda ejecutar algn comando para ello:
# 'notify-by-email' command definition define command{ command_name notify-by-email command_line /usr/bin/printf "%b" "Service: $SERVICEDESC$\nHost: $HOSTNAME$\nIn: $HOSTALIAS$\nAddress: $HOSTADDRESS$\nState: $SERVICESTATE$\nInfo: $SERVICEOUTPUT$\nDate: $SHORTDATETIME$" | /bin/mail -s '$NOTIFICATIONTYPE$: $HOSTNAME$/$SERVICEDESC$ is $SERVICESTATE$' $CONTACTEMAIL$ }
From: nagios@nms.localdomain To: grupo-redes@localdomain Subject: Host DOWN alert for switch1! Date: Thu, 29 Jun 2006 15:13:30 -0700 Host: switch1 In: Core_Switches State: DOWN Address: 111.222.333.444 Date/Time: 06-29-2006 15:13:30 Info: CRITICAL - Plugin timed out after 6 seconds
define host{ name notifications_enabled event_handler_enabled flap_detection_enabled process_perf_data retain_status_information retain_nonstatus_information check_command max_check_attempts notification_interval notification_period notification_options contact_groups register }
Monitoreo de Servidores con Nagios - Oscar A. Serquen aserquen@gmail.com
Configuracin de nodo
42
define service{ name active_checks_enabled passive_checks_enabled parallelize_check obsess_over_service check_freshness notifications_enabled event_handler_enabled flap_detection_enabled process_perf_data retain_status_information retain_nonstatus_information is_volatile check_period max_check_attempts normal_check_interval retry_check_interval notification_interval notification_period notification_options register }
Configuracin de Servicio
44
define service{ host_name use service_description check_command max_check_attempts normal_check_interval notification_options contact_groups }
Integracin de Add-ons
45
Referencias
46
http://www.nagios.org: Sitio web de Nagios http://sourceforge.net/projects/nagiosplug: Sitio web de los plugins de Nagios
Nagios. System and Network Monitoring. Wolfgang Barth.
completo.
47
Ms Recuros
Pagna Principal de Nagios http://www.nagios.org/
48
49
50
Tipos de Servicios
51
52
53
54
55
Histogram de un Host
56
Event Logs
57
58