Comment Installer Zabbix sur Raspberry Pi (Supervision)

Zabbix est une solution de supervision unifiée pour votre réseau, vos serveurs et vos applications. Il existe une version gratuite, et le Raspberry Pi est officiellement pris en charge (ce qui est assez rare pour ce type d’application visant les entreprises). Voyons comment l’installer sur votre appareil.

Zabbix nécessite une configuration lourde (serveur web, serveur de base de données, agent de surveillance et interface), mais peut être installé sur Raspberry Pi OS en quelques lignes de commande. Un paquet est disponible sur le site officiel pour toutes les architectures.

Même si le Raspberry Pi est pris en charge, cela ne veut pas forcément dire que Zabbix se configure facilement, alors laissez-moi vous guider étape par étape pour démarrer sur votre Pi en quelques minutes. Je vous montrerai également comment le configurer et les premiers pas une fois installé.

À propos, si vous débutez sur Raspberry Pi et que vous souhaitez accélérer les choses (tout en vous amusant), n’hésitez pas à télécharger mon e-book Maitrisez Raspberry Pi en 30 jours. Il s’agit d’un défi de 30 jours dans lequel vous apprendrez une nouvelle compétence chaque jour. Vous économiserez du temps et de l’argent et pourrez enfin profiter de votre Raspberry Pi à son plein potentiel. Je vous offre d’ailleurs 10% de remise aujourd’hui si vous utilisez ce lien !

Conditions préalables à l’installation de Zabbix sur Raspberry Pi

Exigences matérielles

Il n’y a pas d’exigences particulières en termes de matériel pour utiliser Zabbix sur un Raspberry Pi, mais de nombreux services sont nécessaires pour le faire fonctionner. Il est donc recommandé d’utiliser un Raspberry Pi 4 pour ce projet.

Une connexion réseau filaire est également recommandée pour plus de stabilité (vous ne pouvez pas créer un projet de surveillance réseau digne de ce nom si le Wi-Fi est régulièrement déconnecté).

Avertissement : les prix actuels sont très variables pour un Raspberry Pi neuf. N’oubliez pas de consulter cet article pour payer le juste prix lors de l’achat d’un Raspberry Pi. Je donne également quelques conseils pour trouver un Raspberry Pi en stock (ce qui n’est actuellement pas si facile).

Prérequis logiciels

Voici les prérequis en termes de logiciels avant d’installer Zabbix :

  • Système d’exploitation : Raspberry Pi OS est officiellement pris en charge et reste le meilleur choix pour le système Raspberry Pi, je l’utiliserais donc si possible. Zabbix Server n’est listé que pour l’édition Bullseye sur le site officiel, il est donc probablement préférable de ne pas l’utiliser.
    Vous pouvez lire mon guide sur l’installation de Raspberry Pi OS ici si vous avez besoin de conseils.
  • Un système à jour : Vous devrez installer de nombreux paquets. Pour éviter tout conflit ultérieur, assurez-vous d’abord que votre système est à jour. Vous pouvez le faire à l’aide des commandes suivantes :
    sudo apt update
    sudo apt upgrade -y

    Redémarrez le Raspberry Pi après l’installation si de nombreuses mises à jour sont disponibles.
  • Serveur de base de données installé : MySQL et PostgreSQL sont pris en charge. Choisissez celui que vous préférez, mais vous devez d’abord installer le serveur. N’allez pas plus loin avant de vous être assuré qu’il fonctionne et que le mot de passe root est défini.
    Vous pouvez lire mon guide d’installation du serveur MySQL ici pour plus de détails (MariaDB).

Pour votre information, j’ai testé ce tutoriel sur mon Raspberry Pi 4, avec l’édition Lite de Raspberry Pi OS Bullseye (64 bits), MySQL (MariaDB), et Apache.

Installer Zabbix sur Raspberry Pi

Voici les principales étapes de l’installation de Zabbix sur un Raspberry Pi :

  • Ajouter le dépôt Zabbix au gestionnaire de paquets.
  • Télécharger et installer les paquets Zabbix avec APT.
  • Créer la base de données et l’utilisateur pour Zabbix.
  • Modifier la configuration de Zabbix et redémarrer les services.

