La instalación de Nagios ya está hecha. Puede saltar al paso 3
$ sudo apt-get install nagios3 nagios3-doc
Nagios web administration password:
$ sudo apt-get install --reinstall iputils-ping
En este momento tendrá un servidor web instalado en su nodo, pero es posible que necesite iniciarlo. Para iniciar su servidor web, haga lo siguiente:
$ sudo systemctl enable apache2
$ sudo systemctl start apache2
Para que iniciar Nagios ahora, y para que se inicie automáticamente cuando el nodo se inicie, ejecute lo siguiente:
$ sudo systemctl enable nagios3
$ sudo systemctl start nagios3
Abra un navegador, y vaya a su servidor así:
http://hostX.campusY.ws.nsrc.org/nagios3/
En la ventana de login, escriba lo siguiente:
User Name: nagiosadmin
Password: <PASSWORD DE LA CLASE>
Oprima el enlace "Hosts" situado a la izquierda de la página inicial de Nagios para ver lo que se ha configurado por defecto.
Oprima el enlace "Services" para ver que servicios locales están siendo monitoreados1.
Crearemos tres archivos, routers.cfg, switches.cfg y pcs.cfg y entradas para los dispositivos en su campus. Si lo desea, puede simplemente crear un solo archivo para todos los elementos. Nagios leerá cualquier archivo llamado *.cfg y resolverá los detalles por su cuenta.
Si quiere ayuda para comprender cómo se ve la red de su campus, eche un vistazo al diagrama de red detallado para el campus1, cuyo enlace se encuentra en la página principal de su taller.
Cada grupo terminará monitorizando cada elemento en su campus, incluyendo:
Enrutadores
Conmutadores
Estaciones
$ cd /etc/nagios3/conf.d (Solo para estar seguro)
$ sudo editor routers.cfg
'' 'NOTA:' '' Y es el número de su campus (1, 2, 3, 4, 5 ó 6)
define host {
use generic-host
host_name transit1.nren
alias Campus Y Transit Provider Router
address transit1.nren.ws.nsrc.org
}
define host {
use generic-host
host_name bdr1.campusY
alias Campus Y Border Router
address bdr1.campusY.ws.nsrc.org
}
define host {
use generic-host
host_name core1.campusY
alias Core Router 1, Campus Y
address core1.campusY.ws.nsrc.org
}
Grabe el archivo y salga del editor.
Verifiquemos que nuestros cambios están funcionando. En la línea de comandos, haga lo siguiente:
$ sudo nagios3 -v /etc/nagios3/nagios.cfg
Si no encuentra ningún error (las advertencias "warnings" no son críticas), entonces puede reiniciar Nagios con su nueva configuración:
$ sudo systemctl reload nagios3
Y en un navegador, vea lo siguiente:
http://hostX.campusY.ws.nsrc.org/nagios3/
y oprima "hosts". Debería poder ver su lista de enrutadores. Es posible que estén todavía por chequear. En su momento, se verán de color verde, cuando Nafios haya corrido el chequeo.
Ahora seguiremos el mismo procedimiento para los conmutadores.
En este archivo, agregue la siguiente entrada (COPIAR y RESTAURAR!):
$ cd /etc/nagios3/conf.d (para estar seguros)
$ sudo editor switches.cfg
Agregue las siguientes entradas en el archivo. Si quiere, puede COPIAR y RESTAURAR, pero asegurese de actualizar "Y" con el número de su campus:
define host {
use generic-host
host_name dist1-b1.campusY
alias Distribution Switch 1, Building 1, Campus Y
address dist1-b1.campusY.ws.nsrc.org
}
define host {
use generic-host
host_name dist1-b2.campusY
alias Distribution Switch 1, Building 2, Campus Y
address dist1-b2.campusY.ws.nsrc.org
}
Grabe el archivo y salga del editor.
Ahora crearemos entradas para las 6 máquinas virtuales individuales (nodos 1 al 6) y el servidor compartido de nuestro campus (srv1)
$ cd /etc/nagios3/conf.d (Solo para estar seguro)
$ sudo editor pcs.cfg
Para cada campus, introduzca lo siguiente al inicio del archivo pcs.cfg (reemplace la letra "Y" con el número de su campus):
define host {
use generic-host
host_name srv1.campusY
alias Server 1, Campus Y
address srv1.campusY.ws.nsrc.org
}
Este es un ejemplo de la entrada para nodo 1:
define host {
use generic-host
host_name host1.campusY
alias Host 1, Campus Y
address host1.campusY.ws.nsrc.org
}
Repita estos pasos para cada uno de los nodos restantes. Al final deberá tener un archivo pcs.cfg con una entrada srv1.campusY definida, y sus otros 6 nodos, para un total de 7 entradas.
** REPITA LOS SIGUIENTES PASOS CADA VEZ QUE HAGA CAMBIOS EN SU CONFIGURACIÓN **
$ sudo nagios3 -v /etc/nagios3/nagios.cfg
Debería ver algunas advertencias como las mostradas debajo. Puede ignorarlas por ahora.
Checking services...
Checked 6 services.
Checking hosts...
Warning: Host 'bdr1.campus6' has no services associated with it!
Warning: Host 'core1.campus6' has no services associated with it!
Warning: Host 'db.campus6' has no services associated with it!
etc....
...
Total Warnings: 11
Total Errors: 0
Todo parece estar bien. No se detectaron problemas serios durante el chequeo de la configuración. Nagios está diciendo que no es común monitorear un nodo sólo por su existencia en la red, sin monitorear también algún servicio.
$ sudo systemctl restart nagios3
SUGERENCIA: Va a estar haciendo esto muchas veces. Si lo hace en una sola línea, como sigue, entonces puede usar la flecha hacia arriba para repetir el comando:
$ sudo nagios3 -v /etc/nagios3/nagios.cfg && sudo systemctl restart nagios3
El símbolo '&&' es un "AND" lógico y asegura que el reinicio sólo se ejecute si la configuración es válida.
Vaya a la interfaz web (http://hostX.campusY.ws.nsrc.org/nagios3) y compruebe que los nodos que acaba de agregar aparecen en la interfaz. Oprima "Hosts" a la izquierda de la pantalla para verlos. Puede que vea el estado "PENDING" hasta que el chequeo se realice.
Vaya a http://hostX.campusY.ws.nsrc.org/nagios3
Oprima el enlace "Map" en el menú de la izquierda. Debería ver todos sus nodos con el proceso de Nagios en el medio. Los símbolos "?" significan que no hemos indicado a Nagios qué tipo de nodo es cada uno (enrutador, switch, AP, PC corriendo Linux, etc.). Esto lo haremos más adelante.
Ahora que ya hemos agregado los nodos, podemos comenzar diciéndole a Nagios qué servicios monitorear sobre los nodos configurados, cómo agrupar los nodos de manera útil, cómo agrupar servicios, etc.
$ cd /etc/nagios3/conf.d (Solo para estar seguro)
$ sudo editor hostgroups_nagios2.cfg
members localhost
a
members localhost,srv1.campusY
done "Y" es sú número de campus.
Salga y grabe el archivo editado.
Verifique que los cambios están bien:
$ sudo nagios3 -v /etc/nagios3/nagios.cfg
Reinicie Nagios para ver el nuevo servicio asociado a nuestro nodo:
$ sudo systemctl restart nagios3
En la interfaz web de Nagios encuentre el enlace "Services" (en el menú de la izquierda) y oprímalo. Debería poder encontrar los cambios recientes:
srv1.campusY SSH PENDING ...
Para empezar, simplemente estamos usando ping para verificar que nuestros servidores y dispositivos de red responden o estan "Arriba". Hasta ahora solo estamos monitoreando ssh en el servidor en su campus.
Ahora agreguemos monitoreo de servicios para los otros servidores y dispositivos de red:
En este taller en particular tenemos:
El NOC del taller está actualmente ejecutando un servicio SNMP que podemos monitorear, si lo desea.
En el archivo "services_nagios2.cfg" hay ya una entrada para comprobar el servicio SSH, así que no tiene que crearla en este paso. En su lugar, simplemente tiene que redefinir la entrada "ssh-servers" en el archivo /etc/nagios3/conf.d/hostgroups_nagios2.cfg. Modificar este archivo, añadiendo el host 'srv1.campusY', de forma que quede como:
# A list of your ssh-accessible servers
define hostgroup {
hostgroup_name ssh-servers
alias SSH servers
members localhost,srv1.campusY
}
Ahora actualice con el resto de los dispositivos del campus, así como también con el enrutador de tránsito.
La entrada debe lucir como sigue:
define hostgroup {
hostgroup_name ssh-servers
alias SSH servers
members host1.campusY, host2.campusY, host3.campusY, host4.campusY, \
host5.campusY, host6.campusY, srv1.campusY, transit1.nren, \
bdr1.campusY, core1.campusY, dist1-b1.campusY, dist1-b2.campusY
}
NOTA:
Hemos eliminado a "localhost" (nodo local) de la lista anterior. Haremos lo mismo para los "hostgroups" restantes.
La entrada "members" será una línea larga y probablemente no cabrá en la pantalla. Si prefiere, puede agregar entradas en líneas adicionales usando el carácter "" para indicar que la línea continúa, así:
Solo incluya entradas que haya definido previamente. Por lo tanto, incluya todos los servidores, enrutadores y conmutadores que haya configurado previamente.
Una vez que haya terminado, ejecute el chequeo de la configuración y reinicie Nagios:
$ sudo nagios3 -v /etc/nagios3/nagios.cfg && sudo systemctl restart nagios3
... y vea sus cambios en la interfaz web.
Para continuar con los hostgroups puede agregar grupos adicionales para usar más tarde, por ejemplo, los enrutadores del campus. Edite el archivo hostgroups_nagios2.cfg de nuevo:
$ cd /etc/nagios3/conf.d (Solo para estar seguro)
$ sudo editor hostgroups_nagios2.cfg
y añada lo siguiente al final del archivo (COPIAR Y RESTAURAR):
# Una Lista de nuestros enrutadores
define hostgroup {
hostgroup_name routers
alias Cisco Routers and Switches for CampusY
members bdr1.campusY,core1.campusY,transitN.nren
}
Grabe y salga del archivo. Verifique que todo está bien:
$ sudo nagios3 -v /etc/nagios3/nagios.cfg
Si todo está bien, entonces reinicie Nagios
$ sudo systemctl restart nagios3
De manera similar al grupo "ssh-servers", crearemos un chequeo para HTTP en todos los dispositivos corriendo un servidor web en su campus. Esto incluirá:
Hosts
Edite el archivo hostgroups_nagios2.cfg:
$ cd /etc/nagios3/conf.d (Solo para estar seguro)
$ sudo editor hostgroups_nagios2.cfg
Y busque lo siguiente:
# Una lista de sus servidores web
define hostgroup {
hostgroup_name http-servers
alias HTTP servers
members localhost
}
Actualice esta entrada para agregar los nodos en la lista de más arriba. Puede eliminar el nodo "locahost".
Si tiene preguntas o está confundido, por favor no dude en preguntar a un instructor.
Cuando termine con sus cambios, grabe su archivoy verifique la configuración:
$ sudo nagios3 -v /etc/nagios3/nagios.cfg
Si todo está bien, reinicie Nagios:
$ sudo systemctl restart nagios3
Ahora, diríjase a la interfaz web de Nagios y oprima la opción "Hosts" en el menú de la izquierda.
Ya está listo para continuar con el próximo grupo de ejercicios.
Si vé el error "DISK CRITICAL - /sys/kernel/debug/tracing is not accessible: Permission denied" indica que ha encontrado un minor bug.
Si lo desea, puede ignorarlo, pero si quiere arregarlo debe editar /etc/nagios-plugins/config/disk.cfg
y cambiar la linea command_line
de la estructura de la definición del comando check_all_disks
:
# 'check_all_disks' command definition
define command{
command_name check_all_disks
command_line /usr/lib/nagios/plugins/check_disk -w '$ARG1$' -c '$ARG2$' -e -X tracefs -X cgroup -X tmpfs
}
↩