Understanding Kubernetes Architecture - A Beginner's Guide - by Routerhan - May, 2023 - Medium
Understanding Kubernetes Architecture - A Beginner's Guide - by Routerhan - May, 2023 - Medium
Member-only story
routerhan · Follow
4 min read · May 3
Listen Share
Open in app Sign up Sign In
In this post, we will again discuss the key components of the Kubernetes system
Search Medium
architecture, as highlighted in the diagram from the Kubernetes documentation.
Check out “Understanding Kubernetes — A Beginner’s Guide” for the comprehensive series
🚀
8
The control plane consists of several components, including the Kubernetes API
server, etcd, the Kubernetes scheduler, the Kubernetes controller manager, and the
cloud controller manager.
Control Plane
The control plane is the brain of a Kubernetes cluster. It makes decisions about the
cluster and detects and responds to events in the cluster. The main components of
the control plane are:
etcd
Etcd is a highly available key-value store that contains all the cluster data. When you
tell Kubernetes to deploy your application, that deployment configuration is stored
in etcd. Etcd is the source of truth for the state in a Kubernetes cluster, and the
system works to bring the cluster state into line with what is stored in etcd.
Kubernetes scheduler
The Kubernetes scheduler assigns newly created Pods to nodes. The scheduler
determines where your workloads should run within the cluster.
L et’s now zoom in on the right side to learn more about the worker nodes.
Worker Nodes
Nodes are the worker machines in a Kubernetes cluster. User applications are run
on nodes. Nodes can be virtual or physical machines. Each node is managed by the
control plane and is able to run Pods.
Nodes are not created by Kubernetes itself, but rather by the cloud provider. This
enables Kubernetes to run on a variety of infrastructures. The nodes are then
managed by the control plane. The components on a node enable that node to run
Pods:
kubelet
This is the most important component. This controller communicates with the
Kubernetes API server to receive new and modified Pod specifications and ensures
that those Pods and their associated containers are running as desired. The kubelet
also reports to the control plane on health and status.
Container runtime
In order to start a Pod, the kubelet uses the container runtime, which is responsible
for downloading images and running containers. Kubernetes implements a
Container Runtime Interface that permits pluggability of the container runtime.
While Docker is likely the best-known runtime, rkt and CRI-O are two other
commonly used container runtimes.
Kubernetes proxy
This is a network proxy that runs on each node in a cluster. This proxy maintains
network rules that allow communication to Pods running on nodes — in other words,
communication to workloads running on your cluster. This communication can
come from within or outside of the cluster.
Key Takeaways
Let’s recap!
1. Cont rol Plane: The control plane is the decision-making center of the cluster,
consisting of various components responsible for managing and orchestrating the
cluster’s operations.
3. Cont rollers: Controllers play a crucial role in maintaining the desired state of
the cluster. They continuously monitor and reconcile the actual state with the
desired state, ensuring that applications run smoothly.
Stay tuned for more informative content in our Underst anding Kubernet es — A
Beginner’s Guide, where we delve deeper into the core concepts and features of
Kubernetes.
Written by routerhan
221 Followers
R&D Software Engineer @IBM Germany. This blog is an independent research of cloud computing.
routerhan
1K 9
routerhan
962 5
routerhan
1.1K 21
routerhan
1.2K 7
routerhan
16
Lists
routerhan
StaffKubernetes
Understanding Picks Deployment — A Beginner’s Guide
347 stories · 107 saves
In Kubernetes, a Deployment is a resource object that defines the desired state of an application or
workload.
Stories to Help You Level-Up at Work
· 5 min read · 19May
stories
2 · 89 saves
24 Self-Improvement 101
20 stories · 149 saves
Productivity 101
20 stories · 168 saves
routerhan
263 1
routerhan
153 1
routerhan
routerhan
61 1