Advanced Pods

 

Scheduling  :-

The process of assigning Pods to Nodes so kubelets can run them. 


Scheduler :- 

Control plane component that handles scheduling 


Scheduling Process

The kubernets scheduler selects a suitable Node for each pod. It takes into account thins like


Resource requests vs. avaiable node resource

Various configurations that affect scheduling using node labels


NodeSelector :-

We can configure a node Selector for our pods to limit which nodes the pod can be scheduled on.

Node selectos use node labels to filter suitable nodes. 

Create labeles to node :- kubectl label nodes k8s-worker1 special=true


NodeName :-

We can bypass scheduling and assign a pod to specific node by name using nodeName. 


What is DaemonSet 

DaemonSet Automatically runs a copy of a Pod on each node. 

DaemonSets will run a copy of the Pod on new nodes as they are added to the cluster. 


DaemonSets and Scheduling

DaemonSets respect normal scheduling rules around node labels, taints, and tolerations.

If a pod would not normally be scheduled on a node, a DaemonSet will not create a copy of the Pod on that Node. 

What is Static Pod ?

A POD that is managed directly by the kubelet on a node, not by the k8s API server. They can run even if there is no k8s API server present. 

Kubelet automatically creates static Pods from YAML manifest files located in the manifest path on the node. 

Mirror Pods

Kubelet will create a mirror Pod for each static Pod. Mirror Pods allow us to see the status of the static Pod via the K8s API, but we cannot change or manage them via the API. 

Comments

Popular posts from this blog

Docker

RBAC