Je vais maintenant expliquer chaque étape en détail.

Utilisez le site web pour obtenir des instructions actualisées

Pour être honnête, Zabbix a une assez bonne documentation, et aussi quelque chose qui est assez rare, Raspberry Pi OS est inclus, ce qui est parfait pour nous.

Lorsque vous irez sur la page de téléchargement, vous verrez le menu suivant :

En choisissant votre architecture dans chaque colonne, vous obtiendrez des instructions personnalisées pour votre installation :

Il manque quelques éléments, je vais donc vous donner les commandes exactes que j’ai utilisées, mais il est préférable de consulter leur page pour utiliser les lignes de commande mises à jour (par exemple, lorsqu’une nouvelle version sera disponible, les commandes seront mises à jour sur le site web de Zabbix, pas ici).

Ajouter le dépôt Zabbix à votre système

La première étape consiste à ajouter le dépôt Zabbix à votre système. Votre gestionnaire de paquets (APT) se connectera donc au serveur de Zabbix, afin qu’il puisse accéder directement aux paquets.

Zabbix a simplifié les choses en mettant à votre disposition un paquet « .deb » que vous pouvez télécharger et installer :
wget https://repo.zabbix.com/zabbix/6.4/raspbian/pool/main/z/zabbix-release/zabbix-release_6.4-1+debian11_all.deb
sudo dpkg -i zabbix-release_6.4-1+debian11_all.deb

Téléchargez mon antisèche !
Format PDF pratique, avec les 74 commandes à retenir pour maîtriser son Raspberry Pi.
Télécharger maintenant

Je teste la version 6.4, mais n’hésitez pas à consulter leur site web pour connaître la dernière version disponible.

Une fois le paquet installé, nous devons synchroniser les listes de paquets avec cette commande :
sudo apt update

Comme vous pouvez le voir sur cette capture d’écran, en plus de vérifier les paquets sur les serveurs Debian, nous sommes maintenant également connectés aux dépôts Zabbix.

Installer les paquets Zabbix

L’étape suivante consiste à installer les paquets Zabbix pour votre serveur. Cette commande sera différente selon le serveur web et le serveur de base de données que vous utilisez.

Si vous avez décidé d’utiliser Apache et MariaDB (MySQL) comme moi, vous pouvez copier et coller cette commande :
sudo apt install zabbix-server-mysql zabbix-frontend-php zabbix-apache-conf zabbix-sql-scripts zabbix-agent

Dans les autres cas, récupérez la commande dans la documentation officielle, et assurez-vous d’ajouter « sudo » au début (les instructions sont écrites pour Debian avec un accès root, je pense).

Toutes les dépendances seront installées automatiquement si nécessaire (serveur Apache et client MySQL si vous ne l’avez pas encore, par exemple).

Configuration de la base de données Zabbix

Zabbix utilise une base de données pour stocker toutes les données et la plupart des configurations. Avant de continuer, nous devons créer manuellement la base de données et définir un utilisateur spécifique avec tous les privilèges.

Je vais vous donner les instructions pour un serveur MySQL, mais ce sera légèrement différent avec PostgreSQL.

Pour continuer, il faut que le serveur MySQL soit déjà configuré avec un identifiant et un mot de passe d’administrateur. Si vous ne l’avez pas encore fait, vous pouvez d’abord suivre ce tutoriel, puis revenir ici.

Créer la base de données et l’utilisateur

Connectez-vous à la console du serveur MySQL avec :
mysql -uroot -p
Entrez le mot de passe root et vous aurez accès au moniteur MariaDB, où vous pourrez saisir toutes les commandes suivantes.

Voici les commandes que vous pouvez copier et coller pour créer la base de données et l’utilisateur Zabbix pour MySQL :
create database zabbix character set utf8mb4 collate utf8mb4_bin;
create user zabbix@localhost identified by 'password';
grant all privileges on zabbix.* to zabbix@localhost;
set global log_bin_trust_function_creators = 1;
quit;

Il suffit de remplacer ‘password’ par un mot de passe plus robuste lorsque vous exécutez les commandes.
Si tout se passe bien, vous devriez obtenir quelque chose comme ceci :

Initialisation

