Zabbix
Configuration
Configuration de base
# Installation des dépendances
apt-get update
apt-get install -y apache2 php php-mysql php-ldap php-bcmath php-mbstring php-gd php-xml php-mysql
# Installation de Zabbix
wget https://repo.zabbix.com/zabbix/6.0/ubuntu/pool/main/z/zabbix-release/zabbix-release_6.0-1+ubuntu20.04_all.deb
dpkg -i zabbix-release_6.0-1+ubuntu20.04_all.deb
apt-get update
apt-get install -y zabbix-server-mysql zabbix-frontend-php zabbix-apache-conf zabbix-sql-scripts zabbix-agent
# Configuration de la base de données
mysql -uroot -p
CREATE DATABASE zabbix character set utf8 collate utf8_bin;
CREATE USER zabbix@localhost IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON zabbix.* TO zabbix@localhost;
QUIT;
# Importation du schéma
zcat /usr/share/doc/zabbix-sql-scripts/mysql/server.sql.gz | mysql -uzabbix -p zabbix
# Configuration du serveur Zabbix
vim /etc/zabbix/zabbix_server.conf
DBPassword=password
Configuration avancée
# Configuration de l'agent Zabbix
vim /etc/zabbix/zabbix_agentd.conf
Server=127.0.0.1
ServerActive=127.0.0.1
Hostname=Zabbix server
# Redémarrage des services
systemctl restart zabbix-server zabbix-agent apache2
systemctl enable zabbix-server zabbix-agent
Création d'éléments
Configuration d'un élément
- Aller dans Configuration > Hôtes
- Sélectionner l'hôte concerné
- Cliquer sur "Éléments"
- Cliquer sur "Créer un élément"
- Remplir les champs :
- Nom : Nom descriptif de l'élément
- Type : Type d'élément (Zabbix agent, SNMP, etc.)
- Clé : Clé de l'élément (ex: system.cpu.util)
- Type d'information : Type de données (texte, nombre, etc.)
- Intervalle de mise à jour : Fréquence de collecte
Configuration des déclencheurs
Création d'un déclencheur
- Aller dans Configuration > Hôtes
- Sélectionner l'hôte concerné
- Cliquer sur "Déclencheurs"
- Cliquer sur "Créer un déclencheur"
- Remplir les champs :
- Nom : Description du déclencheur
- Expression : Condition de déclenchement
{host:item.last()}>80
- Niveau de sévérité : Importance de l'alerte
- Description : Détails supplémentaires
Configuration des médias
Configuration des notifications par email
- Aller dans Administration > Media types
- Cliquer sur "Email"
- Configurer les paramètres SMTP :
- Serveur SMTP : smtp.gmail.com
- Port SMTP : 587
- Connexion sécurisée : STARTTLS
- Authentification : Utilisateur et mot de passe
- Aller dans Administration > Users
- Sélectionner l'utilisateur
- Onglet "Media" > "Add"
- Configurer :
- Type : Email
- Send to : Adresse email
- When active : Période d'envoi
- Use if severity : Niveaux de sévérité
Débogage
Vérification de la configuration
# Vérification des logs
tail -f /var/log/zabbix/zabbix_server.log
tail -f /var/log/zabbix/zabbix_agentd.log
# Vérification des services
systemctl status zabbix-server
systemctl status zabbix-agent
systemctl status apache2
Problèmes courants
- Problèmes de connexion à la base de données
- Problèmes de permissions
- Problèmes de configuration PHP
- Problèmes de pare-feu
Bonnes Pratiques
- Utiliser des mots de passe forts
- Configurer les sauvegardes
- Documenter la configuration
- Surveiller les logs
- Faire des sauvegardes
FAQ
🔒 Ajoute un nouvel hôte sous Windows avec supervision du service Apache.
- Installation de l'agent Zabbix sur Windows :
# Télécharger l'agent depuis le site Zabbix
# Installer avec les paramètres :
Server=IP_SERVEUR_ZABBIX
ServerActive=IP_SERVEUR_ZABBIX
Hostname=NOM_MACHINE_WINDOWS
- Dans l'interface web Zabbix :
- Configuration > Hôtes > Créer un hôte
- Nom : Nom de la machine Windows
- Groupe : Windows servers
- Interface : IP de la machine Windows
- Template : Template OS Windows by Zabbix agent
- Ajout du template Apache :
- Configuration > Hôtes > Templates
- Lier le template "Template App Apache"
- Configurer les macros si nécessaire
Comment créer une alerte si le CPU dépasse 80 % ?
- Configuration > Hôtes > Sélectionner l'hôte
- Onglet "Déclencheurs" > "Créer un déclencheur"
- Remplir les champs :
- Nom : "CPU usage too high"
- Expression :
{host:system.cpu.util.last()}>80
- Niveau de sévérité : Warning
- Description : "CPU usage is above 80%"
- Configuration des actions :
- Configuration > Actions > Créer une action
- Condition : Déclencheur = "CPU usage too high"
- Opérations : Envoyer un message
Le serveur Zabbix ne reçoit plus les données, que fais-tu ?
- Vérification des services :
# Sur le serveur Zabbix
systemctl status zabbix-server
systemctl status zabbix-agent
# Sur l'agent
systemctl status zabbix-agent
- Vérification des logs :
# Logs du serveur
tail -f /var/log/zabbix/zabbix_server.log
# Logs de l'agent
tail -f /var/log/zabbix/zabbix_agentd.log
- Vérification de la connectivité :
# Test de connexion depuis l'agent vers le serveur
telnet IP_SERVEUR_ZABBIX 10051
# Test de l'agent
zabbix_get -s IP_AGENT -k "system.cpu.util"
- Vérification de la configuration :
- Vérifier les paramètres dans zabbix_agentd.conf
- Vérifier les règles de pare-feu
- Vérifier les permissions