Esta página fue traducida automáticamente. Si detectas un error, selecciónalo y presiona Ctrl+Enter para informarlo a los editores.

3 Instalación desde el código fuente

Es posible obtener la versión más reciente de Zabbix si realizamos la compilación desde el código fuente.

Aquí puede encontrar un tutorial paso a paso de cómo realizar la instalación de Zabbix desde el código fuente.

1 Instalación de los demonios Zabbix

1 Descargue el archivo fuente

Vaya a la [página de descarga de Zabbix] (http://www.zabbix.com/download_sources) y descargue el archivo fuente. Una vez descargado, extraiga las fuentes, ejecutando:

$ tar -zxvf zabbix-7.0.0.tar.gz

Ingrese la versión correcta de Zabbix en el comando. Debería coincidir con el nombre del archivo descargado.

2 Crear cuenta de usuario

Todos los procesos demonio de Zabbix se ejecutan bajo usuarios del sistema sin privilegios. Si un demonio de Zabbix se inicia desde una cuenta de usuario sin privilegios, continuará ejecutándose como ese usuario.

En la configuración predeterminada, si un demonio se inicia como root, cambiará a la cuenta de usuario zabbix, que debe estar presente. Para crear un usuario y grupo de sistema zabbix, ejecute los comandos que se indican a continuación.

Sistema basado en RedHat:

groupadd --system zabbix
       useradd --system -g zabbix -d /usr/lib/zabbix -s /sbin/nologin -c "Zabbix Monitoring System" zabbix

Sistema basado en Debian:

addgroup --system --quiet zabbix
       adduser --quiet --system --disabled-login --ingroup zabbix --home /var/lib/zabbix --no-create-home zabbix

No es necesario crear una cuenta de usuario separada para el frontend de Zabbix.

Recomendación de seguridad

Si el servidor y el agente de Zabbix se ejecutan en la misma máquina, se recomienda ejecutarlos bajo cuentas de usuario separadas. Ejecutar ambos como el mismo usuario permite que el agente acceda al archivo de configuración del servidor, lo que podría exponer información sensible—como la contraseña de la base de datos—a cualquier usuario con nivel de Administrador en Zabbix.

Ejecutar Zabbix como root, bin o cualquier otra cuenta con derechos especiales es un riesgo de seguridad.

Directorio home (opcional)

Los procesos de Zabbix no requieren un directorio home, por lo que generalmente no se recomienda crearlo. Sin embargo, si necesita funcionalidad que requiera un directorio home (por ejemplo, almacenar credenciales de MySQL en $HOME/.my.cnf), puede crearlo utilizando los comandos que se indican a continuación.

En sistemas basados en RedHat, ejecute:

mkdir -m u=rwx,g=rwx,o= -p /usr/lib/zabbix
       chown zabbix:zabbix /usr/lib/zabbix

En sistemas basados en Debian, ejecute:

mkdir -m u=rwx,g=rwx,o= -p /var/lib/zabbix
       chown zabbix:zabbix /var/lib/zabbix
3 Crear la base de datos de Zabbix

Es necesario tener una base de datos para los demonios Zabbix server y proxy, así como para el Zabbix Frontend. La base de datos no es necesaria para ejecutar el Zabbix agent.

Aquí puedes encontrar los scripts SQL para crear el esquema de la base de datos, así como insertar el conjunto de datos. La base de datos para el Zabbix proxy necesita solo el esquema mientras que la base de datos para el Zabbix server requiere también contar con el conjunto de datos encima del esquema.

Una vez creada la base de datos de Zabbix, proceda con los siguientes pasos para poder compilar Zabbix.

4 Configurar las fuentes

Se requiere C99 con extensiones GNU para compilar el servidor Zabbix, el proxy Zabbix o el agente Zabbix. Esta versión puede especificarse explícitamente estableciendo CFLAGS="-std=gnu99":

export CFLAGS="-std=gnu99"

Si se instala desde el repositorio Git de Zabbix, es necesario ejecutar primero:

./bootstrap.sh

Al configurar las fuentes para un servidor o proxy Zabbix, debe especificar el tipo de base de datos que se utilizará. Solo se puede compilar un tipo de base de datos con un proceso de servidor o proxy a la vez.

Para ver todas las opciones de configuración soportadas, dentro del directorio de fuentes extraídas de Zabbix ejecute:

./configure --help

Para configurar las fuentes para un servidor y agente Zabbix, puede ejecutar algo como:

./configure --enable-server --enable-agent --with-mysql --enable-ipv6 --with-net-snmp --with-libcurl --with-libxml2 --with-openipmi --with-ares

Para configurar las fuentes para un servidor Zabbix (con PostgreSQL, etc.), puede ejecutar:

./configure --enable-server --with-postgresql --with-net-snmp

Para configurar las fuentes para un proxy Zabbix (con SQLite, etc.), puede ejecutar:

./configure --prefix=/usr --enable-proxy --with-net-snmp --with-sqlite3 --with-ssh2

Para configurar las fuentes para un agente Zabbix, puede ejecutar:

./configure --enable-agent

o, para Zabbix agent 2:

./configure --enable-agent2

Se requiere un entorno Go configurado con una versión de Go soportada para compilar Zabbix agent 2.

Notas sobre las opciones de compilación:

  • --enable-agent - compila el agente Zabbix, así como las utilidades de línea de comandos Zabbix get y Zabbix sender.
  • --with-libcurl - requerido para la monitorización de máquinas virtuales, autenticación SMTP y los elementos de agente Zabbix web.page.* Zabbix agent items. Véase también: Requisitos (libcurl).
  • --with-libxml2 - requerido para la monitorización de máquinas virtuales.
  • --with-libpcre[=DIR] - Zabbix siempre compila con la biblioteca PCRE; esta opción solo permite especificar una ruta de instalación personalizada de PCRE.
  • --with-mysql=/ruta/a/mysql_config - especifica la ruta a una configuración particular de la biblioteca cliente de MySQL. Útil cuando hay varias versiones de MySQL o MariaDB instaladas.
  • --with-oracle - especifica la ubicación de la API Oracle Call Interface (OCI).
  • --enable-static - enlaza las bibliotecas estáticamente (no soportado en Solaris). Utilice esto si planea distribuir binarios compilados a sistemas sin las bibliotecas requeridas. No se recomienda al compilar el servidor Zabbix. Para compilar el servidor estáticamente, se requiere una versión estática de cada biblioteca externa. El script configure no comprueba esto automáticamente.
  • --with-stacksize=<valor> - establece el tamaño de pila por hilo en kilobytes (por ejemplo, --with-stacksize=512). Puede aumentar este valor si Zabbix falla o se congela debido a desbordamientos de pila (por ejemplo, durante el preprocesamiento en sistemas con límites de pila de hilo bajos por defecto).

Si ./configure falla debido a bibliotecas faltantes u otros problemas, por favor revise el archivo config.log para obtener información detallada sobre el error.

Por ejemplo, si falta libssl, el mensaje de error inmediato puede ser engañoso:

checking for main in -lmysqlclient... no
       configure: error: Not found mysqlclient library

En este caso, config.log revela la causa real:

/usr/bin/ld: cannot find -lssl
       /usr/bin/ld: cannot find -lcrypto

Véase también:

5 Compilar e instalar todo

Si se instala desde el repositorio Git de Zabbix es necesario ejecutar primero lo siguiente:

$ make dbschema

make install

Este paso debe ejecutarse con un usuario con los permisos suficientes (por lo general 'root', o usando sudo).

Cuando ejecutamos make install los binarios de los demonios serán instalados en /usr/local/sbin para (zabbix_server, zabbix_agentd, zabbix_proxy) y /usr/local/bin para los binarios de los clientes (zabbix_get, zabbix_sender).

Para especificar una ubicación distinta a /usr/local, use el parámetro --prefix en el paso previo correspondiente a la configuración del código fuente, por ejemplo --prefix=/home/zabbix. En este caso los binarios del demonio serán instalados bajo <prefix>/sbin, mientras las utilidades bajo <prefix>/bin. Las páginas del manual serán instaladas debajo de <prefix>/share.

6 Revisar y editar archivos de configuración
  • editar el archivo de configuración del Zabbix agent /usr/local/etc/zabbix_agentd.conf

Es necesario configurar este archivo en cada equipo con zabbix_agentd instalado.

De la misma forma es necesario especificar la dirección IP del servidor Zabbix en el archivo. Todas las conexiones desde otros equipos serán rechazadas.

  • editar el archivo de configuración del servidor Zabbix /usr/local/etc/zabbix_server.conf

Se requiere especificar el nombre de la base de datos, así como el usuario y contraseña (en caso de ser necesario)

El resto de los parámetros por defecto se ajustarán a sus necesidades en caso de tener una instalación pequeña (hasta diez equipos monitoreados). Sin embargo es necesario cambiar los parámetros por defecto si requiere mejorar el desempeño del servidor Zabbix (o proxy). Para más detalles consulte la sección de ajustes de desempeño.

  • si ha instalado el proxy Zabbix, edite el archivo de configuración /usr/local/etc/zabbix_proxy.conf

Se requiere especificar la dirección IP del servidor y el nombre de equipo del proxy (debe ser reconocido por el servidor), así como el nombre de la base de datos, el usuario y contraseña (en caso de ser necesario).

Usando SQLite es necesario especificar la ubicación completa del archivo de la base de datos; usuario DB y contraseña no son requeridos.

7 Ejecutar los demonios

Ejecute zabbix_server en el lado del servidor.

zabbix_server

Asegúrese de que su sistema permita la asignación de 36 MB (o un un poco más) de memoria compartida; de lo contrario, es posible que el servidor no se inicie y verá "No se puede asignar memoria compartida para <tipo de caché>". en el archivo de registro del servidor. Esto puede suceder en FreeBSD, Solaris 8.

Ejecute zabbix_agentd en todas las máquinas monitoreadas.

zabbix_agentd

Asegúrese de que su sistema permita la asignación de 2 MB de memoria compartida; de lo contrario, es posible que el agente no se inicie y verá "No se puede asignar memoria compartida al recopilador" en el archivo de registro del agente. Esto puede suceder en Solaris 8.

Si ha instalado el proxy Zabbix, ejecute zabbix_proxy.

zabbix_proxy

2 Instalar la interfaz web de Zabbix

Copiando archivos PHP

La interfaz de Zabbix está escrita en PHP, por lo que para ejecutarla se necesita un servidor web compatible con PHP. La instalación se realiza simplemente copiando los archivos PHP del directorio ui al directorio de documentos HTML del servidor web.

Las ubicaciones comunes de los directorios de documentos HTML para servidores web Apache incluyen:

  • /usr/local/apache2/htdocs (directorio por defecto al instalar Apache desde el código fuente)
  • /srv/www/htdocs (OpenSUSE, SLES)
  • /var/www/html (Debian, Ubuntu, Fedora, RHEL)

Se sugiere utilizar un subdirectorio en lugar de la raíz HTML. Para crear un subdirectorio y copiar los archivos de la interfaz de Zabbix en él, ejecute los siguientes comandos, reemplazando <htdocs> por el directorio real:

mkdir <htdocs>/zabbix
       cd ui
       cp -a . <htdocs>/zabbix

Si planea utilizar cualquier otro idioma que no sea inglés, consulte Instalación de idiomas adicionales para la interfaz para obtener instrucciones.

Instalación del frontend

Consulte la página Instalación de la interfaz web para obtener información sobre el asistente de instalación del frontend de Zabbix.

3 Instalación de la puerta de enlace Java

Es necesario instalar Java Gateway solo si desea monitorear aplicaciones JMX. La puerta de enlace Java es liviana y no requiere una base de datos.

Para instalarla desde las fuentes, primero descargue y extraiga el archivo fuente.

Para compilar la puerta de enlace Java, ejecute el script ./configure con la opción --enable-java. Es recomendable que especifique la opción --prefix para solicitar una ruta de instalación distinta a la predeterminada /usr/local, porque la instalación de Java Gateway creará un árbol de directorios completo, no sólo un único ejecutable.

./configure --enable-java --prefix=$PREFIX

Para compilar y empaquetar la puerta de enlace Java en un archivo JAR, ejecute make. Tenga en cuenta que para este paso necesitará los ejecutables javac y jar en su ruta.

make

Ahora tiene un archivo zabbix-java-gateway-$VERSION.jar en src/zabbix_java/bin. Si se siente cómodo ejecutando Java Gateway desde src/zabbix_java en el directorio de distribución, entonces puedes continúe con las instrucciones para configurar y ejecutar la puerta de enlace Java. De lo contrario, asegúrese de tener suficientes privilegios y ejecute "make install".

make install

Continúe con la configuración para obtener más detalles sobre la configuración y ejecución de la puerta de enlace Java.

4 Instalación del servicio web de Zabbix

La instalación del servicio web de Zabbix solo es necesaria si desea utilizar informes programados.

Para instalar desde las fuentes, primero descargue y extraiga el archivo fuente.

Para compilar el servicio web de Zabbix, ejecute el script ./configure con la opción --enable-webservice.

Se requiere un entorno Go configurado con una versión de Go compatible para compilar el servicio web de Zabbix.

Ejecute zabbix_web_service en la máquina donde se instaló el servicio web:

zabbix_web_service

Continúe con la configuración para obtener más detalles sobre la configuración de la generación de informes programados.