Commit Graph

28791 Commits

Author SHA1 Message Date
Robert Bailey
6c3ed90b66 Merge pull request #24804 from ncdc/fix-node-e2e-failure-output
Fix node e2e startServer failure output
2016-05-06 13:26:41 -07:00
Robert Bailey
7df41be489 Merge pull request #24403 from kargakis/use-platform-agnostic-func
kubectl: use platform-agnostic helper in edit
2016-05-06 13:26:12 -07:00
Minhan Xia
1252f5695b add unit tests for kubenet 2016-05-06 12:10:45 -07:00
Mike Danese
3e1c0b5951 run kube-addon-manager in a pod 2016-05-06 11:01:06 -07:00
David McMahon
5916baa387 Update CHANGELOG.md for v1.2.4. 2016-05-06 10:55:03 -07:00
Random-Liu
148588e6a1 1) Add docker operation timeout metrics.
2) Cleanup kubelet stats and add runtime operation error and timeout
rate monitoring.
3) Monitor runtime operation error and timeout rate in
kubelet perf.
2016-05-06 10:53:13 -07:00
Random-Liu
66678354a0 Add timeout for all docker operation. 2016-05-06 10:53:13 -07:00
derekwaynecarr
7bab6999d4 Allow KillPod to take a gracePeriodOverride 2016-05-06 12:14:43 -04:00
derekwaynecarr
582e662581 Clean-up sources ready tracking 2016-05-06 12:11:29 -04:00
derekwaynecarr
725af223aa Add parsers for eviction thresholds 2016-05-06 12:06:03 -04:00
k8s-merge-robot
16159b8bd0 Merge pull request #24344 from derekwaynecarr/kubelet-lifecycle-callouts
Automatic merge from submit-queue

Define interfaces for kubelet pod admission and eviction

There is too much code and logic in `kubelet.go` that makes it hard to test functions in discrete pieces.

I propose an interface that an internal module can implement that will let it make an admission decision for a pod.  If folks are ok with the pattern, I want to move the a) predicate checking, b) out of disk, c) eviction preventing best-effort pods being admitted into their own dedicated handlers that would be easier for us to mock test.  We can then just write tests to ensure that the `Kubelet` calls a call-out, and we can write easier unit tests to ensure that dedicated handlers do the right thing.

The second interface I propose was a `PodEvictor` that is invoked in the main kubelet sync loop to know if pods should be pro-actively evicted from the machine.  The current active deadline check should move into a simple evictor implementation, and I want to plug the out of resource killer code path as an implementation of the same interface.

 @vishh @timothysc - if you guys can ack on this, I will add some unit testing to ensure we do the call-outs.

/cc @kubernetes/sig-node @kubernetes/rh-cluster-infra
2016-05-06 08:53:35 -07:00
Clayton Coleman
0e05f704f3
Trace.Step() performs an unnecessary ref
Allocates more objects than necessary.
2016-05-06 11:42:35 -04:00
k8s-merge-robot
c0b788bf49 Merge pull request #24727 from smarterclayton/fast_path_lookup
Automatic merge from submit-queue

Avoid allocations and a reflect.Call in conversion

reflect.Call is fairly expensive, performing 8 allocations and having to
set up a call stack. Using a fairly straightforward to generate switch
statement, we can bypass that early in conversion (as long as the
function takes responsibility for invocation). We may also be able to
avoid an allocation for the conversion scope, but not positive yet.

```
benchmark                    old ns/op     new ns/op     delta
BenchmarkPodConversion-8     14713         12173         -17.26%

benchmark                    old allocs     new allocs     delta
BenchmarkPodConversion-8     80             72             -10.00%

benchmark                    old bytes     new bytes     delta
BenchmarkPodConversion-8     9133          8712          -4.61%
```

@wojtek-t related to #20309
2016-05-06 07:10:18 -07:00
k8s-merge-robot
32256d53aa Merge pull request #25136 from dcbw/kubenet-fixup-txqueuelen
Automatic merge from submit-queue

kubenet: fix up CNI bridge TX queue length if needed

