Étape 1 : Réglez SELinux en mode permissif
- Configurez SELinux pour qu’il fonctionne en mode permissif
- setenforce 0 && sed -i ‘s/^SELINUX=.*/SELINUX=permissive/g’ /etc/selinux/config
- De cette façon, SELinux ne bloquera rien, mais le journal d’audit se remplira de ce qui aurait été refusé.
Étape 2 : Installer le serveur, l’interface et l’agent Zabbix
- Configurer le package RPM Zabbix 6 sur CentOS 8 / RHEL 8 / Oracle Linux 8 / Rocky Linux 8 ; dépôt propre ; et installez le serveur, l’interface et l’agent Zabbix.
- rpm -Uvh https://repo.zabbix.com/zabbix/6.0/rhel/8/x86_64/zabbix-release-6.0-1.el8.noarch.rpm
- dnf clean all
- dnf -y install zabbix-server-mysql zabbix-web-mysql zabbix-apache-conf zabbix-sql-scripts zabbix-selinux-policy zabbix-agent
Étape 3 : Installer et configurer la base de données
Au cours de l’installation, utilisez le mot de passe root que vous désirez et choisisez un nom de base de données que vous désirez. Zabbix.
- Installer MariaDB 10.6
- curl -LsS -O https://downloads.mariadb.com/MariaDB/mariadb_repo_setup
- sudo bash mariadb_repo_setup –mariadb-server-version=10.6
- dnf -y install mariadb-server && systemctl start mariadb && systemctl enable mariadb
- Réinitialiser le mot de passe root pour la base de données
- Sécurisez MySQL en modifiant le mot de passe par défaut pour la racine MySQL :
- installation-sécurisée-mariadb
- Entrez le mot de passe actuel pour root (entrez pour aucun):appuyez sur Entrée
- Passer à l’authentification unix_socket [O/n]y
- Changer le mot de passe root ? [O/n]y
- Nouveau mot de passe:
- Ré-entrez le nouveau mot de passe:
- Supprimer les utilisateurs anonymes ? [O/n] : Oui
- Interdire la connexion root à distance ? [O/n] : Oui
- Supprimer la base de données de test et y accéder ? [O/n] : Oui
- Recharger les tables de privilèges maintenant ? [O/n] : Oui
- Créer une base de données
- Créez une base de données pour Zabbix directement depuis le terminal en utilisant ces deux commandes :
- sudo mysql -uroot -p’mot_de_passe’ -e “create database zabbixdb character set utf8mb4 collate utf8mb4_bin;”
- sudo mysql -uroot -p’mot_de_passe’ -e “grant all privileges on zabbixdb.* to zabbix@localhost identified by ‘mot_de_passe’;”
- Importer le schéma et les données initiaux
- sudo zcat /usr/share/doc/zabbix-sql-scripts/mysql/server.sql.gz | mysql -uzabbix -p’mot_de_passe’ zabbixdb
- Entrez le mot de passe de la base de données dans le fichier de configuration Zabbix
- Ouvrez le fichier de configuration zabbix et ajoutez le mot de passe de la base de données dans ce format n’importe où dans le fichier
- DBPassword = zabbixDBpass
Étape 4 : Démarrer les processus du serveur et de l’agent Zabbix
- systemctl redémarrer zabbix-server zabbix-agent
- systemctl activer zabbix-server zabbix-agent
Etape5: Configurer le pare-feu
- firewall-cmd –add-service={http,https} –permanent
- firewall-cmd –add-port={10051/tcp,10050/tcp} –permanent
- firewall-cmd –reload
Étape 6 : Configurer l’interface Zabbix
- Restart Apache web server and make it start at system boot
- systemctl restart httpd php-fpm
- systemctl enable httpd php-fpm
- Configurer l’interface Web
- Connectez-vous à votre interface Zabbix nouvellement installée à l’aide de l’URL ” http:// server_ip_or_dns_name /zabbix ” pour lancer l’assistant d’installation de Zabbix.

- Il vous suffit d’entrer un mot de passe pour l’utilisateur Zabbixdb et pour tout le reste, cliquez simplement sur ” Étape suivante “. Utilisez un mot de passe de base de données, et assurez-vous d’entrer le mot de passe correct lorsque l’assistant vous y invite.

