Nagios – Monitorizando el ámbito de nuestro DHCP

Print Friendly, PDF & Email

¡¡¡Qué pasa txabales!!! ¿Cómo nos solemos enterar que un servidor DHCP no funciona o un ámbito está completo? Gracias a nuestros queridos usuarios, no? Como la idea es que nuestros usuarios sean los últimos en darse cuenta de cualquier problema de nuestra organización (a parte de los jefes)… aprovecharemos nuestra instalación de monitorización basada en Nagios o Centreon para controlar otro punto crítico más en una organización, el servicio DHCP!

A parte de monitorizar en sí el servicio DHCP que esté arrancado (que ya sabemos cómo hacerlo), nos apoyaremos esta vez de un script de Nagios Exchange que nos permitirá medir el estado de salud del servicio, mediante un pequeño script en VBS (Visual Basic Script), podremos checkear cada ámbito y sus direccionamientos libres u ocupados! Nos tendremos que apoyar en NRPE, ya que este VBS se debe ejecutar en cada servidor DHCP, por tanto, descargamos el script ‘check_dhcp_scope.vbs’ en el path predeterminado de los scripts de NSCLient ++, si necesitas ayuda sobre NRPE, echa un vistazo a este documento!

 

 

Por cierto, este script yo suelo modificarlo para que en el output del comando saque las IPs libres y las IPs ocupadas, por tanto, si modificamos las siguientes lineas lo tendríamos, pero esto es opcional, eh! Os dejo los cambios que le hago:

Linea 75:

[sourcecode]StrOut=Strout&SubnetIP&" is Critical ("&FreeIP&" free). |Libres="&FreeIP&" Ocupadas="&UsedIP[/sourcecode]

Linea 79:

[sourcecode]StrOut=Strout&SubnetIP&" is Critical ("&FreeIP&" free). |Libres="&FreeIP&" Ocupadas="&UsedIP[/sourcecode]

Linea 96:

[sourcecode]wscript.echo scopecount&" Scopes OK – IPs libres: " &FreeIP& " – IPs ocupadas: " &UsedIP& "|Libres="&FreeIP&" Ocupadas="&UsedIP[/sourcecode]

 

Y si el servidor DHCP está en otro idioma, por ejemplo en Español, debemos modificar también la línea 61:

[sourcecode]if instr(oldstr2,"Subred") then[/sourcecode]

 

Si abrimos un cmd en el servidor DHCP y vamos hasta el directorio de los scripts de NSClient++, podremos ejecutarlo y ver cómo responde!

 

Por tanto, como es habitual, modificaremos el fichero ‘nsclient.ini’ definiendo el script que ejecutará y su alias, quedando algo así:

[sourcecode][/settings/external scripts/scripts]
check_dhcp = cscript.exe //T:30 //NoLogo scripts\\check_dhcp_scope.vbs

[/settings/external scripts/alias]
check_dhcp = check_dhcp[/sourcecode]

 

Sin olvidar reiniciar el servicio ‘NSClient ++’, si? Para que recargue la configuración que acabamos de aplicar!

 

Por tanto, si queremos probar y validar que los pasos anteriores se han realizado correctamente, podremos probarlo desde la shell de Nagios directamente, como siempre, nos ubicamos en el path de los plugins y ejecutaremos lo siguiente para verificar que todo irá bien:

[sourcecode]./check_nrpe -H DIRECCION_IP_SERVIDOR_DHCP -c check_dhcp[/sourcecode]

 

 

Y ya no quedará más que definir el Servicio que monitorizará esto, nos vamos a Centreon, a “Configuration” > “Services”, y añadimos uno nuevo o clonamos de uno existente y modificamos lo necesario:

  • Description: Indicamos el nombre del servicio monitorizado, algo que asociemos de un vistazo con lo que se está monitorizando, en mi caso algo como ‘Ambito DHCP’ lo hará.
  • Linked with Hosts: Relacionamos este Servicio con el Host donde se ejecutará, que será obviamente el o los servidores DHCP.
  • Template: Normalmente asociaremos alguna plantilla al servicio, bien la genérica que lleva configurada el resto de opciones, tipo notificación, periodo de los checkeos…
  • Check Command: Seleccionamos del combo el ya famoso ‘check_nrpe’ que nos permitirá ejecutar eso mismo que hicimos por shell, este comando ya lo dimos de alta en el documento inicial de NRPE que habrás visto en este documento.
  • Args: En este caso, será el alias que hemos definido previamente en el ‘nsclient.ini’ del servidor donde se ejecutará esto, en este caso ‘check_dhcp’.

 

Grabamos con “Save”,

 

Y tras grabar la configuración de Centreon, exportar y reiniciar los ficheros como ya sabemos 😉 (y si no, repasar docus anteriores que lo veréis), pues llendo a la pestaña de “Monitoring” ya visualizaremos el estado monitorizado, tanto los Ámbitos DHCP donde ya vemos y nos pintará en las gráficas el número de direcciones IP libres, como las ocupadas. Lo dicho, también será habitual monitorizar si el Servicio DHCP del Windows está levantado o se ha caido, para ello puedes echar un vistazo a este otro documento! Disfrutarlo!

 

Posts recomendados

Autor

nheobug@bujarra.com
Autor del blog Bujarra.com Cualquier necesidad que tengas, no dudes en contactar conmigo, os intentare ayudar siempre que pueda, compartir es vivir ;) . Disfrutar de los documentos!!!