Commit Graph

43865 Commits (2509ab0c7a5ceb140166ee33b288dabab7aa69e7)

Author SHA1 Message Date
Kubernetes Submit Queue 2509ab0c7a Merge pull request #41416 from smarterclayton/error_panic
Automatic merge from submit-queue (batch tested with PRs 41466, 41456, 41550, 41238, 41416)

Don't use json.Marshal when printing error bodies

Internal types panic when json.Marshal is called to prevent accidental
use.

Fixes #40491
2017-02-16 10:14:12 -08:00
Kubernetes Submit Queue a260db06aa Merge pull request #41238 from xilabao/add-check-to-authorization-config
Automatic merge from submit-queue (batch tested with PRs 41466, 41456, 41550, 41238, 41416)

add check to authorization config

Prompt user to create the config when using abac/webhook.
2017-02-16 10:14:10 -08:00
Kubernetes Submit Queue b05e500485 Merge pull request #41550 from kubernetes/revert-40798-fewer_endpoints_in_load_test
Automatic merge from submit-queue (batch tested with PRs 41466, 41456, 41550, 41238, 41416)

Revert "Modify load test to not create too may services/endpoints"

Reverts kubernetes/kubernetes#40798

We seem to be ready to go for it now.
2017-02-16 10:14:07 -08:00
Kubernetes Submit Queue 3c606cdd20 Merge pull request #41456 from dashpole/pod_volume_cleanup
Automatic merge from submit-queue (batch tested with PRs 41466, 41456, 41550, 41238, 41416)

Delay Deletion of a Pod until volumes are cleaned up

#41436 fixed the bug that caused #41095 and #40239 to have to be reverted.  Now that the bug is fixed, this shouldn't cause problems.

 @vishh @derekwaynecarr @sjenning @jingxu97 @kubernetes/sig-storage-misc
2017-02-16 10:14:05 -08:00
Kubernetes Submit Queue e157e5222b Merge pull request #41466 from sttts/sttts-deepcopy-test
Automatic merge from submit-queue

pkg/api/testing: add deepcopy smoke test to roundtrip test

Fixes https://github.com/kubernetes/kubernetes/issues/41438.
2017-02-16 10:09:44 -08:00
Kubernetes Submit Queue 30e8953fad Merge pull request #41564 from Crassirostris/fluentd-gcp-plugin-version-bump
Automatic merge from submit-queue

Bump fluentd-gcp google_cloud plugin version

Bump the version of `fluent-plugin-google-cloud` in fluentd-gcp image, because it's broken for version `0.5.2`.

Recently, gem `google-api-client` was updated to version `0.10.0`. The new version broke `fluent-plugin-google-cloud` which doesn't specify the upper version of `google-api-client` gem. I'm bumping the version used in our image to allow future changes in this release to be run and tested.

This PR doesn't bump the version, since no effective changes has happened, leaving this for the next PR to do.

CC @igorpeshansky
2017-02-16 09:20:12 -08:00
Kubernetes Submit Queue f07112f78a Merge pull request #41461 from humblec/humble-reviewer
Automatic merge from submit-queue

Updating reviewer list.
2017-02-16 08:33:12 -08:00
Mik Vyatskov e8de31623f Bump fluentd-gcp google_cloud plugin version 2017-02-16 16:49:16 +01:00
Shyam JVS 7d4383c6e1 Merge pull request #41558 from kubernetes/revert-40000-storage-ga-remove-alpha
Revert "Remove alpha provisioning"
2017-02-16 15:54:05 +01:00
Shyam JVS 2ed7acfbcc Revert "Remove alpha provisioning" 2017-02-16 13:53:55 +01:00
Kubernetes Submit Queue 8ecc256e88 Merge pull request #41014 from gmarek/promote_helpers
Automatic merge from submit-queue

Promote taint helpers from e2e/framework to util/taints

cc @kevin-wangzefeng
2017-02-16 02:43:27 -08:00
Wojciech Tyczynski e5277864e8 Revert "Modify load test to not create too may services/endpoints" 2017-02-16 11:30:22 +01:00
xilabao 60dfa6c9d7 add check to authorization config 2017-02-16 18:10:26 +08:00
Kubernetes Submit Queue 8c1313913f Merge pull request #41533 from tonglil/ingress-typos
Automatic merge from submit-queue

Ingress e2e typos

**What this PR does / why we need it**: fix typos in e2e test

**Special notes for your reviewer**: none

