DEV Community

Er. Bhupendra
Er. Bhupendra

Posted on

kube-scheduler (Kubernates's part 3)

Kubernetes में kube-scheduler क्या है? ⚙️

Image

Image

Image

Image

1️⃣ kube-scheduler क्या है

kube-scheduler Kubernetes का component है जो decide करता है कि नया Pod किस Node पर run होगा।

One line (Interview):
👉 kube-scheduler Kubernetes में pods को suitable node पर assign करता है।


2️⃣ kube-scheduler क्यों होता है

Cluster में कई nodes होते हैं:

Node1
Node2
Node3
Node4
Enter fullscreen mode Exit fullscreen mode

अगर नया Pod create होता है तो question होता है:

👉 किस node पर run कराना है?

यही decision kube-scheduler लेता है।


3️⃣ kube-scheduler क्या-क्या काम करता है

1️⃣ New Pods detect करता है

Scheduler check करता है कि:

कौन सा pod अभी तक किसी node पर assign नहीं हुआ
Enter fullscreen mode Exit fullscreen mode

2️⃣ Node select करता है

Scheduler nodes को check करता है:

  • CPU available
  • RAM available
  • node status
  • taints & tolerations
  • node labels

फिर best node choose करता है।


3️⃣ Pod को Node assign करता है

Scheduler decide करता है:

Pod → Node2
Enter fullscreen mode Exit fullscreen mode

यह information kube-apiserver के through etcd में store होती है


4️⃣ kube-scheduler किन-किन से connection रखता है

1️⃣ kube-apiserver (Direct)

Scheduler हमेशा API Server से बात करता है

kube-scheduler → kube-apiserver
Enter fullscreen mode Exit fullscreen mode

Scheduler:

  • pod list fetch करता है
  • node list fetch करता है

2️⃣ etcd (Indirect)

Scheduler etcd से direct connect नहीं करता।

Flow:

kube-scheduler
     ↓
kube-apiserver
     ↓
etcd
Enter fullscreen mode Exit fullscreen mode

3️⃣ kubelet (Indirect)

जब node assign हो जाता है:

kubelet node पर pod run करता है
Enter fullscreen mode Exit fullscreen mode

5️⃣ Real Flow Example

Command:

kubectl apply -f pod.yaml
Enter fullscreen mode Exit fullscreen mode

Flow:

kubectl
 ↓
kube-apiserver
 ↓
etcd
 ↓
kube-scheduler (detect new pod)
 ↓
choose best node
 ↓
update apiserver
 ↓
kubelet run pod
Enter fullscreen mode Exit fullscreen mode

6️⃣ One Line Memory Trick 🧠

👉 kube-scheduler = Pod को सही node पर assign करने वाला component।

या

👉 Scheduler decides where the pod will run.


7️⃣ Super Easy Kubernetes Core Trick 🔥

Kubernetes control plane के 3 main brain components:

API Server → Gateway
etcd → Database
Scheduler → Decision maker
Enter fullscreen mode Exit fullscreen mode

और node side:

kubelet → Pod run करता है
kube-proxy → Network manage करता है
Enter fullscreen mode Exit fullscreen mode

अगर चाहो तो मैं Controller Manager, Kubelet और Kube-Proxy भी इसी interview-level short format में समझा दूँ — जिससे पूरा Kubernetes Architecture 10 मिनट में clear हो जाएगा।

Top comments (0)