Kubernetes is a container orchestration system. It helps you deploy, scale, manage, and heal your containerized applications (like Docker containers) automatically.
⚙️ High-Level Architecture:
🔁 How It Works (Step by Step Flow):
1. You define YAML
You write a YAML file describing a:
-
Deployment
-
Service
-
Ingress
-
ConfigMap, etc.
2. You apply with kubectl apply -f
This talks to the Kubernetes API Server.
3. Control Plane stores the config
The API Server saves it in etcd (a key-value store).
4. Scheduler picks a Node
The Scheduler finds the best Node to run the Pod.
5. Kubelet starts the Pod
The selected Node's kubelet:
-
Pulls the container image
-
Starts the container
-
Monitors its health
6. Kube-proxy manages network
Handles service discovery, routing, load balancing between Pods.
7. Ingress (optional)
Ingress Controller handles HTTP/HTTPS and routes traffic to Services.
📦 Key Components You Use
Component | Role |
---|---|
Pod | Smallest unit — runs 1 or more containers |
Deployment | Manages Pod replicas (scaling, self-healing) |
Service | Exposes Pods (ClusterIP, NodePort, LoadBalancer) |
Ingress | Routes external HTTP(S) to Services |
ConfigMap/Secret | Injects configs or secrets into Pods |
Namespace | Isolates groups of resources |
No comments:
Post a Comment