Before you deploy, understand what’s going on behind the scenes inside the control plane.
Photo by Kazuo ota on Unsplash
I. Introduction
Learning Kubernetes is quite fun.
However, going directly to the CLI and running the kubectl commands, then experimenting with pods, deployments, and services without understanding what’s inside the Kubernetes cluster might still cause some confusion about how things work.
That’s why we’ll try to explore the cluster in Kubernetes and, of course, the control plane and its components.
Later in the article, we’ll attempt to run a cluster and show these components within the cluster using minikube.
II. What is a Cluster in Kubernetes?
To understand the entire cluster, we need to discuss the control planes (including their subcomponents) in the next section, as well as the worker nodes and pods. However, let’s define what a cluster is first.
Let’s not be too technical here; we can clearly define that the cluster is the whole system itself.
Moreover, a Kubernetes cluster comprises a control plane (the brain that runs the show) and a set of worker machines, known as worker nodes, that run containerized applications.
Furthermore, worker nodes host the pods that comprise the application workload.
As we have mentioned, the control plane is the brain that runs the show; it controls the worker nodes and the pods in the cluster.
To visualize what we have discussed, refer to the image below, courtesy of Kubernetes.

Kubernetes Cluster Architecture
III. What is a Control Plane and its Components?
Again, as we have mentioned, the control plane is the brain that runs the show, but it is a collection of numerous components that help us in handling the overall health of a cluster.
Four components/services run on the control plane; let’s discuss them one by one.
1. kube-apiserver
This kube-apiserver is part of the control plane and is constructed in accordance with the REST standard. REST proves highly efficient in showcasing functionalities through HTTP endpoints, which are accessible by employing various methods of the HTTP protocol, including GET, POST, PUT, PATCH, and DELETE. Due to these endpoints, you can interact with Kubernetes by calling this REST API through the kubectl command-line tool or direct API calls.
2. etcd
Kubernetes uses etcd to store state. It is an open-source, distributed key-value store used to store and manage critical information that distributed systems need to operate.
3. kube-scheduler
The kube-scheduler queries the kube-apiserver at regular intervals to list pods that have not been scheduled or have an empty nodeName property. It is responsible for electing a worker node out of those available to run a newly created pod.
4. kube-controller-manager
The kube-controller-manager is a significant component; essentially, its primary duty is to reconcile the actual state of the cluster with the desired state of the cluster stored in etcd.
IV. Run minikube and create a Cluster and show the Control Plane Components.
The objective of this section is to illustrate the control plane components and their respective locations when creating a new cluster.
Okay, let’s get started.
First, run the command minikube start — cpus 2 — memory 4096 .
This command will help you create a new cluster.
When everything is done, you’ll see something like this below.
However, we need to check the status just to be sure.
You can type the command minikube status and see output similar to the one below.
Now, how can we inspect and see the control plane?
Try running the command kubectl get nodes -o wide and see output similar to the one below.
Looking at the role, it serves as a control plane ; now let’s try to identify those components.
To view these components, type kubectl get pods -n kube-system and see output similar to the one below.
Additionally, this may be a bonus for the reader.
If ever you are curious, you can go to /etc/kubernetes/manifests to see the manifest files.
Showing:
- kube-apiserver.yaml
- kube-scheduler.yaml
- kube-controller-manager.yaml
- etcd.yaml
V. Summary
I hope you like this post. I created it to review my understanding of Kubernetes cluster and control plane components. Perhaps I’ll write more about Kubernetes shortly.
A few key takeaways: A Kubernetes cluster is the entire system itself, but the brain is the control plane, which comprises four components that work together to control the worker nodes and the pods.
This information, code, or software is provided for informational purposes only. It should not be considered professional coding or legal advice. Not all code or information provided may be accurate or suitable for your project. Consult a software development expert or legal professional before making significant coding or legal decisions.





Top comments (0)