Commit Graph

17717 Commits

Author SHA1 Message Date
ymqytw
83a0373926 copy eviction from internal clientset to release_1_5 clientset 2016-12-07 13:24:34 -08:00
Kubernetes Submit Queue
7d8d4eb057 Merge pull request #38304 from deads2k/cli-13-fix-validate
Automatic merge from submit-queue (batch tested with PRs 36140, 38304)

remove validation dependency on version negotiation

Things that just need a REST client or a bit of discovery information should not attempt to perform negotiation.  Doing so just limits the genericness of the client.

@kubernetes/sig-cli 
@fabianofranz this blocks the kubernetes-discovery work.
2016-12-07 13:18:10 -08:00
Kubernetes Submit Queue
84f03ef957 Merge pull request #36140 from guangxuli/k8s_extend_get_docker_auth
Automatic merge from submit-queue

make invocation ReadDockerConfigFile can handle .dockerconfigjson file

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

When **.docker/config.json** is used to authenticate docker registry, the data key **.dockerconfigjson** should be used if we want to save this kind of docker auth data into a secret. So this PR is mainly to make invocation `ReadDockerConfigFile `have ability to read  **.dockerconfigjson** file.
@liggitt
2016-12-07 12:55:47 -08:00
Kubernetes Submit Queue
08c0f7dded Merge pull request #27711 from xiangpengzhao/port-allocator-test
Automatic merge from submit-queue

Cover port_allocator_test with more conditions

The test cases of port_allocator_test should cover more conditions, such as `rangeAllocator.used.Bit`.
2016-12-07 12:14:36 -08:00
Kubernetes Submit Queue
2c7e1317f4 Merge pull request #36724 from YuPengZTE/devCtx
Automatic merge from submit-queue (batch tested with PRs 36543, 38189, 38289, 38291, 36724)

context.Context should be the first parameter of a function in vsphere

**What this PR does / why we need it**:
Change the position of the context.Context parameter.
**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**:
golint
**Release note**:

```release-note
```

Signed-off-by: yupeng <yu.peng36@zte.com.cn>
2016-12-07 11:40:21 -08:00
Kubernetes Submit Queue
8d518d36b5 Merge pull request #38289 from deads2k/fed-07-wire-auth
Automatic merge from submit-queue (batch tested with PRs 36543, 38189, 38289, 38291, 36724)

add authentication/authorization to kubernetes-discovery

Wires authentication and authorization into `kubernetes-discovery` and re-enables the `local-up-cluster.sh` along with proper permission granting for RBAC cases.

@sttts @liggitt
2016-12-07 11:40:17 -08:00
Kubernetes Submit Queue
28dc2f74ff Merge pull request #38189 from feiskyer/fix-attach
Automatic merge from submit-queue (batch tested with PRs 36543, 38189, 38289, 38291, 36724)

Kubelet: only check podUID when it is actually set

Fixes #38188.

cc/ @timstclair @yujuhong
2016-12-07 11:40:16 -08:00
Alejandro Escobar
1e84257691 fixed a few kublet typos. 2016-12-07 11:23:12 -08:00
Alejandro Escobar
759530536f type found with controller comment. 2016-12-07 10:55:02 -08:00
Kubernetes Submit Queue
0f2c6fc7fc Merge pull request #37009 from sjenning/fix-perms-with-fsgroup
Automatic merge from submit-queue (batch tested with PRs 38294, 37009, 36778, 38130, 37835)

fix permissions when using fsGroup

Currently, when an fsGroup is specified, the permissions of the defaultMode are not respected and all files created by the atomic writer have mode 777.  This is because in `SetVolumeOwnership()` the `filepath.Walk` includes the symlinks created by the atomic writer.  The symlinks have mode 777 when read from `info.Mode()`.  However, when the are chmod'ed later, the chmod applies to the file the symlink points to, not the symlink itself, resulting in the wrong mode for the underlying file.

This PR skips chmod/chown for symlinks in the walk since those operations are carried out on the underlying file which will be included elsewhere in the walk.

xref https://bugzilla.redhat.com/show_bug.cgi?id=1384458

@derekwaynecarr @pmorie
2016-12-07 10:45:16 -08:00
Kubernetes Submit Queue
440ed2cfa8 Merge pull request #38294 from liggitt/rate-limit
Automatic merge from submit-queue (batch tested with PRs 38294, 37009, 36778, 38130, 37835)

Re-use tested ratelimiter

