Commit Graph

43666 Commits

Author SHA1 Message Date
Kubernetes Submit Queue
a48284862c Merge pull request #41407 from Crassirostris/fluentd-gcp-sysmted-fix
Automatic merge from submit-queue (batch tested with PRs 41382, 41407, 41409, 41296, 39636)

Fix copying systemd libraries upon fluentd-gcp startup

Fix https://github.com/kubernetes/kubernetes/issues/40936
Revert https://github.com/kubernetes/kubernetes/pull/40017
2017-02-14 13:04:21 -08:00
Kubernetes Submit Queue
a97513c1af Merge pull request #41382 from yujuhong/restart_created
Automatic merge from submit-queue

kubelet: handle containers in the "created" state
2017-02-14 12:00:27 -08:00
Kubernetes Submit Queue
3604cdc6a9 Merge pull request #41418 from deads2k/api-02-conversions
Automatic merge from submit-queue (batch tested with PRs 41299, 41325, 41386, 41329, 41418)

move metav1 conversions to metav1

Conversions for `metav1` types belong in metav1 and should be registered when you register the types.

@mikedanese @luxas I think this is what you just hit in your fresh scheme.

@smarterclayton @lavalamp double check the sanity, but I think this does what people expect.
2017-02-14 11:42:40 -08:00
Kubernetes Submit Queue
f26890b801 Merge pull request #41329 from deads2k/cli-02-negotiation
Automatic merge from submit-queue (batch tested with PRs 41299, 41325, 41386, 41329, 41418)

stop senseless negotiation

Most client commands don't respect a negotiated version at all.  If you request a particular version, then of course it should be respected, but if you have none to request, then the current negotiation step doesn't return anything useful so we may as well have nothing so we can at least detect the situation.

@jwforres @kubernetes/sig-cli-pr-reviews 

Added a TODO to make the negotiate function useful.  I think I'm inclined to remove it entirely unless someone can come up with a useful reason to have it.
2017-02-14 11:42:38 -08:00
Kubernetes Submit Queue
52aaafb9f8 Merge pull request #41386 from shashidharatd/federation-service-e2e-2
Automatic merge from submit-queue (batch tested with PRs 41299, 41325, 41386, 41329, 41418)

Fix resource leak in federation e2e tests and another issue

**What this PR does / why we need it**:
The cleanup after federation service e2e tests is not effective as this function cleanupServiceShardsAndProviderResources is getting called with empty string for namespace ("nsName") because the nsName variable is getting redefined.

Another issue is we are prematurely exiting the Poll in waitForServiceOrFail and the error check is incorrect.

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

**Special notes for your reviewer**:

**Release note**:
`NONE`

cc @madhusudancs @kubernetes/sig-federation-bugs
2017-02-14 11:42:37 -08:00
Kubernetes Submit Queue
90e1977a1c Merge pull request #41325 from wojtek-t/fix_etcd_migrate
Automatic merge from submit-queue (batch tested with PRs 41299, 41325, 41386, 41329, 41418)

Migrate etcd data using correct etcd version in case of previous crash

Fix #41324
Fix #41323

@mml
2017-02-14 11:42:35 -08:00
Kubernetes Submit Queue
c167a37e4e Merge pull request #41299 from shiywang/fix_typo
Automatic merge from submit-queue (batch tested with PRs 41299, 41325, 41386, 41329, 41418)

fix typo
2017-02-14 11:42:21 -08:00
Kubernetes Submit Queue
436fa5c9d1 Merge pull request #41408 from fabiand/addonManagerReadme
Automatic merge from submit-queue

addonManager: Add note about labeling

The cluster manager is only picking up addons if they are labeled correctly.

This PR is about updating the readme to reflect this.
2017-02-14 09:11:33 -08:00
Kubernetes Submit Queue
b816410b1e Merge pull request #41350 from apprenda/kubeadm_util_tests
Automatic merge from submit-queue (batch tested with PRs 41337, 41375, 41363, 41034, 41350)

kubeadm: adding tests for util/tokens.go

**What this PR does / why we need it**: added tests to util pkg and raised coverage from ~48% to ~67%.  Will get better coverage once migration to client-go is complete.  Included a fix for a logic error in tokens.go found through writing tests

Adding unit tests is a WIP from #34136

**Special notes for your reviewer**: /cc @luxas @pires 

**Release note**:
```release-note
NONE
```
2017-02-14 09:11:26 -08:00
Kubernetes Submit Queue
16a0a0b975 Merge pull request #41034 from rootfs/gce-instance
Automatic merge from submit-queue (batch tested with PRs 41337, 41375, 41363, 41034, 41350)