CNI's bridge plugin mis-handles the TxQLen when creating the bridge,
leading to a zero-length TX queue.  This doesn't typically cause
problems (since virtual interfaces don't have hard queue limits)
but when adding traffic shaping, some qdiscs pull their packet
limits from the TX queue length, leading to a packet limit of 0
in some cases.  Until we can depend on a new enough version of
CNI, fix up the TX queue length internally.

Closes: https://github.com/kubernetes/kubernetes/issues/25092
2016-05-06 06:29:31 -07:00
mqliang
c10f43a2e5 implement AddIndexers for SharedIndexInformer 2016-05-06 21:23:18 +08:00
k8s-merge-robot
9f2d75adf3 Merge pull request #25128 from jsafrane/devel/enable-volume-test
Automatic merge from submit-queue

e2e: Enable persistent volume test

The test is already there and all packages should be already available on all test machines.
    
It tests:

- binding
- using bound claim in a pod
- recycling NFS volume

(we should see shortly if all nfs packages are really installed as Jenkins tests it...)
2016-05-06 05:34:12 -07:00
k8s-merge-robot
a64ef4d3df Merge pull request #25042 from wonderfly/trusty_beta_to_1_2
Automatic merge from submit-queue

Update e2e-runner.sh so it can fetch multiple types of Trusty images

Trusty beta images now work with k8s 1.2.

@spxtr, @andyzheng0831 Can you review this?
2016-05-06 04:51:57 -07:00
Michal Fojtik
543a8b2d06
Display line number on JSON errors 2016-05-06 13:10:47 +02:00
k8s-merge-robot
66ef87347e Merge pull request #24968 from wojtek-t/remove_node_name
Automatic merge from submit-queue

Remove nodeName from predicate signature.

With this approach, I'm getting the initial throughput (in empty cluster) in 1000-node cluster of ~95pods/s.
Which is ~30% improvement.

@kubernetes/sig-scalability
2016-05-06 04:09:13 -07:00
k8s-merge-robot
346ddc52c2 Merge pull request #24748 from Random-Liu/cleanup-with-new-engine-api
Automatic merge from submit-queue

Kubelet: Cleanup with new engine api

Finish step 2 of #23563

This PR:
1) Cleanup go-dockerclient reference in the code.
2) Bump up the engine-api version.
3) Cleanup the code with new engine-api.

Fixes #24076.
Fixes #23809.

/cc @yujuhong
2016-05-06 03:16:53 -07:00
Jan Chaloupka
dd2c9c578d Introduce kubectl describe --show-events
Introduce DescriberSettings for Describer display options
Introduce --show-events flag and DescriberSettings in Describer methods
Introduce unit-tests
Regenerated kubectl describe docs
Add events flag tests to test-cmd.sh

Signed-off-by: dhodovsk@redhat.com
Signed-off-by: jchaloup@redhat.com
2016-05-06 11:40:11 +02:00
k8s-merge-robot
60324ff884 Merge pull request #25229 from smarterclayton/bench_quantity
Automatic merge from submit-queue

Add quantity benchmarks
2016-05-06 02:31:38 -07:00
Wojciech Tyczynski
a51f266ebf Remove nodeName from predicate signature. 2016-05-06 11:23:37 +02:00
mqliang
9011207f18 add namespace index to rc and pod 2016-05-06 17:12:36 +08:00
Wojciech Tyczynski
7e462c2310 Merge pull request #25250 from wojtek-t/fix_proto_configs
Fix proto configs
2016-05-06 10:43:06 +02:00
David Oppenheimer
2983c1d9d0 Merge pull request #22985 from Huawei-PaaS/inter-pod-affinity
Inter pod topological affinity and anti-affinity implementation
2016-05-06 01:39:58 -07:00
Wojciech Tyczynski
247512d86a Fix proto configs 2016-05-06 10:25:59 +02:00
Manjunath A Kumatagi
00be597618 Rename a function parameter name in authn.go 2016-05-06 02:48:10 -04:00
Kevin
82ba4f077e implement inter pod topological affinity and anti-affinity 2016-05-06 06:46:23 +00:00
Lukasz Zajaczkowski
1acd762fbd Merge pull request #12 from ctrlaltdel/openstack-provider-swift-url
Automatically detect swift URL
2016-05-06 08:35:15 +02:00
Wojciech Tyczynski
28a8a23471 Merge pull request #25240 from thockin/fix-codecgen-sort
Fix codecgen sort
2016-05-06 08:28:51 +02:00
k8s-merge-robot
9a1b2540b0 Merge pull request #24739 from zmerlynn/1000nodes
Automatic merge from submit-queue

Jenkins: Clean up even if we can't bring cluster up

We're gathering all the cluster logs, go ahead and clean up the
resources.
2016-05-05 23:16:41 -07:00
k8s-merge-robot
2ebd771915 Merge pull request #25121 from liangchenye/flakepodnotfound
Automatic merge from submit-queue

fix #24937:  flake pod not found

https://github.com/kubernetes/kubernetes/issues/24937
Split from #24191
Signed-off-by: liang chenye <liangchenye@huawei.com>
2016-05-05 22:40:58 -07:00
k8s-merge-robot
4a00266f40 Merge pull request #25224 from Random-Liu/delete-pod-with-uid
Automatic merge from submit-queue

Delete pod with uid as precondition.

Addressed https://github.com/kubernetes/kubernetes/issues/25169#issuecomment-217033202.

Fix #25169 
Fix #24937

