Áú»¢¶Ä²©

3 Instalaci¨®n desde el c¨®digo fuente

Es posible obtener la versi¨®n m¨¢s reciente de Áú»¢¶Ä²© 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 Áú»¢¶Ä²© desde el c¨®digo fuente.

1 Instalaci¨®n de los demonios Áú»¢¶Ä²©

1 Descargue el archivo fuente

Vaya a la [p¨¢gina de descarga de Áú»¢¶Ä²©] (http://www.zabbix.com/download_sources) y descargue el archivo fuente. Una vez descargado, extraiga las fuentes, ejecutando:

$ tar -zxvf zabbix-6.4.0.tar.gz

Ingrese la versi¨®n correcta de Áú»¢¶Ä²© en el comando. Deber¨ªa coincidir con el nombre del archivo descargado.

2 Crear la cuenta usuario

Es necesario tener una cuenta de usuario sin privilegios para todos los procesos del demonio Áú»¢¶Ä²©. Si el demonio Áú»¢¶Ä²© 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 "Áú»¢¶Ä²© 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 Áú»¢¶Ä²© 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:

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

En sistemas basados en Debian, ejecutar:

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

No se requiere una cuenta de usuario separado para la instalaci¨®n del Áú»¢¶Ä²© frontend.

Si el Áú»¢¶Ä²© 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 ³¦´Ç²Ô´Ú¾±²µ³Ü°ù²¹³¦¾±¨®²Ô del server y cualquier usuario con nivel de Admin en Áú»¢¶Ä²© facilmente podr¨¢ obtener, por ejemplo, la contrase?a de la base de datos.

Ejecutar Áú»¢¶Ä²© como root, bin, o cualquier otra cuenta de usuario con permisos especiales es considerado un riesgo de seguridad

3 Crear la base de datos de Áú»¢¶Ä²©

Es necesario tener una base de datos para los demonios Áú»¢¶Ä²© server y proxy, as¨ª como para el Áú»¢¶Ä²© Frontend. La base de datos no es necesaria para ejecutar el Áú»¢¶Ä²© 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 Áú»¢¶Ä²© proxy necesita solo el esquema mientras que la base de datos para el Áú»¢¶Ä²© server requiere tambi¨¦n contar con el conjunto de datos encima del esquema.

Una vez creada la base de datos de Áú»¢¶Ä²©, proceda con los siguientes pasos para poder compilar Áú»¢¶Ä²©.

4 Configurar las fuentes

Se requiere C99 con extensiones GNU para construir el servidor Áú»¢¶Ä²©, el proxy Áú»¢¶Ä²© o el agente Áú»¢¶Ä²©. Esta versi¨®n se puede especificar expl¨ªcitamente configurando CFLAGS="-std=gnu99":

export CFLAGS="-std=gnu99"

Si realiza la instalaci¨®n desde el , es necesario ejecutar primero:

./bootstrap.sh

Al configurar las fuentes para un servidor o proxy Áú»¢¶Ä²©, 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 ³¦´Ç²Ô´Ú¾±²µ³Ü°ù²¹³¦¾±¨®²Ô admitidas, dentro del directorio fuente de Áú»¢¶Ä²© extraido, ejecute:

./configure --help

Para configurar las fuentes para un servidor y agente Áú»¢¶Ä²©, 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 Áú»¢¶Ä²© (con PostgreSQL, etc.), puede ejecutar:

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

Para configurar las fuentes para un proxy Áú»¢¶Ä²© (con SQLite, etc.), puede ejecutar:

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

Para configurar las fuentes para un agente Áú»¢¶Ä²©, puede ejecutar:

./configure --enable-agent

o, para el agente 2 de Áú»¢¶Ä²©:

./configure --enable-agent2

Un entorno Go configurado con una [ versi¨®n Go] (https://go.dev/doc/devel/release#policy) soportada es necesario para construir el agente Áú»¢¶Ä²© 2. Ver para las instrucciones de instalaci¨®n.

Notas sobre las opciones de compilaci¨®n:

  • Se compilan las utilidades de l¨ªnea de comandos zabbix_get y zabbix_sender si se utiliza la opci¨®n --enable-agent.
  • Se requieren las opciones de ³¦´Ç²Ô´Ú¾±²µ³Ü°ù²¹³¦¾±¨®²Ô --with-libcurl y --with-libxml2 para monitoreo de m¨¢quinas virtuales; --with-libcurl tambi¨¦n es necesario para ´¡³Ü³Ù±ð²Ô³Ù¾±³¦²¹³¦¾±¨®²Ô SMTP y ³¾¨¦³Ù°ù¾±³¦²¹²õ agente Áú»¢¶Ä²© web.page.*. Tenga en cuenta que se requiere cURL 7.20.0 o superior con la opci¨®n de ³¦´Ç²Ô´Ú¾±²µ³Ü°ù²¹³¦¾±¨®²Ô --with-libcurl.
  • Áú»¢¶Ä²© siempre compila con la biblioteca PCRE (desde la versi¨®n 3.4.0); instalarlo no es opcional. --with-libpcre=[DIR] solo permite apuntar a un directorio base de instalaci¨®n espec¨ªfico, en lugar de buscar a trav¨¦s de una serie de lugares comunes para los archivos libpcre.
  • Puede utilizar el indicador --enable-static para vincular bibliotecas est¨¢ticamente. Si planea distribuir archivos binarios compilados entre diferentes servidores, debes usar esta bandera para hacer que estos binarios funcionen sin necesidad bibliotecas. Tenga en cuenta que --enable-static no funciona en .
  • No se recomienda utilizar la opci¨®n --enable-static al compilar el servidor. Para construir el servidor est¨¢ticamente, se necesita una versi¨®n est¨¢tica de cada biblioteca externa. No hay una comprobaci¨®n estricta de eso en el script de ³¦´Ç²Ô´Ú¾±²µ³Ü°ù²¹³¦¾±¨®²Ô.
  • Agregar la ruta opcional al archivo de ³¦´Ç²Ô´Ú¾±²µ³Ü°ù²¹³¦¾±¨®²Ô de MySQL --with-mysql=/<ruta_al_el_archivo>/mysql_config para seleccionar la biblioteca cliente MySQL deseada cuando sea necesario utilizar una que no se encuentra en la ubicaci¨®n predeterminada. Es ¨²til cuando hay varias versiones de MySQL o MariaDB instaladas. junto con MySQL en el mismo sistema.
  • Utilice el indicador --with-oracle para especificar la ubicaci¨®n de la API de OCI.

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:

comprobando main en -lmysqlclient... no
       configure: error: biblioteca mysqlclient no encontrada

Mientras que config.log tiene una descripci¨®n m¨¢s detallada:

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

Ver tambi¨¦n:

5 Compilar e instalar todo

Si se instala desde el 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 ³¦´Ç²Ô´Ú¾±²µ³Ü°ù²¹³¦¾±¨®²Ô 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 ³¦´Ç²Ô´Ú¾±²µ³Ü°ù²¹³¦¾±¨®²Ô
  • editar el archivo de ³¦´Ç²Ô´Ú¾±²µ³Ü°ù²¹³¦¾±¨®²Ô del Áú»¢¶Ä²© 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 Áú»¢¶Ä²© en el archivo. Todas las conexiones desde otros equipos ser¨¢n rechazadas.

  • editar el archivo de ³¦´Ç²Ô´Ú¾±²µ³Ü°ù²¹³¦¾±¨®²Ô del servidor Áú»¢¶Ä²© /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 Áú»¢¶Ä²© (o proxy). Para m¨¢s detalles consulte la secci¨®n de ajustes de desempe?o.

  • si ha instalado el proxy Áú»¢¶Ä²©, edite el archivo de ³¦´Ç²Ô´Ú¾±²µ³Ü°ù²¹³¦¾±¨®²Ô /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.

shell> servidor_zabbix

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.

shell> 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 Áú»¢¶Ä²©, ejecute zabbix_proxy.

shell> zabbix_proxy

2 Instalar la interfaz web de Áú»¢¶Ä²©

Copiar los archivos PHP

El Áú»¢¶Ä²© 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:

  • /usr/local/apache2/htdocs (directorio por defecto cuando se instala Apache desde el c¨®digo fuente)
  • /srv/www/htdocs (OpenSUSE, SLES)
  • /var/www/html (Debian, Ubuntu, Fedora, RHEL)

Es altamente recomendable utilizar un subdirectorio en lugar del directorio HTML ra¨ªz. Para crear el subdirectorio y copiar los archivos del Áú»¢¶Ä²© frontend en el, ejecute los siguientes comandos, remplazando el directorio actual:

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

Si planea utilizar alg¨²n idioma diferente al ingl¨¦s, vea Instalaci¨®n de idiomas adicionales para el frontend para las instrucciones.

Instalar el frontend

Por favor vea la p¨¢gina Instalar la interfaz web de Áú»¢¶Ä²© para informaci¨®n referente al asistente de instalaci¨®n del Áú»¢¶Ä²© frontend.

3 Instalar Java gateway

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.

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

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.

$ make

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.

$ make install

Proceda a ³¦´Ç²Ô´Ú¾±²µ³Ü°ù²¹³¦¾±¨®²Ô para m¨¢s detalles sobre la ³¦´Ç²Ô´Ú¾±²µ³Ü°ù²¹³¦¾±¨®²Ô y ejecuci¨®n del Java gateway.

4 Instalaci¨®n del servicio web Áú»¢¶Ä²©

La instalaci¨®n del servicio web Áú»¢¶Ä²© 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 Áú»¢¶Ä²©, ejecute el script ./configure con la opci¨®n --enable-webservice.

Se requiere un ambiente con una versi¨®n 1.13+ para compilar el servicio web Áú»¢¶Ä²©.

Ejecute zabbix_web_service en la m¨¢quina donde el servicio web es instalado:

shell> zabbix_web_service

Consulte ³¦´Ç²Ô´Ú¾±²µ³Ü°ù²¹³¦¾±¨®²Ô para m¨¢s detalles sobre como configurar la generaci¨®n de reportes programados.