DEV Community

Chethan
Chethan

Posted on

Understanding Kubernetes Architecture: A Simple Breakdown

Understanding the Kubernetes architecture has given me a solid foundation for diving deep into the world of container orchestration🐋. I've synthesized the core components into an easy-to-follow guide. This is the complete breakdown of the Kubernetes architecture☸️👇:

Kubernetes follows a client-server architecture🛜. It mainly has two components:

📌Control plane: It is the master node responsible for maintaining the state of the cluster.
📌Data plane: It is a collection of worker nodes that are responsible for running your applications.

The control plane has the following components:

📌Kube-apiserver: Exposes the Kubernetes API, serving as the front-end for the Control Plane.
📌Kube-scheduler: Watches for newly created Pods and assigns them to suitable Worker Nodes based on requirements, constraints, etc.
📌 Kube-controller-manager: It is responsible for running various controller processes, such as Replication controllers, Node controllers, etc.
📌Cloud-controller-manager: It integrates Kubernetes with cloud provider APIs to manage cloud resources like persistent volumes.

The data plane has the following components:

📌Container runtime: Software responsible for running containers, such as Docker or CRI-O.
📌Kubelet: An agent that runs on each node and communicates with the Control Plane. It ensures that containers are running in Pods.
📌Kube-proxy: It maintains network rules on the nodes, enabling network communication to and from Pods, and facilitating Service discovery.

Top comments (0)