use instance's Name to attach gce disk

**What this PR does / why we need it**:
fix #40427
**Which issue this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close that issue when PR gets merged)*: fixes #40427

**Special notes for your reviewer**:

**Release note**:

```release-note
NONE
```
2017-02-14 09:11:25 -08:00
Kubernetes Submit Queue
bc29bb02e5 Merge pull request #41403 from deads2k/agg-12-all
Automatic merge from submit-queue

Remove all aggregator dependencies on k8s.io/kubernetes

This removes the last links to k8s.io/kubernetes for the aggregator.

@sttts last commit.
2017-02-14 09:11:21 -08:00
Kubernetes Submit Queue
f85fc7da81 Merge pull request #41363 from jingxu97/Feb/syncVolumePeriod
Automatic merge from submit-queue

Change default attach_detach_controller reconciler sync period to 1 minute

When default reconciler sync period is set to 5 second, we often see
rateLimit issue for a large cluster. This PR is changing the period to 1
minute to mitigate this problem.

Make this period longer means that there might be some period of time
that the cached information in master's attach_detach_controller is out
of date. The node might use this information to mount to the wrong
device. For GCE PD, since device path is uniquely associated with volume
id, so mount operation will just fail because of this outdated
information. For AWS, before kubelet might mount to the wrong volume
because device path could be reused immediately once it is available.
But after PR #38818, device path will only be reused after all device
paths have been explored. That means it is very unlikely that kubelet will
mount to a wrong volume that is using the old device path that had been
assigned to the same node.

**Release note**:

```release-note
We change the default attach_detach_controller sync period to 1 minute to reduce the query frequency through cloud provider to check whether volumes are attached or not. 
```
2017-02-14 09:11:08 -08:00
deads2k
db0b0bd0f5 move metav1 conversions to metav1 2017-02-14 11:47:23 -05:00
Yu-Ju Hong
9fa1ad29fd kubelet: handle containers in the "created" state 2017-02-14 07:51:35 -08:00
Kubernetes Submit Queue
bad0c2926e Merge pull request #41375 from linyouchong/linyouchong-20170214
Automatic merge from submit-queue

fix spelling error of type store struct, in store.go

**What this PR does / why we need it**:
in the definition of type Store struct,the description of  KeyFunc has spelling errors 

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

**Special notes for your reviewer**:
NONE
**Release note**:
NONE
2017-02-14 06:54:04 -08:00
Kubernetes Submit Queue
02383f36f3 Merge pull request #41337 from deads2k/agg-08-snip-cmd-util
Automatic merge from submit-queue

Snip the kube-aggregator cmdutil link

`cmdutil` is largely focused on client commands. This snips the link by using built-in cobra capabilities and helps the import tree a lot.
2017-02-14 06:53:55 -08:00
Fabian Deutsch
f6ee79b2ec addonManager: Add note about labeling
The cluster manager is only picking up addons if they are labeled correctly.
2017-02-14 15:43:47 +01:00
Mik Vyatskov
a1ec542d7c Fix copying systemd libraries upon fluentd-gcp startup 2017-02-14 15:41:15 +01:00
deads2k
1f6fd8d1f1 remove kubernetes dependencies from kube-aggregator 2017-02-14 09:10:11 -05:00
deads2k
e60b16fea8 remove cmdutil dependency 2017-02-14 09:03:13 -05:00
deads2k
e063ca3e82 stop senseless negotiation 2017-02-14 08:49:14 -05:00
Jerzy Szczepkowski
d5a4a7ca14 Revert "fix flaky host cleanup test"
Reverts kubernetes/kubernetes#41178

E2E tests [HostCleanup][Slow] are failing for NFS in gci-gce-slow suit.
2017-02-14 04:47:08 -08:00
Jerzy Szczepkowski
e6cdf20c5c Revert "fix flaky host cleanup test" 2017-02-14 12:50:42 +01:00
Wojciech Tyczynski
1ce544db9e Migrate etcd data using correct etcd version in case of previous crash 2017-02-14 11:30:00 +01:00
linyouchong
0d0f1bd26c fix spelling error of type store struct, in store.go 2017-02-14 17:42:49 +08:00
Kubernetes Submit Queue
739f4ffe0e Merge pull request #41230 from xilabao/fix-token-validation-in-kubeadm
Automatic merge from submit-queue (batch tested with PRs 41342, 41257, 41295, 41367, 41230)

fix token validation in kubeadm

