OpenShift Kube Descheduler Operator – Profile Examples

For the last few weeks, I’ve been working with the OpenShift Kube Descheduler and OpenShift Kube Descheduler Operator.

I posted some test-cases for the seven Descheduler Profiles to demonstrate how the Profiles operate under specific conditions. Note these are unsupported test cases.

The following examples are:

  1. AffinityAndTaints
  2. TopologyAndDuplicates
  3. LifecycleAndUtilization
  4. SoftTopologyAndDuplicates
  5. EvictPodsWithLocalStorage
  6. EvictPodsWithPVC
  7. DevPreviewLongLifecycle

Summary

I hope this helps you adopt the OpenShift Kube Descheduler Operator.

References

  1. Evicting pods using the descheduler
  2. Kubernetes: Pod Topology Spread Constraints Use topology spread constraints to control how Pods are spread across your cluster among failure-domains such as regions, zones, nodes, and other user-defined topology domains. This can help to achieve high availability as well as efficient resource utilization.
  3. Kubernetes: Inter-pod affinity and anti-affinity Inter-pod affinity and anti-affinity allow you to constrain which nodes your Pods can be scheduled on based on the labels of Pods already running on that node, instead of the node labels.
  4. Kubernetes: Well-Known labels and taints
  5. Adding Labels to a Running Pod
  6. Label Selector for k8s.io
  7. Pod Affinity and AntiAffinity Examples
  8. Scheduling pods using a scheduler profile
  9. Kubernetes: Assigning Pods to Nodes
  10. OpenShift 3.11: Advanced Scheduling and Pod Affinity/Anti-affinity
  11. Kubernetes: Pod Lifecycle
  12. Base Profiles
  13. Descheduler User Guide
  14. Kubernetes: Scheduling Framework
  15. GitHub: openshift/cluster-kube-descheduler-operator