Commit Graph

41397 Commits (9b726d6b8f7e71bf67ea1ff4106a56738f3649f0)

Author SHA1 Message Date
Kubernetes Submit Queue 32dad7ed85 Merge pull request #39252 from spxtr/bazelrules
Automatic merge from submit-queue

Add bazel-build and bazel-test to the Makefile.

Lets make these the source of truth rather than some script living in test-infra. That way we can test changes in presubmit.
2016-12-27 13:58:53 -08:00
Jing Xu 3fbf68ef68 Add path exist check in getPodVolumePathListFromDisk
Add the path exist check in the function. If the path does not exist,
return empty list and nil error.
2016-12-27 13:32:13 -08:00
Kubernetes Submit Queue 9ce8f10a4d Merge pull request #39172 from foxish/fix-help
Automatic merge from submit-queue

Add PDB to kubectl get --help.

**What this PR does / why we need it**: Adds PDB to kubectl get --help

**Which issue this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close that issue when PR gets merged)*: Fixes https://github.com/kubernetes/kubernetes/issues/39100

**Release note**:

```release-note
NONE
```

/cc @saad-ali @mwielgus
2016-12-27 13:19:36 -08:00
Kubernetes Submit Queue b6d7fa7d5f Merge pull request #39021 from wojtek-t/retry_conn_reset_by_peer
Automatic merge from submit-queue

Automatically retry "connection reset by peer" errors

Ref #38776
2016-12-27 13:19:27 -08:00
Kubernetes Submit Queue 9c2bd62159 Merge pull request #39206 from thockin/allocator-repair-race
Automatic merge from submit-queue (batch tested with PRs 39250, 39206)

WIP: work around for IP and port Allocator repair race

Fixes #37488

WIP: This does the IP allocator but not the port allocator yet.  Sending for review before I clone the deltas for ports.

Idea: force the repair loop to detect a leak 3 times in a row before actually releasing the IP.  That should allow any distributed races to resolve.  It's a little hacky, but without mutual exclusion or proper transactions, it works.
2016-12-27 12:24:08 -08:00
spxtr 1dbfaa8ef6 Add bazel-build and bazel-test to the Makefile. 2016-12-27 11:48:23 -08:00
Kubernetes Submit Queue 87d6fe4e55 Merge pull request #39250 from MrHohn/add-dns-assignees
Automatic merge from submit-queue

Adds assignees for kube-dns

Adds assignees for auto-assigning. Does not add assignees for pkg/dns folder as we are moving it out.

@thockin
2016-12-27 11:22:27 -08:00
Zihong Zheng c2771def45 Adds assignees for kube-dns 2016-12-27 09:50:38 -08:00
Kubernetes Submit Queue 5402b4de48 Merge pull request #39034 from MrHohn/dns-autoscale-link
Automatic merge from submit-queue

Adds kubernetes.io link for dns autoscaler addon

