Commit Graph

27651 Commits (26c99fee0095eb15b4a843b657f43ec7323a04f7)

Author SHA1 Message Date
k8s-merge-robot 26c99fee00 Merge pull request #24112 from cjcullen/rmcomments
Automatic merge from submit-queue

Strip comments from configure-vm.sh for gce

We are getting very close to the 32KiB limit on GCE metadata entry length. We used to strip comments before putting the value in metadata, but I think we removed it in a refactor because it wasn't absolutely necessary, and leaving it out made the scripts slightly cleaner. It's close to being necessary again.

Removing comments reduces the size from 31,609B to 27,221B: https://www.diffchecker.com/0xmmecvw.
2016-04-18 00:43:36 -07:00
k8s-merge-robot d0b52dd8b3 Merge pull request #24107 from yifan-gu/load_bridge
Automatic merge from submit-queue

kubenet: Load bridge netfilter module in Init().

This lets the kubenet loads the bridge netfilter module and set bridge-nf-call-iptables=1

Fix #24018 

Follow up PRs would be appreciate if we also load the module in the bridge plugin binary itself. Ref https://github.com/kubernetes/kubernetes/issues/24018#issuecomment-207682514

cc @kubernetes/sig-node @sjpotter @euank
2016-04-18 00:08:25 -07:00
k8s-merge-robot b73164792f Merge pull request #24098 from rootfs/e2e-test
Automatic merge from submit-queue

some enhancement to run volume e2e tests
2016-04-17 23:19:10 -07:00
k8s-merge-robot 62fd60565a Merge pull request #24048 from liggitt/apiserver-defaults
Automatic merge from submit-queue

Use correct defaults when binding apiserver flags

defaults should be set in the struct-creating function, then the current struct field value used as the default when binding the flag
2016-04-17 20:59:38 -07:00
k8s-merge-robot 9637b09f69 Merge pull request #24047 from derekwaynecarr/reuse_summary_provider
Automatic merge from submit-queue

Expose SummaryProvider for reuse by other parts of kubelet

To support out of resource killing in the kubelet, we will introduce a new top-level module that will ensure node stability by checking if eviction thresholds have been met for memory and file-system usage on the node.  In addition, it will then need information about pod memory and disk usage in order to make an eviction selection.  Currently, this information is collected in `SummaryProvider` but it's hidden away and not available for re-use by other top-level modules of the kubelet.  This initial refactor adds the ability to get summary stat information from the `ResourceAnalyzer` so it can be reused by other top-level modules.

I suspect we will further re-factor this area as code evolves, but this unblocks further progress on out-of-resource killing.

/cc @vishh @timothysc @kubernetes/sig-node @kubernetes/rh-cluster-infra
2016-04-17 20:22:57 -07:00
k8s-merge-robot e81663c824 Merge pull request #24006 from caesarxuchao/thirdparty-preferredversion
Automatic merge from submit-queue

Use the first version as thirdparty resource preferredVersion

First commit is a one-liner, which implements the server-half of #23985.

The other two commits rearrange the test code, and add back a commented out test of thirdparty resource.

@lavalamp @nikhiljindal
2016-04-17 16:02:59 -07:00
k8s-merge-robot 1b74e7bfc9 Merge pull request #23994 from mml/docker-supervisor-logs
Automatic merge from submit-queue

Also collect docker supervisor logs.
2016-04-17 13:46:36 -07:00
k8s-merge-robot 3924c9a6f1 Merge pull request #24178 from HaiyangDING/predlib2
Automatic merge from submit-queue

change predicate error format.

@davidopp @dchen1107 @mikedanese @yujuhong 

follow #20204.

