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

Write a guide to writing a new scheduler #17208

Closed
davidopp opened this issue Nov 13, 2015 · 17 comments
Closed

Write a guide to writing a new scheduler #17208

davidopp opened this issue Nov 13, 2015 · 17 comments
Assignees
Labels
priority/backlog Higher priority than priority/awaiting-more-evidence. sig/scheduling Categorizes an issue or PR as relevant to SIG Scheduling.

Comments

@davidopp
Copy link
Member

Once we make it possible for people to write new schedulers (#11793), we should write some guidelines/best practices for things people should do when they write a new scheduler. For example

We should probably also write a guide to how to write a new controller, which might have some overlap with a guide on how to write a new scheduler. We already have a very thorough guide to adding new API resources
https://github.com/kubernetes/kubernetes/blob/master/docs/devel/api_changes.md

@lavalamp

@davidopp davidopp added priority/backlog Higher priority than priority/awaiting-more-evidence. team/control-plane labels Nov 13, 2015
@HaiyangDING
Copy link

+1 for this doc.

@lavalamp
Copy link
Member

Scheduler is an "initializer", in that it sets a field under .spec after an object has been created. Controllers, by contrast, act on other objects, potentially updating the status periodically.

Both share use of watches--possibly over multiple resource types--they're basically the same other than the action(s) they perform.

So I agree that they should probably be covered in the same doc. Our current controllers are possibly slightly more advanced than our scheduler.

@davidopp
Copy link
Member Author

davidopp commented Dec 9, 2015

@jdef I just remembered this issue; it's related to your suggestion at the scheduling SIG meeting to have something like a conformance test for new schedulers. We should probably just use this issue.

Just for posterity, the three things we discussed at the meeting were

@jdef
Copy link
Contributor

jdef commented Dec 9, 2015

Thanks for passing this along, David, as well as for summarizing the
discussion points from the SIG meeting.

On Wed, Dec 9, 2015 at 1:57 AM, David Oppenheimer notifications@github.com
wrote:

@jdef https://github.com/jdef I just remembered this issue; it's
related to your suggestion at the scheduling SIG meeting to have something
like a conformance test for new schedulers. We should probably just use
this issue.

Just for posterity, the three things we discussed at the meeting were


Reply to this email directly or view it on GitHub
#17208 (comment)
.

@jdef
Copy link
Contributor

jdef commented Dec 9, 2015

/cc @timstclair I believe that you wanted to be copied on this

@timstclair
Copy link

@timothysc

@timothysc
Copy link
Member

I'm guessing we're going to want to write an sdk library + documentation. Writing docs against the api itself for a scheduler will be error prone due to the constant subtle shifts in semantics.

@timothysc
Copy link
Member

@davidopp are there work items we can complete as part of the 1.6 docs effort?

@davidopp
Copy link
Member Author

I think our time would be better spent documenting how the default scheduler works. People who want to write their own scheduler will probably just copy the default scheduler and replace whatever parts they want to replace. So what they need is to understand how the default scheduler is structured, moreso than a "guide" to writing a new one.

@timothysc timothysc modified the milestones: next-candidate, v1.6 Dec 12, 2016
@Yancey1989
Copy link
Contributor

@davidopp +1

@spzala
Copy link
Member

spzala commented Jun 14, 2017

@davidopp hi David, since this seems a pure doc issue, should we close it here and open one against kubernetes.github.io to make it better visible to Doc team? - just a thought. Thanks!

@timothysc
Copy link
Member

timothysc commented Jun 14, 2017

@spzala I'm ok with it. Could you open a docs issue and cross link to this one please.

@spzala
Copy link
Member

spzala commented Jul 26, 2017

@timothysc very sorry, totally missed your comment earlier, and yes absolutely. Thanks!!

@davidopp
Copy link
Member Author

sure

@spzala
Copy link
Member

spzala commented Jul 26, 2017

@davidopp @timothysc Hi, I have created this doc issue kubernetes/website#4517 - hope it makes sense? Thanks!

@spzala
Copy link
Member

spzala commented Oct 25, 2017

@davidopp @timothysc Hi, just a gentle reminder :-) that per our earlier discussion can you close this issue as doc issue is opened to cover it now - kubernetes/website#4517 ? Thanks!

@spzala
Copy link
Member

spzala commented Oct 29, 2017

@davidopp Thanks !!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
priority/backlog Higher priority than priority/awaiting-more-evidence. sig/scheduling Categorizes an issue or PR as relevant to SIG Scheduling.
Projects
None yet
Development

No branches or pull requests

8 participants