2. Nagios
-Aplicación de código abierto para monitoreo de redes y sistemas.
-Monitoreo de servidores y servicios.
-Acciones ante inconvenientes y recuperaciones.
3. Características de Nagios
-Monitoreo de recursos de servidores.
-Monitoreo de servicios.
-Diseño simple de plugins, que le permite a los usuarios desarrollar fácilmente sus propios chequeos de servicios.
-Chequeo de servicios en paralelo.
-Habilidad de definir jerarquía de hosts, permitiendo la detección y distinción entre hosts que están caídos y aquellos que están inalcanzables.
-Notificaciones ante inconvenientes/recuperaciones.
-Handlers para resolución proactiva de incidentes.
-Interfaz web para control de estado de los distintos servidores y servicios, historial de notificaciones y problemas, archivo de log, etc.
4. Métodos de monitoreo
- NRPE (Nagios Remote Plugin Executor)
- NSCA (Nagios Service Check Acceptor)
8. Ejemplo: Verificación de llamadas activas en el servidor Elastix (1)
1) Desarrollo de un script, en el servidor remoto.
2) Instalación de NRPE y configuración, en el servidor remoto.
3) Configuración del servicio, en el servidor Nagios.
9. Ejemplo: Verificación de llamadas activas en el servidor Elastix (2)
1) Desarrollo de un script, en el servidor remoto.
[root@servidor-remoto /usr/lib/nagios/plugins]# vim check_llamadas_activas.sh
#!/bin/bash
LlamadasActivas=`sudo asterisk -rx 'core show channels‘ | grep "active calls“ | awk
'{print $1}'`
echo "Llamadas activas = ${LlamadasActivas}"
exit 0
[root@servidor-remoto /usr/lib/nagios/plugins]# chmod +x check_llamadas_activas.sh
10. Ejemplo: Verificación de llamadas activas en el servidor Elastix (3)
2) Instalación de NRPE y configuración, en el servidor remoto.
[root@servidor-remoto ~]# yum install nrpe nagios-plugins-all
[root@servidor-remoto ~]# vim /etc/nagios/nrpe.cfg
…
…
…
command[check_llamadas]=/usr/lib/nagios/plugins/check_llamadas_activas.sh
[root@servidor-remoto ~]# service nrpe restart
Dar permisos al usuario NRPE para ejecutar comandos Asterisk.
11. Ejemplo: Verificación de llamadas activas en el servidor Elastix (4)
3) Configuración del servicio, en el servidor Nagios.
define host {
use generic-host
host_name Servidor Elastix
alias Servidor Elastix
address 10.9.0.206
contacts testing
}
define contact {
contact_name testing
alias Testing
use generic-contact
email fernando.montiel@freetechsolutions.com.ar
}
12. Ejemplo: Verificación de llamadas activas en el servidor Elastix (5)
3) Configuración del servicio, en el servidor Nagios.
define service {
use generic-service
host_name Servidor Elastix
service_description Llamadas activas
check_command check_llamadas_activas
normal_check_interval 1
}
define command {
command_name check_llamadas_activas
command_line /usr/lib/nagios/plugins/check_nrpe -H $HOSTADDRESS$ -c
"check_llamadas"
}
13. Alternativas de plugins
- Utilización de plugins personalizados (scripts).
- Utilización de plugins desarrollados por la comunidad Nagios:
exchange.nagios.org
exchange.nagios.org/directory/Plugins/Telephony/Asterisk
15. PNP4Nagios
- Complemento para Nagios.
- Muy fácil instalación.
- Análisis de datos de rendimiento obtenidos por los plugins.
- Almacenamiento en bases de datos RDD (Round Robin Databases).