Commit Graph

36978 Commits

Author SHA1 Message Date
mbohlool
628d6f56b9 Add script to generate and store federation openapi spec in source tree 2016-10-06 13:10:01 -07:00
mbohlool
7e80ab2401 Remove unnecessary authorization headers after authorization is successful 2016-10-06 12:38:00 -07:00
Joe Beda
add137c4d5 Use rsync to probe for rsync ready
We were using netcat to try and figure out when the rsync container is ready. Now we instead use rsync itself. I suspect that there was a race condition with some versions of Docker where it would accept connections and then close them during container start.

This fixes #34214 (I think)
2016-10-06 12:13:04 -07:00
Marcin Wielgus
d16fd00d2a DaemonSets in federated apiserver 2016-10-06 21:02:28 +02:00
Jess Frazelle
81e99fad98 hack: update cherry-pick script to show subject when patch is split
Signed-off-by: Jess Frazelle <acidburn@google.com>
2016-10-06 11:50:39 -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
Jing Xu
b2b04090da Fix nil pointer issue when getting metrics from volume mounter
Currently it is possible that the mounter object stored in Mounted
Volume data structure in the actual state of kubelet volume manager is
nil if this information is recovered from state sync process. This will
cause nil pointer issue when calculating stats in volume_stat_calculator.
A quick fix is to not return the volume if its mounter is nil. A more
complete fix is to also recover mounter object when reconstructing the
volume data structure which will be addressed in PR #33616
2016-10-06 11:10:46 -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
Jordan Liggitt
82a099d92d
Simplify kubectl get --raw 2016-10-06 11:42:19 -04:00
gmarek
bb71f9473f Small update to scheduler benchmark 2016-10-06 17:26:39 +02:00
Hemant Kumar
4c0f3b8438 Update documentation for running e2e tests locally
The docs for running e2e tests locally needs to be updated.
check_node_count option has been removed and developers usually
need to perform additional steps do get it going.
2016-10-06 10:51:49 -04: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
Rodrigo Campos
0ff2f089ff Remove duplicated code in secret e2e tests
This patch just removes duplicated code in secret e2e tests.
2016-10-06 10:04:51 -03: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
Angus Salkeld
4a09ded01d Make kubectl label and annotate more consistent
Some of the main changes:
- add dryrun to annotate (can push this in a different PR if requested)
- use Complete(), Validate() and RunX()
- don't place dynamic variables in the options (only user options and args)
- call the NewBuilder() in the Run function.

You can now do diff between these files and they are as identical as possible.
2016-10-06 17:17:40 +10: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
Mike Danese
db963fc16d kubeadm: mark etcd flags as deprecated 2016-10-05 14:36:03 -07: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