Votre VPS consomme plus de CPU que prévu, la RAM monte la nuit sans raison apparente, et vous n'avez aucun tableau de bord pour comprendre ce qui se passe. Netdata règle ce problème en quelques minutes : un agent open source qui collecte des milliers de métriques en temps réel et les affiche dans un dashboard web accessible depuis un simple navigateur.
Ce tutoriel couvre l'installation de Netdata sur un serveur Linux (Ubuntu, Debian), la sécurisation du port d'écoute, la configuration des alertes, et les principales vues à connaître pour surveiller efficacement les ressources de votre VPS ou serveur dédié.
Pourquoi choisir Netdata pour surveiller un VPS Linux ?
Netdata est gratuit, open source, et s'installe via une seule ligne de commande. Contrairement à des solutions lourdes qui nécessitent une infrastructure de collecte séparée, l'agent tourne directement sur votre VPS et expose un tableau de bord local sur le port 19999.
- Métriques en temps réel à la seconde près : CPU par coeur, RAM, swap, I/O disque, trafic réseau, charge système (load average).
- Aucune base de données externe requise : les données sont stockées en mémoire circulaire sur le serveur, avec rétention configurable sur disque.
- Alertes intégrées : des centaines de règles préconfigurées couvrent les cas courants, notamment saturation disque, CPU élevé, RAM insuffisante et backup manquant.
- Détection automatique des services : Netdata détecte Nginx, Apache, MySQL, PostgreSQL, FiveM, Minecraft, Docker et des dizaines d'autres services présents sur le serveur Linux.
- Interface graphique sans agent supplémentaire : l'administrateur ouvre l'URL dans son navigateur, sans installer de panel ou de proxy externe.
Pour un VPS Linux ElypseCloud, Netdata est particulièrement utile pour suivre la consommation des serveurs de jeu qui tournent en continu, ou pour surveiller un service web hébergé sur le VPS.
Prérequis avant l'installation
- Un VPS ou serveur dédié sous Ubuntu 22.04/24.04, Debian 11/12, CentOS Stream, ou toute distribution Linux récente.
- Un accès root ou sudo via SSH.
- Les commandes
curletbashdisponibles (présentes par défaut sur toutes les distributions Linux).
Si vous n'êtes pas encore familier avec la ligne de commande Linux, consultez notre guide sur quelle distribution Linux choisir pour un VPS.
Installer Netdata en une commande shell
L'équipe Netdata fournit un script d'installation officiel nommé kickstart.sh, recommandé pour toutes les distributions Linux. Il détecte automatiquement votre système et installe la version adaptée.
Avant d'exécuter le script, vérifiez son intégrité pour vous assurer qu'il n'a pas été altéré :
[ "44bdd008153b0696d007b3ecf2b566b9" = "$(curl -Ss https://get.netdata.cloud/kickstart.sh | md5sum | cut -d ' ' -f 1)" ] && echo "OK, VALID" || echo "FAILED, INVALID"
Si la commande retourne OK, VALID, lancez l'installation :
curl https://get.netdata.cloud/kickstart.sh > /tmp/netdata-kickstart.sh
sudo bash /tmp/netdata-kickstart.sh
Le script télécharge les paquets nécessaires et configure Netdata comme service systemd. L'installation prend deux à cinq minutes selon la connexion du serveur.
Vérifiez que le service est actif :
sudo systemctl status netdata
Vous devriez voir active (running). Le dashboard est maintenant accessible sur http://IP_DU_VPS:19999.
Sécuriser l'accès au dashboard Netdata
Par défaut, le port 19999 est accessible depuis n'importe quelle adresse IP. Sur un VPS ou serveur dédié exposé sur Internet, cette configuration doit être corrigée immédiatement.
Option 1 : restreindre avec le firewall UFW
Si votre serveur Linux utilise UFW, autorisez l'accès uniquement depuis votre adresse IP personnelle :
# Remplacez 203.0.113.10 par votre adresse IP réelle
sudo ufw allow from 203.0.113.10 to any port 19999
sudo ufw deny 19999
Pour connaître votre adresse IP publique depuis le shell :
curl -s https://api.ipify.org
Option 2 : restreindre via la configuration Netdata
Netdata propose aussi une restriction interne via son fichier de configuration. Editez /etc/netdata/netdata.conf dans la section [web] :
[web]
allow connections from = localhost 203.0.113.10
Redémarrez le service pour appliquer :
sudo systemctl restart netdata
Option 3 : accès via tunnel SSH (méthode recommandée)
La méthode la plus sûre consiste à lier Netdata à localhost uniquement, puis à y accéder via un tunnel SSH depuis votre poste. Configurez netdata.conf :
[web]
bind to = localhost:19999
allow connections from = localhost
Puis ouvrez le tunnel depuis votre machine locale :
ssh -L 19999:localhost:19999 utilisateur@IP_DU_VPS
Accédez au dashboard sur http://localhost:19999. Le port reste fermé sur Internet.
Naviguer dans le dashboard : les vues essentielles
CPU et charge système
La section System CPU affiche la consommation globale et par coeur. Trois indicateurs clés :
user: temps CPU consommé par vos processus (scripts, serveurs de jeu, services web).system: temps CPU consommé par le noyau Unix/Linux. Un niveau élevé signale souvent un problème d'I/O ou de virtualisation.iowait: pourcentage du temps CPU perdu à attendre les I/O disque. Une valeur élevée indique un disque saturé ou lent.
Croisez avec notre guide interpréter la charge système avec uptime pour comprendre le load average.
RAM, swap et mémoire virtuelle
La section System RAM distingue la mémoire physique utilisée, le cache de fichiers et les buffers kernel. Points de vigilance :
- Une RAM proche du total avec du swap actif indique une insuffisance de mémoire physique sur le serveur.
- Un swap qui augmente en continu entraîne une dégradation des performances par accès disque.
Configurez correctement le swap sur votre VPS Linux en suivant notre guide configurer le swap pour un serveur de jeu Linux.
I/O disque et stockage
La section Disk I/O affiche les lectures et écritures par périphérique en temps réel. Un iowait élevé croisé avec un débit disque proche de la saturation signale un problème de stockage. Complétez l'analyse avec iostat pour identifier les processus responsables.
Réseau et bande passante
La section Network Interfaces affiche le trafic entrant et sortant par interface réseau. Utile pour détecter une attaque DDoS, une exfiltration anormale de données, ou un dépassement de bande passante. Complétez avec iperf3 pour mesurer la capacité maximale du lien réseau.
Logs et journaux Netdata
Netdata écrit ses journaux dans /var/log/netdata/. Trois fichiers principaux à connaître :
error.log: erreurs de l'agent et des collecteurs. C'est la première chose à lire en cas de problème.access.log: accès HTTP au dashboard web.debug.log: mode debug, désactivé par défaut car très verbeux.
Pour suivre les erreurs en temps réel depuis la ligne de commande :
sudo tail -f /var/log/netdata/error.log
Configurer les alertes par email
Netdata embarque des centaines de règles d'alerte préconfigurées qui s'activent dès qu'une métrique dépasse un seuil. Pour recevoir des notifications par email, éditez /etc/netdata/health_alarm_notify.conf :
SEND_EMAIL="YES"
DEFAULT_RECIPIENT_EMAIL="[email protected]"
Redémarrez le service :
sudo systemctl restart netdata
Pour tester l'envoi d'une notification depuis la ligne de commande :
sudo -u netdata /usr/libexec/netdata/plugins.d/alarm-notify.sh test
Gérer le service Netdata
Netdata s'intègre comme service systemd standard sur toutes les distributions Linux. Les commandes essentielles d'administration :
# Vérifier l'état du service
sudo systemctl status netdata
# Arrêter l'agent avant une mise à jour manuelle
sudo systemctl stop netdata
# Redémarrer après modification de la configuration
sudo systemctl restart netdata
# Désactiver le démarrage automatique au boot
sudo systemctl disable netdata
Mettre à jour Netdata
Pour mettre à jour vers la dernière version stable, arrêtez d'abord le service puis relancez le script avec le flag --reinstall :
sudo systemctl stop netdata
sudo bash /tmp/netdata-kickstart.sh --reinstall
La procédure conserve vos configurations et règles d'alerte personnalisées. Utilisez le flag --non-interactive pour automatiser la mise à jour dans un script de maintenance ou un pipeline CI/CD.
Prochaines étapes
Netdata installé et sécurisé, vous disposez d'une visibilité complète sur votre VPS ou serveur dédié. Pour aller plus loin :
- Surveiller l'espace disque et recevoir une alerte avant saturation.
- Détecter automatiquement un serveur de jeu hors service.
- Diagnostiquer une surcharge CPU sur un serveur de jeu Linux.
Votre VPS ElypseCloud inclut une bande passante généreuse et des disques NVMe. Netdata vous donne la visibilité pour exploiter chaque ressource au maximum et anticiper les problèmes avant qu'ils impactent vos services.
Voir les VPS Linux ElypseCloud