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

Coscheduilng. #639

Merged
merged 1 commit into from Jan 7, 2019

Conversation

@k82cn
Copy link
Member

k82cn commented Dec 2, 2018

@k82cn

This comment has been minimized.

Copy link
Member

k82cn commented Dec 2, 2018

xref #583

@k82cn

This comment has been minimized.

Copy link
Member

k82cn commented Dec 2, 2018

/assign bsalamat

@k82cn k82cn force-pushed the k82cn:kep_583 branch from 8d6f531 to 242df45 Dec 2, 2018

@yastij

This comment has been minimized.

Copy link
Member

yastij commented Dec 2, 2018

/cc

adding this one to my backlog

@k8s-ci-robot k8s-ci-robot requested a review from yastij Dec 2, 2018

@k82cn k82cn referenced this pull request Dec 3, 2018

Closed

KEP: Coscheduling #2337

@bsalamat

This comment has been minimized.

Copy link
Contributor

bsalamat commented Dec 4, 2018

I think this proposal is a good starting point for introducing gang scheduling. Given that our current plan is to build an early version in kube-batch (which is an incubator, not a core component), this looks good to me. We should expand the proposal in the future with more in-depth information about life-cycle and quota management of gangs.

@MaciekPytel

This comment has been minimized.

Copy link

MaciekPytel commented Dec 5, 2018

I would like a section on how this will interact with cluster autoscaling added to the doc. I don't expect it to work with CA in initial version, but we should make sure the design is not fundamentally conflicting with how CA works if we want to promote it to core kubernetes later on.
Cluster Autoscaler works by importing and internally running scheduler predicates to simulate how scheduler would behave if nodes were added to cluster or removed from it. Ideally any scheduling logic should be in form of predicates that we can inform. Otherwise we should make sure it's something that can be duplicated in CA.

@k82cn

This comment has been minimized.

Copy link
Member

k82cn commented Dec 28, 2018

Ideally any scheduling logic should be in form of predicates that we can inform.

Coscheduling is not a predicate in scheduler; if necessary, CA need to check PodGroup.Status and pending pods to get how many additional resource are required.

Cluster Autoscaler works by importing and internally running scheduler predicates ...

How CA handle scheduler extender ?

@k82cn

This comment has been minimized.

Copy link
Member

k82cn commented Jan 3, 2019

@MaciekPytel

When discussing CA + kube-batch at kubernetes-sigs/kube-batch#526 (comment) , I'm thinking to add more info in PodGroupStatus for CA to scale out.

@MaciekPytel

This comment has been minimized.

Copy link

MaciekPytel commented Jan 3, 2019

I replied on kubernetes-sigs/kube-batch#533 (review). Let's continue the discussion in a single thread.

@k82cn k82cn force-pushed the k82cn:kep_583 branch from 242df45 to f432e93 Jan 3, 2019

@k82cn k82cn force-pushed the k82cn:kep_583 branch from f432e93 to 6d5c099 Jan 3, 2019

@k82cn

This comment has been minimized.

Copy link
Member

k82cn commented Jan 3, 2019

I replied on kubernetes-sigs/kube-batch#533 (review). Let's continue the discussion in a single thread.

Thanks for your reply. I marked Cluster-Autoscaler as out-of-scope in this version; I'll open other PRs when we have alternative solution for it.

@MaciekPytel

This comment has been minimized.

Copy link

MaciekPytel commented Jan 3, 2019

Thanks for your reply. I marked Cluster-Autoscaler as out-of-scope in this version; I'll open other PRs when we have alternative solution for it.

I'm perfectly fine with that as long as the feature lives in kube-batch (which is incompatible with CA anyway). We need to figure out how to make it work with CA if/when we want to move the feature to default scheduler.

@mattfarina
Copy link
Member

mattfarina left a comment

Any chance you could format this following the template?

For example, what would the graduation criteria for this look like?

@k82cn k82cn referenced this pull request Jan 4, 2019

Open

Coscheduling #583

@k82cn k82cn force-pushed the k82cn:kep_583 branch from 6d5c099 to 6849d02 Jan 4, 2019

Coscheduilng.
Signed-off-by: Da K. Ma <klaus1982.cn@gmail.com>

@k82cn k82cn force-pushed the k82cn:kep_583 branch from 6849d02 to 05c57c5 Jan 4, 2019

@k82cn

This comment has been minimized.

Copy link
Member

k82cn commented Jan 4, 2019

Any chance you could format this following the template?

Done :)

@k8s-ci-robot k8s-ci-robot added the lgtm label Jan 7, 2019

@bsalamat
Copy link
Contributor

bsalamat left a comment

/lgtm

More improvements to this design is needed in the area of life-cycle management of pod groups, but those can be added later, given that this design is going to an incubator project for now and won't be integrated into standard components.

@k8s-ci-robot

This comment has been minimized.

Copy link
Contributor

k8s-ci-robot commented Jan 7, 2019

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: bsalamat, k82cn

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@k8s-ci-robot k8s-ci-robot merged commit 830a027 into kubernetes:master Jan 7, 2019

2 checks passed

cla/linuxfoundation k82cn authorized
Details
tide In merge pool.
Details

@k82cn k82cn deleted the k82cn:kep_583 branch Jan 8, 2019

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment