Commit Graph

46206 Commits (7664b97ed2f40bdbfd1a4de54ccee2390f509709)

Author SHA1 Message Date
Tim Hockin 7664b97ed2 Add tests for kube-proxy healthcheck, fix bug
Adding test cases for HC updates found a bug with an update that
simultaneously removes one port and adds another.  Map iteration is
randomized, so sometimes no HC would be created.
2017-04-04 20:11:06 -07:00
Kubernetes Submit Queue 2db4affb9d Merge pull request #44056 from thockin/proxy-sync-reason
Automatic merge from submit-queue

add a reason code to syncProxyRules

part of async prep
2017-04-04 19:56:56 -07:00
Kubernetes Submit Queue 3fc950ee38 Merge pull request #44051 from thockin/proxy-rename-functions
Automatic merge from submit-queue

Rename functions for congruence

part of async cleanup
2017-04-04 19:14:11 -07:00
Kubernetes Submit Queue 7e18392f16 Merge pull request #43671 from k82cn/skip_e2e_4_mac
Automatic merge from submit-queue

Skip e2e test for Mac.

fixes #36792
2017-04-04 18:27:25 -07:00
Kubernetes Submit Queue 643355356e Merge pull request #44055 from thockin/proxy-save-all-services
Automatic merge from submit-queue (batch tested with PRs 42288, 44055)

save allServices in prep for async iptables

@wojtek-t
2017-04-04 17:39:20 -07:00
Kubernetes Submit Queue d6cde8c4ce Merge pull request #42288 from chupman/comment-fix
Automatic merge from submit-queue (batch tested with PRs 42288, 44055)

Fixed inaccurate comments for Secret and ConfigMap

**What this PR does / why we need it**:
Updates the comments for ConfigMap and Secret in types.go to correspond to the regex used in validation.go
**Which issue this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close that issue when PR gets merged)*: fixes #
Fixes #42203
**Special notes for your reviewer**:

**Release note**:

```release-note 
None
```
2017-04-04 17:39:18 -07:00
Kubernetes Submit Queue 5ef8148b5e Merge pull request #41929 from abrarshivani/fstype_in_storage_class
Automatic merge from submit-queue (batch tested with PRs 44008, 41929)

vSphere Cloud Provider: Fstype in storage class

This PR does following,

1. Adds fstype support in storage class for vSphere Cloud Provider.
2. Modify examples to include fstype in storage class.
3. Adds fstype support in storage class for Photon Controller Cloud Provider (@luomiao)

