Está en la página 1de 15

Monitorizacin de redes con Zabbix

Sobre Zabbix
Se trata de un sistema de monitorizacin de redes, creado por Alexei Vladishev. Diseado para
controlar los estados de varios servicios de red, servidores y maquinaria (hardware) Es similar a
otros que he tratado durante estos aos en la web, vase Nagios, Icinga o Pandora FMS.
Vayamos un poco ms al detalle, el producto nos promete:

Chequeos simples de sistemas para verificar su disponibilidad y su nivel de respuesta,


ejemplo de ello sera SMTP o HTTP, sin necesidad de instalar ningn programa sobre el host
monitorizado.

Permite la instalacin de agentes sobre sistemas GNU Linux, UNIX o Microsoft Windows,
para obtener estadsticas como ciclos de CPU, espacio en disco, trfico de red, etctera.

Nos

ofrece

una

alternativa

la

instalacin

de

agentes,

utilizando

los

protocolos SNMP, TCP o ICMP, hasta otros como el clsico telnet. Incluye mecanismos de
notificacin en tiempo real, por ejemplo XMPP (ya sabis Jabber)
A nivel de funcionalidades, destacan:

Posibilidad de controlar cientos de miles de servicios y dispositivos, esto es, alto rendimiento
y capacidad.

Auto descubrimiento y servicios en la red.

Agentes nativos en diferentes plataformas.

Existe la posibilidad de monitorizar sin agentes.

Monitorizacin distribuida y administracin web centralizada.

Configuracin de permisos de usuarios y grupos.

Notificacin de eventos (Email, XMPP entre otros)

Es software libre, utiliza una licencia GNU GPL en su versin 2.

Laboratorio de pruebas
Para funcionar nuestro servidor, yo utilizar un servidor Debian Jessie, debe cumplir una serie de
requisitos. Bsicamente es un servidor LAMP, aunque al respecto de la base de datos podemos
utilizar privativas comoOracle o libres, que es nuestro caso, ya que utilizar MariaDB
Los requisitos ms importantes es que tenga instalado un servidor web con Apache en su versin
1.3.12 o superior, adems de PHP en su versin 5.1.6 o superior. Atento con cumplir con estos
requisitos si queremos que todo funcione.
Aadido que se necesitan esta serie de programas o libreras:

build-essential, gcc, curl, wget, libsnmp-dev, libcurl4-gnutls-dev y libxml-dev

Para la ocasin he creado un VPS en la nube, concretamente sus caractersticas:

Sistema operativo Debian Jessie 8.5

512 MB de memoria

20 GB de disco

1 CPU

Para conectarme utilizar ssh. Una vez dentro aadiremos un nuevo usuario y le daremos
permisos de administrador, para as no utilizar root. En su da habl del asunto. Otra cosa
importante es cambiar el puerto por defecto de ssh, tambin podis consultar el artculo al
respecto.
Vamos al turrn, instalamos primero Apache2 y PHP.

Respecto a la base de datos vamos a instalar MariaDB

Durante el proceso de instalacin debemos indicar la contrasea del usuario principal.


En

el

siguiente

paso

instalamos

todas

las

libreras

necesarias:

Como viene siendo habitual, ahora utilizaremos el programa mysql_secure_installation, para


asegurar la instalacin.
Tambin instalaremos una serie de paquetes y libreras para el correcto funcionamiento del
servidor LAMP:

Una vez instalados los programas y las libreras debemos modificar los parmetros del
fichero php.ini, ubicado en /etc/php5/apache2/php.ini, con la configuracin:

Reiniciamos el servicio:

Procedemos a la descarga del proyecto, desde su pgina web, utilizando el programa de


descargas wget.

Utilizamos el programa tar, para descomprimir el fichero:

Accedemos a la carpeta recin creada y compilamos:

Estos parmetros podemos adaptarlos a nuestras necesidades. Si todo ha ido bien, hasta esta
parte, veremos un resultado como el de la imagen:

Seguimos con la compilacin:

Creacin de usuario y grupo


Ya estamos acabando, ahora le toca el turno a la creacin de usuario y grupo

Pasemos al siguiente paso.

Creacin y configuracin de base de datos


Ya hemos instalado a principio del tutorial el motor de base de datos MariaDB. Ahora toca crear la
base de datos propiamente dicha y configurarla:

Una

vez

dentro

aadimos

la

configuracin:

Esto es un tutorial, pero por seguridad, os recomiendo utilizar un nombre de usuario y base de
datos, diferente del propio nombre del producto.

Accedemos dentro del directorio database/mysql, y aadimos al proyecto diferentes ficheros .sql

Configurar servidor web Apache


Pues s, el tutorial est quedando ms largo que un da sin pan : )
Ahora vamos a por la parte de configuracin web, concretamente de nuestro servidor Apache.
Borramos el fichero de configuracin por defecto, y aadimos el del proyecto:

Por ltimos, aadimos el usuario zabbix al grupo www-data y habilitamos el mdulo ssl:

Configurar el servidor Zabbix


Ieeeeep!, todava no hemos acabado. Queda configurar el ncleo de la plataforma. Para ello
modificaremos el fichero de configuracin principal:

Tendra que quedar algo similar a los parmetros:

Con anterioridad hemos indicado un directorio y un fichero para almacenar los logs. Para evitar
problemas lo vamos a crear de manera manual, y asignarle permisos:

Iniciar servicios
Ya lo tenemos todo listo, antes de ir al panel web, debemos arrancar los servicios:

