Lightweight Kubernetes
 
 
 
 
Go to file
Kubernetes Submit Queue 4b01601a07
Merge pull request #59363 from yguo0905/sched-config
Automatic merge from submit-queue (batch tested with PRs 59394, 58769, 59423, 59363, 59245). 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>.

kube-scheduler: Use default predicates/prioritizers if they are unspecified in the policy config

**What this PR does / why we need it**:

The scheduler has built-in default sets of predicate/prioritizer that are applied on pod scheduling. It can also take a policy config file where predicate/prioritizer and extender settings can be specified. The current behavior is that if we want to configure an extender using the policy config, we have to also provide the default predicate/prioritizer settings. Otherwise, the empty predicate/prioritizer sets will be used.

This is inconvenient, and it's hard to keep the policy config up to date with the scheduler's defaults. This PR changes the scheduler to use the default predicate/prioritizer sets if they are unspecified in the policy config. But an empty list would bypass non-mandatory predicates/prioritizers.

This will change the behavior of a policy config that does not specify (but not empty list) predicate/prioritizer, but it's unlike someone is using such config in practice.

**Special notes for your reviewer**:

I think it makes sense to have this in 1.9 as well because
- It's safe, given the scope of this change and the fact that it's very unlikely that someone is using a policy config with empty predicates/prioritizers.
- Compared with the risk, asking users to provide the default predicate/prioritizer sets for is error-prone and may cause other issues.

**Release note**:

```release-note
kube-scheduler: Use default predicates/prioritizers if they are unspecified in the policy config
```

/sig scheduling
/assign @bsalamat
/cc @vishh
2018-02-06 21:34:46 -08:00
.github
Godeps Merge pull request #59334 from cblecker/top-dir-owners 2018-02-05 21:14:37 -08:00
api Clarify that ListOptions.Timeout is not conditional on inactivity 2018-02-05 17:04:03 -05:00
build Merge pull request #56937 from redbaron/hyperkube-xfs 2018-02-06 13:11:37 -08:00
cluster Merge pull request #59396 from kwmonroe/bug/opts-before-login 2018-02-06 20:27:42 -08:00
cmd Merge pull request #58769 from pmichali/node-cidr-fix 2018-02-06 21:34:40 -08:00
docs Clarify that ListOptions.Timeout is not conditional on inactivity 2018-02-05 17:04:03 -05:00
examples Remove apiVersion from scheduler extender example configuration 2018-01-18 14:41:53 -08:00
hack Merge pull request #59439 from dims/bump-timeout-for-api-server-for-slower-boxes 2018-02-06 20:27:45 -08:00
logo
pkg Merge pull request #59363 from yguo0905/sched-config 2018-02-06 21:34:46 -08:00
plugin certs: allow cert controller to delete csrs 2018-02-05 14:24:42 -08:00
staging Merge pull request #58562 from MikeSpreitzer/issue-58558 2018-02-06 12:44:23 -08:00
test Merge pull request #59363 from yguo0905/sched-config 2018-02-06 21:34:46 -08:00
third_party Add OWNERS for third_party folder 2018-02-04 21:47:07 -08:00
translations Add OWNERS for translations folder 2018-02-04 23:54:07 -08:00
vendor Merge pull request #59334 from cblecker/top-dir-owners 2018-02-05 21:14:37 -08:00
.bazelrc
.generated_files
.gitattributes Hide generated files only on github 2018-01-22 10:58:48 +01:00
.gitignore
.kazelcfg.json
BUILD.bazel
CHANGELOG-1.2.md
CHANGELOG-1.3.md fix the format for github error 2018-01-31 14:49:29 +08:00
CHANGELOG-1.4.md fix the format for github error 2018-02-02 18:44:27 +08:00
CHANGELOG-1.5.md
CHANGELOG-1.6.md Fix typo 2018-02-01 19:11:19 +08:00
CHANGELOG-1.7.md Update CHANGELOG-1.7.md for v1.7.12. 2017-12-29 13:42:49 +01:00
CHANGELOG-1.8.md CHANGELOG: feature flag is "AdvancedAuditing" not "AdvancedAudit" 2018-01-18 14:19:39 -08:00
CHANGELOG-1.9.md Update CHANGELOG-1.9.md for v1.9.2. 2018-01-18 13:46:38 -06:00
CHANGELOG-1.10.md Update CHANGELOG-1.10.md for v1.10.0-alpha.3. 2018-02-01 16:34:09 -05:00
CHANGELOG.md Update release note links for 1.10 2018-01-17 22:45:12 +01:00
CONTRIBUTING.md
LICENSE
Makefile
Makefile.generated_files
OWNERS
OWNERS_ALIASES Add OWNERS for Godeps and vendor folders 2018-02-04 21:41:12 -08:00
README.md Update README.md with punctuation improvements 2018-01-23 10:16:37 -06:00
SUPPORT.md
WORKSPACE
code-of-conduct.md
labels.yaml

README.md

Kubernetes

Submit Queue Widget GoDoc Widget CII Best Practices


Kubernetes is an open source system for managing containerized applications across multiple hosts; providing basic mechanisms for deployment, maintenance, and scaling of applications.

Kubernetes builds upon a decade and a half of experience at Google running production workloads at scale using a system called Borg, combined with best-of-breed ideas and practices from the community.

Kubernetes is hosted by the Cloud Native Computing Foundation (CNCF). If you are a company that wants to help shape the evolution of technologies that are container-packaged, dynamically-scheduled and microservices-oriented, consider joining the CNCF. For details about who's involved and how Kubernetes plays a role, read the CNCF announcement.


To start using Kubernetes

See our documentation on kubernetes.io.

Try our interactive tutorial.

Take a free course on Scalable Microservices with Kubernetes.

To start developing Kubernetes

The community repository hosts all information about building Kubernetes from source, how to contribute code and documentation, who to contact about what, etc.

If you want to build Kubernetes right away there are two options:

You have a working Go environment.
$ go get -d k8s.io/kubernetes
$ cd $GOPATH/src/k8s.io/kubernetes
$ make
You have a working Docker environment.
$ git clone https://github.com/kubernetes/kubernetes
$ cd kubernetes
$ make quick-release

For the full story, head over to the developer's documentation.

Support

If you need support, start with the troubleshooting guide, and work your way through the process that we've outlined.

That said, if you have questions, reach out to us one way or another.

Analytics