Commit Graph

31450 Commits

Author SHA1 Message Date
k8s-merge-robot
07471cf90f Merge pull request #27553 from justinsb/pvc_zone_spreading_2
Automatic merge from submit-queue

AWS/GCE: Spread PetSet volume creation across zones, create GCE volumes in non-master zones

Long term we plan on integrating this into the scheduler, but in the
short term we use the volume name to place it onto a zone.
    
We hash the volume name so we don't bias to the first few zones.
    
If the volume name "looks like" a PetSet volume name (ending with
-<number>) then we use the number as an offset.  In that case we hash
the base name.
2016-06-22 01:22:16 -07:00
Dominika Hodovska
59db75f893 kubectl/autoscale: fix tips when validating --max flag
bug 1336632
Bugzilla link https://bugzilla.redhat.com/show_bug.cgi?id=1336632
2016-06-22 09:51:15 +02:00
k8s-merge-robot
48f2b11c48 Merge pull request #27829 from zmerlynn/fix-tp-max-2
Automatic merge from submit-queue

GCE provider: Create TargetPool with 200 instances, then update with rest

GCE provider: Create TargetPool with 200 instances, then update with rest
 
Tested with 2000 nodes, this actually meets the GCE API specifications (which is nutty). Previous PR (#25178) was based on a mistaken understanding of a poorly documented set of limitations, and even poorer testing, for which I am embarassed.

Also includes the revert of #25178 (review commits separately).

[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/.github/PULL_REQUEST_TEMPLATE.md?pixel)]()
2016-06-22 00:48:30 -07:00
k8s-merge-robot
d3a7daf449 Merge pull request #27353 from jsafrane/cinder-attach-test
Automatic merge from submit-queue

Add Cinder volume plugin attach tests.

@kubernetes/sig-storage
2016-06-22 00:15:17 -07:00
k8s-merge-robot
ee28e1ebc3 Merge pull request #27280 from jsafrane/aws-cinder-attach-test
Automatic merge from submit-queue

Add AWS volume plugin attach tests.

@kubernetes/sig-storage 

This it a test, it does not really matter if it catches 1.3 train or the next one.
2016-06-21 23:31:32 -07:00
k8s-merge-robot
faf1644ef8 Merge pull request #27020 from timstclair/manager
Automatic merge from submit-queue

Rename **/manager.go for better logging

Rename `pkg/kubelet/*/manager.go` to `pkg/kubelet/*/*_manager.go`.

**Justification:** Our current logging library, [glog](https://github.com/golang/glog), logs the filename where the log was generated, but not the full path. Ex:
```
I0608 00:28:25.116905    2847 manager.go:1024] Started watching for new ooms in manager
```
We have too many files named `manager.go`, which makes it difficult to identify log messages originating from them:
```console
$ find . -name "manager.go"
./pkg/kubelet/status/manager.go
./pkg/kubelet/dockertools/manager.go
./pkg/kubelet/eviction/manager.go
./pkg/kubelet/pod/manager.go
./pkg/kubelet/prober/manager.go
./vendor/github.com/vmware/govmomi/session/manager.go
./vendor/github.com/google/cadvisor/manager/manager.go
./vendor/github.com/coreos/go-oidc/key/manager.go
```

/cc @kubernetes/sig-node This change will probably invoke rebase hell, but now seems like a reasonable time for it (with less churn leading up to release).
2016-06-21 21:03:28 -07:00
k8s-merge-robot
14fb855048 Merge pull request #27576 from jingxu97/populator
Automatic merge from submit-queue

implement desiredWorld populator to sync up with informer

fixes #26994
This change implements the desiredStateOfWorld populator to sync up with
the pod informer. It periodically check each pod in the
desiredStateOfworld and verify whether it is still in pod informer
cache. If it not, remove it from the desiredStateOfWorld
2016-06-21 20:28:16 -07:00
Matt Freeman
742447f8ce include metadata in third party res list output 2016-06-22 02:30:57 +00:00
k8s-merge-robot
24c3be145c Merge pull request #27509 from janetkuo/retry-update-e2e-rolling-update
Automatic merge from submit-queue

Retry Pod/RC updates in kubectl rolling-update

Fixes #27328

@kubernetes/kubectl 

[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/.github/PULL_REQUEST_TEMPLATE.md?pixel)]()
2016-06-21 18:52:43 -07:00
Zach Loafman
f63ac1962c GCE provider: Create TargetPool with 200 instances, then update with rest
Tested with 2000 nodes, this actually meets the GCE API specifications
(which is nutty). Previous PR (#25178) was based on a mistaken
understanding of a poorly documented set of limitations, and even
poorer testing, for which I am embarassed.
2016-06-21 18:15:02 -07:00
Jing Xu
0fefb23f94 implement desiredWorld populator to sync up with informer
This change implements the desiredStateOfWorld populator to sync up with
the pod informer. It periodically check each pod in the
desiredStateOfworld and verify whether it is still in pod informer
cache. If it not, remove it from the desiredStateOfWorld
2016-06-21 17:09:35 -07:00
k8s-merge-robot
1ea3b171d8 Merge pull request #25938 from sitepod/third-party-resource-watch-fix
Automatic merge from submit-queue

handle watch event serialization for third party resources

This is a quick fix for #24963 although I understand @brendandburns is overhauling thirdparty resources at the moment


[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/.github/PULL_REQUEST_TEMPLATE.md?pixel)]()
2016-06-21 16:56:04 -07:00
Janet Kuo
ee81e5ebfa Retry Pod/RC updates in kubectl rolling-update 2016-06-21 16:08:10 -07:00
Davide Agnello
53805caa60 Removing name field from Member for compatibility with OpenStack Liberty
In OpenStack Mitaka, the name field for members was added as an optional
field but does not exist in Liberty.  Therefore the current
implementation for lbaas v2 will not work in Liberty.
2016-06-21 15:29:33 -07:00
Tim St. Clair
f2f3caf744 Rename **/manager.go 2016-06-21 15:11:31 -07:00
derekwaynecarr
060e69ae92 Fix typo in filename 2016-06-21 16:56:07 -04:00
Justin Santa Barbara
404c501c0d AWS: Add missing error check for #27774
There was an error check missing, which seems likely to have caused 27774