address [FakePredicateError](https://github.com/kubernetes/kubernetes/pull/20204#discussion_r59237270) and [ErrFakePredicate](https://github.com/kubernetes/kubernetes/pull/20204#discussion_r59273190)

As for the rest suggestions ([NoDiskConflict](https://github.com/kubernetes/kubernetes/pull/20204#discussion_r59237340) and [NoVolumeZoneConflict](https://github.com/kubernetes/kubernetes/pull/20204#discussion_r59237419)), I would prefer to leave them as they now, for the reason given by @davidopp
2016-04-17 13:12:55 -07:00
k8s-merge-robot 273b01dceb Merge pull request #23975 from zhouhaibing089/kubectl-fix
Automatic merge from submit-queue

add HOME env variable for kube-addons service

Fix https://github.com/kubernetes/kubernetes/issues/23973.

Briefly, systemd service does not know the `HOME` environment variable which causes the kubectl write schema file into `/.kube` while it is expected to be `/root/.kube`.
2016-04-17 13:12:53 -07:00
k8s-merge-robot 934d7ebb33 Merge pull request #23968 from yujuhong/privileged_containers
Automatic merge from submit-queue

e2e_node: port privileged pod tests from test/e2e/priviliged.go

The ported test is functionally the same as the original test.
The main difference between the two tests is that the original test relies on
`kubectl` to exec into the container, while the latter directly uses the REST
client of the apiserver. This avoids the need to copy kubectl to the node under
test.
2016-04-17 12:37:12 -07:00
k8s-merge-robot 5f3f06f0b1 Merge pull request #24022 from hongchaodeng/dep
Automatic merge from submit-queue

Bump up etcd dependency to fix data race

ref: https://github.com/kubernetes/kubernetes/pull/23694

What this PR does
- Bumping up the godep of etcd to fix data race in etcd watcher. Without this change, watcher PR builds will fail in race detection.
- Small changes to fix builds after upgrade
2016-04-17 12:01:32 -07:00
Hongchao Deng 3c2c9067e8 update godep license 2016-04-18 00:28:56 +08:00
k8s-merge-robot 9e7ed221ed Merge pull request #24379 from huang195/quota_fixes
Automatic merge from submit-queue

minor comment and code fixes

1. Correct a comment: return value should be nil, and not true
2. Early loop break
2016-04-17 08:02:47 -07:00
k8s-merge-robot 031c1ea398 Merge pull request #24218 from jimmyjones2/hyperkube-container-behind-proxy
Automatic merge from submit-queue

Add easy-rsa to hyperkube container

Otherwise gets downloaded a runtime, which kind of breaks the container model.

See [comment](https://github.com/kubernetes/kubernetes/issues/20514#issuecomment-195835786) in #20514 - this causes dockerized install of k8s to fail if you're behind a proxy. make-ca-cert.sh already looks for a local copy of easy-rsa.tar.gz before downloading it, so this drops the tarball in the expected place in the container.
2016-04-17 06:32:37 -07:00
k8s-merge-robot 75b49f591a Merge pull request #23948 from derekwaynecarr/memory_available
Automatic merge from submit-queue

Add memory available to summary stats provider

To support out of resource killing when low on memory, we want to let operators specify eviction thresholds based on available memory instead of memory usage for ease of use when working with heterogeneous nodes.  

So for example, a valid eviction threshold would be the following: 
* If node.memory.available < 200Mi for 30s, then evict pod(s)

For the node, `memory.availableBytes` is always known since the `memory.limit_in_bytes` is always known for root cgroup.  For individual containers in pods, we only populate the `availableBytes` if the container was launched with a memory limit specified.  When no memory limit is specified, the cgroupfs sets a value of 1 << 63 in the `memory.limit_in_bytes` so we look for a similar max value to handle unbounded limits, and ignore setting `memory.availableBytes`.

FYI @vishh @timstclair - as discussed on Slack.

/cc @kubernetes/sig-node @kubernetes/rh-cluster-infra
2016-04-17 06:32:36 -07:00
k8s-merge-robot 2b9637da6a Merge pull request #23945 from smarterclayton/move_reset_metrics
Automatic merge from submit-queue

Move /resetMetrics to DELETE /metrics

Reduces the surface area of the API server slightly and allows
downstream components to have deleteable metrics. After this change
genericapiserver will *not* have metrics unless the caller defines it
(allows different apiserver implementations to make that choice on their
own).

@wojtek-t
2016-04-17 05:58:26 -07:00
Wojciech Tyczynski 495e274500 Merge pull request #24384 from Random-Liu/disable-version-cache
Disable the version cache to fix #24298.
2016-04-17 04:48:07 -07:00
k8s-merge-robot 2bf52175f9 Merge pull request #23923 from hongchaodeng/exp
Automatic merge from submit-queue

Decouple etcd node.expiration logic from DeleitonTimestamp

ref: https://github.com/kubernetes/kubernetes/issues/23902
2016-04-17 04:12:26 -07:00
Random-Liu 19249a8cbc Disable the version cache to fix #24298. 2016-04-17 03:14:03 -07:00
k8s-merge-robot 4fee8b5eaf Merge pull request #24181 from k82/doc_typo
Automatic merge from submit-queue

Corrected typo in federation doc.

Correct typo :).
2016-04-17 02:17:57 -07:00
k8s-merge-robot 8990897ce6 Merge pull request #23940 from freehan/netinterface
Automatic merge from submit-queue

switch to use ContainerID instead of DockerID in network plugin interface

fix: #15663
2016-04-17 01:12:51 -07:00
k8s-merge-robot a275a045d1 Merge pull request #23914 from sky-uk/make-etcd-cache-size-configurable
Automatic merge from submit-queue

Make etcd cache size configurable

Instead of the prior 50K limit, allow users to specify a more sensible size for their cluster.

I'm not sure what a sensible default is here. I'm still experimenting on my own clusters. 50 gives me a 270MB max footprint. 50K caused my apiserver to run out of memory as it exceeded >2GB. I believe that number is far too large for most people's use cases.

There are some other fundamental issues that I'm not addressing here:
- Old etcd items are cached and potentially never removed (it stores using modifiedIndex, and doesn't remove the old object when it gets updated)
- Cache isn't LRU, so there's no guarantee the cache remains hot. This makes its performance difficult to predict. More of an issue with a smaller cache size.
- 1.2 etcd entries seem to have a larger memory footprint (I never had an issue in 1.1, even though this cache existed there). I suspect that's due to image lists on the node status.

This is provided as a fix for #23323
2016-04-17 00:06:31 -07:00
k8s-merge-robot 2e87b0e363 Merge pull request #23699 from Random-Liu/container-related-functions
Automatic merge from submit-queue

Kubelet: Refactor container related functions in DockerInterface

For #23563.
Based on #23506, will rebase after #23506 is merged.

The last 4 commits of this PR are new.
This PR refactors all container lifecycle related functions in DockerInterface, including:
* ListContainers
* InspectContainer
* CreateContainer
* StartContainer
* StopContainer
* RemoveContainer

@kubernetes/sig-node
2016-04-16 21:41:19 -07:00
k8s-merge-robot 822618afb5 Merge pull request #23912 from smarterclayton/watch_until
Automatic merge from submit-queue

Add watch.Until, a conditional watch mechanism

A more powerful tool than wait.Poll, allows a watch interface to drive conditionals to react to changes on a resource or resources. Provide a set of standard conditions that are in common use in the code, and updates e2e to use a few of these.

Extracted from #23567
2016-04-16 21:05:40 -07:00
k8s-merge-robot d44457ebaf Merge pull request #23903 from zhouhaibing089/https-fix
Automatic merge from submit-queue

the component status health check should check whether the scheme of backend storage url is https or not

fix https://github.com/kubernetes/kubernetes/issues/23897, when querying the component status of etcd (backend storage), the scheme of url is not checked and use `http` always, this commit aims to fix this.
2016-04-16 20:22:57 -07:00
HaiyangDING a5efb009c5 change predicate error format. 2016-04-17 08:48:03 +08:00
k8s-merge-robot 1087162548 Merge pull request #23841 from dagnello/update-openstack-cloudprovider-volume-tests
Automatic merge from submit-queue

Extend OpenStack Cloud Provider Volume Tests

Adding coverage for:
getVolume
AttachDisk
DetachDisk
2016-04-16 17:44:09 -07:00
k8s-merge-robot bfc953cd4b Merge pull request #23890 from pmorie/kubectl-describe-envs
Automatic merge from submit-queue

Correctly handle secret and configMap envs in kubectl describe

Fixes #23679 

cc @kubernetes/kubectl @jwforres
2016-04-16 17:08:58 -07:00
k8s-merge-robot f1eff2a737 Merge pull request #23862 from nelcy/flexsecrets
Automatic merge from submit-queue

Flexvolume: Add support for multiple secrets

This PR adds support to pass multiple secrets for flexvolume plugins.

To allow multiple secrets, secrets are now passed as:
"kubernetes.io/secret/id-rsa":"value-2\r\n\r\n","kubernetes.io/secret/id-rsa.pub":"value-1\r\n"
2016-04-16 16:32:48 -07:00
k8s-merge-robot 957ee1d50a Merge pull request #23819 from rrati/controller-manager-startup-delay
Automatic merge from submit-queue

Added optional delays to starting controller managers. #22669
2016-04-16 15:33:32 -07:00
k8s-merge-robot 167e4d03cc Merge pull request #23734 from sky-uk/fix-update-for-expired-events
Automatic merge from submit-queue

Fix expired event logic to use 404 instead of 500

It seems this logic was never updated once apiserver started returning 404s for expired (missing) events.

This change corrects it to use a 404 so events will get resent correctly if they were expired in etcd.

Fixes #23637.
2016-04-16 12:46:07 -07:00
k8s-merge-robot 7664509c73 Merge pull request #24248 from wojtek-t/parallel_predicates
Automatic merge from submit-queue

Parallelize computing predicates in scheduler

@davidopp
2016-04-16 09:51:45 -07:00
k8s-merge-robot 85550921de Merge pull request #24354 from yifan-gu/fix_addon_update_test
Automatic merge from submit-queue

e2e: Fix 'Addon update' to support coreos distro.

cc @kubernetes/sig-testing @kubernetes/sig-node
2016-04-16 07:31:15 -07:00
k8s-merge-robot e87d8bacc4 Merge pull request #24273 from gtank/local-up-advertise
Automatic merge from submit-queue

hack: specify --advertise-address in hack/local-up-cluster.sh

This fixes the bug where the script fails to launch an apiserver on a
machine without active networking (issue #24272).
2016-04-16 07:31:14 -07:00
k8s-merge-robot d40bf503ed Merge pull request #24256 from porridge/fix-newlines
Automatic merge from submit-queue

Fix spacing in usage_from_stdin and info_from_stdin (issue #24186).

If "a" is a bash array, then the syntax to append the contents of $line as a
new element to the array is a+=("$line"), not messages+=$line

Using the former syntax just seems to append to the first element, creating a
long string and thus losing newline information.

Fixing this allows us to drop some empty lines from invocations of
usage_from_stdin.
2016-04-16 07:31:12 -07:00
Hai Huang b6557babf2 minor comment and code fixes 2016-04-16 10:18:43 -04:00
k8s-merge-robot b5b190df2d Merge pull request #24197 from wojtek-t/parallel_scheduler
Automatic merge from submit-queue

Asynchronous bindings

This increases scheduler throughput with "trivial algorithm" (choose random node) by at least 5x.
Such optimization is necessary if we want to significantly improve scheduling throughput.

Fix #24192

@gmarek @kubernetes/sig-scalability @hongchaodeng
2016-04-16 04:39:37 -07:00
k8s-merge-robot 7e2b795a36 Merge pull request #24293 from mikedanese/componentlabels
Automatic merge from submit-queue

add labels to kube component static pods

```
$ k --namespace=kube-system get po -l 'tier in (control-plane)' 
NAME                                 READY     STATUS    RESTARTS   AGE
kube-apiserver-k-7-master            1/1       Running   2          1m
kube-controller-manager-k-7-master   1/1       Running   1          1m
kube-scheduler-k-7-master            1/1       Running   0          54s
$ k --namespace=kube-system get po -l 'tier in (node)'         
NAME                         READY     STATUS    RESTARTS   AGE
kube-proxy-k-7-minion-eheu   1/1       Running   0          1m
kube-proxy-k-7-minion-mwo9   1/1       Running   0          1m
kube-proxy-k-7-minion-xw6m   1/1       Running   0          1m
```
cc @bgrant0607 @thockin @gmarek 

Fixes #21267
2016-04-16 03:11:32 -07:00
k8s-merge-robot fe6a7a2c7d Merge pull request #23689 from maclof/drain-replicaset-pods
Automatic merge from submit-queue

Drain pods created from ReplicaSets

Refer to my issue here: https://github.com/kubernetes/kubernetes/issues/23531
2016-04-16 00:37:41 -07:00
k8s-merge-robot 8a44115cc5 Merge pull request #24338 from spxtr/linkcheck
Automatic merge from submit-queue

Move cmd/linkcheck to test targets.

https://github.com/kubernetes/kubernetes/issues/24285#issuecomment-210306681
2016-04-16 00:00:30 -07:00
k8s-merge-robot bf69b2a862 Merge pull request #24302 from therc/patch-1
Automatic merge from submit-queue

Remove dead code in kubelet.go
2016-04-16 00:00:29 -07:00
k8s-merge-robot 7bc49fb085 Merge pull request #24243 from hodovska/master
Automatic merge from submit-queue

Remove --api-version usage in test-cmd.sh.

Kubectl flag `--api-version` has been deprecated.

Fixes #24053
2016-04-16 00:00:27 -07:00
k8s-merge-robot 5f999438d8 Merge pull request #24045 from rootfs/e2e-misc
Automatic merge from submit-queue

add config-test.sh to cluster/centos so we can run e2e test on centos/fedora/rhel

so I can run e2e test on centos locally using the following command
```console
KUBERNETES_PROVIDER=centos KUBERNETES_CONFORMANCE_TEST=y ./cluster/test-e2e.sh
```
2016-04-16 00:00:26 -07:00
k8s-merge-robot 49dd31a9a8 Merge pull request #23643 from smarterclayton/leak
Automatic merge from submit-queue

interrupt package (attach and edit) could leak a goroutine
2016-04-16 00:00:24 -07:00
k8s-merge-robot c528080248 Merge pull request #24339 from pwittrock/flaky
Automatic merge from submit-queue

Don't clean up files on image-based tests since the instance will be …

…deleted anyway and this is flaky on CoreOS.
2016-04-15 20:50:41 -07:00
Clayton Coleman 845e496572 Convert poll in e2e with watch.Until 2016-04-15 22:21:42 -04:00
Joe Finney 9cc1ee01fd Merge pull request #24371 from spxtr/rev-rev-rev
Revert "Revert "Revert "Run most GCE, GKE, and Kubemark e2e jobs insi…
2016-04-15 18:48:14 -07:00
Joe Finney e0f585ae93 Revert "Revert "Revert "Run most GCE, GKE, and Kubemark e2e jobs inside Docker"""
This reverts commit 93ea0252fd.
2016-04-15 18:41:40 -07:00
k8s-merge-robot ed87db5040 Merge pull request #23437 from DirectXMan12/bug/cannot-edit-across-gv
Automatic merge from submit-queue

Make kubectl edit not convert GV on edits

Previously, kubectl edit was using a decoder to load in edits that
converted to the internal version.  It would then re-encode this
decoded value to produce a patch.  However, if you were editing
in the object in a GroupVersion that was not the internal version,
this would cause the kubectl edit command to attempt to produce
a patch which changed the GroupVersion, which would fail.

Now, we use a plain deserializer instead, so no conversion or
defaulting occurs when loading in the edited file.

Ref #23378
2016-04-15 16:32:17 -07:00
Joe Finney 009b0f051d Merge pull request #24356 from spxtr/revert-revert
Revert "Revert "Run most GCE, GKE, and Kubemark e2e jobs inside Docker""
2016-04-15 16:02:30 -07:00