DevOps

·

2 min read

Day 18 of DevOps learning🚀:
👉 Today, I delved into the fundamental components of Kubernetes architecture and gained insights into how they work together to manage containerized applications. Here’s a breakdown of the key components:
1. API Server
The API server is the central management hub of Kubernetes. It exposes the Kubernetes API, acting as the gateway for all REST commands used to control the cluster. It processes incoming requests, validates them, and updates the corresponding objects in etcd. All interactions with the Kubernetes cluster go through the API server, making it crucial for communication between components.
2. etcd
etcd is a distributed key-value store that holds the persistent state of the cluster. It serves as the source of truth for all Kubernetes objects, ensuring consistency and durability of data. By storing configuration data and the state of the cluster, etcd plays a vital role in managing the overall health and functionality of the system.
3. Controller Manager
The controller manager runs various controllers that regulate the state of the cluster. Each controller manages specific aspects, such as ensuring the desired number of pod replicas is running. If the actual state diverges from the desired state, the controller works to make adjustments, ensuring that the cluster maintains its intended configuration.
4. Scheduler
The scheduler is responsible for assigning Pods to nodes in the cluster. It watches for newly created Pods that lack assigned nodes and selects the most suitable node based on resource availability and scheduling policies. This helps balance the workload across the cluster, optimizing performance and resource utilization.

👉Interaction Between Components
- These components interact in a continuous loop:
- Users or automated processes send requests to the API server.
- The API server updates the desired state in etcd.
- The controller manager monitors the actual state and makes necessary adjustments.
- The scheduler assigns Pods to nodes, ensuring efficient distribution.

Â