1 Red Hat Enterprise Linux

Descripción general

Los paquetes oficiales de Zabbix 6.0 LTS para Red Hat Enterprise Linux y Oracle Linux están disponibles en el sitio web de Zabbix.

Los paquetes están disponibles con soporte para base de datos MySQL/PostgreSQL y servidor web Apache/Nginx.

Los paquetes y utilidades del agente Zabbix Zabbix get y Zabbix sender están disponibles en el repositorio oficial de Zabbix para RHEL 9, RHEL 8, RHEL 7, RHEL 6, y RHEL 5.

El repositorio oficial de Zabbix también proporciona paquetes fping, iksemel y libssh2. Estos paquetes se encuentran en el directorio no compatible.

El repositorio EPEL para EL9 también proporciona paquetes Zabbix. Si están instalados tanto el repositorio oficial de Zabbix como el repositorio EPEL, entonces los paquetes Zabbix en EPEL deben excluirse agregando la siguiente cláusula al archivo de configuración del repositorio de EPEL en /etc/yum.repos.d/:

[epel]
       ...
       excludepkgs=zabbix*

Notas en la instalación

Mira las instrucciones de instalación por plataforma en la página de descargas para:

  • instalar el repositorio
  • instalar el servidor/agente/frontend
  • crear la base de datos inicial, importar los datos iniciales
  • configurar la base de datos para el servidor Zabbix
  • configurar PHP para el frontend de Zabbix
  • iniciar los procesos del servidor/agente
  • configurando el frontend de Zabbix

Si quieres ejecutar el agente de Zabbix como root, consulta ejecutar el agente como root.

