Commit Graph

36788 Commits (808ed6bfd029cdfffb8ce4f589695bcea51bea0a)

Author SHA1 Message Date
Kubernetes Submit Queue 808ed6bfd0 Merge pull request #34139 from liggitt/fix-jitter-until
Automatic merge from submit-queue

Fix wait.JitterUntil

https://github.com/kubernetes/kubernetes/pull/29743 changed a util method to cause process exits if a handler function panics.

Utility methods should not make process exit decisions. If a process (like the controller manager) wants to exit on panic, appending a panic handler or setting `ReallyCrash = true` is the right way to do that (discussed [here](https://github.com/kubernetes/kubernetes/pull/29743#r75509074)).

This restores the documented behavior of wait.JitterUntil
2016-10-06 13:40:08 -07:00
Kubernetes Submit Queue 41f17bd9ac Merge pull request #34158 from quinton-hoole/2016-10-05-fix-ingress-bug-mac
Automatic merge from submit-queue

Add missing argument to log message in federated ingress controller.

Minor fix, to address this:

1006 01:08:50.605184       1 ingress_controller.go:674] No annotation "kubernetes.io/ingress.global-static-ip-name" exists on ingress "e2e-tests-federated-ingress-2787b/federated-ingress" in federation, and index of cluster "federation-e2e-gce-us-central1-f" is 1 and not zero.  Not queueing create operation for ingress *%!q(MISSING)* until annotation exists
2016-10-06 11:43:58 -07:00
Kubernetes Submit Queue 6a9d56b35a Merge pull request #32724 from sjenning/eviction-timestamp
Automatic merge from submit-queue

kubelet: eviction: avoid duplicate action on stale stats

Currently, the eviction code can be overly aggressive when synchronize() is called two (or more) times before a particular stat has been recollected by cadvisor.  The eviction manager will take additional  action based on information for which it has already taken actions.

This PR provides a method for the eviction manager to track the timestamp of the last obversation and not take action if the stat has not been updated since the last time synchronize() was run.

@derekwaynecarr @vishh @kubernetes/rh-cluster-infra
2016-10-06 11:05:34 -07:00
Kubernetes Submit Queue 8dd9462dd1 Merge pull request #32995 from kargakis/scale-before-rolling-out
Automatic merge from submit-queue

controller: scale proportionally before rolling out new templates

Once we have progressDeadlineSeconds (https://github.com/kubernetes/kubernetes/pull/19343) and https://github.com/kubernetes/kubernetes/issues/32863 we should be able to get meaningful errors for the concerns I raised in https://github.com/kubernetes/kubernetes/issues/29357.

cc: @kubernetes/deployment 

Fixes https://github.com/kubernetes/kubernetes/issues/29357
2016-10-06 10:03:52 -07:00
Seth Jennings 98e97a475a kubelet: eviction: avoid duplicate action on stale stats 2016-10-06 11:39:05 -05:00
Kubernetes Submit Queue 07eba4c6ef Merge pull request #33392 from sjenning/min-reclaim-percent
Automatic merge from submit-queue

kubelet: eviction: allow minimum reclaim as percentage

Fixes #33354 

xref #32537

**Release note**:
```release-note
The kubelet --eviction-minimum-reclaim option can now take precentages as well as absolute values for resources quantities
```
@derekwaynecarr @vishh @mtaufen
2016-10-06 09:25:46 -07:00
Kubernetes Submit Queue 4077c864bf Merge pull request #34229 from jbeda/fix-federation-push
Automatic merge from submit-queue

Fix broken build/push-federation-images.sh

The federation CI build is broken by #30787. A stray bash `source` caused an undefined variable reference.

Apparently the federation images have a parallel nad different "release" path that isn't tested by the pre-checkin tests.
2016-10-06 08:45:09 -07:00
Kubernetes Submit Queue cfbb5e1040 Merge pull request #34150 from mbohlool/co2
Automatic merge from submit-queue

Fix a typo in openapi spec generation

A typo in util.sh resulted in the wrong spec stored in source tree. The commit should be explanatory.
2016-10-06 08:44:59 -07:00
Kubernetes Submit Queue 189bb74213 Merge pull request #34234 from wojtek-t/minor_etcd3_change
Automatic merge from submit-queue

Minor clearnup in etcd3 code

Ref #20504
2016-10-06 07:19:36 -07:00
Kubernetes Submit Queue 0f40c1a6d0 Merge pull request #34149 from timothysc/prio-hotloop
Automatic merge from submit-queue

Turn down hootloop logs in priorities.  

Excessive spam is output once we near cluster capacity, sometimes a panic is triggered but that data is clipped in the logs see #33935 for more details.
2016-10-06 06:55:00 -07:00
Wojciech Tyczynski d70a9615ec Minor clearnup in etcd3 code 2016-10-06 15:38:34 +02:00
Joe Beda ce00838e47 Fix broken build/push-federation-images.sh
This was broken by #30787. A stray bash `source` caused an undefined variable reference.

Apparently the federation images have a parallel nad different "release" path
that isn't tested by the pre-checkin tests.
2016-10-06 06:23:31 -07:00
Kubernetes Submit Queue 4dc418c5ee Merge pull request #34217 from wojtek-t/cacher_logging_2
Automatic merge from submit-queue

Extend logging in cacher to understand its bottleneck
2016-10-06 03:29:19 -07:00
Kubernetes Submit Queue 392f6f4757 Merge pull request #33983 from janetkuo/check-petset-status
Automatic merge from submit-queue

Add status check in PetSet e2e tests

<!--  Thanks for sending a pull request!  Here are some tips for you:
1. If this is your first time, read our contributor guidelines https://github.com/kubernetes/kubernetes/blob/master/CONTRIBUTING.md and developer guide https://github.com/kubernetes/kubernetes/blob/master/docs/devel/development.md
2. If you want *faster* PR reviews, read how: https://github.com/kubernetes/kubernetes/blob/master/docs/devel/faster_reviews.md
3. Follow the instructions for writing a release note: https://github.com/kubernetes/kubernetes/blob/master/docs/devel/pull-requests.md#release-notes
-->

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

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

**Special notes for your reviewer**: cc @erictune @foxish @kubernetes/sig-apps

**Release note**:
<!--  Steps to write your release note:
1. Use the release-note-* labels to set the release note state (if you have access) 
2. Enter your extended release note in the below block; leaving it blank means using the PR title as the release note. If no release note is required, just write `NONE`. 
-->
```release-note
NONE
```
2016-10-06 02:51:26 -07:00
Kubernetes Submit Queue 3c3f74922d Merge pull request #34082 from wojtek-t/integration_test_using_etcd3
Automatic merge from submit-queue

Use etcd3.0.10 in integration tests

Also, start testing etcd2->etcd3 migration as part of test-update-storage-object test.

[We are already using etcd 3.0.10 in unit tests. And we are still testing the current binary as part of all e2e tests, which I think is enough. I think we can start using 3.0.10 in integrations tests now.

Ref #20504

@lavalamp @timothysc
2016-10-06 02:13:33 -07:00
Wojciech Tyczynski 90bc19959d Extend logging in cacher to understand its bottleneck 2016-10-06 10:57:46 +02:00
Michail Kargakis 52822d7d6b Add a test case and consolidate deployment constructors 2016-10-06 10:37:35 +02:00
Michail Kargakis ed8b77087a controller: scale proportionally before rolling out new templates 2016-10-06 10:36:39 +02:00
Wojciech Tyczynski 0e61d817c5 Start testing etcd2->etcd3 migration in test-update-storage-objects 2016-10-06 09:32:49 +02:00
Wojciech Tyczynski 19e50d56dc Run integration tests with 3.0.10 etcd underneath 2016-10-06 09:32:49 +02:00
Kubernetes Submit Queue 42e5f95a6b Merge pull request #34024 from deads2k/controller-06-deployment-controller
Automatic merge from submit-queue

update deployment and replicaset listers

Updates the deployment lister to avoid copies and updates the deployment controller to use shared informers.

Pushing WIP to see which tests are broken.
2016-10-06 00:02:34 -07:00
Kubernetes Submit Queue a98850bf30 Merge pull request #34055 from freehan/revert-add-network-node-e2e
Automatic merge from submit-queue

Revert "Revert "move pod networking tests common""

Reverts #34011

And fix the problem causing `Granular Checks: Services [Slow] should update nodePort` tests to fail
2016-10-05 23:25:09 -07:00
Kubernetes Submit Queue 45e5719c2c Merge pull request #33792 from caesarxuchao/decouple-workqueue-prometheus
Automatic merge from submit-queue

decouple workqueue metrics from prometheus

<!--  Thanks for sending a pull request!  Here are some tips for you:
1. If this is your first time, read our contributor guidelines https://github.com/kubernetes/kubernetes/blob/master/CONTRIBUTING.md and developer guide https://github.com/kubernetes/kubernetes/blob/master/docs/devel/development.md
2. If you want *faster* PR reviews, read how: https://github.com/kubernetes/kubernetes/blob/master/docs/devel/faster_reviews.md
3. Follow the instructions for writing a release note: https://github.com/kubernetes/kubernetes/blob/master/docs/devel/pull-requests.md#release-notes
-->

**What this PR does / why we need it**:
We want to include the workqueue in client-go, but do not want to having to import Prometheus. This PR decouples the workqueue from prometheus.

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

Partially address https://github.com/kubernetes/kubernetes/issues/33497
User requested for `workqueue` in client-go: https://github.com/kubernetes/client-go/issues/4#issuecomment-249444848

**Special notes for your reviewer**:

**Release note**:
<!--  Steps to write your release note:
1. Use the release-note-* labels to set the release note state (if you have access) 
2. Enter your extended release note in the below block; leaving it blank means using the PR title as the release note. If no release note is required, just write `NONE`. 
-->
```release-note
The implicit registration of Prometheus metrics for workqueue has been removed, and a plug-able interface was added. If you were using workqueue in your own binaries and want these metrics, add the following to your imports in the main package: "k8s.io/pkg/util/workqueue/prometheus".
```
2016-10-05 22:10:11 -07:00
Kubernetes Submit Queue 63139f937c Merge pull request #30787 from jbeda/rsync
Automatic merge from submit-queue

Speed up dockerized builds

This PR speeds up dockerized builds.  First, we make sure that we are as incremental as possible.  The bigger change is that now we use rsync to move sources into the container and get data back out.

To do yet:
* [x] Add a random password to rsync.  This is 128bit MD4, but it is better than nothing.
* [x] Lock down rsync to only come from the host.
* [x] Deal with remote docker engines -- this should be necessary for docker-machine on the mac.
* [x] Allow users to specify the port for the rsync daemon.  Perhaps randomize this or let docker pick an ephemeral port and detect the port?
* [x] Copy back generated files so that users can check them in.  This is done for `zz_generated.*` files generated by `make generated_files` 
  * [x] This should include generated proto files so that we can remove the hack-o-rama that is `hack/hack/update-*-dockerized.sh` 
* [x] Start "versioning" the build container and the data container so that the CI system doesn't have to be manually kicked.
* [x] Get some benchmarks to qualify how much faster.

This replaces #28518 and is related to #30600.

cc @thockin @spxtr @david-mcmahon @MHBauer 

Benchmarks by running `make clean ; sync ; time bash -xc 'time build/make-build-image.sh ; time sync ; time build/run.sh make ; time sync; time build/run.sh make'` on a GCE n1-standard-8 with PD-SSD.

| setup | build image | sync | first build | sync | second build | total |
|-------|-------------|----- |----------|------|--------------|------|
| baseline | 0m11.420s | 0m0.812s | 7m2.353s | 0m42.380s | 7m8.381s | 15m5.348s |
| this pr | 0m10.977s | 0m15.168s | 7m31.096s | 1m55.692s | 0m16.514s | 10m9.449s |
2016-10-05 19:51:09 -07:00
Kubernetes Submit Queue 7766b408b8 Merge pull request #31467 from vmware/fix-vsphere-cloud-provider.kerneltime
Automatic merge from submit-queue

Add support for vpshere cloud provider in kubeup

<!--  Thanks for sending a pull request!  Here are some tips for you:
1. If this is your first time, read our contributor guidelines https://github.com/kubernetes/kubernetes/blob/master/CONTRIBUTING.md and developer guide https://github.com/kubernetes/kubernetes/blob/master/docs/devel/development.md
2. If you want *faster* PR reviews, read how: https://github.com/kubernetes/kubernetes/blob/master/docs/devel/faster_reviews.md
3. Follow the instructions for writing a release note: https://github.com/kubernetes/kubernetes/blob/master/docs/devel/pull-requests.md#release-notes
-->

**What this PR does / why we need it**:
vSphere cloud provider added in 1.3 was not configured when deploying via kubeup

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

**Special notes for your reviewer**:

**Release note**:
<!--  Steps to write your release note:
1. Use the release-note-* labels to set the release note state (if you have access) 
2. Enter your extended release note in the below block; leaving it blank means using the PR title as the release note. If no release note is required, just write `NONE`. 
-->
```release-note
Add support for vSphere Cloud Provider when deploying via kubeup on vSphere.
```

When deploying on vSphere using kube up add configuration
for vSphere cloud provider.
2016-10-05 19:12:17 -07:00
Kubernetes Submit Queue 0554f58489 Merge pull request #34141 from Random-Liu/add-cri-node-serial-and-benchmark
Automatic merge from submit-queue

CRI: Add serial and benchmark test suite.

For https://github.com/kubernetes/kubernetes/issues/31459.

The serial test result will be shown on test-grid.
The benchmark test result will be shown [node-perf-dash](http://node-perf-dash.k8s.io/#/builds)

This PR also changes the cri validation test to use the same gci image with node e2e instead of the canary image. The docker version is still 1.11.2.

@yujuhong @feiskyer @yifan-gu 
/cc @kubernetes/sig-node
2016-10-05 18:35:24 -07:00
Quinton Hoole 68c0c5ddea Add missing argument to log message in federated ingress controller. 2016-10-05 18:20:12 -07:00
Ritesh H Shukla ea22d0cc5f Update exceptions list for underscores introduced in kubeup for vSphere. 2016-10-05 16:57:33 -07:00
Kubernetes Submit Queue 4ecb032bc9 Merge pull request #33129 from dcbw/kubenet-warn-podcidr-updates
Automatic merge from submit-queue

kubenet: make it more apparent that kubenet ignores PodCIDR updates

Don't suppress a warning that kubenet will ignore PodCIDR updates.

See https://github.com/kubernetes/kubernetes/issues/32900
2016-10-05 16:15:18 -07:00
mbohlool 2a180d89c8 Generated openapi spec 2016-10-05 16:03:18 -07:00
mbohlool 4ed8328e8d Fix a typo in util.sh that resulted in wrong openapi spec generation 2016-10-05 15:59:38 -07:00
Kubernetes Submit Queue 9aac6cfdb6 Merge pull request #34068 from Random-Liu/add-cri-presubmit-test
Automatic merge from submit-queue

CRI: Add presubmit CRI validation test.

For #31459.

This PR adds a new suite for CRI presubmit validation which runs non-flaky, non-serial, non-slow test per-pr.

Except this PR, I'll also change the test-infra side. Ideally, after this is done, we should be be able to trigger CRI validation test per-pr with something like `@k8s-bot cri node e2e test this` and `@k8s-bot cri e2e test this`.

@yujuhong @feiskyer @yifan-gu @freehan 
/cc @kubernetes/sig-node
2016-10-05 15:38:25 -07:00
Kubernetes Submit Queue 05192d9d57 Merge pull request #33319 from juanvallejo/jvallejo/add-option-to-set-nodeport
Automatic merge from submit-queue

Add option to set a service nodeport

**Release note**:
```release-note
Add kubectl --node-port option for specifying the service nodeport
```

This patch adds the option to set a nodeport when creating a NodePort
service. In case of a port allocation error due to a specified port
being out of the valid range, the error now includes the valid
range. If a `--node-port` value is not specified, it defaults to zero, in
which case the allocator will default to its current behavior of
assigning an available port.

This patch also adds a new helper function in `cmd/util/helpers.go` to
retrieve `Int32` cobra flags.

**Example**
```
# create a nodeport service with an invalid port
$ kubectl create service nodeport mynodeport --tcp=8080:7777 --node-port=1
The Service "mynodeport" is invalid: spec.ports[0].nodePort: Invalid
value: 1: provided port is not in the valid range. Valid ports range
from 30000-32767

# create a nodeport service with a valid port
$ kubectl create service nodeport mynodeport --tcp=8080:7777 --node-port=30000
service "mynodeport" created

# create a nodeport service with a port already in use
$ kubectl create service nodeport mynodeport --tcp=8080:7777 --node-port=30000
The Service "mynodeport" is invalid: spec.ports[0].nodePort: Invalid value: 3000: provided port is already allocated

$ kubectl describe service mynodeport
Name:                   mynodeport
Namespace:              default
Labels:                 app=mynodeport
Selector:               app=mynodeport
Type:                   NodePort
IP:                     172.30.81.254
Port:                   8080-7777       8080/TCP
NodePort:               8080-7777       30000/TCP
Endpoints:              <none>
Session Affinity:       None
No events.
```

@fabianofranz
2016-10-05 15:00:32 -07:00
Timothy St. Clair f2b8b08651 Turn down hootloop logs in priorities. Hit once cluster is near capacity 2016-10-05 16:58:23 -05:00
Kubernetes Submit Queue bd3664cbef Merge pull request #34000 from wojtek-t/set_cache_size
Automatic merge from submit-queue

Set deserialization cache size based on target memory usage

**Special notes for your reviewer**:

This is the PR we talked about yesterday.

**Release note**:

```release-note
To reduce memory usage to reasonable levels in smaller clusters, kube-apiserver now sets the deserialization cache size based on the target memory usage.
```
2016-10-05 14:23:39 -07:00
Random-Liu 6a4a6e5b6c Add presubmit CRI validation test. 2016-10-05 14:05:05 -07:00
Kubernetes Submit Queue 234c562d4a Merge pull request #33310 from deads2k/controller-04-auto-create-SA
Automatic merge from submit-queue

use service accounts as clients for controllers

Makes it possible for the controller-manager to use service accounts to run individual controllers.  To start, this only enables this feature if this particular controller manager has the power to create service account tokens.  Otherwise, the full-powered client is used instead.  This is a necessary step on the way to subdividing the authority of controllers.

@kubernetes/sig-auth 
@erictune I know you care about this
@ncdc fyi
2016-10-05 13:46:44 -07:00
Jordan Liggitt 3b5c3c286c
Fix wait.JitterUntil 2016-10-05 16:29:06 -04:00
Kubernetes Submit Queue 6f78c0d912 Merge pull request #33951 from pmorie/selinux-overhaul
Automatic merge from submit-queue

Proposal: SELinux enhancements

TLDR: Try to make SELinux support better by not requiring Kubelet directory to be labeled with an SELinux type usable from the container.

cc @kubernetes/sig-node @yifan-gu
2016-10-05 13:09:18 -07:00
Kubernetes Submit Queue a516ec3085 Merge pull request #34129 from mwielgus/daemonset-client
Automatic merge from submit-queue

Daemonset in federated clientset

Only hack/update-codegen.sh was edited manually.

cc: @nikhiljindal @quinton-hoole @kubernetes/sig-cluster-federation
2016-10-05 13:09:10 -07:00
Kubernetes Submit Queue 87393e1da9 Merge pull request #34106 from kargakis/rollout-status-watch-flag
Automatic merge from submit-queue

kubectl: add watch flag in rollout status

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

@kubernetes/kubectl
2016-10-05 13:09:01 -07:00
Kubernetes Submit Queue debac32d51 Merge pull request #33972 from bowei/flake-issue-27023
Automatic merge from submit-queue

Add a retry loop to KubeletManagerEtcHosts flake

Add a retry loop to KubeletManagerEtcHosts flake
    
    Note: this still makes the test fail if a retry occurs, but
    will give us more information regarding whether or not the
    test flake could be occuring due to delay in mounting of
    /etc/hosts.
2016-10-05 12:27:28 -07:00
deads2k c30b2efc46 update replicaset lister 2016-10-05 15:20:27 -04:00
Random-Liu b7b95ccb19 Add serial and benchmark test suite. 2016-10-05 12:03:32 -07:00
Kubernetes Submit Queue d4088fc47b Merge pull request #34020 from juanvallejo/jvallejo/allow-empty-annotation-values
Automatic merge from submit-queue

Allow empty annotation values

Related downstream issue: https://github.com/openshift/origin/issues/11175

**Release note**:
```release-note
release-note-none
```

Annotations with empty values can be used, for example, in diagnostics
logging. This patch removes the client-side check for empty values in
an annotation key-value pair.

**Before**
```
$ kubectl annotate pod zookeeper-1 node-selector="" --overwrite
error: invalid annotation format: node-selector=
```

**After**
```
$ kubectl annotate pod zookeeper-1 node-selector="" --overwrite
pod "zookeper-1" annotated
```

```
$ kubectl get po/zookeeper-1 --template='{{.metadata.annotations}}'
map[... node-selector: test-label:test]
```

@fabianofranz @liggitt
2016-10-05 11:48:02 -07:00
Kubernetes Submit Queue da44775a2c Merge pull request #34107 from MrHohn/e2e_sourceip_fix
Automatic merge from submit-queue

Fix #31085, include output checking in retry loop

Fix #31085.

`wget -qO-` might omit the error and `RunHostCmd()` won't be able to catch it sometimes. Verify stdout is not empty within the retry loop to fix. Test passed 1500+ times in a row.

@freehan
2016-10-05 11:02:35 -07:00
Minhan Xia 1a9bafd679 fix bug in DialFromNode where it fail the test when encountered a command execution failure 2016-10-05 11:00:57 -07:00
Marcin 64d5335f98 Daemonset in federated clientset 2016-10-05 19:58:49 +02:00
Minhan Xia df92825c33 Revert "Revert "move pod networking tests common"" 2016-10-05 10:53:22 -07:00
deads2k 358a57d74a update deployment lister 2016-10-05 13:27:35 -04:00