Issue #27774
2016-06-21 15:37:18 -04:00
Justin Santa Barbara
dd94997619 Add comments & misc review fixes
Lots of comments describing the heuristics, how it fits together and the
limitations.

In particular, we can't guarantee correct volume placement if the set of
zones is changing between allocating volumes.
2016-06-21 15:22:16 -04:00
k8s-merge-robot
459757cf08 Merge pull request #27728 from janetkuo/deployment-cleanup-unhealthy
Automatic merge from submit-queue

Deployment controller's cleanupUnhealthyReplicas should respect minReadySeconds

```release-note
Fixed an issue that Deployment may be scaled down further than allowed by maxUnavailable when minReadySeconds is set.
```

Fixes #26834

Detected by a flake in deployment rollover e2e test (the only test that specifies `minReadySeconds`).

cc @kubernetes/deployment @pwittrock 
cc @mqliang who first added `cleanupUnhealthyReplicas` in deployment controller 

[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/.github/PULL_REQUEST_TEMPLATE.md?pixel)]()
2016-06-21 11:46:12 -07:00
k8s-merge-robot
482a7bee2f Merge pull request #27426 from soltysh/scheduledjob_test_reapply
Automatic merge from submit-queue

Reapply ScheduledJob tests (2ab885a53a)

Re-applied the ScheduledJob tests (#25737) which were reverted due to an integration test error in #27184.
The problem was in `TestBatchGroupBackwardCompatibility` which is testing backwards compatibility for storing jobs (`extensions/v1beta1` vs `batch/v1`), which is not needed for `batch/v2alpha1`. I've added a skip to aforementioned test for that group. See `test/integration/master_test.go` for the actual fix.

@caesarxuchao @mikedanese ptal
@piosz @jszczepkowski @erictune fyi

[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/.github/PULL_REQUEST_TEMPLATE.md?pixel)]()
2016-06-21 10:31:54 -07:00
Zach Loafman
ebc65f1dd3 Revert "GCE: Allow nodes to exceed target pool maximums"
This reverts commit faf0c44429.
2016-06-21 09:54:56 -07:00
k8s-merge-robot
6cccb872a7 Merge pull request #27741 from zmerlynn/fix-gce-filters
Automatic merge from submit-queue

GCE provider: Limit Filter calls to regexps rather than insane blobs

Filters can't exceed 4k, and GET requests against the GCE API are also limited, so these break down in different ways at different cluster counts. Fix it by introducing an advisory `node-instance-prefix` configuration in the GCE provider that can hint the `EnsureLoadBalancer`/`UpdateLoadBalancer code` (and the firewall creation/update code). If it's not there, or wrong (a hostname that's registered violates it), just ignore it and grab the whole project.

Fixes #27731 
[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/.github/PULL_REQUEST_TEMPLATE.md?pixel)]()
2016-06-21 09:54:01 -07:00
k8s-merge-robot
c30c49d0df Merge pull request #27376 from derekwaynecarr/eviction_owners
Automatic merge from submit-queue

Add owners file for kubelet eviction

