CNI (Container Network Interface)
CNI (Container Network Interface) : spécification qui décrit comment un moteur de conteneurs (containerd, CRI-O) délègue le réseau d'un pod à un plugin. Un plugin est un exécutable que le moteur lance à chaque événement : ADD crée l'interface, attribue l'adresse et installe les routes à la création du pod, DEL défait tout à sa suppression, CHECK et GC vérifient et nettoient. La configuration, en JSON, se trouve dans /etc/cni/net.d/ et les binaires dans /opt/cni/bin/.
Kubernetes décrit le résultat attendu (une adresse par pod, des pods qui se joignent sans NAT) mais n'implémente pas le réseau : c'est le plugin CNI (Cilium, Calico, Flannel...) qui le réalise, et parfois qui applique les NetworkPolicies et remplace kube-proxy. Sans plugin, les nœuds restent NotReady.
Dans les cours
- Kubernetes : réseau et exposition, leçon 1 : Le modèle réseau de Kubernetes
- Kubernetes : réseau et exposition, leçon 2 : Les plugins CNI