fix https://github.com/kubernetes/kubeadm/issues/157
2017-02-13 23:48:09 -08:00
Kubernetes Submit Queue
416c1a498e Merge pull request #41367 from apprenda/kubeadm_validation_pkg_tests
Automatic merge from submit-queue (batch tested with PRs 41342, 41257, 41295, 41367, 41230)

kubeadm: unit tests for apis/kubeadm/validation

**What this PR does / why we need it**: added tests to apis/kubeadm/validation pkg and raised coverage from ~21% to 100%.  

Adding unit tests is a WIP from #34136

**Special notes for your reviewer**: /cc @luxas @pires 

**Release note**:
```release-note
NONE
```
2017-02-13 23:48:07 -08:00
Kubernetes Submit Queue
3ada0514b0 Merge pull request #41295 from andrewrynhard/sa_key
Automatic merge from submit-queue (batch tested with PRs 41342, 41257, 41295, 41367, 41230)

Use a dedicated key for service account token signing

**What this PR does / why we need it**:
See https://github.com/kubernetes/kubeadm/issues/146

**Special notes for your reviewer**:
`pki_helpers.go` had to be refactored a bit to allow one-off cert/key generation.

```
bash-4.2# cat /etc/kubernetes/manifests/kube-apiserver.yaml | grep service-account
    - --service-account-key-file=/etc/kubernetes/pki/sa.key
bash-4.2# cat /etc/kubernetes/manifests/kube-controller-manager.yaml | grep service-account
    - --service-account-private-key-file=/etc/kubernetes/pki/sa.key
bash-4.2# ls /etc/kubernetes/pki/
apiserver.crt  apiserver-kubelet-client.crt  ca.crt  sa.key
apiserver.key  apiserver-kubelet-client.key  ca.key  tokens.csv
bash-4.2# kubectl get pods -n kube-system
NAME                                 READY     STATUS    RESTARTS   AGE
dummy-2165365107-nt0xm               1/1       Running   0          11m
kube-apiserver-k8s-master            1/1       Running   0          11m
kube-controller-manager-k8s-master   1/1       Running   0          11m
kube-discovery-2187510969-gp26r      1/1       Running   0          11m
kube-dns-421332118-58tl8             3/3       Running   0          11m
kube-flannel-ds-03cvf                2/2       Running   0          7m
kube-flannel-ds-llxw5                2/2       Running   0          7m
kube-proxy-j8jhz                     1/1       Running   0          11m
kube-proxy-z761d                     1/1       Running   0          8m
kube-scheduler-k8s-master            1/1       Running   0          11m
```

@luxas @liggitt @pires
2017-02-13 23:48:05 -08:00
shashidharatd
94d98f487f Fix prematurely exiting testcase while waiting for clustered service 2017-02-14 12:50:42 +05:30
shashidharatd
a4daa6b5e4 Fix lb and service leak in federated clusters in e2e tests 2017-02-14 12:49:56 +05:30
Kubernetes Submit Queue
c13eb9b259 Merge pull request #41257 from spxtr/flaky
Automatic merge from submit-queue (batch tested with PRs 41342, 41257)

Move two flaky e2e tests to the flaky suite.

cc @kargakis @davidopp 

We should have moved these a long time ago.
**Release note**:
```release-note
NONE
```
2017-02-13 23:07:07 -08:00
Kubernetes Submit Queue
d4e2699a48 Merge pull request #41342 from apprenda/kubeadm_token_panic_fix
Automatic merge from submit-queue (batch tested with PRs 41342, 41257)

kubeadm: fix to avoid panic if token not provided

**What this PR does / why we need it**: Prior to this, kubeadm would panic if no token was provided running `kubeadm ex token delete`. This does a check to verify an arg has been passed and prints out a more reasonable message if it is not provided. 


**Special notes for your reviewer**: /cc @luxas @pires 

**Release note**:
```release-note
NONE
```
2017-02-13 23:07:06 -08:00
Kubernetes Submit Queue
8db5ca1fbb Merge pull request #41278 from perotinus/nsdeletion-e2etest
Automatic merge from submit-queue (batch tested with PRs 41357, 41178, 41280, 41184, 41278)

[Federation] Add an end-to-end test verifying that deleting a federated namespace deletes child replicasets.

Verifies #38225.

Also, remove a few custom package aliases.
2017-02-13 21:07:12 -08:00
Kubernetes Submit Queue
1f4e2efc5b Merge pull request #41184 from liggitt/subject-apigroup
Automatic merge from submit-queue (batch tested with PRs 41357, 41178, 41280, 41184, 41278)

