Understanding Kubernetes Components using Armed Force Analogy

Understanding Control Plane Components in K8s like API Server, ETCD, Control Manager, Scheduler, and Cloud Control Manager

While learning K8s, I’m sure you came across the interaction of K8s Components in the Control Plane. We will discuss the reasoning behind the driving wheels of the K8s Control Plane Components using the Armed Forces analogies to make it interesting.

Armed Force Cover for Article

In the analogy of Kubernetes to an ARMED FORCE, the Control Plane is like the Military Force that manages the Central Command (kube-apiserver), the WAR Room (etcd), the Operations Planner (kube-scheduler), the Field Commanders (kube-controller-manager (cm)) and the Special Ops Coordinator (kube-cloud-controller-manager (ccm)). This analogy can help make the complex system of Kubernetes easier to understand.

Analogies Comparing the Master node to the Armed Force

Consider a country’s Armed Force with all its mighty assets like military bases, active units, and missions. There needs to be some Central Command overseeing the Force and making their operations run hassle-free. The Central Command has the authority to oversee all operations, and strategic decision-making abilities along with the control of different units. The Central Command functions similarly to the Control Plane in K8s.

Components of Control Plane

1. API Server

  • It acts like Central Command handling all the orders and mission-critical communication and orders passing to the troops, managing the WAR Room.

Similarly, in the case of K8s, all the components interact via the API Server. It is the ONLY component interacting with the ETCD (Interaction with WAR Room).

Authenticity

Consider Passing sensitive details to the soldiers using NATO Phonetic Alphabets(Alpha, Bravo, Charlie, etc) only after receiving the valid passphrase.

Similarly, in the case of K8s, the API Server is responsible for the Authentication (NATO Phonetic Alphabets) using RBAC or ABAC and Authorization (valid passphrase) using TLS/SSL Certificates.


2. ETCD

  • It is where all the Strategic decisions regarding the troop’s position, strategic planning, and vital information are.

    Similarly, ETCD stores the State of the Cluster and is a Key Value Database.|

Distributed

  • In case of any failures to contact the WAR Room strategic decisions can’t be made so strategic plans are distributed across different WAR rooms making it distributed.

Similarly, ETCD is distributed (making it Highly Available) and even in case of failures it can reflect the Leader ETCD using the Raft Consensus Algorithm.

Crucial Backup Component

  • In a WAR-like Condition, it is crucial to make backups of the Data of the Strategic Plans and Status of Troops if any mishap happens.

Similarly, ETCD is a crucial component to get back to the desired state of the Cluster Configurations if any mishap happens.

3. Scheduler

Scheduling PODS

  • The Operations Planner has to plan which region to deploy the troops to for missions and exercises.

Correspondingly Kube Scheduler is used to schedule the PODS (Troops) on different Nodes(Regions).

Filtering Nodes

  • They also need to look for any current ground situations, the sensitivity of the area, current ammunition troops are carrying, etc.

Similarly, in the case of Kube Scheduler, it needs to look for Taints & Tolerations, Node Affinities, Anti Affinities, etc to schedule PODS(Troops) on the Nodes(Regions).

4. Controller Manager

Maintain Current vs Desired State

  • Field Command’s responsibility is to ensure mission-related activities are carried out as planned, considering the on-ground situation of the region.

Similarly, Control Managers in K8s ensure that the Cluster’s (Regions) Desired State(Regions Desired State) should be maintained by comparing it with the Current State(Regions Current State).

Keeping watch on Cluster, ensuring minimum Replicas are present

  • They should ensure that a certain number of troops always be present in certain areas.

    Similarly, Control Managers ensure that a certain number of replicas are always present for the deployment.

5. Cloud Controller Manager

Deals with Cloud Provider Components

  • Special Ops Coordinators generally deal with external support (like external air support or satellite intel) or external coordination to boost the frontier of the Nation.

    Optional Component

    • Special Ops Coordinators are only required for special occasions so they can be considered Optional for regular exercises and missions.

In the K8s Cluster, Cloud Control Manager is considered to be an optional K8s Native Object and can use them if needed by Cloud providers Objects like Node Controllers, Load Balancers, etc.

Conclusion

The Control Plane (Master Node) acts as the central controlling entity to manage the operations in the Cluster ensuring that apps run smoothly, resources are allocated efficiently, and the cluster maintains its desired state.

Together API Server, etcd, Scheduler, Control Manager, and Cloud Control Manager components ensure that the Kubernetes Cluster (the Armed Force operation) functions efficiently, can scale up or down as needed, and can quickly recover from any issues.


EzyInfra.dev is a DevOps and Infrastructure consulting company helping clients in Setting up the Cloud Infrastructure (AWS, GCP), Cloud cost optimization, and manage Kubernetes-based infrastructure. If you have any requirements or want a free consultation for your Infrastructure or architecture, feel free to schedule a call here.

Share this post

Want to discuss about DevOps practices, Infrastructure Audits or Free consulting for your AWS Cloud?

Prasanna would be glad to jump into a call
Loading...