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

Listing existing algorithm providers in scheduler #6612

Closed
HaiyangDING opened this issue Apr 9, 2015 · 4 comments
Closed

Listing existing algorithm providers in scheduler #6612

HaiyangDING opened this issue Apr 9, 2015 · 4 comments
Labels
priority/awaiting-more-evidence Lowest priority. Possibly useful, but not yet enough support to actually get it done.

Comments

@HaiyangDING
Copy link

Currently kube-scheduler can not show/list existing algorithm providers. Although there is only one algorithm provider now, listing available algorithm providers will be necessary in future.

@lavalamp lavalamp added kind/enhancement priority/awaiting-more-evidence Lowest priority. Possibly useful, but not yet enough support to actually get it done. labels Apr 9, 2015
@ghost ghost added team/control-plane and removed team/master labels Aug 20, 2015
@jianzhangbjz
Copy link
Contributor

Hi @HaiyangDING Seems based on the latest k8s version, using "kube-scheduler --help" command, still show the only "DefaultProvider" algorithm, not included others, as "ImageLocalityPriority", "NewNodeLabelPriority", etc... How can I add myself algorithm into the "--help" show list?

kube-scheduler --help
--algorithm-provider="DefaultProvider": The scheduling algorithm provider to use, one of: DefaultProvider

@HaiyangDING
Copy link
Author

@jianzhangbjz

Hi, a 'algorithm provider' is essentially a 'set' of scheduling rules (i.e. a set of predicates and prioritizers). Here are my thought based on my understanding of your question.

  1. To include other predicates and/or priorities that already exist in the library, you need to add them as part of the default scheduler's scheduling policy, namely, edit ./plugin/pkg/scheduler/algorithmprovider/defaults/defaults.go. You can take the codes there as an example of how to do this.
  2. To have another algorithm provider other than DefaultProvider, you need to write a new algorithm scheduler package other than package defaults. But be ware, as far as I know, k8s does not support multiple scheduling policies yet, i.e. a pod can not specify which scheduling policy to follow even if you have defined another scheduling policy.

To see more about the modifying the scheduler, please see scheduler and scheduler_algorithm

I hope it helps.

@jianzhangbjz
Copy link
Contributor

@HaiyangDING Thanks! I will have a try according to your advise.

@HaiyangDING
Copy link
Author

BTW, I think it is OK to close it. Closing now.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
priority/awaiting-more-evidence Lowest priority. Possibly useful, but not yet enough support to actually get it done.
Projects
None yet
Development

No branches or pull requests

3 participants