Commit Graph

16206 Commits

Author SHA1 Message Date
Kubernetes Submit Queue
4fbbc746a0 Merge pull request #35161 from mtaufen/mike-klet-cmount-node-e2e
Automatic merge from submit-queue

e2e node plumbing and bundling for GCI mounter

**Note:** The code in this PR only bundles the mounter and modifies `--mounter-path` if it can find `cluster/gce/gci/mounter` in the K8s source dir when building the test bundle.

This bundles the mounter script for GCI with the node e2e tests and allows the `--mounter-path` to be passed to the Kubelet via the node test framework. The node test runner will detect when we are running on a remote GCI node and add the appropriate `--mounter-path` to the `testArgs`. 

It also includes a simple node test that mounts a tmpfs volume. This will exercise the Kubelet's mounter code path. 

**ITEM OF NOTE:** To get the k8s root dir (in order to copy the mount script into the tarball), I changed `getK8sRootDir` -> `GetK8sRootDir` in `test/e2e_node/build/build.go`. Based on the comment above that function (and the fact that it was private to begin with), I'm not sure this is the best way to do things:
```
// TODO: Dedup / merge this with comparable utilities in e2e/util.go
```
On the other hand, the `e2e/util.go` file mentioned in that comment doesn't exist anymore. This should be resolved before this PR is merged.
2016-10-24 14:22:57 -07:00
Kubernetes Submit Queue
1569a8b04f Merge pull request #35322 from deads2k/controller-14-panic
Automatic merge from submit-queue

prevent panic if resourceversion checked early

Found panic while trying to use this in a separate API server.
2016-10-24 13:38:39 -07:00
Kubernetes Submit Queue
bedb4f368f Merge pull request #35018 from Random-Liu/add-kuberuntime-unit-test
Automatic merge from submit-queue

CRI: Refactor kuberuntime unit test

Based on https://github.com/kubernetes/kubernetes/pull/34858

This PR:
1) Refactor the fake runtime service and some kuberuntime unit test.
2) Add better garbage collection unit test.
3) Fix init container unit test which isn't testing correctly. Some other unit tests may also need to be fixed.
4) Add pod log directory garbage collection unit test.

@feiskyer @yujuhong 
/cc @kubernetes/sig-node
2016-10-24 13:38:29 -07:00
Michael Taufen
dba917c5b7 Include mount command in Kubelet mounter output 2016-10-24 05:50:24 -07:00
Kubernetes Submit Queue
33ebe1f18b Merge pull request #34905 from ingvagabund/client-to-clientset
Automatic merge from submit-queue

Replace client with clientset

Replace client with clientset in some places

Fixes: #34637
2016-10-24 05:38:43 -07:00
deads2k
fd65bc8fff prevent panic if resourceversion checked early 2016-10-24 08:25:11 -04:00
Kubernetes Submit Queue
3c84164bdf Merge pull request #33347 from justinsb/fix_32900
Automatic merge from submit-queue

bootstrap: Start hostNetwork pods even if network plugin not ready
2016-10-24 01:14:06 -07:00
Random-Liu
0655ae56bb Add pod log garbage collection unit test. 2016-10-24 00:03:34 -07:00
Random Liu
e87fa5e0ff * Refactor kuberuntime unit test
* Add gc unit test
* Fix init container unit test
2016-10-24 00:03:34 -07:00
Random Liu
fad4672e72 Add legacy container log location support. 2016-10-23 19:08:47 -07:00
Random-Liu
121a91eb12 Symlink docker logs to CRI defined log path. 2016-10-23 19:08:47 -07:00
Jan Chaloupka
4fde09d308 Replace client with clientset in code 2016-10-23 22:00:35 +02:00
Kubernetes Submit Queue
432bbb5d5a Merge pull request #35246 from bowei/kubedns-logging
Automatic merge from submit-queue

Refactor some functions in kube-dns to reduce surface area

- Moves federation query path out to its own method
- Creates dns/util and moves some trivial methods to that package

This is just moving of code.
2016-10-22 23:15:25 -07:00
Dr. Stefan Schimanski
05fcc6b56a Update bazel 2016-10-22 14:31:56 +02:00
Dr. Stefan Schimanski
cca05af615 Move swagger+openapi setup to routes and decouple from run 2016-10-22 13:42:22 +02:00
mbohlool
cd5643b85c Update bazel 2016-10-22 02:50:33 -07:00
mbohlool
3e67cf8b9b Add authentication to openapi Spec 2016-10-22 02:43:42 -07:00
Kubernetes Submit Queue
eeae8b5975 Merge pull request #35294 from wojtek-t/kubelet_get_from_cache
Automatic merge from submit-queue

Kubelet getting node from apiserver cache before update.

This is blocked on #35218 (however it's ready for review).