/cc @vishh
2016-06-21 08:43:16 -07:00
Zach Loafman
dd4dae4a57 GCE provider: Limit Filter calls to regexps rather than insane blobs
Filters can't exceed 4k, and GET requests against the GCE API are also
limited, so these break down in different ways at different cluster
counts. Fix it by introducing an advisory node-instance-prefix
configuration in the GCE provider that can hint the
EnsureLoadBalancer/UpdateLoadBalancer code (and the firewall
creation/update code). If it's not there, or wrong (a hostname that's
registered violates it), just ignore it and grab the whole project.
2016-06-21 08:34:48 -07:00
Jan Safranek
c9a60e2d2c Rephrase 'pv not found in cache' warnings.
When kubelet starts a pod that refers to non-existing PV, PVC or Node, it
should clearly show that the requested element does not exist.

Previous "PersistentVolumeClaim 'default/ceph-claim-wm' is not in cache"
looks like random kubelet hiccup, while "PersistentVolumeClaim
'default/ceph-claim-wm' not found" suggests that the object may not exist at
all and it might be an user error.

Fixes #27523
2016-06-21 14:56:11 +02:00
Maciej Szulik
feb43c5e6d Reapply ScheduledJob tests (2ab885a53a) 2016-06-21 14:55:00 +02:00
Jan Safranek
ba63590e04 Add AWS volume plugin attach tests. 2016-06-21 14:27:37 +02:00
Jan Safranek
6356d85db5 Add Cinder volume plugin attach tests. 2016-06-21 13:12:47 +02:00
k8s-merge-robot
a8fecd0cc6 Merge pull request #27639 from pmorie/goodbye-pod-mutation
Automatic merge from submit-queue

Remove pod mutation for volumes annotated with supplemental groups

Removes the pod mutation added in #20490 -- partially resolves #27197 from the standpoint of making the feature inactive in 1.3.  Our plan is to make this work correctly in 1.4.

@kubernetes/sig-storage
2016-06-21 03:18:45 -07:00
k8s-merge-robot
ee35555cb6 Merge pull request #27570 from Random-Liu/add-runtime-request-timeout-flag
Automatic merge from submit-queue

Add runtime-request-timeout kubelet flag.

XRef #23563.

Addresses https://github.com/kubernetes/kubernetes/issues/27388#issuecomment-226570083.

Add a new kubelet flag `runtime-request-timeout`, and set to 2 minutes by default.
Now the flag only affects dockertools, rkt may also want to set request timeout according to the flag. @yifan-gu 

This PR also removed the timeout for all long running operations to avoid issues like #27588 and #26122.

@yujuhong @rrati 
/cc @kubernetes/sig-node 

[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/.github/PULL_REQUEST_TEMPLATE.md?pixel)]()
2016-06-21 01:26:54 -07:00
Matt Freeman
3758df1681 handle watch event serialization for third party resources 2016-06-21 07:30:08 +00:00
k8s-merge-robot
1fd4047961 Merge pull request #27549 from Clarifai/eventorder
Automatic merge from submit-queue

swap FIRSTSEEN/LASTSEEN columns in `kubectl get event -w`

```release-note
Show LASTSEEN, the sorting key, as the first column in `kubectl get event` output
```
Not having LASTSEEN as the first column can confuse users into thinking
that events are not delivered in order.

Fixes #27060
2016-06-21 00:09:53 -07:00
k8s-merge-robot
ec518005a8 Merge pull request #27567 from saad-ali/blockKubeletOnAttachController
Automatic merge from submit-queue

Kubelet Volume Manager Wait For Attach Detach Controller and Backoff on Error

* Closes https://github.com/kubernetes/kubernetes/issues/27483
  * Modified Attach/Detach controller to report `Node.Status.AttachedVolumes` on successful attach (unique volume name along with device path).
  * Modified Kubelet Volume Manager wait for Attach/Detach controller to report success before proceeding with attach.
* Closes https://github.com/kubernetes/kubernetes/issues/27492
  * Implemented an exponential backoff mechanism for for volume manager and attach/detach controller to prevent operations (attach/detach/mount/unmount/wait for controller attach/etc) from executing back to back unchecked.
* Closes https://github.com/kubernetes/kubernetes/issues/26679
  * Modified volume `Attacher.WaitForAttach()` methods to uses the device path reported by the Attach/Detach controller in `Node.Status.AttachedVolumes` instead of calling out to cloud providers.
2016-06-20 20:36:08 -07:00
saadali
e716ddc771 Controller wait for attach and exponential backoff
Modify attach/detach controller to keep track of volumes to report
attached in Node VolumeToAttach status.

Modify kubelet volume manager to wait for volume to show up in Node
VolumeToAttach status.

