Labs ICT
⭐ Pro Login

Kubernetes Introduction

Understanding container orchestration with Kubernetes

Kubernetes Introduction

Kubernetes (K8s) is an open-source container orchestration platform that automates the deployment, scaling, and management of containerized applications.

Why Kubernetes?


  Without Kubernetes:                With Kubernetes:
  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”          β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
  β”‚  Manual scaling     β”‚          β”‚  Auto-scaling           β”‚
  β”‚  Manual healing     β”‚          β”‚  Self-healing           β”‚
  β”‚  Manual rollouts    β”‚          β”‚  Rolling updates        β”‚
  β”‚  No service discoveryβ”‚         β”‚  Built-in DNS           β”‚
  β”‚  Load balancing     β”‚          β”‚  Built-in load balancingβ”‚
  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜          β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Kubernetes Architecture


  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
  β”‚                 Control Plane                    β”‚
  β”‚  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚
  β”‚  β”‚ API Serverβ”‚  β”‚Scheduler β”‚  β”‚ Controller   β”‚ β”‚
  β”‚  β”‚           β”‚  β”‚          β”‚  β”‚ Manager      β”‚ β”‚
  β”‚  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚
  β”‚  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”β”‚
  β”‚  β”‚   etcd    β”‚  β”‚  Cloud Controller Manager    β”‚β”‚
  β”‚  β”‚  (state)  β”‚  β”‚                              β”‚β”‚
  β”‚  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜β”‚
  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                         β”‚
                    β”Œβ”€β”€β”€β”€β”΄β”€β”€β”€β”€β”
                    β–Ό         β–Ό
  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
  β”‚      Worker Node 1  β”‚ β”‚      Worker Node 2  β”‚
  β”‚  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”   β”‚ β”‚  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”   β”‚
  β”‚  β”‚    kubelet    β”‚   β”‚ β”‚  β”‚    kubelet    β”‚   β”‚
  β”‚  β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€   β”‚ β”‚  β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€   β”‚
  β”‚  β”‚   kube-proxy  β”‚   β”‚ β”‚  β”‚   kube-proxy  β”‚   β”‚
  β”‚  β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€   β”‚ β”‚  β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€   β”‚
  β”‚  β”‚ β”Œβ”€β”€β”€β”€β”β”Œβ”€β”€β”€β”€β” β”‚   β”‚ β”‚  β”‚ β”Œβ”€β”€β”€β”€β”β”Œβ”€β”€β”€β”€β” β”‚   β”‚
  β”‚  β”‚ β”‚Pod β”‚β”‚Pod β”‚ β”‚   β”‚ β”‚  β”‚ β”‚Pod β”‚β”‚Pod β”‚ β”‚   β”‚
  β”‚  β”‚ β””β”€β”€β”€β”€β”˜β””β”€β”€β”€β”€β”˜ β”‚   β”‚ β”‚  β”‚ β””β”€β”€β”€β”€β”˜β””β”€β”€β”€β”€β”˜ β”‚   β”‚
  β”‚  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜   β”‚ β”‚  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜   β”‚
  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Core Concepts

  • Cluster β€” A set of nodes (machines) running Kubernetes
  • Node β€” A single machine (physical or virtual) in the cluster
  • Pod β€” Smallest deployable unit; one or more containers
  • Service β€” Stable network endpoint for accessing pods
  • Deployment β€” Manages replica sets and rolling updates

πŸ§ͺ Quick Quiz

What is the main purpose of Kubernetes?