Nous avons créé une base de données vide, nous allons maintenant utiliser le script SQL du répertoire d’installation de Zabbix pour l’initialiser (créer des tables et les remplir avec les données minimales requises).

Voici la commande que vous pouvez exécuter à cet effet :
zcat /usr/share/zabbix-sql-scripts/mysql/server.sql.gz | mysql --default-character-set=utf8mb4 -uzabbix -p zabbix

Entrez le mot de passe de l’utilisateur Zabbix (celui que vous venez de créer), et attendez quelques secondes. Le fichier « server.sql.gz » est un simple fichier texte contenant de nombreuses requêtes SQL, qui feront tout à votre place. Nous les envoyons simplement à la commande « mysql » pour qu’elle les exécute.

Une fois cela fait, nous pouvons réinitialiser la variable log_bin_trust_function_creators que nous avons changé plus tôt. Nous n’en avons plus besoin. Connectez-vous à nouveau au moniteur MariaDB :
mysql -uroot -p
Saisissez le mot de passe root (différent de celui de l’utilisateur Zabbix), puis ceci :
set global log_bin_trust_function_creators = 0;
quit;

Ajuster la configuration du serveur Zabbix

La dernière chose à faire pour terminer la configuration du serveur est d’indiquer à Zabbix le mot de passe MySQL. Vous pouvez éditer le fichier de configuration du serveur avec :
sudo nano /etc/zabbix/zabbix_server.conf

Trouvez le paragraphe concernant « DBPassword » (vous pouvez utiliser CTRL+W pour faire une recherche avec Nano).
Ajoutez ensuite cette ligne :
DBPassword=password

Remplacez « password » par le mot de passe que vous avez défini pour l’utilisateur MySQL que vous avez créé pour Zabbix.

Redémarrer les services

Voilà, le serveur Zabbix est installé et configuré, il ne reste plus qu’à redémarrer les services pour appliquer les changements :
sudo systemctl restart zabbix-server zabbix-agent apache2

C’est probablement une bonne idée d’exécuter également cette commande, pour s’assurer que tous ces services sont lancés automatiquement au démarrage :
sudo systemctl enable zabbix-server zabbix-agent apache2

Le serveur doit fonctionner en permanence pour collecter les données des différents hôtes que vous surveillez 24 heures sur 24 et 7 jours sur 7. L’agent collecte les données pour le système Raspberry Pi et Apache2 est le serveur web utilisé pour l’interface utilisateur.

Téléchargez mon antisèche !
Format PDF pratique, avec les 74 commandes à retenir pour maîtriser son Raspberry Pi.
Télécharger maintenant

Guide de démarrage rapide de Zabbix sur Raspberry Pi

Le plus dur est fait. Nous pouvons presque tout faire à partir de l’interface web. Laissez-moi vous guider pour démarrer rapidement avec Zabbix sur votre Raspberry Pi.

Obtenez votre adresse IP

Pour accéder à l’interface web, vous aurez besoin de l’adresse IP du Raspberry Pi. Si vous êtes toujours dans le terminal, le moyen le plus rapide de l’obtenir est d’utiliser cette commande :
ip a

Vous devriez pouvoir trouver rapidement l’adresse IP dans le résultat, qui devrait ressembler à ça :

Et si vous avez besoin de plus d’options ou de détails, j’ai un tutoriel spécifique sur la façon de trouver l’adresse IP actuelle sur Raspberry Pi. Cliquez sur le lien pour le lire maintenant, et revenez une fois que vous l’aurez obtenue.

Accéder à l’interface web

Une fois que vous connaissez l’adresse IP du Raspberry Pi, vous pouvez accéder à l’interface web à partir de n’importe quel ordinateur sur le même réseau. L’URL à utiliser suit ce format :
http://<IP>/zabbix

Remplacez « <IP> » par l’adresse IP du Raspberry Pi et vous aurez accès à la page de bienvenue suivante :

Suivez les étapes de configuration

Cliquez ensuite sur « Next step » et suivez les instructions pour terminer la configuration de l’interface.

Vous devrez remplir les paramètres de la base de données, choisir un nom de serveur, un fuseau horaire et un thème.