El proceso de servicio web de Zabbix, que se utiliza para la [generación programada de informes (/manual/web_interface/frontend_sections/reports/scheduled), requiere el navegador Google Chrome. El navegador no está incluido en paquetes y tiene que ser instalado manualmente.

Importación de datos con Timescale DB

Con TimescaleDB, además del comando de importación para PostgreSQL, también debe ejecutar:

cat /usr/share/zabbix-sql-scripts/postgresql/timescaledb.sql | sudo -u zabbix psql zabbix

TimescaleDB es compatible solamente con el servidor Zabbix.

PHP 7.2

La interfaz de Zabbix requiere la versión de PHP 7.2 o posterior.

Configuración de SELinux

Zabbix utiliza una comunicación entre procesos basada en sockets. En sistemas donde SELinux está habilitado, es posible que sea necesario agregar reglas de SELinux para permitir que Zabbix cree/use sockets de dominio UNIX en el directorio SocketDir. Actualmente, los archivos de socket son utilizados por el servidor (alerta, preprocesamiento, IPMI) y el proxy (IPMI). Los archivos de socket son persistentes, lo que significa que están presentes mientras se ejecuta el proceso.

Al tener el estado de SELinux habilitado en modo obligatorio, debe ejecutar los siguientes comandos para habilitar la comunicación entre la interfaz de Zabbix y el servidor:

RHEL 7 y posteriores:

setsebool -P httpd_can_connect_zabbix on

Si se puede acceder a la base de datos a través de la red (incluido 'localhost' en el caso de PostgreSQL), también debe permitir que la interfaz de Zabbix se conecte a la base de datos:

setsebool -P httpd_can_network_connect_db on

RHEL antes del 7:

setsebool -P httpd_can_network_connect on
       setsebool -P zabbix_can_network on

Una vez finalizada la configuración de la interfaz y SELinux, reinicie el servidor web Apache:

service httpd restart

Además, Zabbix proporciona el paquete zabbix-selinux-policy como parte de los paquetes RPM fuente para RHEL 8 y [RHEL 7] (http://repo.zabbix.com/zabbix/6.0/rhel/7/SRPMS/). Este paquete proporciona una política predeterminada básica para SELinux y hace que los componentes de zabbix funcionen de inmediato al permitir que Zabbix cree y use sockets y permita la conexión httpd a PostgreSQL (usada por la interfaz).

El archivo fuente zabbix_policy.te contiene las siguientes reglas:

module zabbix_policy 1.2;
       
       require {
         type zabbix_t;
         type zabbix_port_t;
         type zabbix_var_run_t;
         type postgresql_port_t;
         type httpd_t;
         class tcp_socket name_connect;
         class sock_file {create unlink};
         class unix_stream_socket connectto;
       }
       
       #============= zabbix_t ===============
       allow zabbix_t self:unix_stream_socket connectto;
       allow zabbix_t zabbix_port_t:tcp_socket name_connect;
       allow zabbix_t zabbix_var_run_t:sock_file create;
       allow zabbix_t zabbix_var_run_t:sock_file unlink;
       allow httpd_t zabbix_port_t:tcp_socket name_connect;
       
       #============= httpd_t ===============
       allow httpd_t postgresql_port_t:tcp_socket name_connect;

Este paquete se creó para evitar que los usuarios apaguen SELinux debido a la complejidad de la configuración. Contiene la política predeterminada que es suficiente para acelerar la implementación y configuración de Zabbix. Para obtener el máximo nivel de seguridad, se recomienda establecer configuraciones personalizadas de SELinux.

Instalación de proxy

Una vez que se agrega el repositorio requerido, puede instalar el proxy Zabbix ejecutando:

dnf install zabbix-proxy-mysql zabbix-sql-scripts

Sustituya 'mysql' en los comandos por 'pgsql' para usar PostgreSQL, o con 'sqlite3' para usar SQLite3 (solo proxy).

El paquete 'zabbix-sql-scripts' contiene esquemas de bases de datos para todos los sistemas de administración de bases de datos compatibles tanto para el servidor Zabbix como para el proxy Zabbix y se utilizará para la importación de datos.

Creando una base de datos

Crear una base de datos separada para Zabbix proxy.

El servidor Zabbix y el proxy Zabbix no pueden utilizar la misma base de datos. Si están instalados en el mismo equipo, la base de datos del proxy debe tener un nombre distinto.

Importando datos

Importar esquema inicial:

cat /usr/share/doc/zabbix-sql-scripts/mysql/proxy.sql | mysql -uzabbix -p zabbix

Para el proxy con PostgreSQL (o SQLite):

cat /usr/share/doc/zabbix-sql-scripts/postgresql/proxy.sql | sudo -u zabbix psql zabbix
       cat /usr/share/doc/zabbix-sql-scripts/sqlite3/proxy.sql | sqlite3 zabbix.db
Configurar la base de datos para el Zabbix proxy

Edite zabbix_proxy.conf:

# vi /etc/zabbix/zabbix_proxy.conf
       DBHost=localhost
       DBName=zabbix
       DBUser=zabbix
       DBPassword=<contraseña>

En DBName para el Zabbix proxy, use una base de datos separada del servidor Zabbix.

En DBPassword, use la contraseña de la base de datos Zabbix para MySQL; la contraseña del usuario PosgreSQL para PosgreSQL.

Utilice DBHost= con PostgreSQL. Es posible que desee mantener el valor predeterminado configurando DBHost=localhost (o una dirección IP), pero esto haría que PostgreSQL use un socket de red para conectarse a Zabbix. Ver la configuración SELinux para las instrucciones.

Iniciar el proceso de Zabbix proxy

Para iniciar el proceso de Zabbix proxy y hacer que se inicie en el arranque del sistema:

service zabbix-proxy start
       systemctl enable zabbix-proxy
Configuración del frontend

Un proxy de Zabbix no tiene un frontend; se comunica solamente con el servidor de Zabbix.

Instalación de Java gateway

Es necesario instalar Java gateway solo si desea monitorear aplicaciones JMX. Java gateway es ligero y no requiere una base de datos.

Una vez que se agrega el repositorio requerido, puede instalar Zabbix Java gateway ejecutando:

dnf install zabbix-java-gateway

Vaya a la configuración para obtener más detalles sobre la configuración y ejecución de Java gateway.

Instalación de paquetes con información de depuración

Los paquetes Debuginfo están actualmente disponibles para RHEL versiones 7, 6 y 5.

Para habilitar el repositorio debuginfo, edite el archivo /etc/yum.repos.d/zabbix.repo. Cambie enabled=0 a enabled=1 para el repositorio zabbix-debuginfo.

[zabbix-debuginfo]
       name=Zabbix Official Repository debuginfo - $basearch
       baseurl=http://repo.zabbix.com/zabbix/5.5/rhel/7/$basearch/debuginfo/
       enabled=0
       gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX-A14FE591
       gpgcheck=1

Esto le permitirá instalar el paquete zabbix-debuginfo.

dnf install zabbix-debuginfo

Este paquete único contiene la información de depuración para todos los componentes binarios de Zabbix.