Switch RBAC subject apiVersion to apiGroup in v1beta1

Referencing a subject from an RBAC role binding, the API group and kind of the subject is needed to fully-qualify the reference.

The version is not, and adds complexity around re-writing the reference when returning the binding from different versions of the API, and when reconciling subjects.

This PR:
* v1beta1: change the subject `apiVersion` field to `apiGroup` (to match roleRef)
* v1alpha1: convert apiVersion to apiGroup for backwards compatibility
* all versions: add defaulting for the three allowed subject kinds
* all versions: add validation to the field so we can count on the data in etcd being good until we decide to relax the apiGroup restriction

```release-note
RBAC `v1beta1` RoleBinding/ClusterRoleBinding subjects changed `apiVersion` to `apiGroup` to fully-qualify a subject. ServiceAccount subjects default to an apiGroup of `""`, User and Group subjects default to an apiGroup of `"rbac.authorization.k8s.io"`.
```

@deads2k @kubernetes/sig-auth-api-reviews @kubernetes/sig-auth-pr-reviews
2017-02-13 21:07:10 -08:00
Kubernetes Submit Queue
1dcb1a237b Merge pull request #41280 from spxtr/gofmt
Automatic merge from submit-queue (batch tested with PRs 41357, 41178, 41280, 41184, 41278)

Add verify-gofmt as a Bazel test.

Also, moved `--flaky_test_attempts=3` out of `.bazelrc` since it was annoying. I think this verify-all pattern is working well in test-infra, we should try and make it happen here.

**Release note**:
```release-note
NONE
```
2017-02-13 21:07:09 -08:00
Kubernetes Submit Queue
bfca2d4d44 Merge pull request #41178 from jeffvance/kubelet-wedge2
Automatic merge from submit-queue (batch tested with PRs 41357, 41178, 41280, 41184, 41278)

fix flaky host cleanup test

**What this PR does / why we need it**:
Fixes 2 flakes in the "HostCleanup tests in e2e/_kubelet.go_
Also does some very minor refactoring.