Cliquez sur « Finish » une fois que tout est terminé et vous serez redirigé vers la page de connexion.

Première connexion

Pour se connecter à Zabbix pour la première fois, les informations d’identification par défaut sont les suivantes :

  • Nom d’utilisateur : Admin
  • Mot de passe : zabbix

Vous pouvez alors accéder au tableau de bord principal, avec un menu sur la gauche pour accéder à toutes les fonctionnalités.

Corriger les erreurs de locales

Lorsque je me suis connecté pour la première fois, j’ai eu un tas d’erreurs sur l’interface de Zabbix. En gros, dans chaque image, j’avais une erreur du type « Locale for language ‘en_US’ is not found on the web server » (la langue ‘en_US’ n’a pas été trouvée sur le serveur web).

Si j’ai bien compris, Zabbix est configuré pour utiliser les paramètres régionaux « en_US » par défaut, alors que Raspberry Pi OS est installé avec « en_GB » (la Fondation est basée au Royaume-Uni).

Pour résoudre ce problème, vous pouvez soit modifier les paramètres de Zabbix pour utiliser en_GB à la place (option 1), soit ajouter la locale en_US sur votre système (option 2). Choisissez l’option que vous préférez, vous n’avez qu’à en suivre une.

Option 1 : modifier votre profil

Dans l’interface de Zabbix, trouvez Settings > Profile dans le menu de gauche, et cliquez dessus.
Vous obtiendrez un formulaire comme celui-ci, dans lequel vous pourrez choisir une autre langue :

Choisissez « English (en_GB) » au lieu de « System default ». Enregistrez vos modifications, et tout devrait être OK maintenant.

Option 2 : ajouter les paramètres linguistiques en_US à votre système

Si vous préférez installer les paramètres linguistiques américains sur votre système, le plus simple est d’utiliser Raspi-config :
sudo raspi-config

Une fois que l’outil a démarré, allez dans Options de localisation, trouvez en_US dans la liste, cochez l’option (utilisez les flèches et la barre d’espacement pour la sélectionner). Appuyez ensuite sur la touche TAB et choisissez « OK » pour enregistrer les modifications.

Un redémarrage est nécessaire pour qu’il soit disponible pour l’ensemble du système.

Quelle que soit l’option choisie, tout devrait s’arranger et le tableau de bord devrait s’afficher correctement :

Modifier le mot de passe de l’utilisateur

La dernière chose que je recommande de faire avant de commencer à utiliser Zabbix sur votre Raspberry Pi est de changer le mot de passe de l’utilisateur. Ce n’est jamais une bonne idée de conserver les valeurs par défaut.

Vous pouvez le faire facilement à partir de l’interface web, dans Settings > Profile (même formulaire que pour l’option 1 ci-dessus). Cliquez sur « Change password » et choisissez un mot de passe suffisamment fort.

Téléchargez mon antisèche !
Format PDF pratique, avec les 74 commandes à retenir pour maîtriser son Raspberry Pi.
Télécharger maintenant

Vous comprenez l'anglais et en voulez encore plus ? Je publie une nouvelle leçon chaque mois, réservée à mes abonnés premium. Rejoignez la communauté dès maintenant pour y avoir accès !

Utilisation de Zabbix sur Raspberry Pi

Une fois l’installation terminée, l’utilisation de Zabbix sur un Raspberry Pi ne diffère pas de son utilisation sur n’importe quel serveur. Vous trouverez donc facilement de la documentation, des tutoriels et des vidéos en ligne pour tout ce qui vous intéresse. Mais laissez-moi vous donner quelques conseils pour commencer.

Surveillance du Raspberry Pi

Le Raspberry Pi que nous avons utilisé pour installer Zabbix est automatiquement disponible dans l’interface en tant que premier hôte. L’agent Zabbix a été installé lors de l’installation du serveur, de sorte que toutes les données du système Raspberry Pi sont directement disponibles dans l’interface.

Vous pouvez aller dans Monitoring > Host pour trouver le Raspberry Pi (nom « Zabbix Server » par défaut), puis cliquer sur « Graphs » pour avoir une vue d’ensemble de l’utilisation du système. Voici un exemple de l’utilisation de l’espace disque :

