Commit Graph

23195 Commits

Author SHA1 Message Date
Kubernetes Submit Queue
d6fd997d44 Merge pull request #41530 from bruceauyeung/k8s-branch-do-not-use-underscores-in-go-variable-names
Automatic merge from submit-queue

rename variables to make sure that they conform to golang variable name conventions

rename variables to make sure that they conform to golang variable name conventions

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

there are lots of package level unexported variables in package `cmd` not conforming golang variable name conventions, such as `version_example`, in this PR i rename all of them to make sure that they conform to golang variable name conventions
2017-04-28 09:28:13 -07:00
Clayton Coleman
49209b3394 Make timeouts in the Kubelet slightly offset to aid debugging
Several of these loops overlap, and when they are the reason a failure
is happening it is difficult to sort them out. Slighly misalign these
loops to make their impact obvious.
2017-04-28 12:00:28 -04:00
Dr. Stefan Schimanski
64aec01ac9 taint-controller-tests: double 'a bit of time' to avoid flakes 2017-04-28 17:42:35 +02:00
deads2k
afc5ae1539 generated 2017-04-28 11:28:37 -04:00
ravisantoshgudimetla
081ba02fa5 Changes to kubectl taint to respect selector flag 2017-04-28 10:28:26 -04:00
zhangxiaoyu-zidif
026638af51 stateful_pod_control.go: format the code 2017-04-28 18:16:19 +08:00
Kubernetes Submit Queue
9afeabb642 Merge pull request #43477 from gnufied/cloudprovider-aws-metrics
Automatic merge from submit-queue

Start recording cloud provider metrics for AWS

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

This PR implements support for emitting metrics from AWS about storage operations.

**Which issue this PR fixes** 

Fixes https://github.com/kubernetes/features/issues/182

**Release note**:
```
Add support for emitting metrics from AWS cloudprovider about storage operations.
```
2017-04-28 01:35:17 -07:00
Wojciech Tyczynski
eb6949a53e Change locking mechanism in kube-proxy 2017-04-28 09:40:39 +02:00
Kubernetes Submit Queue
19795ea7c3 Merge pull request #45042 from wongma7/attaching-log
Automatic merge from submit-queue

Log node name when error attaching volume

Helps with debugging to know immediately which node the volume failed to atach to. Went through all plugins, added this to 3. @gnufied
```release-note
NONE
```
2017-04-27 23:04:05 -07:00
Haoran Wang
b6aadd2b7e Handle maxUnavailable larger than spec.replicas 2017-04-28 13:32:24 +08:00
Fabiano Franz
2158473474 Plugins are loaded under the 'kubectl plugin' command 2017-04-28 01:34:07 -03:00
Fabiano Franz
2b178ad608 Basic support for kubectl plugins 2017-04-28 01:34:07 -03:00
xiangpengzhao
db97cba291 Fix nil pointer issue when making mounts for container 2017-04-28 11:41:39 +08:00
Kubernetes Submit Queue
acca01bcc2 Merge pull request #44939 from sjenning/adjust-logging
Automatic merge from submit-queue

don't HandleError on container start failure

Failing to start containers is a common error case if there is something wrong with the container image or environment like missing mounts/configs/permissions/etc.  Not only is it common; it is reoccurring as backoff happens and new attempts to start the container are made.  `HandleError` it too verbose for this very common situation.

Replace `HandleError` with `glog.V(3).Infof`

xref https://github.com/openshift/origin/issues/13889

@smarterclayton @derekwaynecarr @eparis
2017-04-27 19:36:23 -07:00
Kubernetes Submit Queue
b2d714a7ca Merge pull request #44888 from caesarxuchao/clean-deepcopy-init
Automatic merge from submit-queue

Prepare for move zz_generated_deepcopy.go to k8s.io/api

