Vous êtes sur la page 1sur 11

Install and configure zabbix server

Nous aurons besoin :


D’un serveur frontend
D’un serveur Backend
D’un serveur de base de donnée (DB)
Des entités à monitorer

Prérequis :
Mise à jour du système:

Avant de commencer, mettez à jour votre système pour vous assurer que vous disposez des
dernières mises à jour et correctifs de sécurité :
sudo dnf update

Arrêter le service de pare-feu et désactive temporairement le pare-feu actif sur le système. Cela
signifie que les règles de pare-feu ne seront plus appliquées, permettant potentiellement une plus
grande ouverture de la connectivité réseau. C'est généralement utile pour dépanner ou tester des
connexions réseau.
systemctl stop firewall

Désactiver le service de pare-feu de manière permanente au démarrage du système. Cela signifie


que le pare-feu ne sera pas activé automatiquement lorsque le système redémarre. Cependant, il ne
désinstalle pas le pare-feu ni ne supprime ses règles ; il empêche simplement son démarrage
automatique.
systemctl disable firewall

Se mettre en tant que super-utilisateur (root):


sudo su -

Installer MySQL

dnf install mysql-server


Une fois que MySQL est installé, démarrez le service et activez-le pour qu'il démarre
automatiquement au démarrage du système :
systemctl enable mysqld
systemctl start mysqld

Installer le serveur Zabbix. Utilisez le référentiel Zabbix officiel pour cela :

sudo rpm -Uvh https://repo.zabbix.com/zabbix/6.0/rhel/8/x86_64/zabbix-release-6.0-


2.el8.noarch.rpm

Nettoyer le cache des métadonnées et des paquets de DNF qui est une copie locale des informations
sur les paquets disponibles dans les référentiels logiciels. En exécutant cette commande, vous
supprimez ces données locales, ce qui peut aider à résoudre des problèmes de mise à jour ou de
récupération des informations les plus récentes sur les paquets.
dnf clean all
Lister les modules PHP disponibles dans les référentiels de logiciels configurés sur votre système.
Cela peut être utile pour choisir la version ou la configuration appropriée de PHP à utiliser avec
Zabbix, car Zabbix peut avoir des exigences spécifiques en matière de versions de PHP et de
modules PHP.

dnf module list php

La commande "dnf module switch-to php:7.4" dans le contexte du déploiement de Zabbix permet
de passer d'une version précédente de PHP à la version 7.4. Cette commande est utile lorsque vous
avez besoin d'une version spécifique de PHP pour exécuter Zabbix, car Zabbix peut avoir des
exigences de compatibilité avec certaines versions de PHP.

dnf module switch-to php:7.4

Plus précisément, voici ce que chaque partie de la commande signifie :

"dnf module" : Cela indique que vous utilisez DNF (Dandified YUM) pour gérer les modules sur
votre système.
"switch-to" : Cette partie de la commande indique que vous allez passer à une nouvelle version du
module PHP.

"php:7.4" : C'est la version spécifique de PHP vers laquelle vous souhaitez basculer. Dans cet
exemple, vous basculez vers la version 7.4 de PHP.

Installation de toutes les dépendances :


dnf install zabbix-server-mysql zabbix-web-mysql zabbix-apache-
conf zabbix-sql-scripts zabbix-selinux-policy zabbix-agent

"dnf install" : Il s'agit de la commande DNF (Dandified YUM) pour installer des paquets logiciels.

"zabbix-server-mysql" : Installe le serveur Zabbix avec le support de MySQL. C'est la partie


centrale de l'infrastructure de surveillance Zabbix.

"zabbix-web-mysql" : Installe l'interface web de Zabbix avec le support de MySQL. C'est l'interface
utilisateur qui vous permet de configurer et d'afficher les données de surveillance.

"zabbix-apache-conf" : Installe la configuration Apache pour l'interface web de Zabbix. Apache est
le serveur web utilisé pour héberger l'interface web.

"zabbix-sql-scripts" : Installe les scripts SQL nécessaires pour créer la base de données de Zabbix
dans MySQL.

"zabbix-selinux-policy" : Installe la politique SELinux pour Zabbix. SELinux est un mécanisme de


sécurité qui peut restreindre les actions des applications.

"zabbix-agent" : Installe l'agent Zabbix. C'est le composant qui s'exécute sur les hôtes à superviser
et envoie des données au serveur Zabbix.

