Kubernetes and it’s important terms

Ankit Kumar
3 min readAug 2, 2024

--

Hello everyone! I’m beginning to share my #learnings with you again. From today, I’ll be making a conscious effort to write and post more frequently.

I’ve decided to focus on #Kubernetes for the next few days, as I’m practicing it in my free time. You might have heard of Kubernetes or worked with it before, but do you know how it really operates behind the scenes?

#Kubernetes is an open-source platform that automates the orchestration of containerized applications. It helps manage the deployment, scaling, and operation of containers across a cluster of servers.

Think of it as a highly efficient harbor management system that ensures cargo (applications) is transported, loaded, and managed across various ships (servers) in a well-organized manner.

Here are a few important components to know from architecture:

1. #Containers (Cargo Packages in Ship): A lightweight, standalone, and executable package that includes everything needed to run a piece of software, including the code, runtime, libraries, and system tools.

2. #Pods (Shipping containers that hold multiple packages): The smallest deployable units in Kubernetes that contain one or more containers sharing the same network and storage resources.

3. #Nodes (Ships that carry the cargo): Servers or machines that host Pods and provide the computational resources (CPU, memory, storage) required to run containerized applications.

4. #Clusters (The entire harbor): A collection of interconnected Nodes working together to manage and run containerized applications efficiently.

5. kube-scheduler (The harbor master who assigns cargo to the right ships): It decides which Pods go on which Nodes, scheduling them to make sure everything runs efficiently.

6. kube-proxy (The logistics coordinator): It manages network traffic between Pods and external services, ensuring that requests are properly routed and balanced across the available Pods.

7. kube-apiserver (The Central Command Office/Control Room): Exposes the Kubernetes API and serves as the main entry point for managing interactions with the cluster’s state and resources.

8. #etcd (The logbook): A distributed key-value store that serves as the primary data store for Kubernetes, keeping the cluster’s configuration and state information.

9. #kubelet (The Ship’s Captain): An agent running on each Node that ensures the desired state of Pods is maintained, managing container lifecycle and reporting status back to the Kubernetes API server.

10. kube-controller-manager (The operations manager): Runs controllers to maintain the desired state of the cluster by managing resources like ReplicaSets, Deployments, and Jobs, ensuring they match their specified configurations.

I have attached some cool pictures from google to visualise these concepts.

Stay tuned for more insights and details on how Kubernetes ensures smooth and efficient management of containerized applications!

#kubernetes #sre #devops #cloud #cloudnative #linuxfoundation

--

--

Ankit Kumar
Ankit Kumar

No responses yet