Zabbix 3 servicio de supervisión y monitoreo

Zabbix_logo


Hola a todos. Esta vez les traigo está herramienta muy útil y desconocida por muchos, para poder monitorizar y vigilar la actividad de nuestros servidores todo desde un mismo lugar.

Muchas son las herramientas que hacen esto por completo o una parte, en otros casos debemos instalar varias para obtener el beneficio que buscamos.

Lo cierto es que zabbix trabaja bajo el modelo de 1 sola versión por la que no pagas ni un centavo y tiene una buena comunidad. Pero como siempre si prefieres o tienes los recursos para un contrato de servicio y/o soporte además de una muy buena capacitación para usar la herramienta, te diría que no es una mala inversión.

Bueno particularmente está herramienta está solo para distribuciones basadas en debian, ubuntu, redhat. Así que tal vez sea una limitante para algunos, pues probablemente tendrán que remitirse a los fuentes para compilar.

Ok, ahora vamos con el tutorial de lleno. Yo realice está instalación en debian 8 jessie. Un servidor en limpio y con la base de datos en otro servidor, pero eso ya es decisión de cada quien.

Paso 1

Descarguen zabbix server y frontend de aqui

Otra alternativa es directamente desde su servidor.

wget http://repo.zabbix.com/zabbix/3.0/debian/pool/main/z/zabbix/zabbix-server-pgsql_3.0.2-1+jessie_amd64.deb .
 wget http://repo.zabbix.com/zabbix/3.0/debian/pool/main/z/zabbix/zabbix-frontend-php_3.0.2-1+jessie_all.deb .

Instalamos estos paquetes y resolvemos las dependencias.

dpkg -i *.deb
 apt-get install -f

Paso 2

Agregamos como se llamara nuestro servidor ejemplo zabbix.midominio.com

 vi /etc/hosts

Agregamos por ejemplo:
192.168.1.100     zabbix           zabbix.midominio.com

Por defecto zabbix instala en nuestro apache una configuracion tipo alias en /etc/apache2/conf-enabled/zabbix.conf, para acceder de la siguiente forma http://<server_ip_or_name>/zabbix, a mi no me gusta por tanto podríamos desactivar

a2disconf zabbix.conf

Paso 2.1 (opcional- si dejaste la configuración anterior tal cual, salta al paso 3)

Adicionalmente u opcionalmente tendrías que crear un virtualhost o modificar el 000-default.conf como tu prefieras y agregas lo siguiente

 vi /etc/apache2/sites-available/zabbix.midominio.com.conf

<VirtualHost *:80>

ServerName zabbix.midominio.com

DocumentRoot /usr/share/zabbix

<Directory "/usr/share/zabbix">
Options FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all

<IfModule mod_php5.c>
php_value max_execution_time 300
php_value memory_limit 128M
php_value post_max_size 16M
php_value upload_max_filesize 2M
php_value max_input_time 300
php_value always_populate_raw_post_data -1
</IfModule>
</Directory>

<Directory "/usr/share/zabbix/conf">
Order deny,allow
Deny from all
<files *.php>
Order deny,allow
Deny from all
</files>
</Directory>

<Directory "/usr/share/zabbix/app">
Order deny,allow
Deny from all
<files *.php>
Order deny,allow
Deny from all
</files>
</Directory>

<Directory "/usr/share/zabbix/include">
Order deny,allow
Deny from all
<files *.php>
Order deny,allow
Deny from all
</files>
</Directory>

<Directory "/usr/share/zabbix/local">
Order deny,allow
Deny from all
<files *.php>
Order deny,allow
Deny from all
</files>
</Directory>
# Available loglevels: trace8, ..., trace1, debug, info, notice, warn,
# error, crit, alert, emerg.

ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined

</VirtualHost>

Guardamos, salimos y ejecutamos


a2ensite zabbix.midominio.com.conf
service apache2 restart

Paso 3

Configurando la base de datos

aptitude install php5-pgsql
aptitude install libapache2-mod-auth-pgsql
service apache2 reload

El .sql se encuentra en

cd /usr/share/doc/zabbix-server-pgsql/create.sql.gz

Pueden cargarlo por pgadmin3 o por pgsql
por psql

su - postgres
psql
CREATE USER zabbix WITH PASSWORD 'myPassword';
CREATE DATABASE zabixdb;
GRANT ALL PRIVILEGES ON DATABASE zabbixdb to zabbix;
\q
psql -U zabbix -d zabbixdb -f create.sql

Por PgAdmin3 es mucho mas sencillo
1 presiona sql, y revisa que estes en la base de datos correcta
2 presiona abrir y carga el .sql que esta dentro del .gz
3 run, y listo

Captura de pantalla de 2016-04-30 13:02:10


Paso 4

vi /etc/zabbix/zabbix_server.conf

DBHost=192.168.x.x
 DBName=zabbixdb
 DBSchema=public
 DBUser=zabbix
 DBPassword=password

