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
Post a Comment