La semana pasada dejamos nuestro nagios funcionando pero un tanto soso. El mapa de estado (tal vez la pantalla más vistosa de la herramienta) queda bastante pobre sin logos identificativos para cada máquina y tan sólo comprobábamos que las máquinas respondieran a un ping sin monitorizar servicio alguno.
Hoy vamos a empezar por ponerlo bonito. Lo primero que necesitamos son logotipos. En el apartado correspondiente de Nagios Exchange tenemos varias colecciones para elegir. Yo uso habitualmente dos de ellas: Base Images para los ordenadores y Cook Images para la electrónica de red. Los descargamos, los descomprimimos y los copiamos en el directorio /usr/local/nagios/share/images/logos
. Cada icono suele venir en cuatro formatos diferentes: gif, jpg, png y gd2.
Ahora tenemos que indicar en las definiciones de nuestros hosts los iconos que queremos usar para representarlos. Como ya os he dicho en otras ocasiones soy un poco torpe para los formatos así que suelo hacer caso a las recomendaciones que leí en algún momento (no recuerdo donde) y escojo el .gif como icono general y el .gd2 para el mapa de estado. No voy a poneros de nuevo la definición de todos los hosts con las líneas que hay que incluir para ello. La sintaxis es tan simple que, creo, basta con uno como ejemplo (lo añadido en negrita):
define host{
use linux-server
host_name nagios
alias Nagios Server
icon_image debian.gif
statusmap_image debian.gd2
address 127.0.0.1
}
Los iconos elegidos para el resto de los hosts han sido network_switch.gif, router.gif, linux40.gif, win40.gif y sus respectivos .gd2 para el mapa de estado. Reiniciamos el servicio y ahora ya se ve mejor ¿verdad?
Añadamos ahora algunos sevicios adicionales. Para ello vamos a volver a echarle un vistazo al fichero /usr/local/nagios/etc/objects/commands.cfg
. En el apartado SAMPLE SERVICE CHECK COMMANDS tenemos los que vienen preconfigurados y listos para usar pero ojo con algunos de ellos: los que comienzan con check_local sólo sirven para monitorizar servicios en la propia máquina en la que está instalado nagios. Advertido esto, vamos a añadir los siguientes servicios:
- Número de usuarios, número de procesos y carga de cpu para la máquina que alberga a nagios.
- Servicios SSH y HTTP en ambas máquinas con Linux.
- Servicios SMTP y POP3 en la máquina que alberga la intranet y que, para este ejemplo, también hace las veces de servidor de correo.
- Servicio DHCP en el servidor secundario de dominio de windows.
Para ello añadimos lo siguiente al final de nuestro fichero mired.cfg y volvemos a reiniciar el servicio que ejecuta nagios:
define service{
use generic-service
host_name nagios
service_description Current Users
check_command check_local_users!20!50
}define service{
use generic-service
host_name nagios
service_description Total Processes
check_command check_local_procs!250!400!RSZDT
}define service{
use generic-service
host_name nagios
service_description Current Load
check_command check_local_load!5.0,4.0,3.0!10.0,6.0,4.0
}define service{
use generic-service
host_name nagios, intranet
service_description SSH
check_command check_ssh
}define service{
use generic-service
host_name nagios, intranet
service_description HTTP
check_command check_http
}define service{
use generic-service
host_name intranet
service_description SMTP Response Check
check_command check_smtp!-t 5 -e «midominio.es»
}define service{
use generic-service
host_name intranet
service_description POP3 Response Check
check_command check_pop!-t 5 -e «midominio.es»
}define service{
use generic-service
host_name windows#2
service_description DHCP
check_command check_dhcp
}
La única personalización que requiere para adecuarlo a vuestra red es cambiar «midominio.es» en los servicios SMTP y POP3 por los que maneje vuestro servidor de correo.
Ahora la vista del grid de servicios de nuestra red queda bastante mejor (notad que he bajado a propósito el servicio POP3 de la máquina correspondiente para que no todo parezca tan idílico):
¿Sigue diciendo alguien por ahí que la configuración de nagios es complicada?
Y aquí lo dejamos por hoy. En la próxima entrega veremos como añadir nuevos servicios a los que vienen por defecto en el fichero commands.cfg
Estoy configurando Nagios para monitorear los servicios de un servidor, en dicho servidor tengo varios servicios hechos en casa, pero algunos me muestra, tengo la configuración para dos, donde el primero si me aparece como Actualiza_Permutas: Started y el segundo como Actualiza_Sanciones: Not found
define service{
use generic-service
host_name FISACOAAPPCC
service_description Actualiza_Permutas
check_command check_nt!SERVICESTATE!-d SHOWALL -l Actualiza_Permutas
}
define service{
use generic-service
host_name FISACOAAPPCC
service_description Actualiza_Sanciones
check_command check_nt!SERVICESTATE!-d SHOWALL -l Actualiza_Sanciones
}
y no entiendo por que, ambos servicios en el windows server son casi identicos.