Today, I want to dive into Kubernetes architecture. To explore this, let’s follow the flow of a kubectl command. Essentially, a kubectl command is just data sent to a server. We could achieve the same result with a simple curl request or by using a language library (such as Python, Go, or Java).
In this example, we’ll push a deployment to create a pod.
Kubernetes architecture
The kube-api-server
Here the 5min kubernetes tutorial :
Kubelet, the agent
Then, the master did its job.
On the worker node, the kubelet (a kubernetes agent) watches permanently the kube-api-server and check if there is some stuffs which need to do on the worker… for example create a pod.
Then if the kubelet finds a new pod with its NodeName, it starts to create a pod. For that the kubelet manages the container runtime (for example containerd). And the container runtime creates a container or many containers (a pod can be compose with many containers).
And finally, the container is just a process which has some reserved resources with cgroups and isolation with namespaces.
SOCIAL SHARE CARD GENERATOR