_La instalación de Nagios ya está hecha. Asi, algunos pasos son extras__
$ sudo apt install nagios4
Nagios web administration password:
$ sudo apt 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
Verificamos si apache2 esta corriendo como esperado:
$ sudo systemctl status apache2
Apreta ‘q’ para salir si los datos llena su pagina:
Para que iniciar Nagios ahora, y para que se inicie automáticamente cuando el nodo se inicie, ejecute lo siguiente:
$ sudo systemctl enable nagios4
$ sudo systemctl start nagios4
Verificamos que natios3 esta corriendo como esperamos:
$ sudo systemctl status nagios4
Apreta ‘q’ para salir si los datos llena su pagina:
Abra un navegador, y vaya a su servidor así:
https://oob.hostX.campusY.p.vtp-us.nsrc.org/nagios4/
En la ventana de login, escriba lo siguiente (posible que no hay usuario/clave):
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/nagios4/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-switch
host_name transit1.nren
alias Transit Router 1
address transit1.nren.ws.nsrc.org
}
define host {
use generic-switch
host_name bdr1.campus6
alias Campus 6 Enrutador Borde
address bdr1.campus6.ws.nsrc.org
}
define host {
use generic-switch
host_name core1.campus6
alias Campus 6 Enrutador Core
address core1.campus6.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 nagios4 -v /etc/nagios4/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 nagios4
Y en un navegador, vea lo siguiente:
https://oob.hostX.campusY.p.vtp-us.nsrc.org/nagios4/
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/nagios4/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 Switch de distribucion 1, Edificio 1, Campus Y
address dist1-b1.campusY.ws.nsrc.org
}
define host {
use generic-host
host_name dist1-b2.campusY
alias Switch de distribucion 1, Edificio 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/nagios4/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 linux-server
host_name srv1.campusY
alias Servidor 1, Campus Y
address srv1.campusY.ws.nsrc.org
}
Este es un ejemplo de la entrada para nodo 1:
define host {
use linux-server
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 nagios4 -v /etc/nagios4/nagios.cfg
Debería ver algunas advertencias como las mostradas debajo. Puede ignorarlas por ahora.
Checking objects...
Checked 8 services.
Checked 13 hosts.
Checked 1 host groups.
Checked 0 service groups.
Checked 1 contacts.
Checked 1 contact groups.
Checked 212 commands.
Checked 5 time periods.
Checked 0 host escalations.
Checked 0 service escalations.
Checking for circular paths...
Checked 13 hosts
Checked 0 service dependencies
Checked 0 host dependencies
Checked 5 timeperiods
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
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 nagios4
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 nagios4 -v /etc/nagios4/nagios.cfg && sudo systemctl restart nagios4
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/nagios4) 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.
https://oob.host6.campus6.p.vtp-us.nsrc.org/nagios4/
Oprima el enlace “Map” en el menú de la izquierda. Debería ver todos sus nodos con el proceso de Nagios en el medio. El “(Legacy)” no va a funcionar en este caso.
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.
En este parte vamos a crear una definición de tipo de servicio y una definición de grupos (hostgroups) en que Nagios hace un chequeo de servicio por los hosts que son miembros.
$ cd /etc/nagios4/conf.d (Solo para estar seguro)
$ sudo editor services.cfg
Ahora, creamos una definición del servicio ssh:
En el archivo services.cfg agrega:
define service {
hostgroup_name ssh-servers
service_description SSH
check_command check_ssh
use generic-service
# ssh occasionally flaps. Let's be sure it's down.
retry_interval 2
max_check_attempts 10
notification_interval 0 ; set > 0 if you want to be renotified
}
Guardar y exitar el archivo.
Y, ahora, vamos a hacer un grupo de maquinas (hosts) que corren ssh:
$ sudo editor hostgroups.cfg
Y, empezamos con algo simple. Definamos que el localhost y el host srv1.campus6 corren ssh:
En el archivo agrega:
define hostgroup
hostgroup_name ssh-servers
alias SSH Servers
members localhost,srv1.campus6
}
Y, ahora, para asegurar que todo esta bien:
$ sudo nagios4 -v /etc/nagios4/nagios.cfg && sudo systemctl restart nagios4
Para verificar que esta corriendo bien abre tu pagina web de Nagios:
https://oob.host6.campus6.p.vtp-us.nsrc.org/nagios4/
Y, apreta a la izquierda de la pantalla “Services” para ver si los hosts “localhost” y “srv1.campusY” estan.
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.
Como acabamos de hacer, tenemos el service ssh configurado, asi solamente necesita agregar mas maquinas en el archivo /etc/nagios4/conf.d/hostgroups.cfg. Como tenemos ahora:
# 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 srv1.campus6, host1.campus6, host2.campus6, host3.campus6, \
host4.campus6, host5.campus6, host6.campus6, transit1.nren, \
bdr1.campus6, core1.campus6, dist1-b1.campus6, dist1-b2.campus6
}
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 nagios4 -v /etc/nagios4/nagios.cfg && sudo systemctl restart nagios4
… y vea sus cambios en la interfaz web en “Services” en la izquierda de la pantalla.
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/nagios4/conf.d (Solo para estar seguro)
$ sudo editor hostgroups.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,transit1.nren
}
Grabe y salga del archivo. Verifique que todo está bien:
$ sudo nagios4 -v /etc/nagios4/nagios.cfg
Si todo está bien, entonces recarga Nagios
$ sudo systemctl reload nagios4
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.cfg:
$ cd /etc/nagios4/conf.d (Solo para estar seguro)
$ sudo editor hostgroups.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 nagios4 -v /etc/nagios4/nagios.cfg
Si todo está bien, recarga Nagios:
$ sudo systemctl reload nagios4
Ahora, diríjase a la interfaz web de Nagios y oprima la opción “Hosts” en el menú de la izquierda y, después, la opción “Host Groups” y vea que hay en esta pagīna.
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.
It is safe to ignore this, but if you want to fix it you would edit
/etc/nagios-plugins/config/disk.cfg
and change the
command_line
of the check_all_disks
command
definition like this:
# '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
}
↩︎