Skip to main content

Cluster Architektur

Control Nodes (Controllplane / Master Node)

Controlplane Komponenten

Diese Komponenten können, müssen aber nicht in form von Containern auf den Control Nodes laufen.

ETCD

Dies ist ein Key-Value Store (Datenbank) welche die Informationen speichert.

Scheduler

Dies ist eine Applikation, welche die Container und Deployments auf die entsprechende Node schiebt.

Controller-Manager

Node-Controller

Kümmert sich um das Hinzufügen, Entfernen und Status spezifische handeln von nodes. Bsp. wenn eine node abstürzt.

Replication-Controller

Kümmert sich um das Erstellen, Löschen und verschieben von Containern auf den Unterschiedlichen Nodes.

Kube-Apiserver

Kümmert sich um die Kommunikation zwischen den unterschiedlichen Komponenten und veröffentlicht die eigentliche Kuberentes API welche mittels Kubectl usw. angesteuert wird.

Conatiner Runtime Engine

Die Master nodes haben optional eine Container Runtime Engine (Bsp.: Docker, Containerd, Rocket), der Master kann die Controlplane Komponenten in Containern laufen lassen, diese können jedoch auch als applikation auf dem Host direkt laufen.

Worker Nodes

Conatiner Runtime Engine

Jede Worker node hat eine Container Tunrtime Engine, diese wird benötigt um die Container auf der jeweiligen Node auszuführen.

Kubelet

Die Kubelet ist der "Kapitän" der Nodes, diese Applikation ist dafür verantwortlich die Kommunikation mit der Masternode aufrecht zu halten und die Anforderungen entsprechend umzusetzen (Bsp.: neue Container aus zu führen)

Kube-Proxy

Der Kube-Proxy ist für die Kommunikation zwischen Container auf unterschiedlichen Nodes verantwortlich.

Übersicht

image.png