guifi.net

Servidor de gráficas.

Instalación de servicios en guifi.net bajo plataforma GNU/Linux.

Apreta la tecla para avanzar.

snpservices

Servidor de gráficas.

Pulsa para continuar.

Introducción

SNPServices es la herramienta de monitorización/graficado de nodos por guifi.net.

  • En una red de este tipo se hace necesario una utilidad de diagnóstico rápido.
  • Basado totalmente en software open-source.
  • Nos representará gráficamente el estado/tráfico de los nodos.
  • El proceso de monitorización de nuevos nodos es automático, no intervenimos para nada.
  • Un servidor de gráficas puede ocuparse de múltiples zonas a la vez.
Información graficada

Las gráficas nos proporcionan la siguiente información.

  • A nivel de supernodo, nos mostrará una gráfica de la evolución del tráfico de cada uno de los interfaces de red instalados.
  • Dentro de cada radio, podremos visualizar el tráfico de esa radio en cada uno de sus enlaces.
  • Además, visualizaremos unas gráficas de la latencia del ping hacia esa radio (desde el servidor de gráficas).
Requerimientos

Veamos los requerimientos para conseguir montar el servicio snpservices

  • Un servidor donde instalarlo, preferiblemente basado en GNU/Linux.
  • La máquina debe tener acceso a la red a monitorizar, y a Internet.
  • Las herramientas de monitorización extraerán la información de guifi.net.
  • Un servidor web se encargará de publicarlas en Internet, para que se muestren en la web de guifi.net.
Ejercicio 6.4

Vamos a hacer rápidamente el ejercicio que tenéis en el documento de Aulavirtual.

Instalar snpservices

Snpservices depende de muchas herramientas de software libre.

  • Apache.
  • PHP.
  • RRDTool/MRTG

El protocolo que consigue que todo esto funcione:

  • SNMP
¿Todo eso hay que instalarlo?

Sí, pero tranquilos/as, tenemos todo empaquetado para distribución Debian/Ubuntu. Este es el repositorio oficial:

        # vi /etc/apt/sources.list
        deb http://repo.vic.guifi.net/debian/  ./
        # apt-get update
        # apt-get install snpservices
        

También podemos descargar snpservices directamente del repositorio oficial.

        $ git clone https://gitorious.org/guifi/snpservices
        
Paquete snpservices

Veamos las dependencias del paquete snpservices.

        # apt-cache show snpservices
        Package: snpservices
        Priority: optional
        Section: web
        Installed-Size: 244
        Maintainer: Carles Guadall Blancafort 
        Architecture: all
        Version: 0.0.152-1
        Depends: debconf (>= 0.5) | debconf-2.0, httpd | apache2, 
                 php5, php5-cli, php5-gd, rrdtool, librrdp-perl, 
                 librrds-perl, mrtg, mrtg-rrd
        
Configuración de apache

La configuración de Apache puede complicarse extremadamente dependiendo de lo que queramos hacer. En este caso vamos a simplificar, presuponemos que tenemos un servidor Apache con PHP, y queremos que la ruta /snpservices/ publique los contenidos de snpservices. Para ello, añadimos la siguiente directiva al archivo apache.conf

        Alias /snpservices/ /usr/share/snpservices/
        

Una vez hecho esto, nuestra URL de publicación de gráficas será la siguiente:

        http://direccion-ip/snpservices/graph/graph.php
        
Dar de alta el servicio en guifi.net

Llegados a este punto, conviene dar de alta ya el servicio en la web de guifi.net, con lo que obtendremos nuestro ID de servidor de gráficas.

  • Damos de alta un servicio "SNP Graph Server".
  • Nos pedirá que le asociemos un servidor (dado de alta previamente).
  • Nos solicitará información sobre la URL de publicación de gráficas.
  • Nos proporcionará un ID de servicio.
Modificar la zona guifi.net

Tendremos que modificar la zona de guifi.net que queremos que se grafique con nuestro nuevo servidor para que la web sepa dónde tiene que ir a preguntar por las gráficas.

  • Editamos la zona, por ejemplo "Almassora".
  • Modificamos el parámetro "servidor de gràfiques per defecte".
  • Si dejamos "Agafar dels pares", le preguntara a la zona padre quién es el servidor de gráficas.
RRDTOOL & MRTG

Son herramientas complejas de configurar. El paquete snpservices se encargará de hacer la faena sucia por nosotros.

  • RRDTOOL: Proporciona las herramientas para almacenar cualquier tipo de dato en series progresivas de tiempo.
  • MRTG: Consulta varios dispositivos de red por SNMP, y almacena la información.
SNPSERVICES

Sólo necesitaremos 2 datos para configurarlo. El ID del nodo de nuestro servicio y el ID del nodo de la zona raiz que vamos a graficar.

        # vi /etc/snpservices/config.php
        $SNPGraphServerId = 35207; // ID del nodo de nuestro servicio
        $rootZone = 18688; // ID del nodo de la zona raiz
        

¿Qué más tenemos que hacer? Nada, lo hará todo un cron.

  • Cada 30 min. obtendrá la lista de nodos de la web de guifi.net.
  • Cada 5 min. consultara los datos SNMP y ping a todos los nodos que tenga que monitorizar.
Clientes SNMP

A nivel de cliente deberemos habilitar el servidor SNMP que responda a las consultas que le haga nuestro servidor de gráficas. Veamos el ejemplo de cómo habilitarlo en Mikrotik:

        [admin@Castalia] /snmp> print 
            enabled: yes
            contact: david.rubert@gmail.com
            location: Castalia
            engine-id: 
            trap-target: 0.0.0.0
            trap-community: public
            trap-version: 1