Zabbix

Updated 23 Avril 2021

Zabbix

Introduction

Zabbix est un système gratuit permettant de surveiller et de contrôler l'état de nombreux services, serveurs et équipements de réseau. Un serveur Zabbix est le cœur du système, qui contrôle à distance les services réseau et fournit un dépôt contenant toutes les données de configuration, de statistiques et d'exécution. C'est la partie de Zabbix qui avertit l'administrateur de tout problème matériel observé.

Dans le présent article, nous expliquons comment installer et configurer la partie serveur de Zabbix sur un système [Calculate Scratch Server] (https://wiki.calculate-linux.org/fr/cls) doté d'une interface et d'un agent Web.

Préparer un conteneur LXC

Nous conseillons d'installer Zabbix dans un conteneur dédié, que vous aurez créé et configuré conformément au manuel.

Installer et configurer PostgreSQL

Installez et configurez PostgreSQL, comme expliqué dans le manuel. Remplacez dbtest par zabbix, et test par zabbix.

Installer et configurer Nginx

Installez et configurez votre serveur Nginx, puis configurez PHP-FPM comme expliqué dans le manuel.

Installer et configurer un serveur Zabbix

Avant l'installation, activez les drapeaux USE du paquet Zabbix requis pour prendre en charge l'interface Web et le serveur :

/etc/portage/package.use/custom

net-analyzer/zabbix frontend server

Installez Zabbix :

emerge -a net-analyzer/zabbix

Ajoutez des paramètres de port ouvert pour que Zabbix puisse fonctionner :

/etc/services

zabbix-agent 10050/tcp Zabbix Agent
zabbix-agent 10050/udp Zabbix Agent
zabbix-trapper 10051/tcp Zabbix Trapper
zabbix-trapper 10051/udp Zabbix Trapper

Paramètres PHP requis pour Zabbix

/etc/php/fpm-php7.4/php.ini

# Taille maximale autorisée des données
post_max_size = 16M

# Temps maximum en secondes nécessaire au chargement complet du script
max_execution_time = 300

# Temps maximum en secondes pour que le script traite toutes les données d'entrée
max_input_time = 300 

Une fois les paramètres enregistrés, redémarrez PHP et Nginx :

/etc/init.d/php-fpm restart

/etc/init.d/nginx restart

Importation de la structure de la base de données pour Zabbix

Réinitialisez la structure de votre base de données :

cd /usr/share/zabbix/database/postgresql/

cat schema.sql | psql -U zabbix

cat images.sql | psql -U zabbix

cat data.sql | psql -U zabbix

Configurer une interface web

Pour pouvoir utiliser l'interface Web, il faut d'abord copier les fichiers Zabbix dans le répertoire correspondant sur le serveur :

cp -r /usr/share/webapps/zabbix/5.2.4/htdocs/* /var/calculate/www/example.org/zabbix/"

Démarrez le serveur ainsi que l'agent Zabbix :

/etc/init.d/zabbix-server start

/etc/init.d/zabbix-agentd start

Ajouter le serveur et l'agent Zabbix à la liste de démarrage automatique :

rc-update add zabbix-server

rc-update add zabbix-agentd

Rendez vous sur la page http://example.org/zabbix avec votre navigateur Web et terminez la configuration :

Installation de Zabbix

Indiquez les paramètres de connexion à la base de données :
Configurer la connexion à la base de données Zabbix

Le port de connexion reste le même :

Configuration Zabbix

Utilisez Admin comme utilisateur et zabbix comme mot de passe pour vous connecter :

Authentification Zabbix