Este documento describe la implementación de Zabbix como herramienta de monitoreo de infraestructura informática. Explica el proceso de instalación de Ubuntu, los requisitos de Zabbix, e instala Zabbix siguiendo 4 etapas: instalación de requisitos previos, descarga e instalación de Zabbix, configuración post-instalación e instalación de la interfaz web. Finalmente, prueba con éxito la instalación de Zabbix para monitorear la red.
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
Zabbix plataforma de monitoreo.
1. IMPLEMENTACIÓN DE ZABBIX COMO HERRAMIENTA DE MONITORIZACIÓN
DE INFRAESTRUTURA INFORMÁTICA
POR
HONEY FELIPE AGUDELO
LUIS CARLOS GALVIS
DEIMER ARROYO
EDWIN PEREZ
INSTRUCTOR:
ALEXANDER AUGUSTO ALVAREZ
SENA CENTRO DE SERVICIOS Y GESTION EMPRESARIAL
GESTION DE REDES DE DATOS (600088)
MEDELLIN
2014
2. GLOSARIO
HOST: En zabbix, un host es una entidad lógica que define un elemento en red
que se puede monitorear. Este puede ser una impresora, un switch, un router, un
servidor, un computador, un portátil, entre otros.
TRIGGER: Un Trigger en Zabbix es una entidad que define umbrales para la
clasificación de Items, es decir si el Item de medición de nivel de tóner en una
impresora monitoreada arroja un valor bajo, esto significa que el Trigger de tóner
se debe disparar y pasar a un estado de alerta. De esta manera avisara que la
tienta de la impresora esta por acabarse.
ITEM: Un Ítem en Zabbix es una entidad que contiene la información de una
medida específica obtenida.
PLANTILLA: Una plantilla o Template es una entidad lógica prediseñada con
diferentes Items, Triggers y aplicaciones con el fin de ser aplicadas en elementos
que comparten los mismos parámetros de medición, por ejemplo la carga del
procesador, uso de memoria y uso de recursos de red
SNMP: El protocolo SNMP (Simple Network Management Protocol) o Protocolo
Simple de Administración de Red, es un protocolo de gestión de red, es una
solución de monitoreo bastante usada en elementos de bajo poder de
procesamiento.
SOFTWARE LIBRE: Es el software con el cual los usuarios pueden estudiar,
modificar y mejorar su diseño mediante la asequibilidad de su código fuente, esta
es la filosofía Open Source o software libre.
MONITORIZAR: Consiste en observar, vigilar, tomar datos y analizar los
resultados con el fin de realizar una retroalimentación que permita solucionar
problemas eficazmente o mejor aún, anticiparse a ellos.
AGENTE: Es una entidad de software instalada en el dispositivo monitorizado que
provee información acerca del elemento.
MIB (Management Information Base): Es una base de datos ó un conjunto de
datos de la red almacenados jerárquicamente, para la administración de esta
misma. Los objetos monitorizados pueden ser nombrados con nombres o con
identificadores
RECURSO: Es cualquier elemento de hardware o software que cuenta
disponibilidad limitada en un sistema, por ejemplo recursos de red, memoria,
espacio en disco duro.
3. POP3: Es un protocolo estándar para recibir mensajes de e-mail. Entonces los
mensajes enviados a un servidor, son depositados por el servidor pop3. Cuando el
usuario se conecta con la dirección, el nombre de usuario y la contraseña puede
descargar los archivos.
SMTP: Simple Mail Transfer Protocol, Protocolo Simple de Transferencia de
Correo, pertenece a la capa de aplicación. Basado en texto y utilizado para el
intercambio de mensajes de correo electrónico entre dispositivos.
UBUNTO
Aplicaciones de Ubuntu
Ya se mencionó que Ubuntu es conocido por su facilidad de uso y las aplicaciones
orientadas al usuario final. Las principales aplicaciones que trae Ubuntu son: El
navegador web Mozilla Firefox, el cliente de mensajería instantánea Empathy, el
cliente para enviar y recibir correo Evolution, el reproductor multimedia Totem, el
cliente y gestor de torrents Transmission, el grabador de discos Brasero, la suite
ofimática OpenOffice, y Ubuntu Software Center para buscar e instalar entre más
de treinta mil aplicaciones y juegos.
Seguridad y accesibilidad
El sistema incluye funciones avanzadas de seguridad y entre sus políticas se
encuentra el no activar, de forma predeterminada, procesos latentes al momento
de instalarse. Por eso mismo, no hay un firewall predeterminado, ya que no
existen servicios que puedan atentar a la seguridad del sistema. Para
labores/tareas administrativas se incluye en el terminal una herramienta llamada
sudo, con la que se evita el uso del usuario administrador.
Ubuntu es software libre
Aunque las carátulas se imprimen en inglés, a partir de la versión 5.10 se incluyó
el texto Ubuntu is software libre usando la palabra en español libre, para eliminar
la ambigüedad del término free (del inglés free software) que puede significar tanto
libre como gratis. Ubuntu también se publica bajo la licencia GPL de GNU.
4. ZABBIX
Zabbix fue creado por el señor Alexei Vladishev y actualmente se desarrolla y se
soporta por la compañía Zabbix SIA. Es una solución open source que permite de
forma rápida y sencilla monitorizar todo tipo de servidores, aplicaciones y equipos
que hacen parte de una red. Zabbix permite centralizar la información en un
servidor y monitorizar múltiples hosts, además tiene una interfaz de administración
vía web browser. Por otro lado, ofrece características de monitorización avanzada,
alertas y visualización que actualmente no están presentes en otros sistemas de
monitorización, ni siquiera comerciales.
Zabbix puede descubrir nodos en un rango de IPs usando agentes SNMP y es
capaz de monitorizar servicios remotos. Además tiene soporte para traps SNMP
en las versiones 1, 2 y 3 del protocolo. Proporciona también extensa información
sobre la máquina que monitoriza: disco, memoria, E/S, entre muchas otras,
mediante un completo sistema de estadísticas históricas cuyos datos se guardan
de manera cronológica y sencilla de acceder, visualizar y analizar, en bases de
datos, para este caso MySQL.
Zabbix a su vez es capaz de enviar avisos, alarmas y/o notificaciones
programadas vía e-mail, SMS e incluso a través de Jabber para usuarios de
Google Talk.
Es importante recordar que Zabbix es un software OSE (Open Source Edition)
gratuito y se desarrolló y publicó bajo Licencia Pública General GNU versión 2.
5. MONITORIZACIÓN DE REDES
Monitorizar consiste en observar, vigilar, tomar datos y analizar los resultados con
el fin de realizar una retroalimentación que permita solucionar problemas
eficazmente o mejor aún, anticiparse a ellos.
En una red se cuenta con distintos dispositivos interrelacionados, unos de mayor
importancia que otros, pero que, como es lo ideal, deben funcionar correctamente
sin excepción. Con la monitorización de la red se toman datos como consumo de
recursos, asignación de memoria, estado de memoria, parámetros de rendimiento,
estado del dispositivo, rendimiento de sistemas agrupados, entre muchos otros
que se explicarán a lo largo del desarrollo de este documento de manera
específica. Estos datos cuales pueden ser vistos, notificados y controlados por
operadores capaces de tomar decisiones basados en las alarmas automáticas que
dan informe sobre estados críticos.
¿POR QUÉ MONITORIZAR?
Cada vez en los ambientes empresariales, las redes se vuelven más complejas y
la exigencia de la operación es cada vez mayor. El trafico de voz y datos, y la
creciente demanda de recursos para soportar aplicaciones y servicios, ponen a
prueba la estabilidad y el funcionamiento de estas. Es por eso que análisis y
monitorización de redes se ha convertido en actividades de vital importancia en las
prioridades de las diferentes compañías.
El proceso de monitorización debe ser permanente, ordenado, continuo y exacto,
de esta manera se toman medidas de variables criticas en el funcionamiento de
una red con el fin de que, si se encuentran problemas, se tomen medidas
correctivas y/o preventivas que lleven a la estabilización de la red, de esta manera
se mantiene un control eficaz y efectivo que lleve a lograr mejores resultados en el
desempeño de cada uno de los dispositivos involucrados. Además, los datos
obtenidos forman estadísticas que ponen en evidencia problemas e
irregularidades en procesos, los cual es necesario solucionar. El almacenamiento
de las medidas recogidas forma una bitácora que puede mostrar la evolución del
comportamiento de la red.
6. IMPLEMENTACIÓN: INSTALACIÓN DE SOFTWARE
INSTALACIÓN DE UBUNTU
La instalación de Ubuntu 11.0 LTS es bastante simple. Una vez se inicia el equipo
desde el CD, aparece la pantalla de bienvenida donde se escoge el idioma en el
que quedará el sistema operativo, es de resaltar que una de las características de
este sistema operativo es que provee presentación y soporte en muchísimos
idiomas con diferentes variaciones de los mismos, en este caso se escoge
español. También aparece la opción de probar Ubuntu, que consiste en correr
desde el CD una muestra del sistema.
Así se continúa la instalación Básica.
Ya culminada la Instalacion de Ubuntu continuamos con la Instalaciòn de Zabbix
INSTALACIÓN ZABBIX
Requerimientos de Hardware
Zabbix requiere de parámetros óptimos tanto de memoria física como de
capacidad de almacenamiento en disco, sin embargo estas necesidades están
relacionadas proporcionalmente con el número de hosts y las características que
se van a monitorizar de estos mismos.
Teniendo en cuenta los requisitos tanto de hardware como de software, se da
inicio a la instalación de Zabbix cuyo proceso está compuesto por 4 etapas que se
describen a continuación.
Instalación de requisitos previos.
Se ejecuta desde el terminal el comando que se observa en la figura 9 que permite
realizar la instalación de todos los requisitos previos de software de acuerdo a lo
visto anteriormente.
7. El instalador indica el espacio en disco que se va a utilizar y solicita la
confirmación de la continuación de la instalación como se observa en la figura.
8. Durante el proceso de instalación de requisitos previos se debe configurar el
password que se va a utilizar para el usuario root de la base de datos en MySQL
como se observa en la figura.
9.
10. Finalmente en las figuras siguientes se observa el proceso de extracción y
compilación de los paquetes que permiten instalar el software previo que permiten
el correcto funcionamiento de Zabbix en Ubuntu.
Instalación Zabbix
Luego de tener instalado correctamente el software previo, se procede a la
configuración y compilación de Zabbix de la siguiente forma:
Creación usuario Zabbix.
11. Se ejecuta el comando observado en la figura que permite crear un usuario
zabbix en Ubuntu para poder utilizar Zabbix a través de este mismo. Zabbix
necesita un usuario para que el funcionamiento sea seguro y que al tiempo no
tenga credenciales de súper usuario.
Descarga de fuentes
Se debe ahora proceder a descargar los archivos de compilación de Zabbix a
través del comando observado en la figura.
12. Luego se procede a extraerlos o descomprimirlos en la carpeta del usuario creado
zabbix como se observa en la figura.
13. Creación del esquema
Se ha optado por utilizar MySQL y para continuar con la instalación se debe crear
una base de datos y darle permisos necesarios al usuario que se conectará a ella.
Para esto se ejecutan los comandos mostrados en la figura siguiente.
14. Las figuras siguientes nos permiten observar el proceso de actualización del
protocolo de autenticación de MySQL para Ubuntu.
15.
16.
17. Dentro de las fuentes descargadas se incluyen unas plantillas para la creación del
esquema y otras opciones. Entonces se ejecutan los comandos observados en la
figura 23 como usuario zabbix para dejar funcionando el almacén de datos.
18.
19. Configurar, compilar e instalar:
Ahora se deben configurar las fuentes para dar soporte como servidor, instalar el
agente en el servidor Zabbix, usar MySQL como contenedor de datos, soporte
para net-SNMP, CURL, y JABBER. Para ello se ejecuta el comando observado en
la figura como usuario zabbix.
La figura que sigue permite observar el resultado de la configuración de las
fuentes y nos confirma que se han predeterminado los siguientes parámetros:
Activación de Servidor, Motor de base de datos MySQL, librería cURL, Soporte de
Jabber, protocolo net-SNMP y activación del agente Zabbix para LINUX
20. Finalmente y desde el root del usuario zabbix, se procede a compilar e instalar las
fuentes como se observa en la figura.
21. Configuración post-instalación
Después de obtener una configuración, compilación e instalación limpia de las
fuentes de Zabbix se procede a realizar los siguientes ajustes:
Configuración de los puertos que utiliza Zabbix como se observa en la figura
abajo.
22. Ahora se procede a crear el directorio donde se almacenarán los ficheros de
configuración y se le asigna el propietario. Para ello se ejecutan los siguientes
comandos observados en la figura
23. Finalmente se procede a editar el fichero de configuración del servidor Zabbix para
declarar los parámetros de conexión a la base de datos MySQL. Para ello se debe
acceder a los archivos de configuración, abrirlos con un editor de texto de consola
(para este caso se utilizó el GNU nano y revisar y/o cambiar los parámetros
resaltados en la figura 29 que corresponden a los datos de conexión a la base de
datos de MySQL.
24. Configuración scripts de inicio
Para que el servidor Zabbix y el agente arranquen de forma predeterminada
durante el inicio del sistema se ejecuta el comando observado en la figura 30
como root y se editan los archivos para el servidor Zabbix y para el agente Zabbix
observados en las figuras 31 y 32 respectivamente.
25.
26.
27.
28. Ahora se le asignan los permisos a ambos scripts y se configura el nivel de
arranque en el que van a iniciar. Para ello como root se ejecutamos los comandos
observados en la figura.
29.
30. Por último se procede a iniciar tanto el agente como el servidor Zabbix según se
observa en la figura.
Instalación front-end
Ahora se debe proceder a instalar la interfaz web del servidor Zabbix para lo cual
se ejecutan los comandos observados en la figura.
31. Configuración PHP.
Zabbix necesita que algunos parámetros de PHP sean modificados. Como root se
edita el archivo php.ini y se modifican las líneas señaladas en las figuras
siguientes.
34. Configuración interfaz Web
Para finalizar la totalidad de la instalación de Zabbix se debe configurar la interfaz
web, para lo cual se ingresa a través de un explorador web a la dirección del
servidor (http://127.0.0.1 o http://localhost) como se observa en la figura.
40. Se da click en la opción resaltada en la figura.
41. Se guarda el archivo zabbix.conf.php en la ruta mostrada en la figura
42. Y finalmente se termina el proceso de instalación como se muestra en las figuras.
43.
44. Probando Zabbix
Luego de obtener la instalación exitosa de la interfaz web de Zabbix, procedemos
a realizar pruebas autenticándonos con el usuario: admin y el password: zabbix.
La figura nos confirma que la instalación ha finalizado de manera correcta y que
Zabbix está listo para iniciar con sus tareas de monitorización
45. INSTALACIÓN AGENTE ZABBIX EN WINDOWS
En la página principal de Zabbix, se encuentran disponibles los Agentes Zabbix
para monitorizar diferentes sistemas operativos en varias versiones, como Solaris,
AIX, FreeBSD, HP-UX, Linux y Windows, dado que los equipos de Santini System
Group Ltda. tienen instalado Windows, este es el agente con el que se trabajará.
La página web del programa provee un archivo comprimido con los agentes para
este sistema como se observa en la figura.
Allí se ven dos subcarpetas para maquinas a 64 o a 32 bits, en este caso se
descomprime la versión para 32 bits.
Una vez descomprimido, se obtienen tres archivos ejecutables que permitirán
realizar la instalación del Agente Zabbix para Windows, estos se pueden observar
en la figura 55, para realizar la correcta instalación se deben seguir pasos
específicos que se mencionaran a continuación.
46. Lo primero que se debe hacer es crear una carpeta en la raíz del disco duro local,
en este caso C:. El nombre que se le dio fue Zabbix, dentro del directorio se
deben copiar los tres ejecutables descargados como se muestra en la figura 56 y a
su vez copiar un archivo de configuración para los agentes, el cual tiene por
nombre zabbix_agentd.win.conf que se encuentra en el equipo donde previamente
se instaló el servidor Zabbix en la siguiente ruta:
sistemadearchivos/misc/conf/zabbix_agentd.win.conf. Se procede a copiar y
pegar. En la figura 57 se puede apreciar la carpeta en C:zabbix con 4 los
elementos requeridos.
47.
48. Lo siguiente que se hará será establecer los parámetros correctos en el archivo de
este de debe abrir usando el bloc de notas, entonces, la entrada Server= que por
defecto se encuentra con la dirección IP del localhost 127.0.0.1 se cambia por la
dirección IP del servidor Zabbix, esto se ve en la figura 58. Luego, como se
muestra en la figura 5 la maquina a monitorizar, este será el mismo que se le dará
en la consola web de Zabbix al adicionar el equipo como elemento, en este caso
se le ha asignad
Ahora mediante el comando C:zabbix>zabbix_agentd.exe agente usando la
configuración dada en el archivo .conf, como se puede apreciar en las figuras vez
ejecutado desde la consola aparece un error 1464 del zabbix_agentd, por lo cual
se agrega el parámetro –i para ejecutarlo como un servicio.
Carpeta Zabbix creada en C:
Carpeta Zabbix con archivos necesarios.
49. Lo siguiente que se hará será establecer los parámetros correctos en el archivo de
configuración, para tal fin este de debe abrir usando el bloc de notas, entonces, la
entrada Server= que por defecto se encuentra con la dirección IP del localhost
127.0.0.1 se cambia por la dirección IP del servidor Zabbix, esto se ve en la figura
go, como se muestra en la figura, en la opción Hostname se ingresa un nombre de
identificación de , este será el mismo que se le dará en la consola web de Zabbix
al adicionar el equipo como elemento, en este caso se le ha asignado el nombre
de Windows_box.
50. Ahora mediante el comando C:zabbix>zabbix_agentd.exe -c
c:/zabbix/zabbix_agentd.win.conf se instalara el agente usando la configuración
dada en el archivo .conf, como se puede apreciar en las figuras vez ejecutado
desde la consola aparece un error 1464 del zabbix_agentd, por lo cual se agrega
el parámetro –i para ejecutarlo como un servicio.
51. Dado que la función –i es la correspondiente para continuar con la instalación del
agente, se tomará esta, en la figura 64 se muestra el comando completo,
enseguida, en la figura se encuentra el reporte de instalación exitosa del servicio.
De esta manera cuando se observa el listado de servicios de Windows ejecutando
services.msc, se aprecia que el servicio zabbix agent ya se encuentra pero no está
iniciado, figura 66a, así que de acuerdo a los diferentes parámetros del archivo de
instalación, se usa –s en el comando de ejecución para iniciar el servicio, en la
figura 66b se muestra la línea de comando y en la figura 66c se ve el agente
establecido e iniciado, con esto se concluye la instalación del agente Zabbix para
Windows.
52.
53.
54.
55. IMPLEMENTACIÓN: INTERFAZ WEB DE ZABBIX
CREACION DE UN HOST
La administración de todas las tareas de monitorización se realiza desde el panel
frontal, este es una interfaz web que permite gestionar las actividades de
monitorización, se pueden agregar dispositivos, configurar todas las opciones del
Zabbix, generar reportes, graficas, alarmas, crear cuentas.
Como primer paso, se mostrara como agregar un dispositivo conectado a la red,
un Host. En la figura numero 67 tenemos el frontend de Zabbix; en el menú se
elige Configuration, es en esta pestaña donde se definen los parámetros de datos,
graficas, reportes y envío de notificaciones. Luego se da clic en la opción Hosts en
el submenú. Allí se muestra un primer elemento ya creado, se trata del mismo
sistema del computador en el que se encuentra instalado el programa, por defecto
él se define como Zabbix Server.
56. En la tabla general del Host Zabbix Server en la figura
(a), se puede ver en la columna status que este no se encuentra monitorizado, es
decir no se encuentra activado; para activarlo, se selecciona y en la persiana
inferior se elige Activate Selected y se da clic en Go,
(b) se puede ver como después de esta acción el host se encuentra en estado
monitored y un señalizador verde mostrando disponibilidad en la columna
Availability.
57. Para la creación del host, se da clic en Create Host como se ve en la figura,
seguido de esto se llenan los campos necesarios para la configuración del
elemento creado, , en este caso se va a monitorizar un computador de un usuario
de Santini System Group, se trata de un equipo con sistema operativo Windows
XP que se encuentra en la red, el nombre que se le da es WXP_HOST. Un host
siempre debe pertenecer a algún grupo, ya que los permisos en la herramienta se
dan sobre grupos y no sobre elementos específicos entonces en el campo grupos
se elige Windows servers, se escribe la IP del equipo en el campo correspondiente
y en “Connect to” se selecciona IP Address, luego, en el campo Linked templates
se da clic en add para adicionar una plantilla correspondiente al sistema operativo
que se tiene instalado en el equipo.
60. Adición de Host Monitorizados Mediante Agentes SNMP.
Instalación de paquete snmp para Ubuntu
La figura permite observar la instalación desde la consola de Ubuntu del paquete
de snmp para monitorización.