Si vous cliquez sur « Latest data », vous obtiendrez un tableau avec une liste de toutes les informations collectées par l’agent Zabbix, qui ressemble à ceci :

Ainsi, il est possible de générer des graphiques ou des notifications pour n’importe laquelle de ces valeurs, selon ce qui est important pour votre projet.

Ajouter un nouvel hôte

Dans la plupart des cas, la surveillance du serveur Raspberry Pi ne sera pas l’objectif principal. Vous pouvez ajouter autant d’hôtes que vous le souhaitez via l’interface web. Il suffit de cliquer sur « New host » à partir de la page Monitoring > Hosts page.

Vous aurez besoin d’un moyen d’accéder à distance aux nouvelles informations sur l’hôte. Dans la plupart des cas, SNMP est utilisé pour des applications de ce type, mais d’autres méthodes sont également prises en charge par Zabbix. L’utilisation de l’agent Zabbix peut également être une alternative si nécessaire.

J’ai testé cela avec mon NAS, où SNMP est activé, et cela a fonctionné parfaitement du premier coup. J’ai simplement rempli le formulaire de nouvel hôte avec l’adresse IP et la configuration SNMP :

Quelques minutes plus tard, mes données étaient collectées et les premiers graphiques apparaissaient :

Aller plus loin

Comme mentionné précédemment, le site web de Zabbix est vraiment bien conçu et la documentation est suffisamment bonne pour commencer.

Ils ont même plusieurs vidéos que vous pouvez utiliser comme introduction, comme celle-ci que je vous recommande de regarder si vous êtes novice en la matière :

À partir de là, vous ferez probablement des essais, vous verrez ce qui fonctionne directement pour votre réseau et ce qui nécessitera plus de travail. Si vous avez des questions spécifiques, rendez-vous sur les forums. Ils sont très actifs et vous y trouverez probablement une réponse rapidement.

J’ai utilisé Nagios (en anglais) et Cacti pour la surveillance du réseau et des serveurs lorsque j’étais administrateur système. Je n’ai pas autant d’expérience avec Zabbix, mais cela semble être une bonne alternative. Dites-moi comment ça se passe si vous l’utilisez !

Et si vous menez des projets réseau comme celui-ci, vous serez peut-être intéressé par les autres articles que j’ai préparés pour vous :

Téléchargez mon antisèche !
Format PDF pratique, avec les 74 commandes à retenir pour maîtriser son Raspberry Pi.
Télécharger maintenant

Ressources supplémentaires pour votre Raspberry Pi

Initiation au Raspberry Pi en vidéo
Si vous débutez et voulez passer rapidement à la vitesse supérieure, j’ai exactement ce qu’il vous faut.
Regardez ma formation vidéo qui vous aidera à démarrer du bon bien, choisir votre matériel, installer les meilleures applications et vous lancer directement dans vos premiers projets avec mon aide.
Regarder les vidéos dès maintenant

Maîtrisez votre Raspberry Pi en 30 jours
Vous avez besoin de plus ? Si vous êtes à la recherche des meilleures astuces pour devenir expert sur Raspberry Pi, ce livre est fait pour vous. Développez vos compétences sous Linux et pratiquez via de nombreux projets en suivant mes guides étape par étape. 10% de remise aujourd’hui !
Télécharger le livre au format PDF ici

Maîtrisez Python sur Raspberry Pi
Pas besoin d’être un génie pour coder quelques lignes pour votre Raspberry Pi.
Je vous apprends juste ce qu’il faut sur Python afin de réaliser n’importe quel projet. La seconde partie du livre est d’ailleurs consacrée à des exemples de projets ou je vous guide pas à pas.
Ne perdez pas de temps, apprenez le strict nécessaire et économisez 10% avec ce lien :
Télécharger maintenant

Autres ressources pour profiter de votre Raspberry Pi
J’ai regroupé toutes mes recommandations de logiciels, sites utiles et de matériel sur cette page de ressources. Je vous invite à la consulter régulièrement pour faire les bons choix et rester à jour.
Visiter les pages ressources


Ce tutoriel ne marche plus à 100%? Prévenez-moi pour que je le mette à jour!

A lire également

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *