Ver destacados

Cómo instalar y configurar Zabbix en CentOS, Red Hat y Debian

En este tutorial verás cómo instalar y configurar zabbix 2.4 en CentOS 7, Red Hat 7 y Debian 8
Escrito por
16.7K Visitas  |  Publicado jun 30 2016 10:43
Favorito
Compartir
Comparte esta pagina a tus Amigos y Contactos usando las siguientes Redes Sociales


En esta oportunidad vamos a tratar un tema muy interesante para nuestro rol como administradores TI, y éste tiene que ver con la herramienta Zabbix, vamos a usar la versión 2.4.5 y analizaremos su función principal, cómo nos puede ayudar en nuestra gestión y en general sus múltiples facetas. En muchas ocasiones cometemos el error de instalar aplicaciones y no nos detenemos a analizar su alcance, sus características y otras tareas que podemos realizar con las mismas y, quizás por desconocimiento, no las explotamos al máximo.

 

Vamos a hablar un poco acerca de Zabbix, la herramienta Zabbix es un software de código abierto que nos brinda la posibilidad de monitorear en tiempo real los servidores, la red y las diversas aplicaciones en nuestra organización y nos permite generar gráficos para tener un concepto más claro de nuestra infraestructura.

 

Algunas características de Zabbix

 

Configuración de alertas
Nos permite enviar notificaciones filtrando por recipiente, tipo de media, entre otros. Las acciones automáticas pueden incluir comandos remotos.

 

Gráficos en tiempo real
Nos brinda la funcionalidad de gráficos para monitorear de forma dinámica nuestra arquitectura.

 

Capacidad de monitoreo web
Zabbix nos permite simular el ambiente a través de la web.

 

Múltiples opciones de visualización
Permite crear gráficos personalizados combinando diversos elementos en uno solo, y permite hacer mapeos de red.

 

Almacenamiento histórico de datos
Permite almacenar los datos en la base de datos y podemos configurar los parámetros del historial.

 

Fácil configuración
Podemos agregar diversos dispositivos para monitorear como servidores y PCs, además podemos aplicar plantillas para monitorear dispositivos.

 

Búsqueda de redes
De manera automática Zabbix puede buscar dispositivos de red y permite auto registrar un agente.

 

Interfaz web
Su plataforma está basada en PHP. Puede ser accedida desde cualquier lugar y permite tener logs de auditoria.

 

 

Otras de sus muchas características son las siguientes

  • Recolección de datos
  • Verificación de rendimiento
  • Soporta SNMP, IPMI, JMX y VMware
  • Reportes personalizados
  • Podemos crear reportes por servidor o por agente

 

Además Zabbix tiene una gran escalabilidad, ya que permite monitorear hasta 100.000 dispositivos, más de un millón de métricas, entre otras. Como vemos es una herramienta muy poderosa que nos permitirá llevar un control preciso de cada recurso que tengamos disponible.

 

En este estudio vamos a conocer su instalación en los siguientes entornos:

  • Debian 8
  • RED HAT 7
  • CentOS 7

 

Zabbix tiene la capacidad de monitorear los servicios de red estándar como HTTP, FTP, SMTP, etc sin tener que instalar paquetes adicionales. Vamos a proceder con la instalación y configuración de Zabbix teniendo presente los siguientes parámetros:

 

Comenzaremos el proceso de instalación de Zabbix usando un entorno de Debian 8 Jessie el cual puede ser descargado desde su web.

 

 DEBIAN

 

Paso 1

El primer paso a ejecutar será realizar la instalación de los paquetes necesarios para ejecutar Zabbix, para ello ingresaremos los siguientes comandos:

 

En Debian 8:

sudo apt-get install build-essential gcc curl wget libsnmp-dev libcurl4-gnutls-dev libxml2-dev
En RED HAT / CentOS 7:
yum install gcc gcc-c++ make openssl-devel curl wget net-snmp net-snmp-utils net-snmp-libs net-snmp-devel gnutls gnutls-devel libxml2 libxml2-devel
Nota
Recordemos que debemos ejecutar estos comandos como usuario root, si no podemos acceder al usuario root debemos ejecutar el comando su e ingresar la contraseña para convertirse en root.

 

Vemos que se procederá a la descarga y respectiva instalación de los paquetes, aceptamos la descarga.

 

 

Paso 2

El siguiente paso que debemos ejecutar es instalar la base de datos, allí se almacenarán nuestros reportes, instalaremos MariaDB (Es la que está reemplazando actualmente a MySQL) y sus librerías. Para instalar MariaDB ejecutaremos el siguiente comando:

 