**Release note**:
```release-note
NONE
```
2017-02-16 01:52:29 -08:00
Kubernetes Submit Queue 627c6ce2b8 Merge pull request #41489 from Crassirostris/fluentd-add-toleration
Automatic merge from submit-queue (batch tested with PRs 40000, 41508, 41489)

Add toleration to fluentd daemonset to make it run on master

Because of https://github.com/kubernetes/kubernetes/pull/41172 fluentd pods stopped being allocated on master node.

This PR introduces toleration for master taint for fluentd.

CC @davidopp @janetkuo @kubernetes/sig-scheduling-bugs

Unfortunately, we don't have e2e tests to ensure that master logs are being ingested. This problem is a great signal to work on https://github.com/kubernetes/kubernetes/issues/41411
2017-02-16 01:52:08 -08:00
Kubernetes Submit Queue 5ff9a72ea0 Merge pull request #41508 from Crassirostris/fluentd-dns-problem-fix
Automatic merge from submit-queue (batch tested with PRs 40000, 41508, 41489)

Make fluentd use default dns instead of cluster dns to make it work o…

Fix https://github.com/kubernetes/kubernetes/issues/41415

Fluentd for Stackdriver requires external urls (e.g. `logging.googleapis.com`) to be available in order to work. If fluentd runs on master, it cannot access the service endpoint of cluster DNS. This change makes fluentd use default dns to fix this problem.

CC @thockin @bowei
2017-02-16 01:52:06 -08:00
Dr. Stefan Schimanski 3a963b0da5 pkg/api/testing: add deepcopy smoke test to roundtrip test 2017-02-16 10:19:42 +01:00
Kubernetes Submit Queue 8faa9b5d4e Merge pull request #40000 from jsafrane/storage-ga-remove-alpha
Automatic merge from submit-queue

Remove alpha provisioning

This is the first part of https://github.com/kubernetes/features/issues/36

@kubernetes/sig-storage-misc 

**Release note**:
```release-note
Alpha version of dynamic volume provisioning is removed in this release. Annotation
"volume.alpha.kubernetes.io/storage-class" does not have any special meaning. A default storage class
and  DefaultStorageClass admission plugin can be used to preserve similar behavior of Kubernetes cluster,
see https://kubernetes.io/docs/user-guide/persistent-volumes/#class-1 for details.
```
2017-02-16 01:02:06 -08:00
gmarek 6b20bb790f generated 2017-02-16 09:25:27 +01:00
gmarek e1e4370ecd Promote taint addition/removal to api/v1/helpers.go 2017-02-16 09:25:27 +01:00
Kubernetes Submit Queue df4e69bb3b Merge pull request #36718 from k82cn/filed_err_msg
Automatic merge from submit-queue

Replace raw string with const var.

Replace raw string with const string var.
2017-02-16 00:12:15 -08:00
Kubernetes Submit Queue 11bf535e03 Merge pull request #41434 from freehan/cri-kubenet-error
Automatic merge from submit-queue (batch tested with PRs 41531, 40417, 41434)

[CRI] beef up network teardown in  StopPodSandbox

1. Added CheckpointNotFound error to allow dockershim to conduct error handling
2. Retry network teardown if failed

ref: https://github.com/kubernetes/kubernetes/issues/41225
2017-02-15 23:01:09 -08:00
Kubernetes Submit Queue ddf4a0cad5 Merge pull request #40417 from jsravn/fix-reconciler-external-updates-race
Automatic merge from submit-queue (batch tested with PRs 41531, 40417, 41434)

Always detach volumes in operator executor

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

Instead of marking a volume as detached immediately in Kubelet's
reconciler, delegate the marking asynchronously to the operator
executor. This is necessary to prevent race conditions with other
operations mutating the same volume state.

An example of one such problem:

1. pod is created, volume is added to desired state of the world
2. reconciler process starts
3. reconciler starts MountVolume, which is kicked off asynchronously via
   operation_executor.go
4. MountVolume mounts the volume, but hasn't yet marked it as mounted
5. pod is deleted, volume is removed from desired state of the world
6. reconciler reaches detach volume section, detects volume is no longer in desired state of world,
   removes it from volumes in use
7. MountVolume tries to mark mount, throws an error because
   volume is no longer in actual state of world list. After this, kubelet isn't aware of the mount
   so doesn't try to unmount again.
8. controller-manager tries to detach the volume, this fails because it
   is still mounted to the OS.
9. EBS gets stuck indefinitely in busy state trying to detach.



**Which issue this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close that issue when PR gets merged)*: fixes #32881, fixes ##37854 (maybe)

**Special notes for your reviewer**:

**Release note**:

```release-note
```
2017-02-15 23:01:07 -08:00
Kubernetes Submit Queue 9d9632ad88 Merge pull request #41531 from kubernetes/node-binaries-1.5.3-changelog
Automatic merge from submit-queue

Add node binaries to 1.5.3 ChangeLog

`-node-` binaries are published with the release, but links were not included in the release notes. This PR adds the links.
2017-02-15 22:25:54 -08:00
Kubernetes Submit Queue 2a7c50add6 Merge pull request #41311 from gmarek/taints-comments
Automatic merge from submit-queue

Apply davidopps comments to TaintController PR

Fix #41318

cc @timothysc @kevin-wangzefeng
2017-02-15 21:38:09 -08:00
Tony Li fb3744e98a fix missing package in commented out code 2017-02-15 21:03:20 -08:00
Tony Li 9399a9a0e8 typo 2017-02-15 21:03:08 -08:00
Kubernetes Submit Queue 84bab780d6 Merge pull request #41425 from ncdc/shared-informers-10-serviceaccount
Automatic merge from submit-queue

Switch serviceaccounts controller to generated shared informers

Originally part of #40097 

cc @deads2k @sttts @liggitt @smarterclayton @gmarek @wojtek-t @timothysc @kubernetes/sig-scalability-pr-reviews
2017-02-15 20:54:17 -08:00
Saad Ali 42533f37d1 Add node binaries to 1.5.3 ChangeLog 2017-02-15 20:47:44 -08:00
Kubernetes Submit Queue 97212f5b3a Merge pull request #37953 from liggitt/automount
Automatic merge from submit-queue (batch tested with PRs 37137, 41506, 41239, 41511, 37953)

Add field to control service account token automounting

Fixes https://github.com/kubernetes/kubernetes/issues/16779

* adds an `automountServiceAccountToken *bool` field to `ServiceAccount` and `PodSpec`
* if set in both the service account and pod, the pod wins
* if unset in both the service account and pod, we automount for backwards compatibility

```release-note
An `automountServiceAccountToken *bool` field was added to ServiceAccount and PodSpec objects. If set to `false` on a pod spec, no service account token is automounted in the pod. If set to `false` on a service account, no service account token is automounted for that service account unless explicitly overridden in the pod spec.
```
2017-02-15 20:05:13 -08:00
Kubernetes Submit Queue b188cb1e8e Merge pull request #41511 from tonglil/typos
Automatic merge from submit-queue (batch tested with PRs 37137, 41506, 41239, 41511, 37953)

Fix typos in e2e

**What this PR does / why we need it**: fix typos in e2e test

**Special notes for your reviewer**: none

**Release note**:

```release-note
NONE
```
2017-02-15 20:05:11 -08:00
Kubernetes Submit Queue 6823803772 Merge pull request #41239 from vmware/e2eTestsUpdate-v2
Automatic merge from submit-queue (batch tested with PRs 37137, 41506, 41239, 41511, 37953)

e2e test for storage class diskformat verification for vsphere cloud provider

**What this PR does / why we need it**:
This PR adds a new e2e test for vsphere cloud provider.
Test is to verify diskformat specified in storage-class is being honored while volume creation.

Steps:

1. Create StorageClass with diskformat set to valid type (supported options are `eagerzeroedthick`, `zeroedthick` and `thin`)
2. Create PVC which uses the StorageClass created in step 1.
3. Wait for PV to be provisioned.
4. Wait for PVC's status to become Bound
5. Create POD using PVC on specific node.
6. Wait for Disk to be attached to the node.
7. Get node VM's devices and find PV's Volume Disk.
8. Get Backing Info of the Volume Disk and obtain Property of `VirtualDiskFlatVer2BackingInfo` - `EagerlyScrub` and `ThinProvisioned`
9. Based on the value of `EagerlyScrub` and `ThinProvisioned`, verify if diskformat is correct.
10. Delete POD and Wait for Volume Disk to be detached from the Node.
11. Delete PVC, PV and Storage Class



**Which issue this PR fixes** *
fixes #

**Special notes for your reviewer**:
Test is executed against v1.6.0-alpha.1
Test is failing on v1.4.8

**Release Note**
```release-note
NONE
```
@kerneltime @BaluDontu @abrarshivani please review this PR
2017-02-15 20:05:09 -08:00
Kubernetes Submit Queue fcd7c3f000 Merge pull request #41506 from shyamjvs/fix-kubemark-rbac
Automatic merge from submit-queue (batch tested with PRs 37137, 41506, 41239, 41511, 37953)

Bump addon-manager version to v6.4-alpha.1 in kubemark

Fixes https://github.com/kubernetes/kubernetes/issues/41493

cc @wojtek-t @liggitt
2017-02-15 20:05:07 -08:00
Kubernetes Submit Queue 28123f959c Merge pull request #37137 from ingvagabund/stop-controller-when-the-stop-channel-is-closed
Automatic merge from submit-queue

Stop controller when the stop channel is closed (when queue is empty and Pop is hanging)

Fixes: #28158

When a ``Pop`` function is invoked over empty queue, the control loop inside the functions is stacked indefinitely. In order to break the loop, introduce logic that waits for a signal to exit the loop.

Intention of the PR is not to handle situation where manipulation operations are invoked over closed queue. Intention is to break the indefinite loop.
2017-02-15 19:35:48 -08:00
Kubernetes Submit Queue ce144e1ebb Merge pull request #41490 from gmarek/empty
Automatic merge from submit-queue

Empty test starts a single Pod
2017-02-15 18:05:12 -08:00
Kubernetes Submit Queue 148155f8b8 Merge pull request #41452 from yujuhong/rename_flag
Automatic merge from submit-queue

Change node e2e cri-validation configs

Copy the configs to a new directory to test non-cri implementation. We can
remove the original directory after the dependent PRs are merged.
2017-02-15 17:16:19 -08:00
Kubernetes Submit Queue c478d72827 Merge pull request #41502 from luxas/kubeadm_bump_limit
Automatic merge from submit-queue (batch tested with PRs 41104, 41245, 40722, 41439, 41502)

Bump the minimum kubeadm control plane version to v1.6.0-alpha.2

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

There went in quite a lot of useful features into v1.6.0-alpha.2 that kubeadm will use.
This bump the minimum limit so we can depend on those features.

**Which issue this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close that issue when PR gets merged)*: fixes #

**Special notes for your reviewer**:

**Release note**:

```release-note
NONE
```
@mikedanese @errordeveloper @pires @dmmcquay @dgoodwin
2017-02-15 16:28:12 -08:00
Kubernetes Submit Queue 92360ffc5f Merge pull request #41439 from deads2k/apiserver-12-sample-fuzz
Automatic merge from submit-queue (batch tested with PRs 41104, 41245, 40722, 41439, 41502)

add sample fuzzing tests

Make fuzzing tests as simple as possible from both the API installer and the scheme, so its easy to add for api groups and so that I can build a scheme and then make sure I got it right.

@kubernetes/sig-api-machinery-pr-reviews @sttts @mikedanese
2017-02-15 16:28:11 -08:00
Kubernetes Submit Queue 01393e34d6 Merge pull request #40722 from micmro/40721
Automatic merge from submit-queue (batch tested with PRs 41104, 41245, 40722, 41439, 41502)

openstack-heat: do not daemonize salt-minion

_openstack-heat_ does currently not setup a _salt-master_, so it is not necessary to  daemonize it.

**What this PR does / why we need it**:
as stated in #40721:

> The _openstack-heat_ provider only installs _salt-minions_, no _salt-master_. The configuration does not take this into account which causes the following issues:
> 
> - the _salt minion_ is not able to DNS resolve `salt` (see fist part of error log below)
> - the _salt-minion_ is daemonized and fails finding the master (second part of error log below). From my understanding is not required when there is no salt-master, as the setup uses `salt-call` 
> anyway (see [gce provider](https://github.com/kubernetes/kubernetes/blob/master/cluster/gce/configure-vm.sh#L328-L339) as reference).
> 
> ```
> Jan 31 03:00:04 kube-stack-master salt-minion[9795]: [ERROR   ] DNS lookup of 'salt' failed.
> Jan 31 03:00:04 kube-stack-master salt-minion[9795]: [ERROR   ] Master hostname: 'salt' not found. Retrying in 30 seconds
> ...
> Jan 31 02:35:30 kube-stack-master salt-minion[9690]: [ERROR   ] Error while bringing up minion for multi-master. Is master at salt responding?
> ```
> 

**Which issue this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close that issue when PR gets merged)*: fixes #40721

**Release note**:
```release-note
Do not daemonize `salt-minion` for the openstack-heat provider.
```
2017-02-15 16:28:09 -08:00
Kubernetes Submit Queue e62866444f Merge pull request #41245 from wojtek-t/rollback_2_2_1
Automatic merge from submit-queue (batch tested with PRs 41104, 41245, 40722, 41439, 41502)

Change the etcd rollback tool to do rollback to 2.2.1 version.

I did some tests of it and for my 3-node cluster with 1 deployment it worked fine.

But before merging this, we should probably do way more testing (we should rerun tests that @mml was doing for the previous script).

@lavalamp @xiang90
2017-02-15 16:28:08 -08:00
Kubernetes Submit Queue d60d8a7b92 Merge pull request #41104 from apprenda/kubeadm_client-go_move
Automatic merge from submit-queue

kubeadm: Migrate to client-go

**What this PR does / why we need it**: Finish the migration for kubeadm to use client-go wherever possible

**Which issue this PR fixes**: fixes #https://github.com/kubernetes/kubeadm/issues/52

**Special notes for your reviewer**: /cc @luxas @pires 

**Release note**:
```release-note
NONE
```
2017-02-15 16:01:22 -08:00
Kubernetes Submit Queue a1afc024cb Merge pull request #34931 from nhlfr/cadvisor-container-info-table
Automatic merge from submit-queue

kubelet: Make cadvisor GetContainerInfo tests table driven
2017-02-15 15:14:28 -08:00
Kubernetes Submit Queue e73e25422f Merge pull request #40907 from cblecker/clientgo-pem-functions
Automatic merge from submit-queue

Move private key parsing from serviceaccount/jwt.go to client-go/util/cert

**What this PR does / why we need it**:
Unify private key parsing from serviceaccount/jwt.go into the client-go library.

**Which issue this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close that issue when PR gets merged)*:
Partial fix to #40807 - only private key functions.

**Special notes for your reviewer**:

**Release note**:

```release-note
Move private key parsing from serviceaccount/jwt.go to client-go/util/cert
```
2017-02-15 14:26:34 -08:00
Derek McQuay 70e7d64b46 kubeadm: moved import to client-go, where possible
Some imports dont exist yet (or so it seems) in client-go (examples
being:

  - "k8s.io/kubernetes/pkg/api/validation"
  - "k8s.io/kubernetes/pkg/util/initsystem"
  - "k8s.io/kubernetes/pkg/util/node"

one change in kubelet to import to client-go
2017-02-15 13:06:15 -08:00
Jordan Liggitt 0c9fd4fbe7
generated files 2017-02-15 16:04:10 -05:00
Jordan Liggitt 0d6e877de2
Add automountServiceAccountToken field to PodSpec and ServiceAccount types 2017-02-15 16:04:09 -05:00
Kubernetes Submit Queue 1fc1e5efb5 Merge pull request #41395 from gmarek/owners
Automatic merge from submit-queue

Add gmarek and jszczepkowski to cluster/gce owners

cc @mikedanese @zmerlynn @roberthbailey
2017-02-15 12:45:39 -08:00
Kubernetes Submit Queue 3bc575c91f Merge pull request #33550 from rtreffer/kubelet-allow-multiple-dns-server
Automatic merge from submit-queue

Allow multipe DNS servers as comma-seperated argument for kubelet --dns

This PR explores how kubectls "--dns" could be extended to specify multiple DNS servers for in-cluster PODs. Testing on the local libvirt-coreos cluster shows that multiple DNS server are injected without issues.

Specifying multiple DNS servers increases resilience against
- Packet drops
- Single server failure

I am debugging services that do 50+ DNS requests for a single incoming interactive request, thus highly increase the chance of a slowdown (+5s) due to a single packet drop. Switching to two DNS servers will reduce the impact of the issues (roughly +1s on glibc, 0s on musl, error-rate goes down to error-rate^2).

Note that there is no need to change any runtime related code as far as I know. In the case of "default" dns the /etc/resolv.conf is parsed and multiple DNS server are send to the backend anyway. This only adds the same capability for the clusterFirst case.

I've heard from @thockin that multiple DNS entries are somehow considered. I've no idea what was considered, though. This is what I would like to see for our production use, though.

```release-note
NONE
```
2017-02-15 12:45:32 -08:00
Clayton Coleman 45ec4e1151
Don't use json.Marshal when printing error bodies
Internal types panic when json.Marshal is called to prevent accidental
use.
2017-02-15 15:44:56 -05:00
Tony Li fdb861ed86 fix typos 2017-02-15 12:27:35 -08:00