Abstract preemption algorithm to work on preemptor and domains#136577
Closed
vshkrabkov wants to merge 1 commit intokubernetes:masterfrom
Closed
Abstract preemption algorithm to work on preemptor and domains#136577vshkrabkov wants to merge 1 commit intokubernetes:masterfrom
vshkrabkov wants to merge 1 commit intokubernetes:masterfrom
Conversation
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What type of PR is this?
/kind feature
What this PR does / why we need it:
This PR represents the foundational step toward enabling Workload-Aware Preemption (e.g., PodGroups) in the Kubernetes Scheduler.
Based on review feedback and the complexities of decoupling the workload-aware preemption from the existing
preemption.Interface, this PR focuses strictly on delivering the core abstractions needed for the future workload-aware algorithm, keeping it scoped to:Preemptor,Domain, andVictiminterfaces. This provides a unified set of abstractions, allowing the scheduler to evaluate preemption beyond just "Pod vs Node".SelectVictimsOnNodeto operate on aDomain. Crucially, this updates the victim selection logic to support victims spanning multiple nodes, which is required for scaling Pod-by-Pod preemption against PodGroups. While thePreemptorabstraction is added,default_preemptioncurrently continues to assume it operates solely on a single pod as the preemptor.Building the full workload-aware algorithm and extending it to work with full
PodGrouppreemptors will follow in subsequent PRs.Which issue(s) this PR is related to:
KEP: kubernetes/enhancements#5710
Special notes for your reviewer:
Does this PR introduce a user-facing change?
Additional documentation e.g., KEPs (Kubernetes Enhancement Proposals), usage docs, etc.: