<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Grafana on Mook’s Lab Chronicles</title><link>https://blog.homeblack.fr/tags/grafana/</link><description>Recent content in Grafana on Mook’s Lab Chronicles</description><generator>Hugo -- gohugo.io</generator><language>fr-FR</language><lastBuildDate>Tue, 15 Sep 2026 22:21:47 +0200</lastBuildDate><atom:link href="https://blog.homeblack.fr/tags/grafana/index.xml" rel="self" type="application/rss+xml"/><item><title>De Beszel à Zabbix : pourquoi j’ai refait toute ma supervision</title><link>https://blog.homeblack.fr/p/de-beszel-a-zabbix/</link><pubDate>Tue, 15 Sep 2026 22:21:47 +0200</pubDate><guid>https://blog.homeblack.fr/p/de-beszel-a-zabbix/</guid><description>&lt;img src="https://blog.homeblack.fr/p/de-beszel-a-zabbix/cover.png" alt="Featured image of post De Beszel à Zabbix : pourquoi j’ai refait toute ma supervision" /&gt;&lt;p&gt;Au départ, je voulais simplement savoir si mes machines allaient bien. Un peu de CPU, de mémoire, de stockage, quelques températures et une alerte quand quelque chose sortait des clous. &lt;a class="link" href="https://github.com/henrygd/beszel" target="_blank" rel="noopener"
&gt;Beszel&lt;/a&gt; répondait très bien à ce besoin.&lt;/p&gt;
&lt;p&gt;Son interface était claire, l’installation rapide et, surtout, il était stable. Je pouvais l’ouvrir, prendre la température du homelab en quelques secondes et repartir faire autre chose. Pour un outil de supervision, cette discrétion est une vraie qualité.&lt;/p&gt;
&lt;p&gt;Puis mon besoin a évolué en même temps que mon lab. Je ne voulais plus seulement savoir si une VM consommait trop de mémoire. Je voulais savoir si le service qui tournait dessus fonctionnait, si un conteneur avait redémarré, si une sauvegarde était récente, si un mail avait réellement effectué tout son trajet ou encore si les DNS répondaient correctement.&lt;/p&gt;
&lt;p&gt;J’ai ajouté Pulse, essayé Checkmk (« bad idea :&amp;rsquo;) »), multiplié les tests et fini par arriver sur Zabbix. En quelques semaines, j’ai refait presque tout mon système de supervision.&lt;/p&gt;
&lt;p&gt;Ce n’est pas l’histoire d’une succession de mauvais outils. C’est plutôt celle d’un besoin qui a grandi vite, porté par la curiosité, jusqu’au moment où maintenir plusieurs réponses partielles est devenu plus pénible que de reprendre le problème depuis le début.&lt;/p&gt;
&lt;h2 id="beszel-faisait-exactement-ce-que-je-lui-demandais"&gt;Beszel faisait exactement ce que je lui demandais
&lt;/h2&gt;&lt;p&gt;J’ai beaucoup aimé Beszel pour sa simplicité et sa légèreté. Il remontait les métriques essentielles de mes machines et de mes conteneurs Docker sans transformer l’installation en projet à part entière. L’interface allait droit au but et je n’avais pas besoin de passer une soirée dans la documentation pour comprendre la mise en place ou l’exploitation.&lt;/p&gt;
&lt;p&gt;Ce serait donc injuste de raconter que je l’ai abandonné parce qu’il était instable ou limité dans l’absolu. Il faisait bien son travail. Dans mon périmètre, il ne tenait plus ma cadence insatiable.&lt;/p&gt;
&lt;p&gt;Une machine peut avoir 20 % de CPU, beaucoup de mémoire disponible et un disque presque vide tout en rendant un service parfaitement inutilisable. Le processus peut être arrêté. Le certificat peut avoir expiré. Le DNS peut répondre sans fournir la bonne donnée. Un serveur mail peut accepter une connexion SMTP sans être capable de livrer un message jusque dans la boîte de réception.&lt;/p&gt;
&lt;p&gt;Je commençais donc à vouloir surveiller ce qui se passait &lt;strong&gt;dans&lt;/strong&gt; les VM, pas seulement autour d’elles.&lt;/p&gt;
&lt;p&gt;&lt;a class="link" href="https://github.com/rcourtman/pulse" target="_blank" rel="noopener"
&gt;Pulse&lt;/a&gt; apportait de son côté une lecture pertinente de Proxmox et de son environnement. Là encore, le problème n’était pas la qualité des données. Le problème était que je venais d’ajouter un outil supplémentaire à installer, mettre à jour, sauvegarder et comprendre.&lt;/p&gt;
&lt;p&gt;J’avais Beszel pour certaines ressources, Pulse pour une autre partie de l’infrastructure, Grafana pour mes dashboards et plusieurs sondes qui vivaient encore ailleurs. Chaque écran avait une raison d’exister. Leur addition commençait pourtant à raconter une histoire assez différente : pour comprendre un incident, il fallait déjà savoir quel outil ouvrir.&lt;/p&gt;
&lt;p&gt;La friction qui a lancé la suite est venue de là. Je ne cherchais pas à collectionner les dashboards. Je voulais réduire le nombre de systèmes capables de décider qu’il y avait un problème.&lt;/p&gt;
&lt;h2 id="checkmk-ma-montré-ce-qui-me-manquait"&gt;Checkmk m’a montré ce qui me manquait
&lt;/h2&gt;&lt;p&gt;Je n’avais encore jamais vraiment utilisé &lt;a class="link" href="https://checkmk.com/product/checkmk-community" target="_blank" rel="noopener"
&gt;Checkmk&lt;/a&gt;. C’était donc l’occasion de tester une solution plus large (et probablement sur-vendue), capable de découvrir une machine et de transformer automatiquement ce qu’elle expose en services supervisés.&lt;/p&gt;
&lt;p&gt;La première impression a été plutôt bonne. L’agent et les modules fournis de base remontaient beaucoup de choses sans que j’aie à tout construire à la main. CPU, mémoire, disques, interfaces, services systemd, conteneurs Docker : je retrouvais enfin les ressources et les services dans la même plateforme.&lt;/p&gt;
&lt;p&gt;C’est cette profondeur prête à l’emploi qui m’a convaincu : je pouvais partir d’une VM, descendre jusqu’à ses services et ajouter mes propres contrôles lorsque le standard ne suffisait plus.&lt;/p&gt;
&lt;p&gt;J’ai ainsi intégré des sondes DNS, des contrôles Proxmox et plusieurs scénarios mail. Je ne voulais pas seulement vérifier que les ports 25 ou 993 étaient ouverts. Je voulais établir une session chiffrée, m’authentifier, envoyer un message identifié, le retrouver en IMAP, mesurer son délai et nettoyer la boîte après le test.&lt;/p&gt;
&lt;p&gt;À ce moment-là, ma supervision commençait réellement à représenter le fonctionnement du homelab.&lt;/p&gt;
&lt;p&gt;Elle a aussi commencé à faire du bruit. Les interfaces TAP éphémères de Proxmox disparaissaient, les jobs du runner provoquaient des pics de mémoire et certains seuils réagissaient à des variations sans conséquence. J’ai raconté séparément comment j’ai &lt;a class="link" href="https://blog.homeblack.fr/p/reduire-bruit-alertes-checkmk/" &gt;repris en main ces alertes Checkmk&lt;/a&gt;, car cette étape m’a appris une chose importante : collecter beaucoup d’informations ne suffit pas, il faut encore décider lesquelles méritent de m’interrompre.&lt;/p&gt;
&lt;h2 id="puis-loutil-a-commencé-à-me-fatiguer"&gt;Puis l’outil a commencé à me fatiguer
&lt;/h2&gt;&lt;p&gt;Plus je poussais Checkmk, plus son ergonomie me ralentissait. L’interface me donnait parfois l’impression d’avoir été dessinée par un maçon : tout était solide, mais il fallait connaître le plan du bâtiment pour retrouver la bonne porte.&lt;/p&gt;
&lt;p&gt;La création de dashboards a été le point le plus visible. J’avais déjà Grafana, où je pouvais construire une vue exactement comme je l’imaginais. Dans Checkmk, obtenir une présentation sur mesure me demandait beaucoup plus d’efforts pour un résultat qui me convenait moins.&lt;/p&gt;
&lt;p&gt;La performance a aussi pesé dans la balance. Sur ma VM équipée de quatre vCPU, l’expérience restait plus lourde que ce que j’attendais pour la taille de mon homelab. Les métriques étaient bien conservées, mais leur consultation et leur chargement me semblaient lents. Dans mon usage, les contrôles restaient essentiellement calés sur la cadence standard d’une minute, alors que j’avais déjà une collecte plus fine dans VictoriaMetrics pour alimenter Grafana.&lt;/p&gt;
&lt;p&gt;Une partie de cette différence vient du &lt;a class="link" href="https://docs.checkmk.com/latest/en/cse.html" target="_blank" rel="noopener"
&gt;découpage des éditions&lt;/a&gt;. Checkmk Community est bien entièrement open source, mais elle utilise le cœur Nagios. Le Checkmk Micro Core, plus efficace, ainsi que plusieurs fonctions avancées de graphes et de connexion aux bases de métriques externes appartiennent aux éditions commerciales.&lt;/p&gt;
&lt;p&gt;Le SSO (Single Sign-On) a fini d’illustrer ce décalage. &lt;a class="link" href="https://docs.checkmk.com/latest/en/saml.html" target="_blank" rel="noopener"
&gt;L’intégration SAML native&lt;/a&gt; est elle aussi commerciale. En Community, j’aurais dû ajouter une couche d’authentification Apache ou monter une intégration LDAP avec Authentik uniquement pour Checkmk.&lt;/p&gt;
&lt;p&gt;Ce n’était pas impossible. C’était juste franchement pénible, en 2026, de réserver une simple connexion SSO aux versions payantes. Pour les ACL ou le RBAC, à la limite… mais la connexion ?&lt;/p&gt;
&lt;p&gt;Je n’ai rien contre les logiciels payants. Je préfère même une proposition claire, gratuite ou payante, à une succession de limites qui apparaissent lorsque je commence à exploiter sérieusement l’outil. Avec Checkmk, j’avais choisi Community pour sa promesse open source, mais plusieurs améliorations qui répondaient précisément à mes frustrations me renvoyaient vers une autre édition.&lt;/p&gt;
&lt;p&gt;J’ai donc profité de ce moment pour vérifier si un autre outil correspondait mieux à la direction prise par mon homelab.&lt;/p&gt;
&lt;h2 id="revenir-à-zabbix-mais-pas-par-nostalgie"&gt;Revenir à Zabbix, mais pas par nostalgie
&lt;/h2&gt;&lt;p&gt;&lt;a class="link" href="https://www.zabbix.com/" target="_blank" rel="noopener"
&gt;Zabbix&lt;/a&gt; n’était pas une découverte totale. Je l’avais déjà utilisé auparavant pour du pro et je connaissais une partie de ses forces : une grosse communauté, beaucoup de modèles, une architecture éprouvée et une grande liberté pour construire des contrôles sur mesure.&lt;/p&gt;
&lt;p&gt;Son &lt;a class="link" href="https://www.zabbix.com/documentation/current/en/manual/concepts/agent2" target="_blank" rel="noopener"
&gt;Agent 2&lt;/a&gt; a beaucoup compté dans mon choix. Il reprend les contrôles système classiques et ajoute une architecture de plugins pour des composants comme Docker, systemd, SMART ou différentes bases de données. Son empreinte restait raisonnable pour mes machines, surtout face à l’alternative qui consistait à multiplier les agents spécialisés.&lt;/p&gt;
&lt;p&gt;Surtout, Zabbix me laissait plusieurs chemins pour une même donnée : agent actif, requête HTTP, SNMP, élément dépendant, découverte bas niveau, script externe ou &lt;code&gt;UserParameter&lt;/code&gt;. Cette variété peut rendre la prise en main dense, mais elle correspond bien à ma manière de travailler. Si un contrôle n’existe pas, je peux le construire, le versionner et le rattacher au même hôte que le reste de sa supervision.&lt;/p&gt;
&lt;p&gt;La plateforme reste &lt;a class="link" href="https://github.com/zabbix/zabbix/blob/master/COPYING" target="_blank" rel="noopener"
&gt;open source sous licence AGPL&lt;/a&gt;. Je pouvais utiliser le SSO SAML, ajuster la rétention et créer mes modèles sans changer d’édition. Grafana gardait son rôle de cockpit : VictoriaMetrics alimentait les vues d’infrastructure, et Zabbix Agent 2 lui fournissait les métriques des conteneurs sans ajouter cAdvisor.&lt;/p&gt;
&lt;p&gt;Sur le papier, le choix était séduisant. Il restait à prouver que Zabbix pouvait reprendre les contrôles qui rendaient Checkmk réellement utile chez moi.&lt;/p&gt;
&lt;h2 id="une-migration-en-parallèle"&gt;Une migration en parallèle
&lt;/h2&gt;&lt;p&gt;J’ai fait fonctionner Zabbix et Checkmk en parallèle le temps de reprendre les contrôles indispensables : Proxmox, Docker, systemd, OPNsense, DNS et les boucles mail. Une fois la couverture et les notifications vérifiées, Zabbix est devenu la plateforme de référence le 13 août 2026 et les agents Checkmk ont été retirés progressivement. J’ai conservé une sauvegarde protégée de la VM Checkmk pour pouvoir revenir en arrière si nécessaire.&lt;/p&gt;
&lt;h2 id="ce-que-cette-migration-a-réellement-changé"&gt;Ce que cette migration a réellement changé
&lt;/h2&gt;&lt;p&gt;Aujourd’hui, je n’attends pas d’un seul outil qu’il fasse tout.&lt;/p&gt;
&lt;p&gt;Grafana reste mon premier écran lorsque je veux prendre la température du homelab. Ses dashboards sont directs, visuels et construits autour de mes questions.
Zabbix collecte les états, découvre les services et décide quand une anomalie devient un problème. Argus récupère dans Zabbix les versions réellement déployées. Plus récemment, CairnOps est venu ajouter une couche d’hypervision en utilisant Zabbix comme source.&lt;/p&gt;
&lt;p&gt;Je sais désormais où regarder une tendance, où chercher un événement et quel système porte la décision d’alerter. Ajouter un outil reste possible, mais seulement s’il possède un rôle qui n’existe pas déjà ailleurs.&lt;/p&gt;
&lt;p&gt;Beszel m’a rappelé la valeur d’une supervision simple.
Checkmk m’a montré l’intérêt de descendre jusqu’aux services et aux contrôles métier.
Zabbix m’a finalement donné la souplesse nécessaire pour réunir ces besoins sans abandonner les outils spécialisés qui fonctionnaient déjà bien.&lt;/p&gt;
&lt;p&gt;Dans les prochains articles, je ferai le tour de cette architecture actuelle : Grafana comme cockpit, Zabbix derrière les alertes, puis les outils qui gravitent autour, notamment Argus, Uptime Kuma, LogChef et PatchMon. CairnOps aura droit à son propre récit, parce que son arrivée commence déjà à changer ma manière de lire l’état global du homelab.&lt;/p&gt;</description></item></channel></rss>