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.
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:
Ingrese la versión correcta de Zabbix en el comando. Debería coincidir con el nombre del archivo descargado.
Es necesario tener una cuenta de usuario sin privilegios para todos los procesos del demonio Zabbix. Si el demonio Zabbix es iniciado desde una cuenta de usuario sin privilegios, los procesos correran como ese usuario.
Sin embargo, si el demonio es iniciado desde una cuenta 'root', los procesos cambiarán a ser ejecutados como una cuenta de usuario 'zabbix'. Para crear esa cuenta de usuario (en su propio grupo, "zabbix"),
en sistemas basados en RedHat, ejecutar:
groupadd --system zabbix
useradd --system -g zabbix -d /usr/lib/zabbix -s /sbin/nologin -c "Zabbix Monitoring System" zabbix
en sistemas basados en Debian, ejecutar:
addgroup --system --quiet zabbix
adduser --quiet --system --disabled-login --ingroup zabbix --home /var/lib/zabbix --no-create-home zabbix
Los procesos Zabbix no necesitan un directorio home, por lo que no recomendamos crear dicho directorio. Sin embargo, si está usando alguna funcionalidad que lo requiera (por ejemplo, guardar las credenciales MySQL en $HOME/.my.cnf
) tendrá la libertad de crearlo utilizando los siguientes comandos.
En sistemas basados en RedHat, ejecutar:
En sistemas basados en Debian, ejecutar:
No se requiere una cuenta de usuario separado para la instalación del Zabbix frontend.
Si el Zabbix server y el agent están ejecutandose en la misma máquina, es recomendable utilizar cuentas de usuario diferentes tanto para ejecutar el server como para el agent. De lo contrario, si ambos se están ejecutando desde el mismo usuario, el agent podrá acceder al archivo de configuración del server y cualquier usuario con nivel de Admin en Zabbix facilmente podrá obtener, por ejemplo, la contraseña de la base de datos.
Ejecutar Zabbix como root
, bin
, o cualquier otra cuenta de usuario con permisos especiales es considerado un riesgo de seguridad
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.
Se requiere C99 con extensiones GNU para construir el servidor Zabbix, el proxy Zabbix o el agente Zabbix. Esta versión se puede especificar explícitamente configurando CFLAGS="-std=gnu99":
Si realiza la instalación 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á. Sólo se puede utilizar un tipo de base de datos. compilado con un servidor o proceso proxy a la vez.
Para ver todas las opciones de configuración admitidas, dentro del directorio fuente de Zabbix extraido, ejecute:
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
Para configurar las fuentes para un servidor Zabbix (con PostgreSQL, etc.), puede ejecutar:
Para configurar las fuentes para un proxy Zabbix (con SQLite, etc.), puede ejecutar:
Para configurar las fuentes para un agente Zabbix, puede ejecutar:
o, para el agente 2 de Zabbix:
Un entorno Go configurado con una [ versión Go] (https://go.dev/doc/devel/release#policy) soportada es necesario para construir el agente Zabbix 2. Ver go.dev para las instrucciones de instalación.
Notas sobre las opciones de compilación:
web.page.*
. Tenga en cuenta que se requiere cURL 7.20.0 o superior con la opción de configuración --with-libcurl.Si ./configure falla debido a que faltan bibliotecas o alguna otra circunstancia, consulte el archivo config.log
para obtener más información sobre el error. Por ejemplo, si falta libssl
, el mensaje inmediato de error puede ser engañoso:
Mientras que config.log
tiene una descripción más detallada:
Ver también:
Si se instala desde el repositorio Git de Zabbix es necesario ejecutar primero lo siguiente:
$ make dbschema
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.
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.
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.
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.
Ejecute zabbix_server en el lado del servidor.
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.
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.
El Zabbix frontend está escrito en PHP, así que para ejecutarlo es necesario contar con un servidor web soportado. La instalación se realiza simplemente copiando los archivos PHP desde el directorio ui al directorio de documentos HTML del servidor web.
Algunas de las ubicaciones comunes para el directorio documentos HTML en servidores web Apache incluye:
Es altamente recomendable utilizar un subdirectorio en lugar del directorio HTML raíz. Para crear el subdirectorio y copiar los archivos del Zabbix frontend en el, ejecute los siguientes comandos, remplazando el directorio actual:
Si planea utilizar algún idioma diferente al inglés, vea Instalación de idiomas adicionales para el frontend para las instrucciones.
Por favor vea la página Instalar la interfaz web de Zabbix para información referente al asistente de instalación del Zabbix frontend.
Sólo es necesario instalar el Java gateway en caso de querer monitorea aplicaciones JMX. Java gateway es ligero y no requiere una base de datos.
Para instalar desde el código fuente, primero descargue y extraiga el archivo fuente.
Para compilar el Java gateway, ejecute el script ./configure
con la opción --enable-java
. Es recomendable que especifique la opción --prefix
en caso de requerir un directorio de instalación diferente a /usr/local que está por defecto, ya que al instalar el Java gateway se creará un nuevo árbol de directorios, no solo un simple ejecutable.
Para compilar el paquete Java gateway dentro de un archivo JAR, execute make
. Nótese que para este paso es necesario contar con los ejecutables javac
y jar
en tu ubicación.
Ahora ya tendrá un archivo zabbix-java-gateway-$VERSION.jar en src/zabbix_java/bin. Si se siente cómodo con ejecutar Java gateway desde src/zabbix_java en el directorio de distribución, entonces puede proceder con las instrucciones para configurar y ejecutar Java gateway. En caso contrario, asegúrese de contar con los permisos para ejecutar make install
.
Proceda a configuración para más detalles sobre la configuración y ejecución del Java gateway.
La instalación del servicio web Zabbix solo es requerida si usted quiere utilizar reportes programados.
Para instalar desde el código fuente, primero descargue y extraiga el archivo fuente.
Para compilar el servicio web Zabbix, ejecute el script ./configure
con la opción --enable-webservice
.
Se requiere un ambiente Go con una versión 1.13+ para compilar el servicio web Zabbix.
Ejecute zabbix_web_service en la máquina donde el servicio web es instalado:
Consulte configuración para más detalles sobre como configurar la generación de reportes programados.