Implement exponential backoff for errors in volume manager and attach
detach controller
2016-06-20 18:19:55 -07:00
Yifan Gu
4329ba700f rkt: Refactor grace termination period.
Add `TimeoutStopSec` service option to support grace termination.
2016-06-20 17:18:12 -07:00
k8s-merge-robot
fae7285b00 Merge pull request #27707 from yifan-gu/stage1_name
Automatic merge from submit-queue

rkt: Map kubelet's `--stage1-image` flag to rkt's `--stage1-name` flag.

This enables rkt to use cached stage1 image instead of unpacking the stage1 image every time for every pod.

After this change, users need to preload the stage1 images in order to enable rkt to find the stage1 image with the name specified by this flag.

Also, the cloud config is modified to pre-load the stage1 images.

cc @kubernetes/sig-rktnetes @kubernetes/sig-node
2016-06-20 16:40:09 -07:00
Aaron Levy
4a62d8e86f pkg/kubelet: mock stubs for cadvisor calls 2016-06-20 16:33:22 -07:00
Janet Kuo
726ba45b59 Deployment controller's cleanupUnhealthyReplicas should respect minReadySeconds 2016-06-20 15:03:57 -07:00
k8s-merge-robot
d19c8ed825 Merge pull request #27609 from ZTE-PaaS/zhangke-patch-001
Automatic merge from submit-queue

EndpointController syncService log error

Here key param should service nor rc
2016-06-20 13:06:44 -07:00
k8s-merge-robot
ca76cc0e9f Merge pull request #27566 from metral/clarify-docs
Automatic merge from submit-queue

clarify kubectl recursive flag description

Clarify the description of the recursive flag in `kubectl` so that it's more intuitive to the user

This should make it into v1.3 as the rest of the recursive feature PR's will be available in 1.3
2016-06-20 13:06:40 -07:00
k8s-merge-robot
b613908cf2 Merge pull request #27365 from derekwaynecarr/describe_allocatable
Automatic merge from submit-queue

kubectl describe node is allocatable aware

`kubectl describe node` will render node.status.allocatable if present.

in addition, it will report allocated resources relative to node.status.allocatable if present instead of capacity.

old code was confusing if you setup system-reserved and kube-reserved as allocated resource percentages were relative to node capacity and not schedulable amount of resources.

this is a small but valuable usability improvement, so i think it would be good to make 1.3 milestone.

/cc @kubernetes/sig-node @kubernetes/rh-cluster-infra @kubernetes/kubectl @davidopp
2016-06-20 13:06:35 -07:00
k8s-merge-robot
31f2aa9138 Merge pull request #27298 from euank/larger-stack-print-size
Automatic merge from submit-queue

httplog: Increase stack size

The previous size, of 2KB, in practice always was filled mostly by
http server-releated stuff well above the panic itself, and truncated
before anything of real value was printed in some cases.

This increases the stack size so that panics are printed in full (well, except for really large ones).

cc @lavalamp
2016-06-20 12:22:48 -07:00
Aaron Levy
8c04af7b73 Retrieve host IP in isolation from apiserver 2016-06-20 11:47:32 -07:00
k8s-merge-robot
554b7010fa Merge pull request #27677 from justinsb/fix_24254
Automatic merge from submit-queue

AWS: Enable ICMP Type 3 Code 4 for ELBs

This enables MTU discovery.

Fixes #24254
2016-06-20 11:07:40 -07:00
Yifan Gu
4e9298cd99 rkt: Map kubelet's --stage1-image flag to rkt's --stage1-name flag.
This enables rkt to use cached stage1 image instead of unpacking the
stage1 image every time for every pod.

After this change, users need to preload the stage1 images in order to
enable rkt to find the stage1 image with the name specified by this flag.
2016-06-20 10:39:46 -07:00
Abitha Palaniappan
4a5ade213c Adding scsi controller type filter while attaching disks
Hot attach of disk to a scsi controller will work only if the
controller type is lsilogic-sas or paravirtual.This patch filters
the existing controller for these types, if it doesn't find one it
creates a new scsi controller.
2016-06-20 09:54:55 -07:00
gmarek
9bbcb5e3b8 Remove dependency on test/integration from kubemark 2016-06-20 16:20:51 +02:00
Michail Kargakis
f3d2e3ff22 controller: proportionally scale paused and rolling deployments
Enable paused and rolling deployments to be proportionally scaled.
Also have cleanup policy work for paused deployments.
2016-06-20 12:13:35 +02:00
Michail Kargakis
a098d9fd24 integer: add int32 min/max helpers 2016-06-20 12:13:35 +02:00
Michail Kargakis
bad8b6dde4 integer: add utility for proper integer rounding 2016-06-20 12:13:35 +02:00