En Debian 8:

sudo apt-get install mariadb-server mariadb-client libmysqld-dev (si estamos como root suprimir el sudo)
En RED HAT / CentOS 7:
yum install mariadb-server mariadb-client mariadb-devel
Comenzará el proceso de descarga, aceptamos la descarga para que el Sistema la realice e instale MariaDB en nuestro Sistema.

 

 

En un momento de la instalación de MariaDB el sistema nos solicitará la contraseña del usuario root de la base de datos, debemos ingresarla y confirmarla (recordemos que debe ser una contraseña segura).

 

 

Podemos ver que la instalación de MariaDB ha sido satisfactoria.

 

 

Paso 3

El siguiente paso que realizaremos es crear un parámetro de seguridad a nuestra base de datos, para ello ingresaremos el comando:
mysql_secure_installation
Veremos que se despliega lo siguiente:

 

 

Debemos ingresar la contraseña que hayamos configurado para el usuario root.

 

Paso 4

A continuación vamos a configurar los parámetros de seguridad, simplemente debemos aceptar o no las preguntas que indica el sistema:
  • La primer opción nos indica si deseamos cambiar la contraseña del usuario root, en este caso ingresaremos la letra n (No).
  • La siguiente pregunta tiene que ver con los usuarios anónimos, es recomendable borrarlos por temas de seguridad, ingresaremos la letra y (Yes).
  • La siguiente opción tiene que ver con el acceso remoto del usuario root, igual por temas de acceso y seguridad lo mejor es deshabilitar esta opción, ingresamos la letra y (Yes).
  • En la siguiente pregunta, vemos que el sistema nos indica que MariaDB trae por defecto una base de datos llamada “test” donde cualquiera puede tener acceso, el sistema nos pregunta si deseamos remover esa base de datos, ingresamos la letra y (Yes).
  • La última pregunta hace referencia a si deseamos cargar los privilegios de la tabla en ese momento, indicamos que sí, ingresamos la letra y (Yes).

 

 

Finalmente vemos la confirmación que todo fue configurado de manera satisfactoria.

 

Paso 5

A continuación vamos a instalar PHP y Apache, PHP nos permitirá acceder a la funcionalidad de Zabbix. Para instalar dichos lenguajes ingresaremos los siguientes comandos:

 

En Debian 8:

sudo apt-get install apache2 php5 php5-mysql php5-gd php5-cli php5-xmlrpc
En RED HAT / CentOS 7:
yum install httpd php php-mysql php-gd pgp-cli php-xml php-bcmath php-mbstring mod_ssl openssl
Veremos que comienza el proceso de descarga, debemos aceptar para que el sistema descargue los paquetes y realice la instalación de los mismos.

 

 

Paso 6

A continuación debemos configurar algunos parámetros en el archivo php.ini; Para abrir este archivo ejecutaremos los siguientes comandos:

 

En Debian 8:

sudo nano /etc/php5/apache2/php.ini
En RED HAT / CentOS 7:
nano /etc/php.ini
Veremos que se despliega la siguiente ventana con toda la información relacionada a PHP:

 

 

En dicha ventana podemos usar la combinación de teclas CTRL + C para buscar y modificar estos valores:
post_max_size = 16M
max_execution_time = 300
max_input_time = 300
date.timezone = Continent/City
always_populate_raw_post_data = -1

 

Vemos que en la línea date.timezone falta ingresar el país y ciudad donde nos encontramos ubicados, debemos ingresar nuestra ubicación.

 

 

En la línea max_execution_time el valor por defecto es 30, podemos ajustarlo en 300 para tener un margen más amplio de ejecución.

 

 

Guardamos los cambios usando la combinación CTRL + O.

 

Nota
Si deseamos obtener el listado completo de las zonas horarias soportadas por PHP podemos ir al siguiente enlace.

 

Paso 7

El siguiente paso que debemos realizar es reiniciar el servicio de Apache, recordemos que cada vez que se haga una modificación en el archivo php.ini es necesario reiniciar el servicio para aplicar los cambios. Ejecutaremos lo siguiente:

 

En Debian 8:

sudo systemctl restart apache2.service
En RED HAT / CentOS 7:
systemctl restart httpd.service
Veremos cómo Apache se reinicia.

 

Paso 8