The ratelimiter introduced in #35583 is not working correctly when called from multiple threads
This reverts to the tested ratelimiter we were previously using to unblock 1.5 (automated revert wasn't possible)
Ref #38273

reproducing test case:
```
func TestMultiThreadedBlocking(t *testing.T) {
	done := make(chan bool)

	// 100 QPS, burst of 100
	b := NewBucketWithRate(100, 100)

	go func() {
		defer close(done)
		fmt.Println(time.Now(), "Waiting for 1000 (should block for ~9-10 seconds)")
		b.Wait(1000)
		fmt.Println(time.Now(), "Got 1000")
	}()

	// give the request for 1000 plenty of time to take the tokens
	time.Sleep(2 * time.Second)
	fmt.Println(time.Now(), "Waiting for 1 (should wait until 1000 block is refilled)")
	b.Wait(1)
	fmt.Println(time.Now(), "Got 1 (should happen right after the wait for 1000 completes)")

	<-done
}

$ go test ./pkg/util/ratelimit/ -v -run TestMultiThreadedBlocking
=== RUN   TestMultiThreadedBlocking
2016-12-07 12:15:36.222133049 -0500 EST Waiting for 1000 (should block for ~9-10 seconds)
2016-12-07 12:15:38.222797752 -0500 EST Waiting for 1 (should wait until 1000 block is refilled)
2016-12-07 12:15:38.222897951 -0500 EST Got 1 (should happen right after the wait for 1000 completes)
2016-12-07 12:15:45.223125234 -0500 EST Got 1000
```

in contrast, the same test run against juju/ratelimit:
```
go test ./pkg/util/flowcontrol/ -v -run TestMultiThreadedBlocking
=== RUN   TestMultiThreadedBlocking
2016-12-07 12:32:56.796077782 -0500 EST Waiting for 1000 (should block for ~9-10 seconds)
2016-12-07 12:32:58.799159059 -0500 EST Waiting for 1 (should wait until 1000 block is refilled)
2016-12-07 12:33:05.801076002 -0500 EST Got 1000
2016-12-07 12:33:05.807510387 -0500 EST Got 1 (should happen right after the wait for 1000 completes)
--- PASS: TestMultiThreadedBlocking (9.01s)
```
2016-12-07 10:45:13 -08:00
deads2k
b658552947 remove validation dependency on version negotiation 2016-12-07 13:23:20 -05:00
Michail Kargakis
c82cae85f6 controller: set unavailableReplicas correctly when scaling down
deployment_controller.go:299] Error syncing deployment
e2e-tests-kubectl-2l7xx/e2e-test-nginx-deployment:
Deployment.extensions "e2e-test-nginx-deployment" is invalid:
status.unavailableReplicas: Invalid value: -1:
must be greater than or equal to 0

The validation error above occurs usually when a Deployment is
scaled down. In such a case we should default unavailableReplicas
to 0 instead of making an invalid api call.
2016-12-07 17:34:09 +01:00
Jordan Liggitt
1c89a10556 Re-use juju ratelimit
Reverts changes in cebfc821a4
2016-12-07 10:32:47 -05:00
Kubernetes Submit Queue
ce93c81029 Merge pull request #38092 from xilabao/fix-alias-conflict
Automatic merge from submit-queue (batch tested with PRs 35101, 38215, 38092)

fix alias conflict of clusterrolebinding

create_configmap alias is "cm"
2016-12-07 07:27:17 -08:00
Michail Kargakis
b3765c4df9 Backoff correctly when adopting replica sets/pods 2016-12-07 16:13:18 +01:00
Derek Carr
bcca0395cf Add generated artifacts for new flag 2016-12-07 10:09:57 -05:00
Derek Carr
5b2d1c2c25 Enable kernel memcg notification via additional flag 2016-12-07 10:09:41 -05:00
deads2k
798d3edabf add authentication/authorization to kubernetes-discovery 2016-12-07 09:33:43 -05:00
deads2k
8ae8bf02a4 regenerate informers 2016-12-07 07:54:04 -05:00
deads2k
97854b8de5 update informer generator 2016-12-07 07:48:24 -05:00
Dominika Hodovska
cb82ef8a60 API v1: ports are not required for all services 2016-12-07 12:20:28 +01:00
Kubernetes Submit Queue
34c873a748 Merge pull request #36711 from hongchaodeng/e4
Automatic merge from submit-queue (batch tested with PRs 38181, 38128, 36711)

etcd2: have prefix always prepended

The prefix issue is discussed in #36290.

This is fixing etcd2 behavior separately.