**Which issue this PR fixes**
This is an improved fix for issue [31272](https://github.com/kubernetes/kubernetes/issues/31272)

**Special notes for your reviewer**:
```release-note
NONE
```
2017-02-13 21:07:07 -08:00
Kubernetes Submit Queue
b1e0d0ee5e Merge pull request #41357 from freehan/kube-proxy-skip
Automatic merge from submit-queue

fix healthcheck update problem introduced by #41223

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

surgical fix for https://github.com/kubernetes/kubernetes/pull/41223#issuecomment-279120970
2017-02-13 20:24:56 -08:00
Derek McQuay
c8b830a848
kubeadm: unit tests for apis/kubeadm/validation
code coverage from ~21% to 100%
2017-02-13 19:54:23 -08:00
Kubernetes Submit Queue
dc1302c5ef Merge pull request #40464 from csbell/testing0
Automatic merge from submit-queue

Add finalizers to federated configmaps

Initial commit for finalizers in configmap.
```release-note
Add support for finalizers in federated configmaps (deletes configmaps from underlying clusters).
```
2017-02-13 18:43:32 -08:00
Kubernetes Submit Queue
68814c0203 Merge pull request #41172 from janetkuo/node-taint-scheduler
Automatic merge from submit-queue (batch tested with PRs 41115, 41212, 41346, 41340, 41172)

Enable PodTolerateNodeTaints predicate in DaemonSet controller

Ref #28687, this enables the PodTolerateNodeTaints predicate to the daemonset controller

cc @Random-Liu @dchen1107 @davidopp @mikedanese @kubernetes/sig-apps-pr-reviews @kubernetes/sig-node-pr-reviews @kargakis @lukaszo 

```release-note
Make DaemonSet controller respect node taints and pod tolerations. 
```
2017-02-13 17:03:53 -08:00
Kubernetes Submit Queue
fa5a2fe269 Merge pull request #41340 from deads2k/client-02-add-informers
Automatic merge from submit-queue (batch tested with PRs 41115, 41212, 41346, 41340, 41172)

Add informers to client-go

Adds informers and listers to client-go so that you can build a controller on it. 

@sttts @caesarxuchao @kubernetes/sig-api-machinery-misc
2017-02-13 17:03:51 -08:00
Kubernetes Submit Queue
456b9dc5cc Merge pull request #41346 from ncdc/shared-informers-08-route
Automatic merge from submit-queue (batch tested with PRs 41115, 41212, 41346, 41340, 41172)

Switch route controller to shared informers

Initially part of #40097 

@smarterclayton @gmarek @wojtek-t @timothysc @kubernetes/sig-scalability-pr-reviews @sttts @deads2k @liggitt
2017-02-13 17:03:49 -08:00
Kubernetes Submit Queue
f693e1e598 Merge pull request #41212 from bowei/limit-dnsmasq
Automatic merge from submit-queue (batch tested with PRs 41115, 41212, 41346, 41340, 41172)

Send only cluster domain queries to kube-dns

Queries not involving the cluster domain should be forwarded out (not to kube-dns)

```release-note
none
```
2017-02-13 17:03:48 -08:00
Kubernetes Submit Queue
cfb08cd9a0 Merge pull request #41115 from rajatchopra/kube_service_fix
Automatic merge from submit-queue

fix service spec for kube api server

For the auto generated kube api-server service, the service spec re-uses the service port itself. The endpoint is created correctly using public port. Fix the service also because there are some plugin controllers that react to service spec itself.

Before fix:
```
sh-4.2# kubectl get endpoints
NAME         ENDPOINTS                                         AGE
kubernetes   172.17.0.2:8443,172.17.0.2:8053,172.17.0.2:8053   20h

sh-4.2# kubectl get services kubernetes -o json
...
...
        "spec": {
                "clusterIP": "172.30.0.1",
                "ports": [
                    {
                        "name": "https",
                        "port": 443,
                        "protocol": "TCP",
                        "targetPort": 443     ## <--- same as port, even if the endpoint really means 8443
                    },
                    {
                        "name": "dns",
                        "port": 53,
                        "protocol": "UDP",
                        "targetPort": 8053
                    },
                    {
                        "name": "dns-tcp",
                         ...
```

After fix:
```
"spec": {
                "clusterIP": "172.30.0.1",
                "ports": [
                    {
                        "name": "https",
                        "port": 443,
                        "protocol": "TCP",
                        "targetPort": 8443     # <-- fixed, now matches the endpoint object
                    },
                    {
                        "name": "dns",
                        "port": 53,
                        "protocol": "UDP",
                        "targetPort": 8053
                    },
                    {
                        "name": "dns-tcp",

``
2017-02-13 17:03:22 -08:00
Kubernetes Submit Queue
7cb30052d3 Merge pull request #41310 from oscerd/hazelcast-example-test-e2e
Automatic merge from submit-queue

Fixes Hazelcast example e2e test

**What this PR does / why we need it**:
This PR fixes the Hazelcast example e2e test

**Special notes for your reviewer**:
It is related to this PR https://github.com/kubernetes/kubernetes/pull/39580
2017-02-13 15:31:17 -08:00
Jonathan MacMillan
2e7683d3a9 [Federation] Add an end-to-end test verifying that deleting a federated namespace deletes child replicasets.
Verifies #38225.

Also, remove a few custom package aliases.
2017-02-13 14:46:10 -08:00
Christian Bell
eceba860d4 Add finalizers to federated configmaps 2017-02-13 14:36:17 -08:00
Jing Xu
7604163560 Change default reconciler sync period to 1 minute
When default reconciler sync period is set to 5 second, we often see
rateLimit issue for a large cluster. This PR is change the period to 1
minute to mitigate this problem.

Make this period longer means that there might be some period of time
that the cached information in master's attach_detach_controller is out
of date. The node might use this information to mount to the wrong
device. For GCE PD, since device path is uniquely associated with volume
id, so mount operation will just fail because of this outdated
information. For AWS, before kubelet might mount to the wrong volume
because device path could be reused immediately once it is available.
But after PR #38818, device path will only be reused after all device
paths have been explored. That means it is very unlikely that kubelet will
mount to a wrong volume that is using the old device path that had been
assigned to the same node.
2017-02-13 14:01:52 -08:00
Kubernetes Submit Queue
4e01d1d141 Merge pull request #41345 from liggitt/node-update-delete
Automatic merge from submit-queue

give nodes update/delete permissions

delete permission is logically paired with create permission (and is used during self-registration scenarios when a node has been restarted and an existing node object has a mismatched externalID)

we already need to scope update nodes/status permission to only let a node update itself, and we would scope these at the same time.

fixes https://github.com/kubernetes/kubernetes/issues/41224
2017-02-13 13:36:27 -08:00
Bowei Du
da291a7beb Send only cluster domain queries to kube-dns
Note: all PTR request must still traverse kube-dns. We can restrict
this to just the clusterCIDR in the future to reduce the amount of
PTR traffic.
2017-02-13 13:27:09 -08:00