Au-Delà d'un Seul PC (Orchestration)
La Haute Disponibilité via Docker Swarm & Kubernetes
Docker Compose est merveilleux, mais il est limité à une seule machine physique. Que se passe-t-il si le serveur prend feu ? Si Black Friday génère 100,000 connexions etature l'unique API ?
Voici venir l'Orchestration : Gérer 10 ordiphysiques (Nodes) comme s'ils n'en formaient qu'un seul.
Le Miracle du "Replicas = 3"
Un orchestrateur écoute un fichier de configuration désiré (ex: "Je veux 4 APIs qui tournent en permanence"). Si un serveur meurt avec 2 APIs dessus, l'orchestrateur s'en rend compte en 1 seconde, et recrée ces 2 APIs sur les serveurs restants. C'est le Self-Healing.
Kubernetes vs Docker Swarm
Il existe deux grands maîtres dans le domaine. Lequel choisir pour passer en production distribuée ?
Commandes essentielles Docker Swarm
# Étape 1 : Activer le mode Swarm sur le serveur Maître (Manager)
docker swarm init --advertise-addr <IP-DU-SERVEUR>
# -> Génère un TOKEN. Collez-le sur les autres serveurs.
# Étape 2 : Ajouter des serveurs Travailleurs (Workers) à l'essaim
docker swarm join --token SWMTKN-1-xxxx <IP-MANAGER>:2377
# Étape 3 : Déployer un stack Compose sur l'essaim
docker stack deploy -c docker-compose.yml ma-super-app
# Étape 4 : Scaler un service (Ex: Passer à 5 réplicas de l'API sous la charge)
docker service scale ma-super-app_api=5
# Voir l'état de santé de l'essaim
docker node ls
docker service ls
Le Glossaire K8s Indispensable
L'écosystème Kubernetes rebute beaucoup par son jargon. Voici les termes fondamentaux déchiffrés. Cliquez sur un terme pour le révéler :