Étape 7 : Connectez-vous à l’interface à l’aide des identifiants de connexion par défaut de Zabbix
- Utilisez le nom d’utilisateur administrateur par défaut de Zabbix « Admin » et le mot de passe « zabbix » (sans les guillemets) pour vous connecter à l’interface Zabbix à l’URL « http:// server_ip_or_dns_name /zabbix » via votre navigateur.


Étape 8 : créer des partitions MySQL sur les tables d’historique et d’événements
Le processus de gestion interne de Zabbix est responsable de la suppression des anciennes données de tendance et d’historique. La suppression d’anciennes données de la base de données à l’aide d’une requête de suppression SQL peut avoir un impact négatif sur les performances de la base de données. Beaucoup d’entre nous ont reçu cette alarme ennuyeuse ” Zabbix housekeeper processes more than 75% busy” à cause de cela.
Ce problème peut être facilement résolu avec le partitionnement de la base de données. Le partitionnement crée des tables pour chaque heure ou chaque jour et les supprime lorsqu’elles ne sont plus nécessaires. SQL DROP est bien plus efficace que l’instruction DELETE.
- Zabbix: Partitioning MySQL / MariaDB database Tables
- Partitionner la base de données Zabbix (tables d’historique et de tendances) sur MySQL ou MariaDB à l’aide d’un script de partitionnement.
- Zabbix collecte les données des hôtes et les stocke dans une base de données à l’aide de tableaux d’ historique et de tendances . L’historique de Zabbix conserve les données brutes (chaque valeur que Zabbix a collectée) et les tendances stockent des données horaires consolidées dont la moyenne est min, moy et max.
- Le processus de gestion interne de Zabbix est responsable de la suppression des anciennes données de tendance et d’historique. La suppression d’anciennes données de la base de données à l’aide d’une requête de suppression SQL peut avoir un impact négatif sur les performances de la base de données. Beaucoup d’entre nous ont reçu cette alarme ennuyeuse ” Zabbix housekeeper processes more than 75% busy” à cause de cela.
1 : Télécharger le script SQL pour le partitionnement
- Téléchargez et décompressez le script SQL « zbx_db_partitiong.sql» sur votre serveur de base de données (utilisez l’outil wget ou curl) :
- curl -O http://bestmonitoringtools.com/dl/zbx_db_partitiong.tar.gz
- tar -zxvf zbx_db_partitiong.tar.gz
- Le script « zbx_db_partitiong.sql» est configuré pour conserver 7 jours de données d’historique et 365 jours de données de tendance. Passez à l’étape 2 si ces paramètres vous conviennent.
2 : Créer des procédures de partitionnement avec le script SQL
- La syntaxe pour exécuter le script est ” mysql -u ” -p” < zbx_db_partitiong.sql “.
- mysql -uzabbix -pmot_de_passe zabbixdb < zbx_db_partitiong.sql
Le script créera très rapidement des procédures de partitionnement MySQL sur la nouvelle installation de Zabbix, mais sur de grandes bases de données, cela peut durer des heures.
3 : Exécuter automatiquement les procédures de partitionnement
a: Gérer les partitions automatiquement à l’aide du planificateur d’événements MySQL (recommandé)
Par défaut, le planificateur d’événements MySQL est désactivé. Vous devez l’activer en définissant « event_scheduler=ON » dans le fichier de configuration MySQL juste après la ligne « [mysqld] ».
- [mysqld]
event_scheduler = ON
- Une fois que vous avez effectué les modifications, redémarrez votre serveur MySQL pour que le paramètre prenne effet !
- sudo systemctl redémarre mysql
- Vérifions si le planificateur d’événements MySQL est activé avec la commande :
- mysql -uzabbix -pmot_de_passe zabbixdb -e “SHOW VARIABLES LIKE ‘event_scheduler’;”
- Nous pouvons maintenant créer un événement qui exécutera la procédure « partition_maintenance_all » toutes les 12 heures.
- mysql -uzabbix -pmot_de_passe zabbixdb -e “CREATE EVENT zbx_partitioning ON SCHEDULE EVERY 12 HOUR DO CALL partition_maintenance_all(‘zabbix’);”
- Après 12 heures, vérifiez si l’événement a été exécuté avec succès à l’aide de la commande ci-dessous.
- mysql -uzabbix -pmot_de_passe zabbix -e “SELECT * FROM INFORMATION_SCHEMA.events\G”
4: Configurer le service de ménage sur l’interface Zabbix
- Accédez à la section « Entretien ménager » : « Administration » → « Général » → « Entretien ménager » ;
- Décochez la case « Activer l’entretien ménager interne » dans la section Historique et tendances ;
- Cochez la case ” Remplacer la période de tendance de l’article ” dans la section Historique et tendances ;
- Définir des jours pour la ” période de stockage des données ” pour les tendances et l’historique dans la section Historique et tendances (doit être le même que les jours configurés dans le partitionnement de la base de données – qui devrait être de 7 jours pour l’historique et de 365 jours pour les tendances si vous n’avez pas changé le paramètres par défaut dans le script) ;
- Cliquez sur le bouton « Mettre à jour ».
Configuration de l’agent zabbix sur un serveur distant:
Étape 1 : installer les agents Zabbix sur les systèmes Linux
- yum install https://repo.zabbix.com/zabbix/6.0/rhel/8/x86_64/zabbix-release-6.0-1.el8.noarch.rpm
- rpm -Uvh https://repo.zabbix.com/zabbix/6.0/rhel/8/x86_64/zabbix-agent-6.0.5-1.el8.x86_64.rpm
Étape 2 : configurer et tester l’agent Zabbix sous Linux
- Ouvrez à l’aide de l’éditeur nano ou vi le fichier nano /etc/zabbix/zabbix_agentd.conf afin de configurer l’agent zabbix
- Server=IP_de_la_machine_qui_héberge_zabbix_server
- ServerActive=IP_de_la_machine_qui_héberge_zabbix_server
- Hostname: utiliser le nom de domaine complet du nœud sur lequel l’agent s’exécute
- Une fois que vous avez terminé de modifier le fichier de configuration de l’agent Zabbix avec les valeurs requises, redémarrez le démon à l’aide de la commande suivante:
- sudo systemctl restart zabbix-agent
- sudo netstat -tulpn|grep zabbix
- Si votre système est derrière un pare-feu, vous devez ouvrir 10050/tcp port sur le système afin d’atteindre via le serveur Zabbix
- sudo firewall-cmd –add-port=10050/tcp –permanent [On RHEL based systems]
Étape 3 : ajouter l’hôte surveillé par l’agent Zabbix au serveur Zabbix
À l’étape suivante, il est temps de passer à la console Web du serveur Zabbix et de commencer à ajouter les hôtes qui exécutent l’agent zabbix afin d’être surveillés par le serveur.
- Aller à Configuration -> Hôtes -> Créer un hôte -> Hôte onglet et remplissez le Nom d’hôte champ avec le FQDN de la machine de l’agent Zabbix surveillée, utilisez la même valeur que ci-dessus pour le champ Nom visible.
- Ensuite, ajoutez cet hôte à un groupe de serveurs surveillés et utilisez l’adresse IP de la machine surveillée dans le champ Interfaces de l’agent. Vous pouvez également utiliser la résolution DNS si c’est le cas.
- Ensuite, passez à la Modèles onglet et appuyez sur Sélectionner. Une nouvelle fenêtre avec des modèles devrait s’ouvrir. Choisir Modèle de système d’exploitation Linux puis faites défiler vers le bas et appuyez sur le bouton Sélectionner pour l’ajouter et fermer automatiquement la fenêtre.
- Une fois que le modèle apparaît Lier le nouveau modèle boîte, appuyez sur Ajouter texte pour le lier au serveur Zabbix, puis appuyez sur le bas Ajouter pour terminer le processus et ajouter complètement l’hôte surveillé. Le nom visible de l’hôte surveillé devrait maintenant apparaître dans la fenêtre des hôtes.

0 Comments