DevOps in K8s — Descheduler

<h1>What is K8s Descheduler</h1> <p>From the perspective of the&nbsp;<code>kube-scheduler</code>, it utilizes a series of algorithms to identify the most suitable nodes for running Pods. When a new Pod needs to be scheduled, the scheduler makes the best decision based on its real-time assessment of the resources within the K8s cluster.</p> <p>However, K8s clusters are inherently dynamic. Changes, such as evicting Pods for node maintenance, can cause imbalances over time. After maintenance, previously evicted Pods do not automatically return to their original node because Pods, once bound to a node, do not trigger re-scheduling.</p> <p>While it is possible to manually balance the cluster by deleting certain Pods to prompt re-scheduling, this approach is cumbersome and not efficient. To address resource underutilization or waste in the cluster, the&nbsp;<strong>descheduler</strong>&nbsp;component can be employed for optimizing Pod scheduling.</p> <p><a href="https://tonylixu.medium.com/devops-in-k8s-descheduler-d970240e719"><strong>Read More</strong></a></p>
Tags: DevOps K8s