Netdata
Netdata est un agent de supervision gratuit et open source. Il s’installe seul, repère ce qui tourne sur votre machine, et se met à tout tracer seconde par seconde avant même que vous ayez touché un fichier de configuration. Pas de tableau de bord à construire, pas de langage de requête à apprendre : c’est à peu près l’opposé de Prometheus et Grafana côté prise en main.
Licence : Netdata, ce sont en réalité trois logiciels distincts sous trois licences différentes, et les confondre est l’erreur la plus facile à commettre. L’Agent Netdata, la partie qui collecte les métriques et qui est livrée dans l’image Docker netdata/netdata, est sous licence GPLv3+, confirmé depuis le fichier LICENSE du dépôt GitHub netdata/netdata. L’interface, le tableau de bord que vous consultez réellement, est servie depuis un CDN et embarquée avec l’Agent, mais elle est en source fermée sous la licence maison NCUL1 de Netdata, gratuite d’usage mais non reconnue OSI. Netdata Cloud, la couche optionnelle pour le multi-nœuds et le SSO, est elle aussi fermée, avec un palier gratuit et des paliers payants. Aucune de ces couches fermées n’est nécessaire pour s’auto-héberger.
En bref : site officiel netdata.cloud · GitHub netdata/netdata, plus de 79 000 étoiles · image Docker netdata/netdata sur Docker Hub, tags stable/edge/latest · port par défaut 19999 · projet membre de la CNCF.
Ce que fait vraiment Netdata
Costa Tsaousis a construit la première version de Netdata en 2013, après que des transactions cloud de son entreprise se sont mises à échouer silencieusement, sans que rien sur le marché ne puisse lui dire pourquoi. On le sent encore aujourd’hui dans ce que l’outil privilégie : pas de tableaux de bord à monter, mais une visibilité immédiate sur ce qui se passe réellement, là, maintenant. Installez-le, et il détecte seul ce qui tourne, nginx, PostgreSQL, Redis et quelques centaines d’autres choses, puis trace tout en quelques secondes.
Deux éléments le distinguent du reste de la pile de supervision : l’intervalle de collecte et l’endroit où vit l’intelligence. Netdata échantillonne à la seconde par défaut, pas toutes les 15 ou 30 secondes comme un scrape Prometheus classique, et entraîne un petit modèle de détection d’anomalies par métrique localement, sur la machine surveillée, plutôt que d’envoyer les données brutes ailleurs. Le projet compte plus de 800 intégrations de collecteurs, la plupart sans rien à configurer.
Installer Netdata avec Docker
L’image officielle est netdata/netdata sur Docker Hub, celle que pointe la documentation officielle d’installation Docker de Netdata. Il existe deux chemins : un script kickstart en une ligne pour du bare-metal ou une VM, et Docker pour tout ce qui est déjà conteneurisé. Docker demande plus de droits que la plupart des conteneurs, car Netdata doit voir l’hôte entier qu’il surveille.
services:
netdata:
image: netdata/netdata:stable
container_name: netdata
pid: host
network_mode: host
restart: unless-stopped
cap_add:
- SYS_PTRACE
- SYS_ADMIN
security_opt:
- apparmor:unconfined
volumes:
- netdataconfig:/etc/netdata
- netdatalib:/var/lib/netdata
- netdatacache:/var/cache/netdata
- /:/host/root:ro,rslave
- /etc/passwd:/host/etc/passwd:ro
- /etc/group:/host/etc/group:ro
- /proc:/host/proc:ro
- /sys:/host/sys:ro
- /etc/os-release:/host/etc/os-release:ro
- /var/run/docker.sock:/var/run/docker.sock:ro
volumes:
netdataconfig:
netdatalib:
netdatacache:
- Enregistrez le fichier compose ci-dessus et lancez docker compose up -d. Les trois volumes nommés conservent votre configuration et l’historique des métriques d’une recréation de conteneur à l’autre.
- Ouvrez http://ip-de-votre-serveur:19999. Les graphiques se remplissent déjà ; il n’y a rien à configurer pour ce premier aperçu.
- Préférez le tag stable à latest si vous voulez éviter les builds nocturnes. netdata/netdata sans tag précis récupère latest par défaut.
- Optionnel : reliez le nœud à Netdata Cloud depuis les paramètres du tableau de bord, pour une vue multi-nœuds partagée et le SSO. Sans cette étape, le tableau de bord local continue de fonctionner seul.
docker compose up -d
Notes de sécurité : ce fichier compose accorde pid:host, network:host, SYS_ADMIN, SYS_PTRACE et un accès en lecture seule au socket Docker, davantage que presque tout le reste d’une stack homelab typique, parce que Netdata surveille l’hôte lui-même, pas un service isolé dans un bac à sable. Et comme Prometheus, le tableau de bord n’a aucune authentification par défaut : quiconque peut atteindre le port 19999 voit tout ce qu’il collecte. Placez-le derrière un reverse proxy avec authentification, comme Caddy, ou gardez-le hors d’internet public avec un outil comme Tailscale.
Netdata face à Prometheus + Grafana, Zabbix et Glances
« Netdata contre Prometheus » n’est pas le bon cadrage : Prometheus est un collecteur et une base de données de séries temporelles, quand Netdata regroupe collecte, stockage, machine learning et tableau de bord dans un seul agent. La comparaison honnête oppose Netdata à une pile complète Prometheus + Grafana, ou à des outils d’entreprise plus anciens comme Zabbix.
| Netdata | Prometheus + Grafana | Zabbix | Glances | |
|---|---|---|---|---|
| Effort d’installation | Quasi nul, détecte les cibles automatiquement | Deux services à configurer, scrape configs à écrire | Serveur, agents et une base de données à provisionner | Un seul binaire, aucune persistance |
| Intervalle de collecte | À la seconde par défaut | Intervalle de scrape de 15-30 s, en général | À la minute, en général | Temps réel, live uniquement |
| Détection d’anomalies | Intégrée, entraînée par métrique en périphérie | Non intégrée, outillage externe nécessaire | Seuils à déclenchement, pas de ML | Aucune |
| Rétention de l’historique | Disque local, Cloud/Parents pour centraliser | Configurable, plusieurs semaines couramment | Longue durée, adossée à une base de données | Aucune, instantané live uniquement |
| Idéal pour | Visibilité rapide et détaillée sur un hôte ou quelques-uns | Alerting sur mesure, métriques de service, montée en charge | Environnements IT structurés de grande taille | Une vérification rapide en terminal |
Netdata : avantages et inconvénients
- Détecte automatiquement les services et commence à les tracer immédiatement, aucun tableau de bord à construire au préalable
- La collecte à la seconde capte les pics qu’un intervalle de scrape de 30 secondes lisserait et manquerait
- La détection d’anomalies est entraînée par métrique, localement, sans pipeline de ML séparé à mettre en place
- Un seul agent remplace le duo collecteur-plus-tableau de bord qu’exigent Prometheus et Grafana
- Le déploiement Docker complet exige des privilèges au niveau de l’hôte (pid:host, network:host, SYS_ADMIN) que la plupart des conteneurs ne demandent jamais
- Aucune authentification sur le tableau de bord par défaut, même exposition au risque que Prometheus sans proxy devant
- La rétention est sur disque local par défaut ; centraliser l’historique sur plusieurs nœuds réclame vraiment Netdata Cloud ou un Parent auto-hébergé
- Le partage de licence en trois parties entre Agent, UI et Cloud déroute pas mal de monde, puisque « open source » ne décrit fidèlement qu’une partie du tout
Matériel : la propre FAQ de Netdata situe l’utilisation par défaut autour de 5 % de CPU et 150 Mo de RAM sur un système en production, avec une chute sous 1 % de CPU et environ 100 Mo de RAM une fois le ML et l’alerting désactivés et le stockage éphémère activé. C’est suffisamment léger pour tourner confortablement sur un Raspberry Pi ou un cœur libre sur un NAS. Notre guide auto-hébergement pour monter votre premier homelab couvre le choix du matériel pour l’ensemble de la stack.
FAQ
Netdata est-il gratuit ?
L’Agent l’est, sous licence GPLv3+, avec les sources complètes sur GitHub et aucune fonctionnalité verrouillée. L’interface du tableau de bord est gratuite à l’usage mais en source fermée. Netdata Cloud ajoute un palier communautaire gratuit plus des paliers payants pour les équipes plus grandes qui veulent du SSO et une gestion centralisée, rien de tout cela n’étant nécessaire pour s’auto-héberger.
Ai-je besoin de Netdata Cloud pour l’utiliser ?
Non. Le tableau de bord local sur le port 19999 fonctionne de façon autonome, sans compte ni connexion requise. Netdata Cloud ne devient utile que lorsque vous voulez une vue unique sur plusieurs nœuds, ou du SSO pour une équipe.
Combien de CPU et de RAM Netdata utilise-t-il ?
Environ 5 % de CPU et 150 Mo de RAM par défaut, selon la propre FAQ du projet, moins de 1 % de CPU et environ 100 Mo de RAM une fois le ML et l’alerting désactivés. C’est pour l’Agent seul, indépendamment de ce qu’il surveille.
Netdata est-il meilleur que Prometheus et Grafana ?
Compromis différent, pas une simple mise à niveau. Netdata offre une visibilité détaillée, à la seconde, sur un hôte ou une poignée d’entre eux, avec quasiment aucune configuration. Prometheus associé à Grafana demande plus de travail en amont mais monte en charge davantage et donne un vrai contrôle sur la logique d’alerting via PromQL. Beaucoup de homelabs font tourner les deux, pour des usages différents.
Netdata peut-il superviser des conteneurs Docker directement ?
Oui, nativement, via un montage en lecture seule du socket Docker, sans exporter séparé à installer. Prometheus a besoin de cAdvisor en plus pour le même résultat ; Netdata se contente du montage de socket déjà présent dans le fichier compose ci-dessus.
Netdata est le moyen le plus rapide d’obtenir une visibilité réelle, à la seconde, sur une seule machine ou une poignée d’entre elles, sans écrire un scrape config au préalable. Il se marie bien avec Uptime Kuma pour la question plus simple de disponibilité que Netdata n’est pas conçu pour trancher, et avec Prometheus et Grafana une fois qu’un homelab dépasse quelques hôtes et a besoin de règles d’alerting sur mesure. Notre guide auto-hébergement pour monter votre premier homelab couvre les bases Docker sur lesquelles il tourne.