Production-Grade Container Scheduling and Management
Go to file
Kubernetes Submit Queue aacc9729f1 Merge pull request #44781 from wongma7/outervolumespec
Automatic merge from submit-queue (batch tested with PRs 45382, 45384, 44781, 45333, 45543)

Ensure desired state of world populator runs before volume reconstructor

If the kubelet's volumemanager reconstructor for actual state of world runs before the desired state of world has been populated, the pods in the actual state of world will have some incorrect volume information: namely outerVolumeSpecName, which if incorrect leads to part of the issue here https://github.com/kubernetes/kubernetes/issues/43515, because WaitForVolumeAttachAndMount searches the actual state of world with the correct outerVolumeSpecName and won't find it so reports 'timeout waiting....', etc. forever for existing pods. The comments acknowledge that this is a known issue

The all sources ready check doesn't work because the sources being ready doesn't necessarily mean the desired state of world populator added pods from the sources. So instead let's put the all sources ready check in the *populator*, and when the sources are ready, it will be able to populate the desired state of world and make "HasAddedPods()" return true. THEN, the reconstructor may run.

@jingxu97 PTAL, you wrote all of the reconstruction stuff

```release-note
NONE
```
2017-05-10 17:47:43 -07:00
.github
api Merge pull request #44682 from smarterclayton/owners 2017-05-07 12:22:06 -07:00
build Only tag release containers if the name is different. 2017-05-04 18:43:23 -07:00
cluster Merge pull request #45483 from mwielgus/ca0.5.4 2017-05-08 06:21:45 -07:00
cmd Merge pull request #45384 from caesarxuchao/copy-metrics-interanl 2017-05-10 17:47:41 -07:00
docs Merge pull request #44714 from jamiehannaford/unix_user_type 2017-05-05 14:08:17 -07:00
examples Merge pull request #45469 from jianglingxia/jlx-0508 2017-05-09 21:16:26 -07:00
federation Merge pull request #45382 from marun/fed-updater-timeout-per-instance 2017-05-10 17:47:39 -07:00
Godeps Update go-restful dependency 2017-05-05 13:57:01 -07:00
hack Merge pull request #45384 from caesarxuchao/copy-metrics-interanl 2017-05-10 17:47:41 -07:00
hooks
logo
pkg Merge pull request #44781 from wongma7/outervolumespec 2017-05-10 17:47:43 -07:00
plugin Initialize scheduler cache with assigned non-terminated pods before scheduling. 2017-05-10 01:50:38 +08:00
staging Merge pull request #45384 from caesarxuchao/copy-metrics-interanl 2017-05-10 17:47:41 -07:00
test Merge pull request #45307 from yujuhong/mv-docker-client 2017-05-09 20:23:44 -07:00
third_party autogenerated 2017-04-14 10:40:57 -07:00
translations Extract a bunch more strings from kubectl 2017-04-06 20:12:50 -07:00
vendor Update go-restful dependency 2017-05-05 13:57:01 -07:00
.bazelrc
.gazelcfg.json Add go_genrule for zz_generated.openapi.go. 2017-04-25 17:51:36 -07:00
.generated_files
.gitattributes
.gitignore Remove verify_gen_openapi make rule. 2017-04-25 17:41:33 -07:00
BUILD.bazel Rename //:ci-artifacts rule to //:push-build, and add a deprecated alias 2017-05-02 16:48:16 -07:00
CHANGELOG.md Update CHANGELOG.md for v1.6.3. 2017-05-10 10:27:49 -07:00
code-of-conduct.md
CONTRIBUTING.md
labels.yaml Update labels.yaml with sig labels 2017-04-28 14:27:32 -07:00
LICENSE
Makefile skip integration test when run make bazel-test 2017-05-02 14:12:00 -07:00
Makefile.generated_files Remove verify_gen_openapi make rule. 2017-04-25 17:41:33 -07:00
OWNERS
OWNERS_ALIASES Merge pull request #42953 from kargakis/rm-myself 2017-04-03 01:50:58 -07:00
README.md Adjust the link to the right troubleshooting doc page 2017-04-13 08:20:39 +00:00
Vagrantfile
WORKSPACE Update repo-infra dependency to support multiple upload paths 2017-05-03 16:05:15 -07:00

Kubernetes

Submit Queue Widget GoDoc Widget


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

If you are less impatient, 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