This PR change status manager to delete pods with uid as a precondition, so that kubelet won't delete pods with different uid but the same name and namespace accidentally.

/cc @yujuhong
2016-05-05 22:02:14 -07:00
Mikaël Cluseau
4c2dc566ac VolumeMount.SubPath: API change. 2016-05-06 15:40:10 +11:00
Paul Morie
bc5d7a1bca Reduce kubelet LOC: extract cadvisor 2016-05-06 00:26:48 -04:00
Mikaël Cluseau
06900a934d Introduce subPath in VolumeMount 2016-05-06 15:08:41 +11:00
Tim Hockin
24f9beb1ff remove DBG and old code 2016-05-05 20:11:16 -07:00
Tim Hockin
457b27d25f Fix codecgen sort 2016-05-05 20:10:38 -07:00
k8s-merge-robot
79a9a14c6f Merge pull request #25010 from hongchaodeng/cp
Automatic merge from submit-queue

start etcd compactor in background

ref: #22448

What's in this PR?
- StartCompactor starts a compactor in the background in order to compact keys older than fixed time. We need to compact keys because we can't let on disk data grow forever. We save the most recent 10 minutes data. It should be enough for slow watchers and to tolerate burst. We might keep a longer history (12h) in the future once storage API can take advantage of multi-version key.
- Have only one compaction job for each cluster. Use endpoints from user input to differentiate clusters.
2016-05-05 19:46:46 -07:00
k8s-merge-robot
4a7ec6034f Merge pull request #23928 from caesarxuchao/cascading-deletion-API-changes
Automatic merge from submit-queue

API changes for Cascading deletion 

This PR includes the necessary API changes to implement cascading deletion with finalizers as proposed is in #23656. Comments are welcome.

@lavalamp @derekwaynecarr @bgrant0607 @rata @hongchaodeng
2016-05-05 19:46:40 -07:00
k8s-merge-robot
ab36e0e35e Merge pull request #24710 from smarterclayton/store_proto_in_etcd
Automatic merge from submit-queue

Allow etcd to store protobuf objects

Split storage serialization from client negotiation, and allow API server to take flag controlling serialization.

TODO:

* [x] API server still doesn't start - range allocation object doesn't seem to round trip correctly to etcd
* [ ] Verify that third party resources are ignoring protobuf (add a test)
* [ ] Add integration tests that verify storage is correctly protobuf
* [ ] Add a global default for which storage format to prefer?
2016-05-05 19:00:20 -07:00
k8s-merge-robot
1c0ec9dca9 Merge pull request #25228 from sjenning/fix-self-signed-cert-msg
Automatic merge from submit-queue

fix log message for self-signed cert generation
2016-05-05 18:12:32 -07:00
Minhan Xia
ae6f9ab970 kubenet try to retrieve ip inside pod net namespace 2016-05-05 17:57:32 -07:00
k8s-merge-robot
a3cbdcaa5b Merge pull request #25223 from duglin/runErrMsg
Automatic merge from submit-queue

Add a better error message to run.sh

I ran build/run.sh w/o any args (by mistake) and it just said
   `Invalid input.`
after several other steps. I had no idea whether I was doing something
wrong or if my env was busted. Clearly, I just forget to include the
command that run.sh was to invoke in the Docker container.  But it took
me time to go track down where this error came from and why. So to help
others I just tweaked the error message to be:
   `Invalid input - please specify a command to run.`

Very minor thing,I know, but if it helps others...

Signed-off-by: Doug Davis <dug@us.ibm.com>
2016-05-05 16:52:13 -07:00
k8s-merge-robot
03e7e08e70 Merge pull request #25124 from pmorie/kubelet-getters
Automatic merge from submit-queue

Reduce kubelet LOC: extract getters

Step 1 of #25028 as discussed in @kubernetes/sig-node meeting
2016-05-05 16:52:09 -07:00
k8s-merge-robot
ba7dc5e6e6 Merge pull request #25118 from ixdy/dockerized-e2e
Automatic merge from submit-queue

Map secret files into dockerized e2e

Rather than copying the GCE and AWS private keys/credentials to each Jenkins VM, we can put them in credentials and map them through.

This is one half of the change; if the relevant environment variables are set, we'll mount the files in.

cc @fejta @rmmh @apelisse
2016-05-05 16:52:05 -07:00
Alex Robinson
a715392e4e Merge pull request #25230 from a-robinson/fix
Don't surround node-tags list with square brackets
2016-05-05 15:26:40 -07:00
Clayton Coleman
cb3a479ed7
Add quantity benchmarks 2016-05-05 18:06:19 -04:00
Alex Robinson
6cfaed1299 Don't surround node-tags list with square brackets
That's not how yaml list parsing works...
2016-05-05 22:05:50 +00:00