Bonjour à tous.
Zabbix a désormais un Template DB PostgreSQL. Dans cet article, nous allons le configurer dans Zabbix 4.4.

REMARQUE
Si vous maîtrisez bien l'anglais, je vous recommande d'installer le template selon le manuel officiel
Cependant, mon article prend en compte des nuances qui ne sont pas présentes à ce lien.
Préparation du template
1. Accédez au répertoire personnel.
cd ~2. Téléchargez l'outil git et clonez le dépôt officiel de Zabbix sur GitHub.
yum -y install git
git clone https://github.com/zabbix/zabbix.git3. Accédez au répertoire du template PostgreSQL.
cd zabbix/templates/db/postgresql/Configuration du template pour l'agent Zabbix
1. Connectez-vous à PostgreSQL.
psql -U postgres2. Créez un utilisateur zbx_monitor en lecture seule avec accès au serveur PostgreSQL.
Pour PostgreSQL version 10 et supérieure :
CREATE USER zbx_monitor WITH PASSWORD '' INHERIT; GRANT pg_monitor TO zbx_monitor;Pour PostgreSQL version 9.6 et inférieure :
CREATE USER zbx_monitor WITH PASSWORD '';
GRANT SELECT ON pg_stat_database TO zbx_monitor;
-- Pour collecter les métriques WAL, l'utilisateur doit être superutilisateur.
ALTER USER zbx_monitor WITH SUPERUSER;3. Copiez le répertoire postgresql/ dans le répertoire /var/lib/zabbix/. Si le répertoire zabbix/ n'existe pas dans /var/lib/, créez-le. Le répertoire postgresql/ contient les fichiers nécessaires pour obtenir des mesures de PostgreSQL.
cp -r postgresql/ /var/lib/zabbix/4. Ensuite, copiez le fichier template_db_postgresql.conf dans le répertoire de configuration de l'agent Zabbix /etc/zabbix/zabbix_agentd.d/ et redémarrez l'agent Zabbix.
cp template_db_postgresql.conf /etc/zabbix/zabbix_agentd.d/5. Maintenant, modifiez le fichier pg_hba.conf pour autoriser la connexion à Zabbix. Pour plus d'informations sur le fichier pg_hba.conf : .
Ouvrez le fichier :
vi /var/lib/pgsql/12/data/pg_hba.confAjoutez l'une des lignes (Si vous ne comprenez pas pourquoi c'est nécessaire, ajoutez seulement la première ligne.) :
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 md5REMARQUE
Si PostgreSQL est installé depuis le dépôt PGDG, ajoutez le chemin de pg_isready dans la variable d'environnement PATH pour l'utilisateur zabbix.
En option :
ln -s /usr/pgsql-12/bin/pg_isready /usr/bin/pg_isready* — comme j'ai pgsql version 12, le chemin sera différent pour vous au lieu de pgsql-12.
Si cela n'est pas fait, l'état : Ping sera toujours en état Down.
Ajout du template dans l'interface Zabbix
Je pense que ceux qui ont besoin de collecter des mesures à partir de PostgreSQL savent déjà comment ajouter des templates. Donc, je vais décrire le processus brièvement.
- Accédez à la page Zabbix ;
- Allez à la page «Configuration» => «Hôte«;
- Cliquez sur le bouton «Créer un hôte» ou sélectionnez un hôte existant ;
- Sur la page de création/édition de l'hôte, allez à l'onglet «Templates» et cliquez sur le lien «Ajouter«;
- Dans «Group», sélectionnez «Templates/Databases», choisissez le modèle «Template DB PostgreSQL«, puis cliquez sur le bouton «Select» et appuyez sur le bouton «Mise à jour«;
Attendez un moment, puis allez enfin à «Monitoring» => «Données les plus récentes» => «Hôtes» choisissez le serveur avec PostgreSQL => cliquez sur «Appliquer«.

Profitez-en !
Source : habr.com