A continuación vamos a descargar, compilar e instalar Zabbix, para ello ejecutaremos el siguiente comando:
wget http://sourceforge.net/projects/zabbix/files/ZABBIX\ Latest\ \Stable/2.4.5/zabbix-2.4.5.tar.gz

 

Ejecutamos el comando y se inicia el proceso de descarga.

 

Nota
En caso de presentar algún problema con la descarga ingrese el comando de la siguiente manera:
wget http://sourceforge.net/projects/zabbix/files/ZABBIX%20Latest%20Stable/2.4.5/zabbix-2.4.5.tar.gz

 

Finalmente vemos que la descarga fue correcta.

 

 

Paso 9

El siguiente paso en nuestro proceso es descomprimir y extraer los archivos, para ello vamos a introducir los siguientes comandos:
tar xfz zabbix-2.4.5.tar.gz
cd zabbix-2.4.5/
ls
Podemos ver lo que contiene dicha carpeta:

 

 

Paso 10

A continuación vamos a establecer ciertos parámetros usando el comando ./configure -h. Para configurar nuestro Zabbix ingresaremos el siguiente comando:
./configure --enable-server --enable-agent --with-mysql --enable-ipv6 --with-net-snmp --with-libcurl --with-libxml2
Ejecutamos el comando y comenzará todo el proceso de configuración.

 

 

Veremos finalmente que el proceso fue correcto.

 

 

Como vemos Zabbix nos indica que podemos correr el comando make, éste nos permite crear los binarios instalables e instalar Zabbix, recordemos que debe ser ejecutado como root, ingresaremos lo siguiente:

make  
make install
Primero ejecutamos el comando make:

 

 

Una vez completada la operación ejecutaremos el comando make install:

 

 

Paso 11

Una vez hayamos ejecutado estos comandos vamos a crear una cuenta sin privilegios del sistema la cual ejecutará el demonio de Zabbix, para ello ingresaremos los siguientes comandos:
groupadd zabbix
useradd -g zabbix -d /usr/local/share/zabbix -s /bin/false zabbix
Ya tenemos nuestra cuenta.

 

Paso 12

A continuación configuraremos nuestra base de datos MariaDB para Zabbix, vamos a crear un usuario con privilegios para gestionar la base de datos, ingresemos lo siguiente:
mysql -u root -p 
create database zabbix;
grant all privileges on zabbix.* to 'zabbix'@'localhost' identified by 'your_password';
flush privileges;
exit

 

 

Nota
Si el Zabbix está corriendo en una base de datos diferente a MariaDB debeos ingresar la siguiente sintaxis:
grant all privileges on zabbix.* to 'zabbix'@'%' identified by 'your_password';

 

Paso 13

El siguiente paso es ingresar al directorio de Zabbix y extraer los recursos, en este caso debemos ingresar los siguientes comandos:
cd zabbix-2.4.5/
ls database/mysql/
mysql -u zabbix -p zabbix < database/mysql/schema.sql
mysql -u zabbix -p zabbix < database/mysql/images.sql
mysql -u zabbix -p zabbix < database/mysql/data.sql
Paso 14

