Hallo zusammen.
In Zabbix gibt es eine offizielle Template DB PostgreSQL. In diesem Artikel richten wir es in Zabbix 4.4 ein.

HINWEIS
Wenn Sie gut Englisch sprechen, empfehle ich, die Vorlage gemäß dem offiziellen Handbuch zu installieren
Dennoch sind in meinem Artikel Nuancen berücksichtigt, die unter diesem Link fehlen.
Vorbereitung der Vorlage
1. Wechseln Sie in das Home-Verzeichnis.
cd ~2. Laden Sie das Tool git herunter und klonen Sie das offizielle Zabbix-Repository, das sich auf GitHub befindet.
yum -y install git
git clone https://github.com/zabbix/zabbix.git3. Wechseln Sie in das Verzeichnis mit der PostgreSQL-Vorlage.
cd zabbix/templates/db/postgresql/Konfiguration der Vorlage für den Zabbix-Agenten
1. Lassen Sie uns zu PostgreSQL verbinden.
psql -U postgres2. Erstellen Sie den Benutzer zbx_monitor nur für Lesezugriff mit Zugriff auf den PostgreSQL-Server.
Für PostgreSQL Version 10 und höher:
CREATE USER zbx_monitor WITH PASSWORD '' INHERIT; GRANT pg_monitor TO zbx_monitor;Für PostgreSQL Version 9.6 und älter:
CREATE USER zbx_monitor WITH PASSWORD '';
GRANT SELECT ON pg_stat_database TO zbx_monitor;
--Um Metriken von WAL zu sammeln, muss der Benutzer Superuser sein.
ALTER USER zbx_monitor WITH SUPERUSER;3. Kopieren Sie das Verzeichnis postgresql/ in das Verzeichnis /var/lib/zabbix/. Wenn das Verzeichnis zabbix/ in /var/lib/ fehlt, erstellen Sie es. Das Verzeichnis postgresql/ enthält Dateien, die zum Abrufen von Metriken aus PostgreSQL erforderlich sind.
cp -r postgresql/ /var/lib/zabbix/4. Kopieren Sie dann die Datei template_db_postgresql.conf in das Konfigurationsverzeichnis des Zabbix-Agenten /etc/zabbix/zabbix_agentd.d/ und starten Sie den Zabbix-Agenten neu.
cp template_db_postgresql.conf /etc/zabbix/zabbix_agentd.d/5. Jetzt bearbeiten wir die Datei pg_hba.conf, um die Verbindung zu Zabbix zu ermöglichen. Weitere Informationen zur Datei pg_hba.conf: .
Öffnen Sie die Datei:
vi /var/lib/pgsql/12/data/pg_hba.confFügen Sie eine der Zeilen hinzu (Wenn Sie nicht verstehen, warum das notwendig ist, fügen Sie nur die erste Zeile hinzu.):
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 md5HINWEIS
Wenn PostgreSQL aus dem PGDG-Repository installiert wurde, fügen Sie den Pfad zu pg_isready zur Umgebungsvariablen PATH für den Benutzer zabbix hinzu.
Alternativ:
ln -s /usr/pgsql-12/bin/pg_isready /usr/bin/pg_isready* — da ich die Version pgsql 12 habe, wird bei Ihnen anstelle von pgsql-12 ein anderer Pfad vorhanden sein.
Wenn dies nicht gemacht wird, wird Status: Ping immer auf Down stehen.
Hinzufügen der Vorlage im Zabbix-Frontend
Ich gehe davon aus, dass diejenigen, die Metriken von PostgreSQL abrufen möchten, wissen, wie man Vorlagen hinzufügt. Daher beschreibe ich den Prozess kurz.
- Gehen Sie zur Zabbix-Seite;
- Wechseln Sie zur Seite „Konfiguration“ => „Host«;
- Klicken Sie auf die Schaltfläche „Host erstellen“ oder wählen Sie einen bestehenden Host aus;
- Auf der Seite zum Erstellen/Ändern des Hosts wählen wir den Tab „Templates“ und klicken auf den Link „Hinzufügen«;
- Im „Group“-Auswahlfeld wählen wir „Templates/Datenbanken“, wählen die Vorlage „Template DB PostgreSQL“, klicken auf die Schaltfläche „Auswählen“ und drücken die Schaltfläche „Update«;
Warten Sie eine Weile und schließlich wechseln wir zu „Überwachung“ => „Letzte Daten“ => „Hosts“ und wählen den Server mit PostgreSQL => drücken Sie „Übernehmen«.

Viel Spaß!
Quelle: habr.com
