1 Red Hat Enterprise Linux

Descripción general

Los paquetes oficiales de Zabbix 6.4 para Red Hat Enterprise Linux versiones 6, 7, 8 y 9 y Oracle Linux versiones 8 y 9 están disponibles para descargar.

Los paquetes están disponibles con:

  • Base de datos MySQL o PostgreSQL
  • Soporte de servidor web Apache o Nginx

Tenga en cuenta que hay paquetes separados para el agente Zabbix, las utilidades Zabbix get y Zabbix sender disponibles para RHEL 6, 7, 8 y 9. Se pueden utilizar los mismos paquetes para instalar componentes de Zabbix en Alma Linux y Rocky Linux.

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

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*

Ver también: Instalación accidental de paquetes EPEL Zabbix

Notas sobre la instalación

Consulte las instrucciones de instalación por plataforma en la página de descarga para:

  • instalación del repositorio
  • instalación de servidor/agente/frontend
  • creación de base de datos inicial, importación de datos iniciales
  • configuración de la base de datos para el servidor Zabbix
  • configuración de PHP para la interfaz de Zabbix
  • iniciar procesos de servidor/agente
  • configuración de la interfaz de Zabbix

Si desea ejecutar el agente Zabbix como root, consulte Ejecutar el agente como root.

El proceso del servicio web Zabbix, que se utiliza para la generación de informes programados, requiere el navegador Google Chrome. El navegador no está incluido en los paquetes y debe instalarse 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.

Configuración de SELinux

Zabbix utiliza 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 (enforcing), 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 del frontend 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 7, RHEL 8 y RHEL 9 . 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 desconecten 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 y 6.

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/6.4/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.