**release note**:
```
etcd2: have prefix always prepended
```
2016-12-07 03:09:34 -08:00
Kubernetes Submit Queue
490151ee50 Merge pull request #38181 from tanshanshan/remove-todo
Automatic merge from submit-queue (batch tested with PRs 38181, 38128, 36711)

Remove redundant conditional statement

<!--  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**:

1. remove redundant conditional statement
2. replace  errors.New(fmt.Sprintf with fmt.Errorf 

Thanks.

**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
```
2016-12-07 03:09:30 -08:00
Kubernetes Submit Queue
98a2808b94 Merge pull request #34643 from mbohlool/h2o
Automatic merge from submit-queue

Enable OpenAPI spec validation

Spec validation was failing on Jenkins. I am enabling it in this PR to figure out if we can get it pass. No review is necessary until all test passes.
2016-12-07 01:34:36 -08:00
Kubernetes Submit Queue
36d593c749 Merge pull request #38085 from yarntime/fix_typo_in_scale
Automatic merge from submit-queue (batch tested with PRs 37693, 38085)

fix typo in scale

fix typo.
2016-12-07 00:52:29 -08:00
Kubernetes Submit Queue
d6b9a7aa60 Merge pull request #37693 from wojtek-t/pipe_get_options_to_storage
Automatic merge from submit-queue (batch tested with PRs 37693, 38085)

Pipe get options to storage

Ref #37473
2016-12-07 00:52:26 -08:00
Pengfei Ni
1140d31d9b Kubelet: only check podUID when it is actually set 2016-12-07 16:35:25 +08:00
Brendan Burns
670b21e11c Display config map data, not byte count. 2016-12-06 22:36:40 -08:00
Zihong Zheng
19cf831086 kubedns: use initial resource listing as ready signal 2016-12-06 20:53:59 -08:00
Kubernetes Submit Queue
470222e0bb Merge pull request #38219 from mbohlool/openapi_fix
Automatic merge from submit-queue

Fix pods/log OpenAPI/Swagger spec to return string instead of v1.Pod

log operation is part of pod and had the assumption of returning a v1.Pod. First I added the support for an operation to be able to customize its return object then add the support to pods/log operation to return an string as an object sample.

Fixes #37881
Cc @kubernetes/sig-api-machinery
2016-12-06 19:50:47 -08:00
tanshanshan
c24dbf062e more readable 2016-12-07 11:35:50 +08:00
Kubernetes Submit Queue
97ae7ccb56 Merge pull request #31647 from mikedanese/register-tainted
Automatic merge from submit-queue

add a configuration for kubelet to register as a node with taints

and deprecate --register-schedulable

ref #28687 #29178

cc @dchen1107 @davidopp @roberthbailey
2016-12-06 19:07:54 -08:00
Kubernetes Submit Queue
6cfe041b53 Merge pull request #38200 from hongchaodeng/e
Automatic merge from submit-queue (batch tested with PRs 37032, 38119, 38186, 38200, 38139)

etcd2: remove unnecessary PrevValue in SetOption

ref: https://github.com/kubernetes/kubernetes/issues/37994

Summary:
- PrevValue is set in HTTP header, and large value (>1MB) could exceed check limit
- We don't need PrevValue indeed since we already use PrevIndex in SetOptions and each PrevIndex corresponds to each PrevValue.

I don't really think we need extra tests for this. There is already test for GuaranteedUpdate covering its use cases.
2016-12-06 18:29:38 -08:00
Kubernetes Submit Queue
224893c5dc Merge pull request #38186 from sttts/sttts-remove-MasterServiceNamespace
Automatic merge from submit-queue (batch tested with PRs 37032, 38119, 38186, 38200, 38139)

Remove genericapiserver.Options.MasterServiceNamespace

Deprecated and not used anymore.
2016-12-06 18:29:37 -08:00
Kubernetes Submit Queue
cbf497b749 Merge pull request #38119 from liggitt/long-running
Automatic merge from submit-queue (batch tested with PRs 37032, 38119, 38186, 38200, 38139)

Detect long-running requests from parsed request info

Follow up to https://github.com/kubernetes/kubernetes/pull/36064

Uses parsed request info to more tightly match verbs and subresources

Removes regex-based long-running request path matching (which is easily fooled)

```release-note
The --long-running-request-regexp flag to kube-apiserver is deprecated and will be removed in a future release. Long-running requests are now detected based on specific verbs (watch, proxy) or subresources (proxy, portforward, log, exec, attach).
```
2016-12-06 18:29:35 -08:00
Kubernetes Submit Queue
f527f44019 Merge pull request #37032 from gnufied/attach-detach-test
Automatic merge from submit-queue

Add integration tests for desire state of world populator

Add integration tests for desire state of world populator
    
This adds tests for code introduced here :
https://github.com/kubernetes/kubernetes/issues/26994
    
Via integration test we can now verify that if pod delete
event is somehow missed by AttachDetach controller - it still
get cleaned up by Desired State of World populator.
2016-12-06 18:23:59 -08:00
Kubernetes Submit Queue
d4d6a32e9b Merge pull request #38123 from deads2k/api-48-remove-fields
Automatic merge from submit-queue (batch tested with PRs 38194, 37594, 38123, 37831, 37084)

remove unnecessary fields from genericapiserver config

Cleans up some unnecessary fields in the genericapiserver config.
2016-12-06 17:41:33 -08:00
Kubernetes Submit Queue
aeb81f2488 Merge pull request #37594 from thockin/fix-old-iptables-mark-extra-zeroes
Automatic merge from submit-queue (batch tested with PRs 38194, 37594, 38123, 37831, 37084)

Better compat with very old iptables (e.g. CentOS 6)

Fixes reported issue with CentOS6 iptables 1.4.7 (ancient)

Older iptables expanded things like 0x4000 into 0x00004000, which defeats the
fallback "check" logic.

Fixes #37416
2016-12-06 17:41:31 -08:00
tanshanshan
c76cd49da1 remove redundant condition 2016-12-07 08:39:40 +08:00
Kubernetes Submit Queue
65ed735d4f Merge pull request #38124 from kubernetes/Dec/gluster
Automatic merge from submit-queue

Fix GCI mounter issue
2016-12-06 16:21:06 -08:00
Kubernetes Submit Queue
d40710988f Merge pull request #38136 from deads2k/auth-11-join-certs
Automatic merge from submit-queue (batch tested with PRs 36990, 37494, 38152, 37561, 38136)

join client CA bundles

Last commit grabs client CA bundles from disparate parts of the auth config and makes a pool that contains all of them.

I suspect a rebase broke this because of ordering.  I'll keep these separate to make it easier for me to debug.
2016-12-06 14:13:37 -08:00
Kubernetes Submit Queue
3c1a8f05d7 Merge pull request #36990 from bboreham/never-hairpin-all-interfaces
Automatic merge from submit-queue (batch tested with PRs 36990, 37494, 38152, 37561, 38136)

Never set hairpin mode on every interface

<!--  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**:

Abandon setting hairpin mode if finding the peer interface fails; simply return an error.

There are many reasons why finding the peer could fail - "`ethtool` not installed" is popular.  Going ahead and changing the hairpin setting on every bridge-connected interface on the machine may have unwanted effects on other things installed on the machine (e.g. https://github.com/kubernetes/kops/issues/879)

**Which issue this PR fixes** : fixes #19766

**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
Kubelet will no longer set hairpin mode on every interface on the machine when an error occurs in setting up hairpin for a specific interface.
```

/cc @thockin who appears to have requested this implementation at https://github.com/kubernetes/kubernetes/pull/13628#issuecomment-138128180
2016-12-06 14:13:28 -08:00
mbohlool
a9cee59f69 Fix pods/log OpenAPI/Swagger spec to return string instead of v1.Pod 2016-12-06 13:59:20 -08:00
Robert Roland
2cb5b5ec0e Applying changes per PR feedback -
Check for error conditions from the vSphere API and return the err if one occurs. The vSphere API does not return an err for unauthenticated users, it just returns a nil user object.
2016-12-06 13:12:49 -08:00
Jing Xu
896e0b867e Fix unmount issue cuased by GCI mounter
this is a workaround for the unmount device issue caused by gci mounter. In GCI cluster, if gci mounter is used for mounting, the container started by mounter script will cause additional mounts created in the container. Since these mounts are irrelavant to the original mounts, they should be not considered when checking the mount references. By comparing the mount path prefix, those additional mounts can be filtered out.

Plan to work on better approach to solve this issue.
2016-12-06 12:24:07 -08:00
Seth Jennings
51ae5a34b9 fix permissions when using fsGroup 2016-12-06 14:04:16 -06:00
Mike Danese
3352fd161f autogenerated 2016-12-06 10:32:54 -08:00
Mike Danese
e225625a80 add a configuration for kubelet to register as a node with taints
and deprecate register-schedulable
2016-12-06 10:32:54 -08:00
Hongchao Deng
7a0176da57 etcd2: remove unnecessary PrevValue in SetOption 2016-12-06 09:24:49 -08:00