This is in preparation to move deep copies to with the types to the types repo (see https://github.com/kubernetes/gengo/pull/47#issuecomment-296855818). The init() function is referring the `SchemeBuilder` defined in the register.go in the same packge, so we need to revert the dependency.

This PR depends on https://github.com/kubernetes/gengo/pull/49, otherwise verification will fail.
2017-04-27 18:48:28 -07:00
Kubernetes Submit Queue
8efb5c9957 Merge pull request #44983 from caesarxuchao/easy-remove-client-go-api-scheme
Automatic merge from submit-queue (batch tested with PRs 45052, 44983, 41254)

Non-controversial part of #44523

For easier review of #44523, i extracted the non-controversial part out to this PR.
2017-04-27 17:14:04 -07:00
divyenpatel
821f8cd9b9 datastore cluster support
fix verify-gofmt failure
2017-04-27 17:12:45 -07:00
Chao Xu
d0b94538b9 make it possible to move SchemeBuilder with zz_generated.deepcopy.go 2017-04-27 16:57:29 -07:00
Lee Verberne
d22dd0fa35 Implement shared PID namespace in the dockershim 2017-04-27 23:43:53 +00:00
Kubernetes Submit Queue
09747e6bee Merge pull request #44510 from bowei/gce-metrics
Automatic merge from submit-queue (batch tested with PRs 44124, 44510)

Add metrics to all major gce operations (latency, errors)

```release-note
Add metrics to all major gce operations {latency, errors}

The new metrics are:

  cloudprovider_gce_api_request_duration_seconds{request, region, zone}
  cloudprovider_gce_api_request_errors{request, region, zone}
 
`request` is the specific function that is used.
`region` is the target region (Will be "<n/a>" if not applicable)
`zone` is the target zone (Will be "<n/a>" if not applicable)

Note: this fixes some issues with the previous implementation of
metrics for disks:
- Time duration tracked was of the initial API call, not the entire
  operation.
- Metrics label tuple would have resulted in many independent
  histograms stored, one for each disk. (Did not aggregate well).
```
2017-04-27 16:14:58 -07:00
Kubernetes Submit Queue
684df6e421 Merge pull request #44124 from vmware/VSANPolicySupportPVCScaleCreationFix
Automatic merge from submit-queue (batch tested with PRs 44124, 44510)

Optimize the time taken to create Persistent volumes with VSAN storage capabilities at scale and handle VPXD crashes

Currently creating persistent volumes with VSAN storage capabilities at scale is taking very large amount of time. We have tested at the scale of 500-600 PVC's and its more time for all the PVC requests to go from Pending state to Bound state. 

- In our current design we use a single systemVM - "kubernetes-helper-vm" as a means to create a persistent volume with the VSAN policy configured. 

- Since all the operations are on a single system VM, all requests on scale get queued and executed serially on this system VM. Because of this creating a high number of PVC's is taking very large time.

- Since its a single system VM, all parallel PVC requests most of the time tend to take the same SCSI adapter on the system VM and also same unit number on the SCSI adapter. Therefore the error rate is high.

Inorder to overcome these issues and to optimize the time taken to create persistent volumes with VSAN storage capabilities at scale we have slightly modified the design which is described below:

- In this model, we create a VM on the fly for every persistent volume that is being created. Since all the reconfigure operations to create a disk with the VSAN policy configured are on their individual VM's, all of these PVC's request execute in parallel independent one other.

- With this new design, there will no error rate at all.

Also, we have overcome the problem of vpxd crashes and any other intermediate problems by checking type of the errors.

Fixes https://github.com/vmware/kubernetes/issues/122, https://github.com/vmware/kubernetes/issues/124

@kerneltime  @tusharnt @divyenpatel @pdhamdhere

**Release note**:

```release-note
None
```
2017-04-27 16:14:56 -07:00
ravisantoshgudimetla
39403f3aca Clean up for qos 2017-04-27 19:06:10 -04:00
Kubernetes Submit Queue
8b9625d2ea Merge pull request #41627 from gyliu513/kubelet-types
Automatic merge from submit-queue (batch tested with PRs 42740, 44980, 45039, 41627, 45044)

Improved code coverage for /pkg/kubelet/types

**What this PR does / why we need it**:
The test coverage for /pkg/kubelet/types was increased from 50% to 87.5%

**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
```
2017-04-27 13:27:06 -07:00
Bowei Du
ee847ebf8a Add metrics to all major gce operations {latency, errors}
The new metrics is:

  cloudprovider_gce_api_request_duration_seconds{request, region, zone}
  cloudprovider_gce_api_request_errors{request, region, zone}

`request` is the specific function that is used.
`region` is the target region (Will be "<n/a>" if not applicable)
`zone` is the target zone (Will be "<n/a>" if not applicable)

Note: this fixes some issues with the previous implementation of
metrics for disks:
- Time duration tracked was of the initial API call, not the entire
  operation.
- Metrics label tuple would have resulted in many independent
  histograms stored, one for each disk. (Did not aggregate well).
2017-04-27 12:49:30 -07:00
Hemant Kumar
f2aa330a38 Start recording cloud provider metrics for AWS
Lets start recording storage metrics for AWS.
2017-04-27 15:26:32 -04:00
Kubernetes Submit Queue
6251ff47c3 Merge pull request #44929 from liggitt/proxy-subresource-patch
Automatic merge from submit-queue (batch tested with PRs 41106, 44346, 44929, 44979, 45027)

Add PATCH to supported list of proxy subresource verbs

Follow up to #41421 for the proxy subresources

```release-note
The proxy subresource APIs for nodes, services, and pods now support the HTTP PATCH method.
```
2017-04-27 12:11:03 -07:00
Kubernetes Submit Queue
98398d5d6e Merge pull request #41106 from spxtr/gen3
Automatic merge from submit-queue

Don't check in zz_generated.openapi.go.

`zz_generated.openapi.go` is the file that causes the most merge conflicts of all. In #33440, @thockin updated the makefile to support generating these files on demand, but that didn't play well with bazel/gazel.

In this PR, I add a new build macro that will generate this file with a `go_genrule`. I added support for keeping the BUILD file up to date in mikedanese/gazel#34.

**Release note**:
```release-note
NONE
```
2017-04-27 11:40:31 -07:00
Matthew Wong
c8278a8ac5 Log node name when error attaching volume 2017-04-27 13:58:38 -04:00
Chao Xu
958903509c bazel 2017-04-27 09:41:53 -07:00
Chao Xu
3fa7b7824a easy changes 2017-04-27 09:41:53 -07:00
Andrew Pilloud
166a0e440d resolv.conf nameserver line has only one entry 2017-04-27 09:23:04 -07:00
Kubernetes Submit Queue
dc92a6fcc7 Merge pull request #44996 from liggitt/token-test
Automatic merge from submit-queue

Update token controller test to test async retry

Fixes #44819

https://github.com/kubernetes/kubernetes/pull/44625 changed the token controller to queue a retry if the live service account's resourceVersion did not match our cache.

This updates the unit test that was testing that condition to test async queue behavior (which this condition now drives)
2017-04-27 08:39:04 -07:00
Jordan Liggitt
3f4ded12be Add PATCH to supported list of proxy subresource verbs 2017-04-27 10:38:10 -04:00
Manjunath A Kumatagi
f8063879a0 Use Docker API Version instead of docker version 2017-04-27 10:05:22 -04:00
Cao Shufeng
27dafbb87c add unit for freed image size 2017-04-27 16:27:04 +08:00
Kubernetes Submit Queue
65838085b0 Merge pull request #43618 from xilabao/fix-kubectl-run-output
Automatic merge from submit-queue (batch tested with PRs 44970, 43618)

fix kubectl run output

fixes https://github.com/kubernetes/kubernetes/issues/40440
2017-04-26 22:58:13 -07:00
Kubernetes Submit Queue
c3df35df7b Merge pull request #44970 from Random-Liu/fix-stop-container-timeout
Automatic merge from submit-queue (batch tested with PRs 44970, 43618)

CRI: Fix StopContainer timeout

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

I verified this PR with the example provided in https://github.com/kubernetes/kubernetes/issues/44956, and now pod deletion will respect grace period timeout:
```
NAME                         READY     STATUS        RESTARTS   AGE
gracefully-terminating-pod   1/1       Terminating   0          6m
```

@dchen1107 @yujuhong @feiskyer /cc @kubernetes/sig-node-bugs
2017-04-26 22:58:11 -07:00
Jordan Liggitt
f1207de4ea Update token controller test to test async retry 2017-04-27 00:33:27 -04:00
Seth Jennings
ffb9f5aa4c don't HandleError on container start failure 2017-04-26 23:00:39 -05:00
Kubernetes Submit Queue
e885c77ffd Merge pull request #44986 from dashpole/fix_image_gc
Automatic merge from submit-queue

Allow Partial Success for ImageGC

Fixes #44951.  When the eviction manager is under disk pressure, it first attempts to reclaim disk space by deleting images.  However, if there are any errors during the image deletion process, the eviction manager treats that as a failed attempt delete images--even if some were successfully deleted.

This change essentially makes the eviction manager ignore errors during image garbage collection, and instead rely solely on the quantity of resources reclaimed.  If image deletion completely fails, for example, then this should still work as it would return 0 bytes freed.  This allows for partial success, because any resources freed are counted, regardless of if some images fail to be deleted, for example.

This does not require any changes to the image manager, as the current behavior is already to return the disk space freed along with any errors.

```release-note
Fixes a bug where pods were evicted even after images are successfully deleted.
```

cc @dchen1107 @vishh @kubernetes/kubernetes-release-managers

note to reviewers: this is mostly whitespace changes, so it will make more sense in reviewable
2017-04-26 20:52:18 -07:00
Kubernetes Submit Queue
c446132a97 Merge pull request #44974 from caesarxuchao/remove-client-go-api-listers
Automatic merge from submit-queue (batch tested with PRs 44940, 44974, 44935)

Remove import of internal api package in generated external-versioned listers

Follow up of https://github.com/kubernetes/kubernetes/pull/44523

One line change in cmd/libs/go2idl/lister-gen/generators/lister.go, and simple changes in pkg/apis/autoscaling/v2alpha1/register.go, other changes are generated.

The internal api package will be eliminated from client-go, so these imports should be removed. Also, it's more correct to report the versioned resource in the error.
2017-04-26 20:34:13 -07:00
David Ashpole
958e290c8d still consider quantity reclaimed even when errors are returned 2017-04-26 17:40:30 -07:00
Kubernetes Submit Queue
433aec11c8 Merge pull request #44531 from pwittrock/kubectl-openapi
Automatic merge from submit-queue

OpenAPI support for kubectl

Support for openapi spec in kubectl.

Includes:
- downloading and caching openapi spec to a local file
- parsing openapi spec into binary serializable datastructures (10x faster load times 600ms -> 40ms)
- caching parsed openapi spec in memory for each command

```release-note
NONE
```
2017-04-26 16:59:17 -07:00
Random-Liu
cfd0efff11 Fix StopContainer timeout 2017-04-26 15:48:12 -07:00
Kubernetes Submit Queue
274df99e9b Merge pull request #44451 from ncdc/spdy-follow-redirects
Automatic merge from submit-queue

Add redirect support to SpdyRoundTripper

Add support for following redirects to the SpdyRoundTripper. This is
necessary for clients using it directly (e.g. the apiserver talking
directly to the kubelet) because the CRI streaming server issues a
redirect for streaming requests.

We need this in OpenShift because we have code that executes inside our apiserver that talks directly to the node to perform an attach request, and we need to be able to follow that redirect.

This code was adapted from the upgrade-aware proxy handler.

cc @smarterclayton @sttts @liggitt @timstclair @kubernetes/sig-api-machinery-pr-reviews
2017-04-26 14:47:41 -07:00
Chao Xu
ee61ffb4b1 bazel 2017-04-26 14:41:10 -07:00
Chao Xu
0bac9b6aaa update list-gen to not import internal package in external listers 2017-04-26 14:41:09 -07:00
Balu Dontu
6228765b43 Optimize the time taken to create Persistent volumes with VSAN storage capabilities at scale and handle VPXD crashes 2017-04-26 13:33:21 -07:00
Maxim Ivanov
0cf4744e75 Remove misleading error from CronJob controller when it can't find parent UID 2017-04-26 18:57:53 +01:00
Andy Goldstein
715d5d9c91 Add redirect support to SpdyRoundTripper
Add support for following redirects to the SpdyRoundTripper. This is
necessary for clients using it directly (e.g. the apiserver talking
directly to the kubelet) because the CRI streaming server issues a
redirect for streaming requests.

Also extract common logic for following redirects.
2017-04-26 09:45:19 -04:00