Un serveur sans monitoring est un serveur dont vous apprendrez les pannes par vos clients. Uptime Kuma et Netdata sont deux outils open-source qui, combinés, offrent une surveillance complète : disponibilité des services et métriques système.

Uptime Kuma : la surveillance des services

Uptime Kuma surveille la disponibilité de vos URLs, APIs et services TCP. Il vérifie à intervalles réguliers que chaque endpoint répond correctement et vous alerte en cas de problème.

Installation Docker

uptime-kuma:
  image: louislam/uptime-kuma:1
  volumes:
    - ./uptime-kuma/data:/app/data
  labels:
    - traefik.enable=true
    - traefik.http.routers.uptime.rule=Host(\`status.votredomaine.fr\`)
    - traefik.http.routers.uptime.tls.certresolver=letsencrypt

Configuration

Une fois déployé, accédez à l'interface web pour :

  1. Créer un compte administrateur
  2. Ajouter vos moniteurs (HTTP, TCP, ping, DNS, etc.)
  3. Configurer les notifications (email, Telegram, Slack, Discord, webhook)
  4. Créer une page de statut publique pour vos clients

Uptime Kuma consomme environ 40 Mo de RAM et peut surveiller des centaines de endpoints.

Netdata : les métriques système

Netdata collecte et visualise les métriques de votre serveur en temps réel : CPU, RAM, disque, réseau, et même les métriques Docker par conteneur.

Installation Docker

netdata:
  image: netdata/netdata:stable
  cap_add:
    - SYS_PTRACE
    - SYS_ADMIN
  security_opt:
    - apparmor:unconfined
  volumes:
    - /proc:/host/proc:ro
    - /sys:/host/sys:ro
    - /var/run/docker.sock:/var/run/docker.sock:ro
  labels:
    - traefik.enable=true
    - traefik.http.routers.netdata.rule=Host(\`monitor.votredomaine.fr\`)
    - traefik.http.routers.netdata.tls.certresolver=letsencrypt

Sécurisation

Netdata n'a pas d'authentification intégrée. Utilisez un middleware Traefik Basic Auth :

labels:
  - traefik.http.middlewares.netdata-auth.basicauth.users=admin:$$apr1$$hash
  - traefik.http.routers.netdata.middlewares=netdata-auth

Générez le hash avec : htpasswd -nb admin VotreMotDePasse

Complémentarité des deux outils

AspectUptime KumaNetdata
FocusDisponibilité des servicesMétriques système
Question"Mon site est-il en ligne ?""Pourquoi mon serveur est lent ?"
AlertesService down/upCPU/RAM/disque critiques
RAM~40 Mo~150 Mo
InterfaceSimple, orientée statutDétaillée, orientée debug

Workflow d'alerte recommandé

  1. Uptime Kuma détecte qu'un site ne répond plus
  2. Notification immédiate par email/Telegram
  3. Vous consultez Netdata pour diagnostiquer : surcharge CPU ? Disque plein ? OOM kill ?
  4. Vous corrigez et vérifiez la reprise via Uptime Kuma

Conclusion

Uptime Kuma + Netdata coûtent 0€ et consomment ~190 Mo de RAM. C'est le minimum viable pour surveiller un serveur de production. Ne lancez jamais un service client sans monitoring — le coût d'une panne non détectée est toujours supérieur au coût de la surveillance.