0% found this document useful (0 votes)
80 views14 pages

Understanding Kubernetes Architecture - A Beginner's Guide - by Routerhan - May, 2023 - Medium

This document is a summary of a longer article about Kubernetes architecture. It discusses the key components of the Kubernetes control plane including the API server, etcd, scheduler, and controller manager. It also discusses the components that run on worker nodes, including kubelet, container runtime, and proxy. The summary highlights that the control plane manages the cluster state while nodes run user workloads, and controllers ensure the cluster remains in the desired state.

Uploaded by

sap practice
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
80 views14 pages

Understanding Kubernetes Architecture - A Beginner's Guide - by Routerhan - May, 2023 - Medium

This document is a summary of a longer article about Kubernetes architecture. It discusses the key components of the Kubernetes control plane including the API server, etcd, scheduler, and controller manager. It also discusses the components that run on worker nodes, including kubelet, container runtime, and proxy. The summary highlights that the control plane manages the cluster state while nodes run user workloads, and controllers ensure the cluster remains in the desired state.

Uploaded by

sap practice
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 14

You have 2 free member-only stories left this month. Sign up for Medium and get an extra one.

Member-only story

Understanding Kubernetes Architecture — A


Beginner’s Guide
Unveiling the Blueprint: Navigating the Inner Workings of Kubernetes

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

A deployment of Kubernetes is called a “Cluster.”


On the left side of the diagram is the control plane, which is responsible for making
decisions about the cluster and detecting and responding to events within the
cluster.

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:

Kubernetes API server


The Kubernetes API server is the entry point for all communication in the cluster. It
exposes the Kubernetes API, which accepts commands to view or change the state of
the cluster.

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.

Kubernetes controller manager


The Kubernetes controller manager runs all the controller processes that monitor
the cluster state and ensure that the actual state of a cluster matches the desired
state.

Cloud controller manager


The cloud controller manager runs controllers that interact with the underlying
cloud providers. These controllers effectively link clusters into a cloud provider’s
API.

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!

we explored the architecture of a Kubernetes cluster, uncovering important


concepts that every beginner should know.

Here are the key takeaways:

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.

2. Node Archit ecture: Kubernetes utilizes separate nodes to host essential


components and user workloads. These nodes work together to form a robust and
scalable cluster.

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.

By understanding the architecture of a Kubernetes cluster, you are equipped with


the foundational knowledge necessary to navigate the Kubernetes ecosystem.

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.

🔔 Stay tuned or subscribe to my series: “Understanding Kubernetes — A Beginner’s Guide”


to explore everything about Kubernetes. 🚀
➕ Join the Medium Membership Program to support my work and connect with other writers.

📝 Have questions or suggestions? Leave a comment or message me through Medium. Let’s


connect!

Thank you for your support! 🌟


Kubernetes Kubernetes Cluster Cloud Architecture
Follow

Written by routerhan
221 Followers

R&D Software Engineer @IBM Germany. This blog is an independent research of cloud computing.

More from routerhan

routerhan

A Beginner’s Guide to Kubernetes


In this guide, you will find a comprehensive list of all my published articles related to Kubernetes.

· 2 min read · May 7

1K 9
routerhan

Understanding Kubernetes Networking — A Beginner’s Guide


Connecting the Dots: Navigating the Kubernetes Networking Landscape

· 3 min read · Jun 2

962 5

routerhan

My Very First Medium Earnings After 100 Followers


How much have I earned after I joined Partner Program in May 2023.
· 3 min read · Jun 2

1.1K 21

routerhan

Understanding Kubernetes CronJobs— A Beginner’s Guide


Why do we need CronJobs? CronJobs provide a convenient way to automate repetitive tasks in a
Kubernetes environment.

· 3 min read · May 28

1.2K 7

See all from routerhan


Recommended from Medium

routerhan

Understanding Kubernetes Pod II — A Beginner’s Guide


In this beginner-friendly guide, we will explore the concept of static pods, their significance
compared to regular pods, how they work.

· 5 min read · Apr 26

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

Understanding Kubernetes Persistent Volume— A Beginner’s Guide


Preserving Data for Eternity: The Art of Kubernetes Persistent Volumes

· 5 min read · May 16

263 1
routerhan

Understanding Kubernetes Controller — A Beginner’s Guide


Are you curious about how Kubernetes maintains and manages its resources? Controller is one of
the most important components of Kubernetes…

· 5 min read · Apr 28

153 1

routerhan

Understanding Kubernetes Pod — A Beginner’s Guide


I thi b i fi dl id ill l th t f d h th ti l i
In this beginner-friendly guide, we will explore the concept of pods, why they are essential in
Kubernetes, how they work, and their…

· 5 min read · Apr 22

routerhan

Understanding Kubernetes Volumes — A Beginner’s Guide


In Kubernetes, containers can have short lifecycles and may be frequently created and destroyed.
When a container is terminated, any data…
· 6 min read · May 10

61 1

See more recommendations

You might also like