19 de octubre de 2013

Monitorización con Cacti: Probando configuraciones

Continuando con la serie Monitorización con Cacti, voy a explicar los pasos básicos para añadir equipos a nuestro sistema y configurar las gráficas que nos interesen para que el servidor pueda empezar a obtener datos.

Como comentaba en la introducción de la serie, Cacti es una herramienta de monitorización síncrona basada en protocolos de networking para obtener información de los equipos clientes que estén configurados en el sistema. Se pueden realizar desde peticiones ICMP (TCP y UDP) hasta consultas SNMPs especícifas para obtener la información de un OID único para un fabricante.

Una de las pruebas más básicas que realizar es un ping a un servidor externo de Internet, en este caso he utilizado uno de los servidores DNS de Google para controlar la latencia de la conexión. Para ello desde el apartado Devices, agregamos un nuevo equipo y rellenamos el formulario con los datos del dispositivo.


- Descripción: Descripción del dispositivo
- Hostname: FQDN o IP del dispositivo
- Host Template: None*
- Downed Device Detection: Método para comprobar si el host está disponible para realizar consultas**

* Colección de gráficas que se pueden aplicar a los host en función del fabricante, pruebas a realizar o cualquier otro grupo que queramos crear para facilitar la administración de los equipos.
** Dependiendo del valor aparecerá un menu con más o menos opciones.

Para crear gráficas vamos a Create Graphs for this Host y en este caso al no haber seleccionado ningún Host Template en la configuración anterior, no aparecen gráficas por defecto que utilizar para este dispositivo. Para añadir una, elegimos a través del menu desplegable el test a realizar y lo agregamos a nuestro dispositivo.


Pongo un nombre para la leyenda y un color alegre.


Una vez creada la gráfica, desde Graph Management se puede comprobar el estado de la misma.


A través de Graph Tree he añadido el host a la vista por defecto, por lo que al ir a la pestaña Graph están los dos dispositivos para poder ver los datos.


Una de las maravillas de RRDTools, a partir de la versión 2.2.0, es que puedes hacer zoom en las gráficas para centrar el detalle donde tu quieras. Cacti por supuesto también incorpora esta funcionalidad desde la versión 0.6.4.

    

Ahora voy a configurar un router, OpenWrt para ser más exacto, y obtener el tráfico de red de alguna de sus interfaces utilizando SNMP tanto para conocer el estado del dispositivo como para obtener los datos de actividad de las interfaces de red.

Para ello relleno el formulario con los datos del equipo asegurándome de tener correctos los datos de la versión del protocolo y de la community autorizada.


En este caso he utilizado Generic SNMP-enabled Host como template, que utiliza el estandar SNMPv2-MIB para obtener un listado de las interfaces del dispositivo y los datos relativos a las mismas.


La mejor manera de organizar nuestras gráficas es a través de grupos en Graph Tree, diferenciando los equipos por funcionalidades, vistas de las gráficas más utilizadas... imaginación al poder. En este caso para el router OpenWrt, lo he agregado al grupo Access Points donde tengo los dispositivos Wireless a monitorizar.


Configuraciones varias

En esta parte de la entrada voy a comentar las configuraciones mínimas y algunas veces por defecto que he utilizado para algunos routers, en caso de producción yo no haría esto...

- OpenWrt

Hay que tener instalado el demonio SNMP (snmpd), para ello opkg y los repositorios nos facilitan la administración de paquetes en estos equipos. Modifico los valores del system y curioseo la configuración por defecto para la community public.



- Mikrotik

Defino una community public accesible para el rango de direcciones IPs que estoy usando y modifico los datos de contacto del dispositivo.



- Cisco

En el caso de Cisco sólo he configurado una interfaz Ethernet, una community public con permisos de lectura y los datos de contacto del dispositivo.



- Juniper

Para Juniper muy similar que para Cisco: una interfaz de red, una community con permisos de lectura para el rango de IP que estoy usando y los datos de contacto del dispositivo.



Un saludo, Brixton Cat.