Fronend Interface Web


Ya est, ha pasado lo ms duro, ahora ya podemos ir a la web, escribiendo https://nuestraip/setup.php

Ha funcionado, bueno, por lo menos hasta aqu.


En el siguiente apartado comprobamos que nuestro servidor cumple con los requisitos necesarios:

Vemos que s, hemos hecho el trabajo bien, y de momento todo marcha bien.

Aadimos los datos de nuestra base de datos, que antes hemos configurado.

Al finalizar vemos un resumen de la configuracin. Se observa, justo al final, que he creado un


subdominio llamado zabbix.ochobitsunbyte.pw, desde donde realizar las pruebas. Lo podis
consultar si queris. Os puedo crear un usuario.

El usuario principal es admin y la contrasea zabbix, no la probis en mi servidor, la he


cambiado

Pues ya lo tenemos listo, slo una ltima cosa, debemos aadir los demonios al arranque del
sistema, modificado el fichero rc.local

Aadir idiomas adicionales a Zabbix


No es excesivamente complicado, aunque tiene su miga. Primero de todo nos iremos a su interfaz
web, y marcaremos sobre el botn de usuario, justo en la parte superior derecha de la pantalla.

Desde aqu podemos aadir o modificar varios parmetros de la configuracin de usuario. Es


interesante, cada usuario podr adaptar a su gusto la interfaz, sin modificar la del resto. Todo muy
personalizable. Si marcamos sobre Language se abrir un desplegable, seguramente slo estar
disponible el idioma ingls, en su versin de Reino Unido y de Estados Unidos. Para aadir el resto
de idiomas debemos ir a nuestro sistema Debian y escribir:

Hacemos esto para aadir los idiomas adicionales que queramos al sistema, y as poder utilizarlos
a continuacin la interfaz. Aqu nos aparecer un men, podemos escoger uno por uno los idiomas
que queremos aadir, o bien aadirlos todos, que es lo que he hecho yo.
Si volvemos al desplegable del men de usuario, veremos ms idiomas para escoger.

S, es cierto, salen muchos idiomas pero no el espaol o castellano, qu ha pasado? Pues segn
he podido investigar por la red, se ve que slo estn disponibles en el men los idiomas que tienen
ms del 70 % traducido. Para solucionar esto, debemos modificar un fichero, ubicado en el
directorio/var/www/html/include, llamado locales.inc.php, debemos buscar la lnea para el
idioma es_ES y cambiar el parmetro false por true, dem para el resto de idiomas que no
aparecen.
Al finalizar la edicin guardamos y reiniciamos el servidor web:

De sta manera ya tendremos nuestro idioma disponible. En el mismo men tambin se puede
cambiar el aspecto de la interfaz, yo lo he cambiado al llamado Dark

Aadir y configurar nuevos hosts a


Zabbix
Para ello debemos primero de todo conocer las IP, tanto de nuestro servidor como del nuevo
servidor a monitorizar. Tanto el servidor como el cliente utilizan Debian Jessie, y estn alojados en
la llamada nube, conDigitalOcean. Hay que tener en cuenta que las mquinas se comunican por
un puerto especfico, que es el 10050, que deber estar abierto en ambos sentidos. Lo primero
que haremos es ir a la interfaz del servidor, a la seccin Configuracin y Equipos, recordad
que ayer vimos como aadir el idioma castellano al producto.

Se observa que ya estoy controlando dos equipos, el primero es el propio Zabbix y el segundo es
donde tengo ubicada la pgina web. Marcamos sobre Crear equipo

No tiene mucho misterio, debemos aadir un nombre para identificar el equipo y su IP,
importante eso s aadirlo al grupo Linux servers. Al hacer esto nos falta asignarle una plantilla,
para ello nos vamos a la siguiente pestaa, llamada Plantillas, all buscaremos una con el nombre
Template OS Linux Las plantillas se utilizan para facilitarnos las cosas, y no tener que aadir los
objetos, grficas, etctera por cada mquina.

Marcamos sobre el botn Actualizar y, de momento, cerramos la interfaz web, para ir a la


consola de la mquina del cliente, que he llamado DebianJessieCliente Accedemos a ella va ssh.
En los repositorios oficiales de Debian ya viene el agente, tal y como se observa en la imagen:

Por lo que slo debemos escribir:

Una vez instalada la aplicacin el fichero de configuracin lo encontramos en /etc/zabbix con el


nombre dezabbix_agentd.conf. De dicho fichero debemos modificar dos lneas, la primera en al
seccin Option:Server, y aadir la IP del servidor Zabbix, la otra seccin a modificar es la llamada
Option:Hostname, y aqu indicamos el nombre del servidor, que es zabbix.ochobitsunbyte.pw
Reiniciamos el servicio:

Si todo ha ido bien, ya veremos el nuevo host en la lista:

Ahora que ya tenemos el nuevo cliente aadido, vamos a ver un par de cosas para acabar. La
primera, es respecto a las grficas que genera el sistema, por ejemplo:

La grfica corresponde al servidor donde tengo ubicada la pgina web, podemos observar el
trfico de red, por horas y Kbps. Existen diferentes grficas, otras seran el uso de la CPU, la
memoria o la particin transaccional o SWAP.
Por ltimo, existe la posibilidad de interactuar con el servidor cliente, mediante una serie de
scripts, simplemente marcando con el ratn sobre el nombre del host.

También podría gustarte