Kubernetes pour débutants : comprendre l’orchestration en 10 minutes
Kubernetes pour débutants : tout comprendre en 10 minutes (2026)
Kubernetes (souvent abrégé K8s) est l’outil d’orchestration de containers le plus utilisé au monde. Il est aussi réputé pour être complexe à prendre en main. Et cette réputation est partiellement méritée — mais les concepts de base, eux, sont parfaitement accessibles.
Si tu sais déjà ce qu’est Docker, ce guide te permettra de comprendre Kubernetes en 10 minutes.
Pourquoi Kubernetes existe-t-il ? (contexte)
Imagine que tu gères une application qui tourne dans 50 containers Docker. Que se passe-t-il quand :
- Un container plante ?
- Tu veux passer de 50 à 200 containers pour absorber un pic de trafic ?
- Tu veux mettre à jour l’application sans downtime ?
- Un serveur physique tombe en panne ?
Faire tout ça manuellement est impossible. Kubernetes automatise ces opérations — c’est un “chef d’orchestre” pour tes containers.
Les concepts clés expliqués simplement
Pod
Le Pod est la plus petite unité déployable dans Kubernetes. Un Pod contient un ou plusieurs containers qui partagent le même réseau et stockage.
Analogie : si un container est un appartement, un Pod est un immeuble qui peut en contenir plusieurs.
Node
Un Node est une machine (virtuelle ou physique) qui fait tourner tes Pods. Un cluster Kubernetes est composé de plusieurs Nodes.
Types de Nodes :
- Control Plane (master) : cerveau du cluster, prend les décisions
- Worker Nodes : exécutent réellement les containers
Cluster
L’ensemble des Nodes (control plane + workers) forme un Cluster. C’est ton infrastructure Kubernetes complète.
Service
Un Service est une abstraction qui expose tes Pods sur le réseau. Comme les Pods peuvent être recréés avec de nouvelles IPs, le Service fournit une IP stable et un DNS fixe.
Types de Services :
- ClusterIP : accessible uniquement à l’intérieur du cluster
- NodePort : accessible depuis l’extérieur sur un port fixe
- LoadBalancer : crée un load balancer cloud (AWS ELB, GCP Load Balancer)
Deployment
Un Deployment décrit l’état désiré de ton application : “je veux 3 replicas de ce container, version 2.1”. Kubernetes s’assure que cet état est toujours maintenu.
Namespace
Un Namespace est un espace de noms qui permet d’isoler les ressources dans un cluster. Utile pour séparer dev/staging/production dans le même cluster.
Kubernetes vs Docker : quelle différence ?
| Docker | Kubernetes | |
|---|---|---|
| Rôle | Crée et exécute des containers | Orchestre des clusters de containers |
| Échelle | Un seul hôte | Des dizaines à des milliers de nœuds |
| Auto-healing | Non | Oui (redémarre les containers qui plantent) |
| Scaling | Manuel | Automatique (HPA) |
| Load balancing | Basique | Avancé et intégré |
| Complexité | Faible | Élevée |
Installer Kubernetes localement (minikube)
Minikube crée un cluster Kubernetes à un seul nœud sur ta machine locale.
bash
# Installer minikube (Mac)
brew install minikube
# Démarrer le cluster
minikube start
# Vérifier que ça fonctionne
kubectl get nodes
# NAME STATUS ROLES AGE VERSION
# minikube Ready control-plane 1m v1.29.0
Déployer votre première application
Crée deployment.yaml :
yaml
apiVersion: apps/v1
kind: Deployment
metadata:
name: mon-app
spec:
replicas: 3 # 3 instances de l'application
selector:
matchLabels:
app: mon-app
template:
metadata:
labels:
app: mon-app
spec:
containers:
- name: mon-app
image: nginx:latest
ports:
- containerPort: 80
---
apiVersion: v1
kind: Service
metadata:
name: mon-app-service
spec:
selector:
app: mon-app
ports:
- port: 80
targetPort: 80
type: NodePort
bash
# Déployer
kubectl apply -f deployment.yaml
# Voir les pods
kubectl get pods
# Accéder à l'app
minikube service mon-app-service
Quand utiliser Kubernetes ?
Kubernetes est justifié quand :
- Tu gères plus de 10 containers en production
- Tu as besoin d’auto-scaling (le trafic varie beaucoup)
- Tu veux du zero-downtime deployment
- Tu as plusieurs équipes qui partagent la même infrastructure
Kubernetes est overkill quand :
- Tu as un petit projet avec 2-3 services
- Docker Compose suffit pour ton usage
- Tu n’as pas les compétences DevOps pour le maintenir
FAQ
Faut-il apprendre Docker avant Kubernetes ?
Absolument. Kubernetes orchestre des containers Docker. Sans comprendre Docker, Kubernetes sera incompréhensible.
Kubernetes est-il gratuit ?
Kubernetes lui-même est open source et gratuit. Mais les services Kubernetes managés dans le cloud (EKS, AKS, GKE) ont un coût (entre 70 et 150$/mois pour le control plane, plus les workers).