It seems to visibly reduce the apiserver metrics (and I didn't observe higher number of conflicts even in 2000-node kubemark).
2016-10-22 01:59:57 -07:00
Wojciech Tyczynski
ee73fcdadb Update kubelet_node_status.go 2016-10-22 08:44:25 +02:00
Mike Danese
df713b478c fix tests by declaring testdata 2016-10-21 17:32:32 -07:00
Mike Danese
3b6a067afc autogenerated 2016-10-21 17:32:32 -07:00
Kubernetes Submit Queue
a7807eb5a4 Merge pull request #34138 from ingvagabund/create-restclient-interface
Automatic merge from submit-queue

Create restclient interface

Refactoring of code to allow replace *restclient.RESTClient with any RESTClient implementation that implements restclient.RESTClientInterface interface.
2016-10-21 16:02:04 -07:00
Kubernetes Submit Queue
d20dda0c06 Merge pull request #35309 from yujuhong/fix_restarts
Automatic merge from submit-queue

CRI: Handle container/sandbox restarts for pod with RestartPolicy == …

If all sandbox and containers are dead in a pod, and the restart policy is
"Never", kubelet should not try to recreate all of them.
2016-10-21 14:35:06 -07:00
Kubernetes Submit Queue
bdaf502ff4 Merge pull request #34094 from nebril/hless-to-nonhless-ip
Automatic merge from submit-queue

Deny service ClusterIP update from `None`

**What this PR does / why we need it**: Headless service should not be transformed into a service with ClusterIP, therefore update of this field if it's set to `None` is disallowed.

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

**Release note**:
```release-note
Changing service ClusterIP from `None` is not allowed anymore.
```
2016-10-21 14:34:56 -07:00
Yu-Ju Hong
32f05cda4a CRI: Handle container/sandbox restarts for pod with RestartPolicy == Never
If all sandbox and containers are dead in a pod, and the restart policy is
"Never", kubelet should not try to recreate all of them.
2016-10-21 10:10:09 -07:00
Kubernetes Submit Queue
6bda989d54 Merge pull request #35227 from deads2k/controller-13-generic-infromer
Automatic merge from submit-queue

add generic shared informer backed by existing informer

Adds the ability to get an informer and lister that returns `[]runtime.Object` methods with the "normal" filtering capabilities based on a `GroupResource`. Right now, it only works on known types (and re-uses those caches for efficiency by having a different skin on the `Index`).  It should be extended in the future.

@derekwaynecarr I think this gives you the types you were looking for to avoid the ugly array copies.
2016-10-21 08:39:09 -07:00
Kubernetes Submit Queue
850c586b69 Merge pull request #35218 from wojtek-t/get_to_list_support_resource_version
Automatic merge from submit-queue

Support resourceVersion in GetToList - unify interface of List and Ge…

This pretty much unifies the interface of List() and GetToList() methods of storage interface.

I'm going to use it in a subsequent PR to improve performance of the whole cluster.
2016-10-21 08:02:14 -07:00
deads2k
a0a0e61f62 add generic shared informer backed by existing informer 2016-10-21 08:39:09 -04:00
Wojciech Tyczynski
c4d2f95c06 Merge pull request #35271 from k82cn/k8s_35257
Added 'mounterPath' to Mounter interface in 'mount_unsupported.go'.
2016-10-21 13:15:32 +02:00
Maciej Kwiek
d1c32b8194 Test cases for service ClusterIP updates
Test cases from ClusterIP using types to other ClusterIP using types
(ClusterIP, NodePort, LoadBalancer) added.
2016-10-21 13:11:57 +02:00
Kubernetes Submit Queue
f74fbfc044 Merge pull request #35240 from yujuhong/ns_fix
Automatic merge from submit-queue

Return an empty network namespace path for exited infra containers

If the infra container has already terminated, `docker inspect` will report
pid 0. The path constructed using the pid to check the network namespace of
the process will be invalid. This commit changes docker to report an empty
path to stop kubenet from erroring out whenever TearDown is called on an
exited infra container.
    
This is not a fix for all the plugins, as some plugins may require the actual
network namespace to tear down properly.
2016-10-21 03:12:57 -07:00
Kubernetes Submit Queue
c98eb3867f Merge pull request #35199 from kargakis/remove-last-probe-time
Automatic merge from submit-queue

Remove last probe time from replica sets

While experimenting with Deployment conditions I found out that if we are going to use lastProbeTime as we are supposed to be using it then we hotloop between updates (see https://github.com/kubernetes/kubernetes/pull/19343#issuecomment-255096778 for more info)

cc: @smarterclayton @soltysh
2016-10-21 01:47:01 -07:00
Klaus Ma
d2e18d6bd3 Added 'mounterPath' to Mounter interface in 'mount_unsupported.go'. 2016-10-21 16:33:43 +08:00
Jan Chaloupka
6079053407 Update clientset generator to use RESTClient interface instead of the RESTClient data type 2016-10-21 10:13:51 +02:00
Wojciech Tyczynski
93c008f8a4 Support resourceVersion in GetToList - unify interface of List and GetToList 2016-10-21 10:09:23 +02:00
Kubernetes Submit Queue
68e68052be Merge pull request #35115 from k82cn/k8s_35092
Automatic merge from submit-queue

Did not print 'No resources found.' if error.

fixes #35092 .
2016-10-21 01:01:32 -07:00
Maciej Kwiek
7df1afe71f Deny ClusterIP update for services using it
If the service is of the type using the ClusterIP (ClusterIP, NodePort,
LoadBalancer), the update of ClusterIP is prohibited.
2016-10-21 09:53:39 +02:00
Wojciech Tyczynski
ad87989378 Kubelet getting node from apiserver cache before update. 2016-10-21 09:21:39 +02:00
Kubernetes Submit Queue
71471c2330 Merge pull request #34740 from derekwaynecarr/storage-class-informer
Automatic merge from submit-queue

Add an informer for StorageClass

Add an informer for `StorageClass` for later consumption in quota.

/cc @eparis @deads2k @erinboyd
2016-10-20 23:36:58 -07:00
Kubernetes Submit Queue
c6df88991d Merge pull request #35194 from wojtek-t/efficient_selector
Automatic merge from submit-queue

Optimize label selector

The number of values for a given label is generally pretty small (in huge majority of cases it is exactly one value).
Currently computing selectors is up to 50% of CPU usage in both apiserver and scheduler.

Changing the structure in which those values are stored from map to slice improves the performance of typical usecase for computing selectors.

Early results:
- scheduler throughput it ~15% higher
- apiserver cpu-usage is also lower (seems to be also ~10-15%)
2016-10-20 20:45:22 -07:00
Kubernetes Submit Queue
3148bc7996 Merge pull request #35008 from timstclair/cri
Automatic merge from submit-queue

Add streaming methods to CRI API

Copied verbatim from the proposal in the [design doc](https://docs.google.com/document/d/1OE_QoInPlVCK9rMAx9aybRmgFiVjHpJCHI9LrfdNM_s/edit#heading=h.akcz9mrsrc0x).

Note: this will conflict with https://github.com/kubernetes/kubernetes/pull/33988, but the fix ("not implemented") is simple so we can see which gets approved first.

For https://github.com/kubernetes/kubernetes/pull/33988/files

/cc @Random-Liu @kubernetes/sig-node
2016-10-20 19:21:34 -07:00
Yu-Ju Hong
fee4c9a7d9 Return empty network namespace if the infra container has exited
If the infra container has already terminated, `docker inspect` will report
pid 0. The path constructed using the pid to check the network namespace of
the process will be invalid. This commit changes docker to report an empty
path to stop kubenet from erroring out whenever TearDown is called on an
exited infra container.

This is not a fix for all the plugins, as some plugins may require the actual
network namespace to tear down properly.
2016-10-20 17:12:08 -07:00
Bowei Du
28cd4c58e3 Moves some common functions into package dns/util 2016-10-20 16:47:09 -07:00
Bowei Du
ffed9c6f93 Move federation record response logic into its own method
This introduces some decoupling between the mainline logic and the
federation logic.
2016-10-20 16:11:54 -07:00
Bowei Du
2cf7f7bfc5 Reduce surface area of pkg/dns.go
Moves some utility functions into `util` package.
2016-10-20 15:51:04 -07:00
Tim St. Clair
c29ec1d02a Fix stdin type on attach 2016-10-20 14:54:16 -07:00
Jing Xu
34ef93aa0c Add mounterPath to mounter interface
In order to be able to use new mounter library, this PR adds the
mounterPath flag to kubelet which passes the flag to the mount
interface. If flag is empty, mount uses default mount path.
2016-10-20 14:15:27 -07:00
Kubernetes Submit Queue
a9e53ded1c Merge pull request #34973 from deads2k/api-28-proxy-dialer
Automatic merge from submit-queue

move proxytransport config out of the genericapiserver

Proxy transport is not generic. This moves it to the master config where it is used.
2016-10-20 13:48:33 -07:00
Kubernetes Submit Queue
c04aec3462 Merge pull request #34375 from euank/rkt-image-with-port
Automatic merge from submit-queue

rkt: Convert image name to be a valid acidentifier

**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
Fix a bug under the rkt runtime whereby image-registries with ports would not be fetched from
```

This fixes a bug whereby an image reference that included a port was not
recognized after being downloaded, and so could not be run

This is the quick-and-simple fix. In the longer term, we'll want to refactor image logic a bit more to handle the many special cases that the current code does not, mostly related to library images on dockerhub.

/cc @yifan-gu @kubernetes/sig-rktnetes
2016-10-20 13:08:01 -07:00
Tim St. Clair
80d7fcad86 Fix typo 2016-10-20 13:02:16 -07:00