Kubernetes Architecture
Kubernetes, often abbreviated as K8s, is an open-source platform designed for automating the deployment, scaling, and operation of application containers. Kubernetes helps manage clusters of containers, which can host applications and services. It automates the deployment, scaling, and management of containerized applications
Published Jan 7, 2025
- In a Kubernetes cluster, the two main components are:
- Control Plane (Master Node)
- Data Plane (Worker Node)
- API Server: Exposes the Kubernetes API, which is used to interact with the cluster.
- etcd: A distributed key-value store that stores the cluster's configuration data.
- Controller Manager: Manages controllers responsible for maintaining the desired state of resources.
- Scheduler: Assigns work (containers) to nodes based on resource availability and constraints.
Key Components:
- Kubelet: Ensures containers are running in a Pod on the node.
- Kube Proxy: Maintains network rules on the node.
- Container Runtime: The software responsible for running containers (Ex.Docker, containerd).