kubernetes/plugin/pkg/scheduler
Kubernetes Submit Queue 34b258ca4b
Merge pull request #55933 from bsalamat/starvation3
Automatic merge from submit-queue (batch tested with PRs 54316, 53400, 55933, 55786, 55794). If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.

Add support to take nominated pods into account during scheduling to avoid starvation of higher priority pods

**What this PR does / why we need it**:
When a pod preempts lower priority pods, the preemptor gets a "nominated node name" annotation. We call such a pod a nominated pod. This PR adds the logic to take such nominated pods into account when scheduling other pods on the same node that the nominated pod is expected to run. This is needed to avoid starvation of preemptor pods. Otherwise, lower priority pods may fill up the space freed after preemption before the preemptor gets a chance to get scheduled.

**Which issue(s) this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close the issue(s) when PR gets merged)*:
Fixes #54501

**Special notes for your reviewer**: This PR is built on top of #55109 and includes all the changes there as well.

**Release note**:

```release-note
Add support to take nominated pods into account during scheduling to avoid starvation of higher priority pods.
```

/sig scheduling
ref/ #47604
2017-11-21 15:04:28 -08:00
..
algorithm Merge pull request #55933 from bsalamat/starvation3 2017-11-21 15:04:28 -08:00
algorithmprovider Merge pull request #51192 from guangxuli/scheduler_priority_functions_map_reduce 2017-11-19 05:22:23 -08:00
api Enforce use of fixed size int types in the API 2017-11-13 11:28:59 -08:00
core Autogenerated files 2017-11-20 22:17:06 -08:00
factory fixup! Add logic to account for pods nominated to run on nodes, but are not running yet. Add tests for the new logic. 2017-11-20 22:17:06 -08:00
metrics update BUILD files 2017-10-15 18:18:13 -07:00
schedulercache add e2e test on the hostport predicates 2017-11-10 15:44:23 +08:00
testing Autogenerated files 2017-10-20 23:22:03 -07:00
util Autogenerated files 2017-11-19 11:32:14 -08:00
BUILD Autogenerated files 2017-11-19 11:32:14 -08:00
OWNERS Updated OWNERS_ALIASES for scheduler, and added scheduler integration test owners. 2017-07-01 09:28:52 +08:00
scheduler.go fixup! Add logic to account for pods nominated to run on nodes, but are not running yet. Add tests for the new logic. 2017-11-20 22:17:06 -08:00
scheduler_test.go Add logic to account for pods nominated to run on nodes, but are not running yet. 2017-11-20 22:17:05 -08:00
testutil.go Enforce use of fixed size int types in the API 2017-11-13 11:28:59 -08:00