The [official page for DNS Horizontal Autoscaling](http://kubernetes.io/docs/tasks/administer-cluster/dns-horizontal-autoscaling/) is available on kubernetes.io after 1.5 release. Putting the link into this dns autoscaler addon folder as well.

@bowei
2016-12-27 09:47:13 -08:00
Kubernetes Submit Queue 8c28bb3a5a Merge pull request #37659 from mwielgus/update-namespace
Automatic merge from submit-queue

Enable update tests in federated namespace controller

Previously it was disabled because of flakiness.

cc: @nikhiljindal @madhusudancs
2016-12-27 08:30:35 -08:00
Wojciech Tyczynski ba07a36651 Avoid copying volumes in scheduler 2016-12-27 16:11:11 +01:00
Wojciech Tyczynski d1292a7397 Optimize memory allocations in controller manager 2016-12-27 16:11:11 +01:00
Kubernetes Submit Queue 7b134995e5 Merge pull request #37513 from xiaolou86/podAffinity
Automatic merge from submit-queue

Optimize pod affinity when predicate

Optimize by returning as early as possible to avoid invoking priorityutil.PodMatchesTermsNamespaceAndSelector.
2016-12-27 06:46:54 -08:00
Kubernetes Submit Queue a1265e0864 Merge pull request #37538 from resouer/fix-e2e-respect-id
Automatic merge from submit-queue

CreateNodeSelectorPods should respect parameter

Fix (1): `CreateNodeSelectorPods` should respect parameter `id`.

The existing e2e does not break because it happened use "node-selector" as id, which  is the same as the hard coded value.

Fix (2): The current `CreateNodeSelectorPods` does not use `nodeSelector` parameter, it hard coded a label instead.

The reason current e2e does not influenced because we happened use the same label: https://github.com/kubernetes/kubernetes/blob/master/test/e2e/cluster_size_autoscaling.go#L177

Found these bugs during testing #36238
2016-12-27 04:43:46 -08:00
Wojciech Tyczynski 9a4828821d Retry connection reset by peer 2016-12-27 10:01:42 +01:00
Tim Hockin 64f5b050a1 Fix race in service nodeport allocator repair loop 2016-12-26 21:59:28 -08:00
Tim Hockin 103b7c01c1 Add a ForEach() to port allocator 2016-12-26 21:59:28 -08:00
Tim Hockin 0777ecd030 Fix race in service IP allocation repair loop 2016-12-26 21:59:27 -08:00
Tim Hockin 2b5a10f8ff Add a ForEach() to IP allocator 2016-12-26 21:59:27 -08:00
Tim Hockin f75bed8682 Add a ForEach() to bitmap allocator 2016-12-26 21:59:27 -08:00
Kubernetes Submit Queue 6fd22784a4 Merge pull request #38078 from resouer/fix-unmount
Automatic merge from submit-queue

Raise markVolMountedErr instead of unmountErr

Hit this when debugging https://github.com/kubernetes/kubernetes/issues/37657

We wrongly raised `unmountErr` when `markVolMountedErr` occurs.
2016-12-26 02:33:55 -08:00
Harry Zhang 5a7661b483 Raise markVolMountedErr instead of mount err 2016-12-26 07:52:51 +00:00
Kubernetes Submit Queue 1ee7163308 Merge pull request #36802 from brendandburns/i18n
Automatic merge from submit-queue

Begin paths for internationalization in kubectl

This is just the first step, purposely simple so we can get the interface correct.

@kubernetes/sig-cli @deads2k
2016-12-24 13:09:12 -08:00
Marko Luksa 764e8bd6c6 Kubectl top now also accepts short forms for "node" and "pod" ("no" and "po") 2016-12-24 17:25:08 +01:00
Klaus Ma 3bfe14b316 Add TLS conf for Go1.7 2016-12-24 15:36:45 +08:00
Brendan Burns 277306449b Add initial translation support. 2016-12-23 20:45:52 -08:00
Kubernetes Submit Queue 24b3f6c494 Merge pull request #39181 from lukaszo/defaulting
Automatic merge from submit-queue (batch tested with PRs 38460, 39181)

Increase number of iterations in TestDefaulting
2016-12-23 10:51:28 -08:00
Kubernetes Submit Queue 1d7538f87e Merge pull request #38460 from xilabao/remove-duplicate-wrapUpdatedObjectInfo
Automatic merge from submit-queue

remove wrapUpdatedObjectInfo from rbac storage

update by TODO
2016-12-23 10:18:12 -08:00
Kubernetes Submit Queue b3fb6cb5fb Merge pull request #35191 from SamiHiltunen/commas-in-secrets
Automatic merge from submit-queue

kubectl: commas in --from-literal on secret creation

Closes #35185

``` release-note
Fixes an issue where commas were not accepted in --from-literal flags when creating secrets. Passing multiple values separated by a comma in a single --from-literal flag is no longer supported. Please use multiple --from-literal flags to provide multiple values.
```
2016-12-23 08:04:50 -08:00
Kubernetes Submit Queue 1c2a23e48c Merge pull request #39014 from resouer/fix-nil-glusterfs
Automatic merge from submit-queue (batch tested with PRs 39029, 39014)

[Glusterfs Vol Plugin]: Check kube client is invalid and return error

Fixes: #38939

In volume plugins, we need to create a kube client to make api call. And this kube client can be nil when, for example, wrong api-server configuration, but kubelet should not crash in this case.

I have also checked other plugins and found only glusterfs need this fix.
2016-12-23 06:39:29 -08:00
Michail Kargakis fa02986c80 examples: use 'kubectl scale' in cockroach statefulset example 2016-12-23 15:37:18 +01:00
Kubernetes Submit Queue 67a3cd3a58 Merge pull request #39029 from kad/issue75
Automatic merge from submit-queue

Fix cloud-config name in test case

**What this PR does / why we need it**: fixes default cloud-config name in test cases for reset.

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

**Special notes for your reviewer**:

**Release note**:
```release-note
NONE
```
2016-12-23 06:21:27 -08:00
Kubernetes Submit Queue 9d38145cfb Merge pull request #37887 from bruceauyeung/k8s-branch-use-bytes-buffer-instead-of-append-for-error-string-concat
Automatic merge from submit-queue

use bytes.Buffer instead of append for error string concat

**What this PR does / why we need it**:
1. in my benchmark test, `bytes.Buffer` takes much less time ( about 1:1000 ) than string append( `+=` ). 
>BenchmarkAppendConcat-4           100000            151438 ns/op          578181 B/op          2 allocs/op
BenchmarkBufferSprintf-4         3000000               487 ns/op              65 B/op          3 allocs/op
BenchmarkBufferConcat-4          5000000               271 ns/op              47 B/op          1 allocs/op

the benchmark codes is here  https://play.golang.org/p/LS52zGuwZN

2. in our `RunInitMasterChecks`, `RunJoinNodeChecks` there are lots of preflight checks. they may result in a huge error message. so `bytes.Buffer` can bring considerable performance enhancement in the worst of conditions.

beyond that, this PR 
1. fix an exported struct comment,
1. and use `found = append( found, errs...)` instead of for loop for simplicity.


Signed-off-by: bruceauyeung <ouyang.qinhua@zte.com.cn>
2016-12-23 03:56:32 -08:00
Kubernetes Submit Queue 48793a48d4 Merge pull request #34273 from wlan0/master
Automatic merge from submit-queue (batch tested with PRs 39093, 34273)

start breaking up controller manager into two pieces

This PR addresses: https://github.com/kubernetes/features/issues/88

This commit starts breaking the controller manager into two pieces, namely,
1. cloudprovider dependent piece
2. coudprovider agnostic piece

the controller manager has the following control loops -
- nodeController
- volumeController
- routeController
- serviceController
- replicationController
- endpointController
- resourceQuotaController
- namespaceController
- deploymentController 
  etc..

among the above controller loops,
- nodeController
- volumeController
- routeController
- serviceController

are cloud provider dependent. As kubernetes has evolved tremendously, it has become difficult
for different cloudproviders (currently 8), to make changes and iterate quickly. Moreover, the
cloudproviders are constrained by the kubernetes build/release lifecycle. This commit is the first
step in moving towards a kubernetes code base where cloud providers specific code will move out of
the core repository, and will be maintained by the cloud providers themselves.

I have added a new cloud provider called "external", which signals the controller-manager that
cloud provider specific loops are being run by another controller. I have added these changes in such
a way that the existing cloud providers are not affected. This change is completely backwards compatible, and does not require any changes to the way kubernetes is run today.

Finally, along with the controller-manager, the kubelet also has cloud-provider specific code, and that will be addressed in a different commit/issue.

@alena1108 @ibuildthecloud @thockin @dchen1107 

**Special notes for your reviewer**:

@thockin - Im making this **WIP** PR to ensure that I don't stray too far from everyone's view of how we should make this change. As you can see, only one controller, namely `nodecontroller` can be disabled with the `--cloudprovider=external` flag at the moment. I'm working on cleaning up the `rancher-controller-manger` that I wrote to test this.

Secondly, I'd like to use this PR to address cloudprovider specific code in kubelet and api-server.

**Kubelet**
Kubelet uses provider specific code for node registration and for checking node-status. I thought of two ways to divide the kubelet: 
- We could start a cloud provider specific kubelet on each host as a part of kubernetes, and this cloud-specific-kubelet does node registration and node-status checks. 
- Create a kubelet plugin for each provider, which will be started by kubelet as a long running service. This plugin can be packaged as a binary.

I'm leaning towards the first option. That way, kubelet does not have to manage another process, and we can offload the process management of the cloud-provider-specific-kubelet to something like systemd. 

@dchen1107 @thockin what do you think?

**Kube-apiserver**

Kube-apiserver uses provider specific code for distributing ssh keys to all the nodes of a cluster. Do you have any suggestions about how to address this? 

**Release note**:

``` release-note
```
2016-12-23 01:25:28 -08:00
Kubernetes Submit Queue 58d319e589 Merge pull request #39093 from dgoodwin/token-default
Automatic merge from submit-queue

kubeadm: Default to using token discovery.

Recent changes to support multiple methods for discovery meant that
"kubeadm init" no longer was sufficient and users would need to add
"--discovery token://" to achieve the same results.

Instead lets assume discovery if the user does not specify anything else
to maintain parity and the brevity of our original instructions.


**Release note**:

```release-note
NONE
```

CC @mikedanese @luxas
2016-12-23 01:20:00 -08:00
Kubernetes Submit Queue 5f0ece92de Merge pull request #39008 from brendandburns/unicode
Automatic merge from submit-queue

Support loading UTF16 files if a byte-order-mark is present

Add support in kubectl for loading UTF16 encoded files if they have a correct BOM (Byte-Order-Mark https://en.wikipedia.org/wiki/Byte_order_mark) at the beginning
of the file. Falls back on UTF8 encoding, if no understandable BOM is present.

Fixes part of https://github.com/kubernetes/kubernetes/issues/39007

@fabianofranz @deads2k @kubernetes/sig-cli-misc
2016-12-22 22:11:13 -08:00
Kubernetes Submit Queue c200f27245 Merge pull request #38090 from xingzhou/kube-37654
Automatic merge from submit-queue (batch tested with PRs 38920, 38090)

Improve error message for name/label validation.

Instead of just providing regex in name/label validation error output, we need to add the naming rules of the name/label, which is more end-user readable.

Fixed #37654
2016-12-22 22:00:30 -08:00
Kubernetes Submit Queue ff8e8c6778 Merge pull request #38920 from k82cn/k8s_37979
Automatic merge from submit-queue

Add event when failed to open local port.

fixes #37979 .
2016-12-22 21:32:27 -08:00
Pengfei Ni 16bcafb775 Update bazel 2016-12-23 11:54:16 +08:00
Kubernetes Submit Queue 9541c38f39 Merge pull request #37296 from ncdc/skip-dash-in-protobuf-tags
Automatic merge from submit-queue

Fix skipping - protobuf fields

**What this PR does / why we need it**: fixes the protobuf generator to skip fields with a protobuf tag of `"-"`

Match changes in https://github.com/kubernetes/gengo/pull/19

I couldn't get godeps to work to vendor this change in from gengo, so I made the same edits manually in cmd/libs/go2idl. A task for another day...

@smarterclayton
2016-12-22 19:36:25 -08:00
Kubernetes Submit Queue f1aa025837 Merge pull request #38655 from abrarshivani/fsGroupforvSphere
Automatic merge from submit-queue (batch tested with PRs 39059, 39175, 35676, 38655)

Fix fsGroup to vSphere

**What this PR does / why we need it**:
Fixes #34039 by adding support for fsGroup to vSphere Volume. 

**Special notes for your reviewer**:
Tested with example from http://stackoverflow.com/questions/35213589/docker-container-with-non-root-user-deployed-in-google-container-engine-can-not
Before this fix got error ```Permission Denied```.

**Release note**:

`NONE`

cc @pdhamdhere @kerneltime @BaluDontu
2016-12-22 18:50:34 -08:00
Kubernetes Submit Queue af54124f23 Merge pull request #35676 from krmayankk/contr-ref
Automatic merge from submit-queue (batch tested with PRs 39059, 39175, 35676, 38655)

ReplicaSet has onwer ref of the Deployment that created it

**What this PR does / why we need it**:
This enabled garbage collection for ReplicaSets and ensures they are owned by their respective Deployment objects.

fixes https://github.com/kubernetes/kubernetes/issues/33845

This is an initial PR to get feedback. Will update this quickly with unit tests if this seems like in the right direction
2016-12-22 18:50:32 -08:00
Kubernetes Submit Queue eda64e885f Merge pull request #39175 from kubernetes/revert-39146-make-fluentd-critical
Automatic merge from submit-queue (batch tested with PRs 39059, 39175, 35676, 38655)

Revert "Make fluentd pods critical"

Reverts kubernetes/kubernetes#39146
2016-12-22 18:50:30 -08:00
Pengfei Ni 1a67e0ee7a Do not test linux-specific cases on OSX in dockertools 2016-12-23 10:37:10 +08:00
Kubernetes Submit Queue d04fd1bd6c Merge pull request #39059 from bprashanth/static_evict
Automatic merge from submit-queue

Don't evict static pods

A follow up to https://github.com/kubernetes/kubernetes/pull/38914, the desired behavior is to:    

1. deprioritize critical pods
2. never evict static pods

I don't think 1 needs a cherrypick if 2 goes in. 

partial fix for #https://github.com/kubernetes/kubernetes/issues/38322
2016-12-22 18:21:42 -08:00
Łukasz Oleś 84d0a5d1d9 Increase number of iterations in TestDefaulting
Fixes #39180
2016-12-23 03:04:32 +01:00
Kubernetes Submit Queue ae4db79d1c Merge pull request #39118 from bowei/cleanup-dns
Automatic merge from submit-queue (batch tested with PRs 39006, 39078, 37188, 39118)

Cleanup dns

* Remove hostname endpoints annotation (was beta feature)
* Remove references to non-client-go API
* Replaces references to internal kubernetes API with client-go.
2016-12-22 17:47:31 -08:00
Kubernetes Submit Queue 0a750599fd Merge pull request #37188 from NickrenREN/context_test
Automatic merge from submit-queue (batch tested with PRs 39006, 39078, 37188, 39118)

add test functions in context_test.go
2016-12-22 17:47:30 -08:00
Kubernetes Submit Queue 7f60e1dc04 Merge pull request #39078 from wojtek-t/fix_missing_watch_events
Automatic merge from submit-queue (batch tested with PRs 39006, 39078, 37188, 39118)

Fix bug of missing random watch events in the event stream

Fix #39072
2016-12-22 17:47:28 -08:00
Andy Goldstein f0247ea595 Fix skipping - protobuf fields
Match changes in https://github.com/kubernetes/gengo/pull/19
2016-12-22 20:45:05 -05:00