Salutare tuturor.
Zabbix a introdus oficial Template DB PostgreSQL. În acest articol, vom configura acest lucru în Zabbix 4.4.

NOTĂ
Dacă te descurci bine cu engleza, îți recomand să instalezi template-ul conform manualului oficial
Cu toate acestea, articolul meu ia în considerare niște nuanțe care nu sunt acoperite în acest link.
Pregătirea template-ului
1. Accesăm directorul personal.
cd ~2. Descărcăm utilitarul git și clonăm repo-ul oficial Zabbix de pe GitHub.
yum -y install git
git clone https://github.com/zabbix/zabbix.git3. Accesăm directorul cu template-ul PostgreSQL.
cd zabbix/templates/db/postgresql/Configurarea template-ului pentru agentul Zabbix
1. Ne conectăm la PostgreSQL.
psql -U postgres2. Creăm utilizatorul zbx_monitor, care va avea doar permisiuni de citire pe serverul PostgreSQL.
Pentru PostgreSQL versiunea 10 și mai recentă:
CREATE USER zbx_monitor WITH PASSWORD '' INHERIT; GRANT pg_monitor TO zbx_monitor;Pentru PostgreSQL versiunea 9.6 și mai veche:
CREATE USER zbx_monitor WITH PASSWORD '';
GRANT SELECT ON pg_stat_database TO zbx_monitor;
--Pentru a colecta metrici WAL, utilizatorul trebuie să fie superuser.
ALTER USER zbx_monitor WITH SUPERUSER;3. Copiem directorul postgresql/ în directorul /var/lib/zabbix/. Dacă în /var/lib/ nu există directorul zabbix/, creează-l. Directorul postgresql/ conține fișierele necesare pentru obținerea metricilor din PostgreSQL.
cp -r postgresql/ /var/lib/zabbix/4. Apoi, copiem fișierul template_db_postgresql.conf în directorul de configurare al agentului Zabbix /etc/zabbix/zabbix_agentd.d/ și repornim agentul Zabbix.
cp template_db_postgresql.conf /etc/zabbix/zabbix_agentd.d/5. Acum, vom edita fișierul pg_hba.conf pentru a permite conexiunea la Zabbix. Mai multe informații despre fișierul pg_hba.conf: .
Deschide fișierul:
vi /var/lib/pgsql/12/data/pg_hba.confAdaugă una dintre liniile de mai jos (dacă nu înțelegi de ce este necesar, adaugă doar prima linie):
host all zbx_monitor 127.0.0.1/32 trust
host all zbx_monitor 0.0.0.0/0 md5
host all zbx_monitor ::0/0 md5NOTĂ
Dacă PostgreSQL a fost instalat din repo-ul PGDG, adaugă calea către pg_isready în variabila de mediu PATH pentru utilizatorul zabbix.
Ca opțiune:
ln -s /usr/pgsql-12/bin/pg_isready /usr/bin/pg_isready* — deoarece eu am pgsql versiunea 12, în loc de pgsql-12 vei avea o altă cale.
Dacă nu faci asta, Status: Ping va fi întotdeauna în stare Down.
Adăugarea template-ului pe frontend-ul Zabbix
Consider că cei care necesită colectarea metricilor din PostgreSQL știu deja cum să adauge template-uri. De aceea, voi descrie procesul pe scurt.
- Accesăm pagina Zabbix;
- Mergem la pagina „Configurare” => „Host«;
- Facem clic pe butonul „Create host” sau alegem un host existent;
- Pe pagina de creare/editare a hostului, selectăm tab-ul „Templates” și facem clic pe linkul „Adaugă«;
- În «Group» din lista alegerilor selectăm «Templates/Databases», alegem șablonul «Template DB PostgreSQL«, dăm clic pe butonul «Select» și apăsăm pe butonul «Actualizare«;
Așteptăm câteva momente și, în final, trecem la «Monitoring” => „Cele mai recente date” => „Hosts» alegem serverul cu PostgreSQL => apăsăm «Apply«.

Bucură-te!
Sursa: habr.com
