Die Control Plane verwaltet den gesamten Cluster-Zustand und trifft Entscheidungen über die Platzierung und Verwaltung von Workloads.
Architektur: Sammlung von Control Loops, die den gewünschten Zustand überwachen
Kerncontroller:
Worker Nodes führen die tatsächlichen Container-Workloads aus und implementieren das Kubernetes-Netzwerk-Modell.
Rolle: Node-Agent, der mit dem API Server kommuniziert
Funktionen:
Implementierung: Userspace-Proxy, iptables oder IPVS-basiert
Netzwerkfunktionen:
Definition: Kleinste deploybare Einheit, die einen oder mehrere Container kapselt
Eigenschaften:
| Von | Zu | Richtung | Zweck |
|---|---|---|---|
| Client | API Server | → | kubectl-Befehle, Cluster-Management, Ressourcen-CRUD |
| Scheduler | API Server | → | Pod-Platzierungsentscheidungen, Node-Assignments |
| Controller Manager | API Server | ↔︎ | Cluster-Zustand lesen, Korrektur-Aktionen schreiben |
| API Server | etcd | → | Persistierung aller Cluster-Daten und Konfigurationen |
| API Server | Kubelet | → | Pod-Specs, Container-Images, Lifecycle-Befehle |
| Kubelet | API Server | → | Node-Status, Pod-Status, Health-Reports |
| Kubelet | Container Runtime | → | Container-Lifecycle-Management, Image-Pulling |
| Container Runtime | Pods | → | Container-Start/Stop, Ressourcen-Allokation |
| Kube-Proxy | Pods | ⟷ | Service-Discovery, Load-Balancing, Netzwerk-Routing |
Zentralisierung: Alle Kommunikation läuft über den API Server - keine direkte Kommunikation zwischen Control Plane Komponenten
Sicherheit: TLS-verschlüsselt, authentifiziert und autorisiert über RBAC
Konsistenz: Nur der API Server interagiert mit etcd, verhindert Dateninkonsistenzen
Zustandslos: API Server ist zustandslos, gesamter Cluster-Zustand liegt in etcd