Procedemos ahora a configurar el servidor web de Apache para Zabbix, para ello debemos copiar todos los recursos de PHP Frontend dentro de Apache, para ello ingresaremos lo siguiente:
rm /var/www/html/index.html
cp -rf frontends/php/* /var/www/html/
Avanzamos al siguiente paso.

 

Paso 15

Aquí nuestro objetivo es agregar el usuario Zabbix al grupo del sistema de Apache www-data, habilitar el módulo SSL y el host para poder correr Zabbix de manera segura, recordemos que debemos reiniciar el servicio después de aplicar estos cambios. Ejecutaremos lo siguiente:

 

En Debian 8:

usermod -aG www-data zabbix 
a2enmod ssl
a2ensite default-ssl
systemctl restart apache2.service
En RED HAT / CentOS 7:
usermod -aG apache zabbix
systemctl restart httpd.service

 

Paso 16

Nuestra siguiente tarea será configura el servidor de Zabbix, para ello debemos editar el archivo zabbix_server.conf, para realizar esta ingresaremos el siguiente comando:
nano /usr/local/etc/zabbix_server.conf
Veremos que se despliega la siguiente información:

 

 

Es importante que para modificar este archivo sepamos cual es la dirección IP de nuestro servidor, esto lo encontramos usando el comando ifconfig, en nuestro ejemplo es 192.168.0.8. Vamos a editar la línea DBHost la cual viene con el texto localhost e ingresaremos nuestra IP:

 

 

Guardamos los cambios y salimos del editor.

 

Paso 17

Necesitamos crear un archivo de logs y brindar los permisos necesarios para que Zabbix pueda escribir en ellos, para eso ingresaremos el siguiente comando:
touch /var/log/zabbix_server.log
chmod 775 /var/log/zabbix_server.log
chgrp zabbix /var/log/zabbix_server.log
Una vez creamos este archivo avanzamos.

 

Paso 18

Ahora debemos iniciar el agente y el servidor Zabbix, ejecutaremos los siguientes comandos:
/usr/local/sbin/zabbix_server
/usr/local/sbin/zabbix_agentd
/usr/local/sbin/zabbix_agent
Para obtener el estado de Zabbix y de los puertos de escucha ejecutamos el comando netstat:
netstat -tulpn

 

Paso 19

Vamos ahora a instalar la interfaz Frontend de Zabbix para ello debemos ingresar en nuestro navegador la dirección IP de la máquina http:192.168.0.8/setup.php. Veremos que se despliega la siguiente ventana para proceder a realizar la instalación:

 

[color=rgb(169,169,169)]Pincha en la imagen para ampliar[/color]

 

Damos clic en Next y se desplegará la ventana de los prerrequisitos, aquí podemos observar los que tienen alguna falla:

 

 

Ajustamos los cambios indicados en el sistema, reiniciamos el servicio de Apache y ya podemos ver que todo está correcto. Damos clic en Next y ahora es necesario configurar los parámetros de la base de datos, vemos que el usuario con el cual ingresaremos será el root (el cual fue creado durante la instalación de MySQL).

 

 

Como vemos contamos con la opción de probar la conexión a la base de datos (Test Connection).

 

 

En la siguiente ventana podremos observar los detalles del servidor Zabbix.

 

 

Damos clic en Next y ahora veremos un resumen de la instalación. A continuación damos clic en Next para iniciar el proceso de instalación:

 

 

Paso 20

Una vez finalizada la instalación podremos ingresar con nuestras credenciales:

 

 

[color=rgb(169,169,169)]Pincha en la imagen para ampliar[/color]

 

Al ingresar a la plataforma de Zabbix podremos observar las diferentes opciones que tenemos para la gestión de nuestra infraestructura. Desde esta plataforma podremos realizar todas las tareas de gestión tales como:

 

Monitoreo

 

[color=rgb(169,169,169)]Pincha en la imagen para ampliar[/color]

 

Reportes

 

[color=rgb(169,169,169)]Pincha en la imagen para ampliar[/color]

 

 

Configuración

 

[color=#a9a9a9]Pincha en la imagen para ampliar[/color]

 

Administración

 

[color=rgb(169,169,169)]Pincha en la imagen para ampliar[/color]

 

Como hemos podido observar Zabbix es una herramienta muy poderosa que nos puede ser muy útil en nuestras tareas de gestión ya que cuenta con diversas funcionalidades muy prácticas y dinámicas de administración.

 

Otras características de las que puede presumir

 

Monitoreo en todo lugar

Permite monitorear desde cualquier lugar los siguientes elementos:
  • Actividad de los Agentes
  • Dispositivos de red
  • Monitoreo de VMware
  • Servicios web
  • Monitoreo a todo el hardware

 

Ayuda empresarial

Con Zabbix tendremos en nuestra organización:
  • Una gran posibilidad de escalamiento (hasta 100.000 dispositivos)
  • Monitoreo distribuido
  • Alto rendimiento
  • Alta disponibilidad
  • Cero mantenimiento
  • Fácil integración con otro software
  • Compatibilidad con IPv6

 

Monitoreo Proactivo

Dentro de las capacidades de monitoreo encontramos:
  • Rápida solución a los problemas
  • Administración de los problemas

 

Capacidad de planeamiento

Con Zabbix podemos obtener:
  • Fácil planeamiento
  • Cero desperdicio de recursos

 

Soluciones de negocio

Zabbix ofrece a las organizaciones:
  • Soporte Comercial
  • Desarrollo personalizado
  • Consultas 7 X 24

 

¿Te ayudó este Tutorial?

Ayuda a mejorar este Tutorial!
¿Quieres ayudarnos a mejorar este tutorial más? Puedes enviar tu Revisión con los cambios que considere útiles. Ya hay 0 usuario que han contribuido en este tutorial al enviar sus Revisiones. ¡Puedes ser el próximo!