Internally reviewed [here](https://github.com/vmware/kubernetes/pull/88).

cc @pdhamdhere @tusharnt @kerneltime @BaluDontu @divyenpatel @luomiao
2017-04-04 16:50:20 -07:00
Kubernetes Submit Queue fa30e46932 Merge pull request #44008 from ixdy/bazel-rules-go
Automatic merge from submit-queue (batch tested with PRs 44008, 41929)

Bump rules_go to latest

**What this PR does / why we need it**: updates the Bazel go_rules dependency which provides several important bugfixes and feature enhancements. It's still using go1.7.5, so all tests should still pass.

**Release note**:

```release-note
NONE
```

/assign @mikedanese @spxtr
2017-04-04 16:50:18 -07:00
Kubernetes Submit Queue 3a3dc827e4 Merge pull request #43467 from tvansteenburgh/gpu-support
Automatic merge from submit-queue (batch tested with PRs 44047, 43514, 44037, 43467)

Juju: Enable GPU mode if GPU hardware detected

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

Automatically configures kubernetes-worker node to utilize GPU hardware when such hardware is detected.

layer-nvidia-cuda does the hardware detection, installs CUDA and Nvidia
drivers, and sets a state that the k8s-worker can react to.

When gpu is available, worker updates config and restarts kubelet to
enable gpu mode. Worker then notifies master that it's in gpu mode via
the kube-control relation.

When master sees that a worker is in gpu mode, it updates to privileged
mode and restarts kube-apiserver.

The kube-control interface has subsumed the kube-dns interface
functionality.

An 'allow-privileged' config option has been added to both worker and
master charms. The gpu enablement respects the value of this option;
i.e., we can't enable gpu mode if the operator has set
allow-privileged="false".

**Special notes for your reviewer**:

Quickest test setup is as follows:
```bash
# Bootstrap. If your aws account doesn't have a default vpc, you'll need to
# specify one at bootstrap time so that juju can provision a p2.xlarge.
# Otherwise you can leave out the --config "vpc-id=vpc-xxxxxxxx" bit.
juju bootstrap --config "vpc-id=vpc-xxxxxxxx" --constraints "cores=4 mem=16G root-disk=64G" aws/us-east-1 k8s

# Deploy the bundle containing master and worker charms built from
# https://github.com/tvansteenburgh/kubernetes/tree/gpu-support/cluster/juju/layers
juju deploy cs:~tvansteenburgh/bundle/kubernetes-gpu-support-3

# Setup kubectl locally
mkdir -p ~/.kube
juju scp kubernetes-master/0:config ~/.kube/config
juju scp kubernetes-master/0:kubectl ./kubectl

# Download a gpu-dependent job spec
wget -O /tmp/nvidia-smi.yaml https://raw.githubusercontent.com/madeden/blogposts/master/k8s-gpu-cloud/src/nvidia-smi.yaml

# Create the job
kubectl create -f /tmp/nvidia-smi.yaml

# You should see a new nvidia-smi-xxxxx pod created
kubectl get pods

# Wait a bit for the job to run, then view logs; you should see the
# nvidia-smi table output
kubectl logs $(kubectl get pods -l name=nvidia-smi -o=name -a)
```

kube-control interface: https://github.com/juju-solutions/interface-kube-control
nvidia-cuda layer: https://github.com/juju-solutions/layer-nvidia-cuda
(Both are registered on http://interfaces.juju.solutions/)

**Release note**:
```release-note
Juju: Enable GPU mode if GPU hardware detected
```
2017-04-04 14:33:26 -07:00
Kubernetes Submit Queue 617464bdf6 Merge pull request #44037 from dims/update-boltdb-dependency
Automatic merge from submit-queue (batch tested with PRs 44047, 43514, 44037, 43467)

Update boltdb dependency to fix golang 1.7 intermittent failures

We have a old boltdb/bolt, etcd has moved to newer boltdb, so we should
do the same. Specifically this change needs to be in our tree:
92410e0673

as this fixes intermittent issues we see in our CI runs. So in this
PR, we vendor the v1.3.0 version of boltdb/bolt.

Fixes #43973
2017-04-04 14:33:24 -07:00
Kubernetes Submit Queue 89875ccb40 Merge pull request #43514 from zjj2wry/006
Automatic merge from submit-queue (batch tested with PRs 44047, 43514, 44037, 43467)

unit test for kubectl config use-context

**What this PR does / why we need it**:
unit test for kubectl config use-context

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

**Special notes for your reviewer**:
think you

**Release note**:

```release-note
```
2017-04-04 14:33:22 -07:00
Kubernetes Submit Queue 1a43fd0a63 Merge pull request #44047 from yujuhong/dont_panic
Automatic merge from submit-queue (batch tested with PRs 44047, 43514, 44037, 43467)

Check the error before parsing the apiversion

This fixes #44027
2017-04-04 14:33:20 -07:00
Kubernetes Submit Queue 95289ff239 Merge pull request #42518 from mtanino/issue/42517
Automatic merge from submit-queue

get-kube-local.sh checks pods with option "--namespace=kube-system"

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

Local cluster creation using get-kube-local.sh is never finished.
The get-kube-local.sh monitors running_count of pods such as etcd,
master and kube-proxy, but these pods are created under the namespace
kube-system. Therefore kubectl can't find these pods then cluster
creation isn't completed.

The get-kube-local.sh should monitor created pods with option
"--namespace=kube-system".

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




**Release note**: 

```
`NONE`
```
2017-04-04 13:22:45 -07:00
Chris Hupman dc4b8e3496 Fixed inaccurate comments for Secret and ConfigMap
Fixes #42203

ran documentation update scripts in hack folder

Signed-off-by: Chris Hupman <chupman@us.ibm.com>
2017-04-04 19:42:08 +00:00
Tim Hockin af9a5321b5 save allServices in prep for async iptables 2017-04-04 12:39:39 -07:00
Tim Hockin 92b880c2a9 add a reason code to syncProxyRules 2017-04-04 12:35:38 -07:00
Miao Luo 72a27daa3c Adds fstype support in storage class for Photon Cloud Provider. 2017-04-04 12:17:52 -07:00
Kubernetes Submit Queue 879f8e0c9c Merge pull request #42182 from spxtr/fatalunit
Automatic merge from submit-queue

Change an Errorf to a Fatalf to prevent a panic.

In #37982 we see that if this error is hit then we will panic on the next line. Lets use `Fatalf` where appropriate :)

This does *not* fix the flake, since that's caused by the test assuming that a particular port is free.
2017-04-04 12:14:21 -07:00
Tim Hockin 099e55c284 Rename functions for congruence 2017-04-04 12:07:53 -07:00
Kubernetes Submit Queue 4d8ffb23ef Merge pull request #43985 from liggitt/kubeapiserver-owners
Automatic merge from submit-queue

add liggitt to kubeapiserver owners
2017-04-04 11:23:36 -07:00
Kubernetes Submit Queue faf2eca226 Merge pull request #42916 from dashpole/misleading_log
Automatic merge from submit-queue

Clearer ImageGC failure errors.  Fewer events.

Addresses #26000.  Kubelet often "fails" image garbage collection if cAdvisor has not completed the first round of stats collection.  Don't create events for a single failure, and make log messages more specific.

@kubernetes/sig-node-bugs
2017-04-04 11:23:32 -07:00
Kubernetes Submit Queue 1b85aed461 Merge pull request #44011 from calebamiles/1.6.1-release-notes-toc
Automatic merge from submit-queue

Fixes links in CHANGELOG.md table of contents

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

Fixes TOC in `CHANGELOG.md`

**Special notes for your reviewer**:

`NONE`

**Release note**:

`NONE`
2017-04-04 10:38:26 -07:00
Kubernetes Submit Queue e2aa686a25 Merge pull request #43945 from mikkeloscar/storage-default-beta
Automatic merge from submit-queue

Remove 'beta' from default storage class annotation (storage/util)

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

This is a follow up to: #42991 where I believe this file was overlooked.

It removes `beta` from the default storageclass annotation.

Without this fix you are not able to specify a default storage class like this:

```yaml
apiVersion: storage.k8s.io/v1
 kind: StorageClass
 metadata:
   name: standard
  annotations:
    storageclass.kubernetes.io/is-default-class: "true"
 provisioner: kubernetes.io/aws-ebs
 parameters:
   type: gp2
```

because the annotation is ignored in: https://github.com/kubernetes/kubernetes/blob/master/plugin/pkg/admission/storageclass/default/admission.go#L129

**Special notes for your reviewer**:


**Release note**:

```release-note
None
```

/cc @jsafrane
2017-04-04 10:38:17 -07:00
Kubernetes Submit Queue ae57772988 Merge pull request #44017 from justinsb/permissions_log_dump
Automatic merge from submit-queue

cluster/log-dump - chmod files before dumping

We make the files world-readable, so that installation techniques that
lock down the logfiles can still be dumped.

Issue https://github.com/kubernetes/test-infra/issues/2397

```release-note
NONE
```
2017-04-04 09:52:25 -07:00
Yu-Ju Hong 19c8b2fb0e Check the error before parsing the apiversion 2017-04-04 09:38:44 -07:00
Kubernetes Submit Queue 12fbc9083e Merge pull request #43625 from mbruzek/cdk-load-balancer-update
Automatic merge from submit-queue

Adding more proxy options and header to nginx load-balancer.

**What this PR does / why we need it**: The kubeapi-load-balancer uses nginx to proxy commands to the kube-apiserver. It currently does not support SPDY and therefore the `kubectl exec` command is broken.

**Which issue this PR fixes** : 
fixes https://github.com/juju-solutions/bundle-canonical-kubernetes/issues/226
fixes https://github.com/juju-solutions/bundle-canonical-kubernetes/issues/201

**Special notes for your reviewer**: This only changes the nginx configuration no code change was required.

**Release note**:
```release-note
Using http2 in kubeapi-load-balancer to fix kubectl exec uses
```
2017-04-04 08:03:44 -07:00
Davanum Srinivas 29e4031f61 Update boltdb dependency to fix golang 1.7 intermittent failures
We have a old boltdb/bolt, etcd has moved to newer boltdb, so we should
do the same. Specifically this change needs to be in our tree:
92410e0673

as this fixes intermittent issues we see in our CI runs. So in this
PR, we vendor the v1.3.0 version of boltdb/bolt.

Fixes #43973
2017-04-04 10:48:19 -04:00
Kubernetes Submit Queue 46d4c621a8 Merge pull request #42992 from NickrenREN/syncUnboundClaim
Automatic merge from submit-queue (batch tested with PRs 43453, 42992)

make sure that the volume satisfies the requirements of the claim before binding

check if the volume requested by the claim satisfies the requirements of the claim before binding when
syncUnboundClaim and claim.Spec.VolumeName is not set, although the volume is asked by user


**Release note**:
```release-note
NONE
```
2017-04-04 04:27:19 -07:00
Kubernetes Submit Queue 826069e666 Merge pull request #43453 from MaciekPytel/ca_more_drain_e2e
Automatic merge from submit-queue (batch tested with PRs 43453, 42992)

Cluster-autoscaler multistep node drain e2e

**What this PR does / why we need it**:
This is another Cluster-Autoscaler node drain test. It tests draining a node, when there is pdb allowing for moving some pods, but not all the required pods in one go. Basically it's a more complex scenario of other CA drain e2e, testing the retry logic in CA scale down.

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

**Special notes for your reviewer**:

**Release note**:

```release-note
```
2017-04-04 04:27:17 -07:00
Maciej Pytel 2630cefcce Add retries in cluster-autoscaler e2e 2017-04-04 10:28:24 +02:00
Maciej Pytel 0d666e1fcd Cluster-autoscaler multistep node drain e2e 2017-04-04 10:28:24 +02:00
Kubernetes Submit Queue e9a91b8cca Merge pull request #44020 from tpot/kubectl-cmdline-spelling-fix
Automatic merge from submit-queue (batch tested with PRs 42674, 43937, 44020)

Fix spelling of 'arguments' for kubectl create authinfo

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

Fixes a silly spelling mistake in help output.

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

**Special notes for your reviewer**:

I've signed the CLA but don't fully understand the PR process yet.  I guess the "cla:yes" label gets added by someone else or automatically by a bot?

**Release note**:

```release-note
NONE
```
2017-04-04 00:53:16 -07:00
Kubernetes Submit Queue 7a4611f73e Merge pull request #43937 from thockin/proxy-defer-on-update-events
Automatic merge from submit-queue (batch tested with PRs 42674, 43937)

kube-proxy: OnServiceUpdate []*api.Service

This signature is more consistent with OnEndpointsUpdate and removes a
copy loop.  This is part on ongoing cleanup to rate-limit iptables
calls.
2017-04-04 00:29:17 -07:00
Kubernetes Submit Queue 3c357139f3 Merge pull request #42674 from nikhiljindal/secretKubeTe
Automatic merge from submit-queue

Enable secrets in federation kubectl tests

Fixes https://github.com/kubernetes/kubernetes/issues/40568
Superseedes https://github.com/kubernetes/kubernetes/pull/40714

Updating kubectl tests to wait for deletion if WAIT_FOR_DELETION is set to true. WAIT_FOR_DELETION will be set to true only when the tests are being run for federation apiserver.
This change will not impact kube apiserver tests and still enable federation and kubernetes to share the same test code.
This is a workaround until https://github.com/kubernetes/kubernetes/issues/42594 is fixed.

cc @kubernetes/sig-federation-pr-reviews
cc @liggitt as he reviewed https://github.com/kubernetes/kubernetes/pull/40714
2017-04-04 00:28:42 -07:00
Tim Potter 1e4c93a0f8 Fix spelling of 'arguments' for kubectl create authinfo 2017-04-04 15:17:55 +10:00
Kubernetes Submit Queue 39713aca4e Merge pull request #42152 from CaoShuFeng/author_example
Automatic merge from submit-queue

Fix abac oplicy example file

"system:unauthenticated" is a group name rather than user name.
Fix it in the example file.



**Release note**:

```NONE
```
2017-04-03 21:09:41 -07:00
Kubernetes Submit Queue 0a1385178d Merge pull request #43248 from yujuhong/pause_proc
Automatic merge from submit-queue

node e2e: improve the validate OOM score test for infra containers

The test blindly checked all "pause" processes on the node, assuming
they were all infra containers. This change takes a snapshot of all
existing "pause" processes on the node, and exclude them in the
validation. The test still relies on the fact that it runs exclusively
on the node. If that assumption changes, we will need other methods to
locate the PIDs of the infra containers.

This fixes #37580
2017-04-03 20:20:53 -07:00
Justin Santa Barbara f506dfe1ea cluster/log-dump - chmod files before dumping
We make the files world-readable, so that installation techniques that
lock down the logfiles can still be dumped.

Issue https://github.com/kubernetes/test-infra/issues/2397
2017-04-03 21:41:24 -04:00
Kubernetes Submit Queue ff40d8b408 Merge pull request #43983 from mwielgus/autoscaling_e2e_dir
Automatic merge from submit-queue

Move autoscaling e2e tests to a separate directory

For fine-grain access control. Autoscaling team is expanding the e2e test coverage and the need for getting an approval for every PR is annoying. 

cc: @MaciekPytel @jszczepkowski @fgrzadkowski @wojtek-t
2017-04-03 18:12:51 -07:00
Kubernetes Submit Queue 2e6616dbb6 Merge pull request #42575 from MaciekPytel/show_configmap_events
Automatic merge from submit-queue

Include events when describing configmap

**What this PR does / why we need it**:
Currently `kubectl describe configmap/xxx` does not list events, even if there are events related to this congfigmap (and --show-events=true is explicitly passed). This PR makes it include events, same as for other resource types.
**Which issue this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close that issue when PR gets merged)*:

**Special notes for your reviewer**:

**Release note**:

```release-note
```
2017-04-03 17:27:04 -07:00
Tim Hockin adf30aa2e1 kube-proxy: OnServiceUpdate takes pointers
This signature is more consistent with OnEndpointsUpdate and removes a
copy loop.  This is part on ongoing cleanup to rate-limit iptables
calls.
2017-04-03 17:19:39 -07:00
caleb miles c13fd437d5
Fixes links in CHANGELOG.md table of contents 2017-04-03 17:13:32 -07:00
Kubernetes Submit Queue a8e552832d Merge pull request #44000 from dcbw/node-readiness-changelog
Automatic merge from submit-queue

Update CHANGELOG.md to note node readiness after #43474
2017-04-03 16:40:16 -07:00
Kubernetes Submit Queue b8299d010b Merge pull request #44004 from enisoc/changelog-kubeadm
Automatic merge from submit-queue

Add warning to skip v1.6.0 if you use kubeadm.

I'm not sure if this is the right place to put the warning. Suggestions welcome. Ideally it should be near the top and obvious to anyone who uses `kubeadm` but not overly obnoxious for those who don't.
2017-04-03 16:40:11 -07:00
Kubernetes Submit Queue 83249d3765 Merge pull request #43999 from mikedanese/vers-fail
Automatic merge from submit-queue

kubeadm: fail explicitly when using (stable,latest) in airgapped env

This is unintuitive and unnecessary behavior
2017-04-03 16:40:06 -07:00
Abrar Shivani 50c9cca487 Add support for fstype in Storage Class for vSphere Cloud Provider 2017-04-03 16:13:00 -07:00
Jeff Grafton 547dfb9703 Bump rules_go to latest 2017-04-03 16:03:23 -07:00
Kubernetes Submit Queue e28cb42706 Merge pull request #42717 from andrewsykim/support-host-ip-downward-api
Automatic merge from submit-queue

Support status.hostIP in downward API

**What this PR does / why we need it**:
Exposes pod's hostIP (node IP) via downward API. 

**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/24657

**Special notes for your reviewer**:
Not sure if there's more documentation that's needed, please point me in the right direction and I will add some :)
2017-04-03 15:48:12 -07:00
Anthony Yeh 9ea0fdcf50 Update CHANGELOG.md for v1.6.1. 2017-04-03 15:22:33 -07:00
Kubernetes Submit Queue 953d8838ea Merge pull request #40117 from mtaufen/flags-struct
Automatic merge from submit-queue

Add separate KubeletFlags struct and remove HostnameOverride and NodeIP from config type

Add a separate flags struct for Kubelet flags

Kubelet flags are not necessarily appropriate for the KubeletConfiguration
object. For example, this PR also removes HostnameOverride and NodeIP
from KubeletConfiguration.This is a preleminary step to enabling Nodes
to share configurations, as part of the dynamic Kubelet configuration
feature (#29459). Fields that must be unique for each node inhibit
sharing, because their values, by definition, cannot be shared.

/cc @ncdc @kubernetes/sig-node-misc @kubernetes/sig-cluster-lifecycle-misc
2017-04-03 15:02:51 -07:00