Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Guaranteed scheduling of critical pods #29023

Closed
davidopp opened this issue Jul 15, 2016 · 7 comments
Closed

Guaranteed scheduling of critical pods #29023

davidopp opened this issue Jul 15, 2016 · 7 comments
Assignees
Labels
priority/important-soon Must be staffed and worked on either currently, or very soon, ideally in time for the next release. sig/scheduling Categorizes an issue or PR as relevant to SIG Scheduling.

Comments

@davidopp
Copy link
Member

We want to ensure that pods deemed "critical" (this is not official terminology -- I am just using it in the colloquial English sense) are guaranteed to schedule if there are sufficient resources for them in an "empty" cluster, even if the cluster is non-empty and non-critical pods are currently occupying node resources that the critical pods would need in order to schedule.

Examples of critical pods are infrastructure pods like heapster and DNS.

cc/ @piosz @fgrzadkowski

@davidopp davidopp added priority/important-soon Must be staffed and worked on either currently, or very soon, ideally in time for the next release. sig/scheduling Categorizes an issue or PR as relevant to SIG Scheduling. team/control-plane labels Jul 15, 2016
@davidopp davidopp added this to the v1.4 milestone Jul 15, 2016
@bhujangr
Copy link

bhujangr commented Jul 17, 2016

Yes this would be a very useful feature i.e. am assuming this is some sort of priorities for pods..

@wojtek-t
Copy link
Member

We are not going to do the "full pod priority" feature at least for 1.4. The plan is just to have a group of "high priority pods" (probably defined as those with some special label) that would be "critical pods" as defined by @davidopp above.

@therc
Copy link
Member

therc commented Jul 17, 2016

For our use case (DaemonSets + heapster + DNS + dashboard + GPU pods), a special label is a good start. We'd be happy to provide early testing and feedback.

@krmayankk
Copy link

sufficient resources for them in an "empty" cluster, even if the cluster is non-empty
i am confused by this line, it would help to provide a slightly better description of this issue .

k8s-github-robot pushed a commit to kubernetes-retired/contrib that referenced this issue Aug 17, 2016
Automatic merge from submit-queue

[rescheduler] Implemented main control loop

ref kubernetes/kubernetes#29023

cc @davidopp @wojtek-t

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.kubernetes.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.kubernetes.io/reviews/kubernetes/contrib/1526)
<!-- Reviewable:end -->
mcluseau pushed a commit to mcluseau/kubernetes that referenced this issue Aug 19, 2016
Automatic merge from submit-queue

Salt configuration for Rescheduler

ref kubernetes#29023
k8s-github-robot pushed a commit that referenced this issue Aug 22, 2016
Automatic merge from submit-queue

Make DNS and Heapster critical pods

ref #29023
```release-note
DNS, Heapster and UI are critical addons
```
k8s-github-robot pushed a commit that referenced this issue Aug 22, 2016
Automatic merge from submit-queue

e2e test for rescheduling critical pods

ref #29023

The test is disabled by default.
k8s-github-robot pushed a commit to kubernetes-retired/contrib that referenced this issue Aug 26, 2016
Automatic merge from submit-queue

[rescheduler] actually wait for pod to be scheduled

kubernetes/kubernetes#29023
k8s-github-robot pushed a commit to kubernetes-retired/contrib that referenced this issue Aug 26, 2016
Automatic merge from submit-queue

[rescheduler] added exporting events

ref #kubernetes/kubernetes#29023
k8s-github-robot pushed a commit that referenced this issue Sep 5, 2016
Automatic merge from submit-queue

Enable Rescheduler by default

Rescheduler is stable - e2e test is passing constantly for >1week.

ref #29023

```release-note
Rescheduler which ensures that critical pods are always scheduled enabled by default in GCE.
```
@goltermann
Copy link
Contributor

This is only awaiting docs PR merge.

@pwittrock pwittrock added this to the v1.4-nonblocking milestone Sep 8, 2016
@pwittrock pwittrock removed this from the v1.4 milestone Sep 8, 2016
@pwittrock
Copy link
Member

@davidopp @piosz

I am moving this out of the blocking issues we are tracking for the 1.4 release because the unfinished pieces are non-blockers for the release and do not need to be tracked in the burndown meetings. If there are components besides docs & tests that need to be completed, please move it back to the 1.4 milestone and provide daily status updates.

@piosz
Copy link
Member

piosz commented Oct 7, 2016

This is fixed right now.

@piosz piosz closed this as completed Oct 7, 2016
k8s-github-robot pushed a commit that referenced this issue Oct 10, 2016
Automatic merge from submit-queue

Rescheduling for critical pods proposal

ref #29023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
priority/important-soon Must be staffed and worked on either currently, or very soon, ideally in time for the next release. sig/scheduling Categorizes an issue or PR as relevant to SIG Scheduling.
Projects
None yet
Development

No branches or pull requests

8 participants