Exécutez "mysql -u root", demandez à MySQL d'ouvrir une session en tant qu'utilisateur "root"
(qui a des privilèges d'administration) pour interagir avec la base de données MySQL. Cela vous
permettra de gérer les bases de données et les utilisateurs de MySQL.

mysql -u root

mysql> create database zabbix character set utf8 collate utf8_bin;


mysql>create user zabbix@localhost identified by 'passwordd';
mysql>GRANT ALL PRIVILEGES ON zabbix.* TO zabbix@localhost;

mysql> set global log_bin_trust_function_creators = 1;


mysql> quit;
#or
mysql> exit;
Charger un script SQL (dans ce cas, le fichier décompressé "server.sql") dans la base de données
MySQL. Le script SQL contient généralement des instructions pour créer des tables, des vues et des
données de configuration pour une application (dans ce cas, pour Zabbix). En exécutant cette
commande, le script SQL est exécuté, créant les éléments nécessaires dans la base de données
"zabbix" en utilisant l'utilisateur "zabbix". Vous serez invité à saisir le mot de passe de l'utilisateur
"zabbix" pour effectuer cette opération.

zcat /usr/share/zabbix-sql-script/mysql/server.sql.gz | mysql --


default-character-set=utf8mb4 -uzabbix -p zabbix
mysql -u root
mysql> set global log_bin_trust_function_creators = 0;
mysql> quit;

Maintenant, éditons le fichier de configuration du serveur Zabbix et ajoutons nos paramètres de


base de données :

vi /etc/zabbix/zabbix_server.conf
DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=<mot-de-passe-sécurisé>"
Dans cette étape, vous êtes invité à modifier le fichier de configuration du serveur Zabbix en
utilisant l'éditeur de texte "vi". Voici ce que vous devez faire :

"DBHost=localhost" : Cela indique à Zabbix que le serveur de base de données (dans ce cas,
MySQL) est situé sur la même machine que le serveur Zabbix. "localhost" signifie que la base de
données est locale. Si votre base de données est hébergée sur une autre machine, vous devrez
spécifier son adresse IP ou son nom d'hôte à la place.

"DBName=zabbix" : Ici, vous spécifiez le nom de la base de données que Zabbix utilisera pour
stocker ses données. Par défaut, il s'agit de "zabbix". Si vous avez choisi un nom de base de
données différent lors de la configuration de MySQL, assurez-vous de l'indiquer ici.

"DBUser=zabbix" : C'est le nom de l'utilisateur de base de données que Zabbix utilisera pour se
connecter à MySQL. Par défaut, Zabbix utilise un utilisateur nommé "zabbix" pour accéder à la
base de données. Si vous avez créé un utilisateur MySQL différent pour Zabbix, assurez-vous de
l'indiquer ici.

"DBPassword=<mot-de-passe-sécurisé>" : Vous devez remplacer "<mot-de-passe-sécurisé>" par le


mot de passe de l'utilisateur de la base de données que Zabbix utilisera. Assurez-vous que ce mot de
passe est sécurisé et correspond à l'utilisateur spécifié ci-dessus.
La commande "systemctl restart zabbix-server zabbix-agent httpd php-
fpm" est utilisée pour redémarrer plusieurs services liés à Zabbix. Voici ce que fait cette
commande :

"systemctl" est une commande qui permet de gérer les services système sous Linux.

"restart" indique à systemctl de redémarrer les services spécifiés.

"zabbix-server" est le service du serveur Zabbix, responsable de la collecte, du traitement et du


stockage des données de surveillance.

"zabbix-agent" est le service de l'agent Zabbix, qui est installé sur les hôtes à superviser et qui
collecte des données sur ces hôtes.

"httpd" est le service Apache HTTP Server, utilisé pour l'interface web de Zabbix. Il gère les
requêtes web et affiche l'interface utilisateur de Zabbix.

"php-fpm" est le service PHP FastCGI Process Manager. Il s'agit d'un processus qui gère l'exécution
de scripts PHP, y compris ceux utilisés par l'interface web de Zabbix.

systemctl restart zabbix-server zabbix-agent httpd php-fpm


systemctl enable zabbix-server zabbix-agent httpd php-fpm

systemctl enable zabbix-server zabbix-agent httpd php-fpm

INSTALLATION De L’AGENT SUR WINDOWS

Telecharger l'agent zabbix : zabbix-agent v6.X


Sur le serveur windows à superviser:

netsh advfirewall firewall aadd rule name="IMCP Allow inconming V4 echo request"
protocol="icmpv4:8, any" dir=in action=allow
netsh advfirewall firewall aadd rule name="Open port 10050" dir=in action=allow protocol=TCP
localport=10050

Explication:
La première commande, "netsh advfirewall firewall add rule name="IMCP Allow incoming V4
echo request" protocol="icmpv4:8, any" dir=in action=allow", ajoute une règle au pare-feu
Windows pour autoriser les demandes ICMP entrantes de type 8 (écho). Cette règle permet au
serveur Zabbix de pinguer le serveur Windows pour vérifier sa disponibilité. En d'autres termes, elle
autorise les réponses à des requêtes de type ping.

La deuxième commande, "netsh advfirewall firewall add rule name="Open port 10050" dir=in
action=allow protocol=TCP localport=10050", ajoute une règle pour ouvrir le port 10050 en mode
TCP sur le pare-feu. Le port 10050 est utilisé par l'agent Zabbix pour communiquer avec le serveur
Zabbix. Cette règle permet au serveur Zabbix de se connecter à l'agent Zabbix sur le serveur
Windows.

En résumé, ces commandes modifient la configuration du pare-feu Windows sur le serveur


supervisé pour autoriser les requêtes ICMP (ping) entrantes et ouvrir le port 10050 en mode TCP, ce
qui permet à Zabbix de surveiller le serveur Windows de manière plus efficace.

Installer l'application téléchargée : zabbix-agent v6.X puis vérifier le service Zabbix agent si en
mode running automatic
vérifier les logs zabbix_agentd
Continuer l’installation de l’agent :

Etape 1

Etape 2 (Adresse IP du serveur sur lequel Zzabbix est inssttaallé ) daans nnotre cacs, ça ddoit êtrte
1922.168.56.20 et nnonn .6)

Dans le cas ou une erreur s’est produite, il faudra vérifier le fichier zabbix_agenttd
Puis modiffier zabbix_agentd

Vous aimerez peut-être aussi