Fonctionnalités Démo Tarifs Guides Alternatives Blog Docs Mon compte English Acheter une licence GitHub
Guides / Plusieurs serveurs Docker

Surveiller plusieurs serveurs Docker depuis un seul tableau de bord

Un serveur Maintenant central, un agent en lecture seule sur chacun de vos autres hôtes, un seul tableau de bord. Enrôlement, authentification, commandes exactes et ce que permet chaque édition.

· 3 min de lecture

Vous faites tourner Maintenant sur un serveur et il voit tout ce qui tourne dessus. Puis arrive un deuxième VPS, puis un troisième. Installer un Maintenant sur chacun fonctionne, mais vous vous retrouvez avec trois tableaux de bord et trois jeux d’alertes.

Le mode multi-serveurs garde un seul tableau de bord : un serveur, et un agent léger sur chaque autre hôte.

Comment ça marche

  • Le serveur est une instance Maintenant normale, lancée avec --mode=server. Il garde l’historique, évalue les règles d’alerte et sert le tableau de bord.
  • Chaque agent est la même image, lancée avec --mode=agent. Il lit le socket Docker local en lecture seule (ou Swarm, ou Kubernetes, détectés tout seuls) et envoie au serveur l’état des conteneurs, les endpoints, les certificats ainsi que le CPU, la mémoire et le disque de l’hôte.
  • Le lien est un flux gRPC persistant, ouvert par l’agent. Pas de base partagée, pas de file de messages, pas de VPN.
  • Chaque élément est rattaché à son hôte : deux conteneurs postgres sur deux machines ne se mélangent jamais.

Enrôler un hôte

L’enrôlement utilise un jeton à usage unique, généré dans l’interface du serveur. Au premier démarrage, l’agent crée une paire de clés Ed25519 en local et présente le jeton une seule fois. Ensuite, chaque flux est authentifié par défi-réponse. Vous pouvez révoquer un agent depuis l’interface à tout moment.

L’interface génère la commande exacte. Elle ressemble à ceci :

docker run -d --name maintenant-agent --restart unless-stopped \
  -v /var/run/docker.sock:/var/run/docker.sock:ro \
  -v /proc:/host/proc:ro \
  -v /etc/os-release:/host/etc/os-release:ro \
  -v maintenant-agent-data:/var/lib/maintenant \
  ghcr.io/kolapsis/maintenant:latest \
  --mode=agent --server=grpcs://monitoring.example.com \
  --enrollment-token=mnt_enr_XXXXXXXXXXXXXXXX --label="prod-worker-01"

Sur le serveur, renseignez MAINTENANT_GRPC_URL avec l’adresse que les agents joindront (par exemple grpcs://monitoring.example.com), pour que les commandes générées pointent au bon endroit. La documentation multi-hôtes détaille le reverse proxy et le TLS.

Quand un agent se tait

Si le réseau coupe, l’agent continue de collecter dans un tampon local, se reconnecte tout seul et rejoue les événements des conteneurs, les mesures de ressources et les résultats des sondes une fois le flux rétabli. Les graphiques et la disponibilité n’ont pas de trou. À la reconnexion, il envoie d’abord un inventaire à jour : la vue actuelle est juste immédiatement.

Ce que permet chaque édition

CommunityPersonalPro
Machine qui fait tourner Maintenantouiouioui
Hôtes distants via des agentsaucunjusqu’à 20Illimité
Canaux d’alertewebhook, Discord+ email, Telegram+ Slack, Teams, escalade
Utilisation sur les serveurs d’un tiersoui (Apache 2.0)nonoui

La machine qui fait tourner le serveur n’est jamais comptée. Personal coûte 149 € TTC, une fois, pour des serveurs que vous possédez ou gérez pour vous-même. Si les serveurs appartiennent à vos clients, c’est Pro.

Avant de commencer

  • Les agents n’ont besoin que d’un accès sortant vers l’adresse gRPC du serveur.
  • Le serveur détient l’identité des agents. S’il tourne sur PostgreSQL, un serveur de remplacement reprend la flotte sans rien réenrôler.

Plus d'un serveur à surveiller ?

Ouvrez la démo pour voir la vue multi-serveurs, les alertes et le suivi des CVE. Personal couvre jusqu'à 20 hôtes distants pour 149 € TTC, une fois.

Ou installez-le gratuitement