1. Le control plane #
Le cerveau du cluster.
Les composants #
| Composant | Rôle |
|---|---|
| kube-apiserver | API REST, authentification, autorisation, admission ; seul point d'accès à etcd |
| etcd | Base clé/valeur distribuée contenant tout l'état du cluster (à sauvegarder !) |
| kube-scheduler | Choisit le nœud d'un pod selon ressources, affinités et contraintes |
| kube-controller-manager | Boucles de contrôle : réplicas, nœuds, endpoints, jobs... |
| cloud-controller-manager | Intégration avec le fournisseur cloud (load balancers, volumes) |
2. Les nœuds de travail #
Là où tournent les pods.
kubelet, runtime et kube-proxy #
- kubelet : agent du nœud, démarre les conteneurs décrits par les pods et rapporte leur état.
- Container runtime (containerd, CRI-O) : exécute réellement les conteneurs via l'interface CRI.
- kube-proxy : programme les règles réseau (iptables/IPVS) pour les Services.
kubectl get nodes -o wide
kubectl describe node <noeud> | sed -n '/Capacity/,/Allocated resources/p'
kubectl get --raw='/readyz?verbose' | head -20 # santé de l'API server
kubectl -n kube-system get pods -o wide # composants système
kubectl cluster-info
crictl ps # sur un nœud : conteneurs (runtime CRI)3. La boucle de réconciliation #
Le principe déclaratif.
État désiré vs état observé #
Kubernetes est déclaratif : vous décrivez l'état voulu (« 3 réplicas de cette application ») et les contrôleurs agissent en continu pour que l'état réel converge vers l'état désiré. Si un pod disparaît, un autre est recréé sans intervention.
kubectl create deployment web --image=nginx --replicas=3
kubectl delete pod -l app=web --wait=false # supprimer les pods
kubectl get pods -l app=web -w # de nouveaux pods apparaissent aussitôt
kubectl get events --sort-by=.lastTimestamp | tail4. Les objets de base #
Le vocabulaire à connaître.
Panorama #
| Objet | Rôle | Exemple |
|---|---|---|
| Pod | Plus petite unité déployable (1 ou plusieurs conteneurs) | kubectl run |
| ReplicaSet / Deployment | Maintient N pods ; gère les mises à jour | kubectl create deployment |
| Service | Point d'accès stable vers des pods | ClusterIP, NodePort, LoadBalancer |
| Ingress / Gateway | Routage HTTP depuis l'extérieur | nginx, HAProxy, Traefik |
| ConfigMap / Secret | Configuration et données sensibles | variables, fichiers |
| PersistentVolumeClaim | Demande de stockage persistant | StorageClass |
| Namespace | Isolation logique | dev, prod |
| Job / CronJob | Tâches ponctuelles ou planifiées | sauvegardes |
kubectl api-resources | head -30 # toutes les ressources disponibles
kubectl explain deployment.spec.strategy # documentation intégrée d'un champ
kubectl explain pod.spec.containers --recursive | head -40Mon suivi
Connectez-vous pour suivre votre progression et prendre des notes. Se connecter
Articles recommandés
Aide-mémoire Docker : Les commandes essentielles
Un guide pratique regroupant toutes les commandes indispensables pour manipuler les images, les c...
Aide-mémoire kubectl : les commandes essentielles
Toutes les commandes kubectl utiles au quotidien : contextes, ressources, logs, exec, port-forwar...
Kubernetes : Pods, ReplicaSets et Deployments (déployer et mettre à jour)
Maîtriser les workloads Kubernetes : anatomie d'un pod, ReplicaSet, Deployment, stratégies Rollin...
Kubernetes : exposer ses applications (Services, Ingress et Gateway API)
Exposer des applications dans Kubernetes : Services ClusterIP/NodePort/LoadBalancer, Ingress, Ing...
Kubernetes : sécuriser son cluster (RBAC, ServiceAccounts, NetworkPolicies, Pod Security)
Sécuriser Kubernetes : RBAC (Role, ClusterRole, bindings), ServiceAccounts, NetworkPolicies, Pod ...
Kubernetes : fiabilité et mise à l'échelle (probes, ressources, HPA, PDB)
Rendre une application résiliente dans Kubernetes : liveness, readiness et startup probes, reques...
Docker : vue d'ensemble, architecture et premiers pas
Découvrir Docker : conteneurs vs machines virtuelles, architecture client/daemon/registre, images...
Bonnes pratiques Docker : images, exécution, sécurité et exploitation
Les bonnes pratiques Docker : Dockerfile et builds multi-étapes, images minimales et reproductibl...