Paso 5

http://<server_ip_or_name>/zabbix
o
http://<server_ip_or_name>

install_1

bueno en este punto si nos fuimos por mysql o postgres debemos chequear que todo este en verde y se muestre nuestra opción a base de datos. Algo importate lo de php time zone lo pueden editar en /etc/php5/apache2/php.ini en la etiqueta date.timezone = America/Curacao por ejemplo, todas las zonas permitidas están aqui

install_2

21

Luego debemos configurar la base de datos, recuerden cambiar el host si esta en otro servidor, así como user, password y database name
install_3

3134786815727242010

Ahora los detalles del servidor

install_4

En host, si tienes un dominio en tu servidor colócalo, y en name el diminutivo, ejemplo, host: zabbix.midominio.com, y en name: zabbix

install_5

870039153112911113

y si estas de acuerdo, next y debería decirnos…

install_7

ahora solo accedemos zabbix.midominio.com

login


por defecto es Admin – zabbix

Paso 6

Instalamos el cliente en nuestro servidor

wget http://repo.zabbix.com/zabbix/3.0/debian/pool/main/z/zabbix/zabbix-agent_3.0.2-1+jessie_amd64.deb .
 dpkg -i zabbix-agent_3.0.2-1+jessie_amd64.deb
 /etc/init.d/zabbix-agent start

Paso 7

Te voy a explicar en este tutorial lo mas básico para agregar un cliente, porque por defecto zabbix server trae configurado varias templates, trigers, action etc… en un segundo post te mostrare mas profundamente este tema

Captura de pantalla de 2016-04-30 14:04:49

Configuration > Hosts > Create host

Captura de pantalla de 2016-04-30 14:05:38

hostname es el nombre exacto que debes colocar en zabbix_agentd.conf, este nombre suele ser mas tecnico… ejemplo srv-01, eso no me dice nada, ni siquiera una descripción del servidor
Visible name ya es un nombre mas amigable que te permita a ti como administrador saber cual servidor es… ejemplo Correo
Groups es a que grupo pertenese este hos, o puedes crear uno nuevo en New group
Agent interfaces, puedes monitorear desde mas de 1 interfaz, pero al menos una debe estar declarada por ip address y/o DNS name

Captura de pantalla de 2016-04-30 14:06:24

Luego le damos a Template y como te comente, ya trae por defecto muchos ya declarados, como http/https, ssh, icmp e incluso algunos que incluyen varios template en uno, como OS Linux.
Primero presionas Select, luego chequea todos los template que necesites y presionas select de esa nueva ventana, por ultimo add

Captura de pantalla de 2016-04-30 14:08:02

Como ultimo paso te recomiendo activar Host inventory Automatic

Ya para finalizar en el servidor que queremos monitorizar y ya declaramos en el servidor, editamos el archivo agentd

vi /etc/zabbix/zabbix_agentd.conf
Server= ip del servidor
ServerActive=ip del servidor
Hostname=el nombre hostname que colocamos en la configuracion host del server, tiene que ser exactamente igual, mayusculas, espacios, simbolos, sino te dará un error
/etc/init.d/zabbix-agent start

Esto es todo por esta oportunidad en una segunda versión de este tutorial, planeo ir a fondo con todos los trigers, acciones y funciones que puedes explotar de esta aplicación. Gracias y sigan sintonizados


Deja tu comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

*

*

  1. Responsable de los datos: Miguel Ángel Gatón
  2. Finalidad de los datos: Controlar el SPAM, gestión de comentarios.
  3. Legitimación: Tu consentimiento
  4. Comunicación de los datos: No se comunicarán los datos a terceros salvo por obligación legal.
  5. Almacenamiento de los datos: Base de datos alojada en Occentus Networks (UE)
  6. Derechos: En cualquier momento puedes limitar, recuperar y borrar tu información.

  1.   Rodolfo dijo

    Suena excelente ésta herramienta, espero con ansias el segundo post.

  2.   Proferay dijo

    A primera vista pareciera ser una completa y poderosa herramienta. Intentaré configurarla en breve.
    Gracias por la información!

  3.   Alberto dijo

    Estoy muy interesado en probar herramientas de monitoreo y me gustaría saber cuales creen que son las mejores.
    Ya sabia de Zabbix, pero me parece un poco compleja por mis conocimientos, aunque le daré otra oportunidad siguiendo (hasta donde pueda) los pasos de este y los demás artículos que lleguen (Mil Gracias !!). Hazlo lo mas asequible posible por favor :))
    Otra herramienta que me parece muy interesante es: GRAFANA que tb tengo que probar. Otra buena creo que es: NAGIOS
    Conocéis otras que sean referencia en monitoreo y visualización de datos relativamente sencillas de implementar?

    1.    Arturo dijo

      Yo utilizo CACTI y he realizado pruebas con Pandora FMS y ntop

  4.   Diego dijo

    Gran tuturial! esperando con ansias la segunda parte. Buen trabajo