Base para todos (server y proxy)
Software a instalar
Zabix Version | PostgreSQL Versión | Sistema Operativo |
6.0 RC2 | 14.0 | AlmaLinux release 8.5 (Arctic Sphynx) |
IP de Equipos
IP Server | 192.168.0.103 |
IP Proxy | 192.168.0.105 |
Pasar SELinux a modo permisivo
Se recomienda tener SELinux en modo permisivo (no permite conexión con posrgre en enforcing) a menos que sepa cómo solucionar problemas:
setenforce 0 && sed -i 's/^SELINUX=.*/SELINUX=permissive/g' /etc/selinux/config
Configure firewall
firewall-cmd --add-service={http,https} --permanent
firewall-cmd --add-port={10051/tcp,10050/tcp} --permanent
firewall-cmd --add-port={80/tcp,443/tcp} --permanent
firewall-cmd --reload
Instalar el repositorio de Zabbix
rpm -Uvh https://repo.zabbix.com/zabbix/5.5/rhel/8/x86_64/zabbix-release-5.5-1.el8.noarch.rpm
dnf -y install redhat-lsb-core
dnf clean all
POSTGRESQL
Instala el repositorio Postgresql-14 y limpia caché
rpm -Uvh https://download.postgresql.org/pub/repos/yum/reporpms/EL-8-x86_64/pgdg-redhat-repo-latest.noarch.rpm
dnf clean all
Desabilita el módulo pre-instalado DBMS.
dnf -qy module disable postgresql
Instala los paquetes postgre14
dnf -y install postgresql14 postgresql14-server
Inicializa la base de datos.
/usr/pgsql-14/bin/postgresql-14-setup initdb
Activar el servicio y cnfigurarlo para su inicio emn el arranque
systemctl enable --now postgresql-14
Editar Archivo de configuración postgresSQL para poder aceptar conexiones locales en /var/lib/pgsql/14/data/pg_hba.conf
nano /var/lib/pgsql/14/data/pg_hba.conf
Agregar
local all all trust
local all all md5
local all all md5
host all all 127.0.0.1/32 md5
host all all all md5
host all all ::1/128 md5
Si desea acceder desde afuera
host all all 0.0.0.0 0.0.0.0 md5
iniciar postgres
systemctl start postgresql-14
Nota: Acceder desde afuera significa abrir en firewalld el puerto 5432. la versión de base de datos es la actual al moneto de hacer esta guia, si sale uina versión 16,17,18,etc solo colocar el nombre de la versión, aunque por defecto zabix 6.0 busca la versión 13 y notifica que no detecta la versión (pero funciona sin inconvenientes).
Server
Instala el servidor, la interfaz y el agente de Zabbix
dnf install zabbix-server-pgsql zabbix-web-pgsql zabbix-nginx-conf zabbix-sql-scripts zabbix-selinux-policy zabbix-agent
Crear base de datos inicial
sudo -u postgres createuser --pwprompt zabbix
sudo -u postgres createdb -O zabbix -E Unicode -T template0 zabbix
En el servidor Zabbix, importe el esquema y los datos iniciales. Se le pedirá que ingrese la contraseña recién creada.
zcat /usr/share/doc/zabbix-sql-scripts/postgresql/server.sql.gz | sudo -u zabbix psql zabbix
Configurar la base de datos para el servidor Zabbix
Editar archivo /etc/zabbix/zabbix_server.conf
nano /etc/zabbix/zabbix_server.conf
Agregar los siguientes parámetros
DBPassword=password
DBName=zabbix
DBUser=zabbix
DBPassword=zabbix
DBPort=5432
reiniciar postgres
systemctl restart postgresql-14
Configurar PHP para la interfaz de Zabbix
Editar archivo /etc/nginx/conf.d/zabbix.conf, descomenta y configura las directivas 'listen' y 'server_name'.
nano /etc/nginx/conf.d/zabbix.conf
Mofificar
listen 80;
server_name example.com;
Inicia los procesos del agente y del servidor Zabbix
Inicia los procesos del agente y del servidor Zabbix y configúralos para que se inicien con el sistema.
systemctl restart zabbix-server zabbix-agent nginx php-fpm
systemctl enable zabbix-server zabbix-agent nginx php-fpm
Proxy
Encontré esta guía pero no está actualizada, aunque sirvió para poder tener noción del proceso. Esta guia es solo la adaptación de esta para su uso con PostgreSQL 14, zabbix 6.0 y REDHAT 8 (Alma Linux u otra compatible)
Instalar
dnf -y install zabbix-proxy-pgsql zabbix-sql-scripts zabbix-agent
Editar Archivo de configuración postgresSQL para poder aceptar conexiones locales en /var/lib/pgsql/14/data/pg_hba.conf
nano /var/lib/pgsql/14/data/pg_hba.conf
Agregar y comentar las que estén
local all all trust
local all all md5
local all all md5
host all all 127.0.0.1/32 md5
host all all all md5
host all all ::1/128 md5
Si desea acceder desde afuera
host all all 0.0.0.0 0.0.0.0 md5
useradd zabbix_proxy
sudo -u postgres createuser --pwprompt zabbix_proxy
sudo -u postgres createdb -O zabbix_proxy zabbix_proxy
Cargar datos del SQL para PostgreSQL
cat /usr/share/doc/zabbix-sql-scripts/postgresql/proxy.sql | sudo -u postgres psql zabbix_proxy
En caso de fallos revisar
Editar archivo de configuración y agregue la contraseña de la base de datos y la frecuencia de configuración en este formato en cualquier parte del archivo:
nano /etc/zabbix/zabbix_proxy.conf
Validar los parámetros
Server=192.168.0.103
Hostname=ZabbixProxy01
DBName=zabbix_proxy
DBPassword=zabbix_proxy
ConfigFrequency=60
El parámetro “ ConfigFrequency” define con qué frecuencia el proxy recupera los datos de configuración del servidor Zabbix en segundos. Puede leer más sobre los parámetros de configuración del proxy en la documentación oficial .
¡No cierres el archivo todavía! Ahora, debe cambiar los valores actuales de los parámetros " Server", " Hostname", " DBName" y " " a algo como esto:DB user
probar conexión local
psql -U zabbix_proxy zabbix_proxy
Comandos PSQL
listar tablas | \dt o \dt+ |
listar usuarios | \du |
listar bases de datos | \l |
Por favor si ven algún fallo no duden en notificarlo