Commit Graph

257 Commits

Author SHA1 Message Date
Prashanth B
730555b09b Add an e2e image puller static pod 2016-05-23 19:17:09 +00:00
Kris
f4cf45ee94 Removing indirection from proxy exec test
I removed the netexec and goproxy pods from the proxy exec test. Instead
it now runs kubectl locally and the proxy is running in-process. Since
Go won't proxy for localhost requests, this test cannot pass if the API
server is local. However it was already disabled for local clusters.
2016-05-20 09:16:23 -07:00
Daniel Smith
0bda969cd5 Merge pull request #25261 from jayunit100/readySched
Support GetReadySchedulable pods for all node selecting tests.
2016-05-18 17:24:09 -07:00
k8s-merge-robot
bf4f84167f Merge pull request #23567 from smarterclayton/init_containers
Automatic merge from submit-queue

Add init containers to pods

This implements #1589 as per proposal #23666

Incorporates feedback on #1589, creates parallel structure for InitContainers and Containers, adds validation for InitContainers that requires name uniqueness, and comments on a number of implications of init containers.

This is a complete alpha implementation.

<!-- Reviewable:start -->
---
This change is [<img src="http://reviewable.k8s.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](http://reviewable.k8s.io/reviews/kubernetes/kubernetes/23567)
<!-- Reviewable:end -->
2016-05-18 00:53:30 -07:00
gmarek
eb48166d5b Fix resource-gatherer that never gathered resources from non-master machines 2016-05-17 17:53:18 +02:00
gmarek
0848ad2201 Prevent division by 0 error in resource-gatherer 2016-05-17 14:35:48 +02:00
Wojciech Tyczynski
abe8259a30 Bump threshold for listing nodes 2016-05-17 08:45:53 +02:00
Clayton Coleman
205a8b4574 Add init container loading to the kubelet 2016-05-17 00:29:53 -04:00
Jeff Lowdermilk
6a15e0a9c2 e2e: make ForEach fail if filter is empty, fix no-op tests 2016-05-13 14:56:50 -07:00
Jeff Lowdermilk
4aabafe4c3 Merge pull request #25519 from jlowdermilk/no-trim
Don't trim whitespace from kubectl output in e2e tests
2016-05-13 13:01:22 -07:00
gmarek
74773827ba Add an option for resource-gatherer to look only on master node 2016-05-13 09:53:38 +02:00
k8s-merge-robot
4bb30e0097 Merge pull request #24806 from jayunit100/kubectl-stdin
Automatic merge from submit-queue

[e2e] kubectl stdin

Problem:  Currently kubectl heavily relies on files which have to be (for lack of a better word :):):)) "written" to the file system.  This hinders adoption of something like gobindata, by forcing an intermediary generated-assets directory type thing.

Solution: Lets migrate `kubectl.go` testing over to using standard input streams.

cc @kubernetes/sig-testing @timothysc
2016-05-13 00:10:43 -07:00
Jeff Lowdermilk
5f0d1f04b8 Don't trim whitespace from kubectl output in e2e tests 2016-05-12 09:00:51 -07:00
gmarek
2696e35be3 Add a flag to disable dumpig logs after e2e test failure 2016-05-11 16:53:30 +02:00
Jay Vyas
801c968fff Standard input for kubectl tests
rebased to include gobindata as well.
2016-05-10 14:16:50 -04:00
k8s-merge-robot
c4214f743f Merge pull request #24918 from Random-Liu/add-docker-operation-timeout
Automatic merge from submit-queue

Kubelet: Add docker operation timeout

For #23563.
Based on #24748, only the last 2 commits are new.

This PR:
1) Add timeout for all docker operations.
2) Add docker operation timeout metrics
3) Cleanup kubelet stats and add runtime operation error and timeout rate monitoring.
4) Monitor runtime operation error and timeout rate in kubelet perf.

@yujuhong 
/cc @gmarek Because of the metrics change.
/cc @kubernetes/sig-node
2016-05-09 21:51:52 -07:00
Wojciech Tyczynski
cb875e0f8c Enable using protobufs in e2e tests 2016-05-09 10:57:35 +02: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
Jay Vyas
326b213231 Consolidate node selecting tests to only use Schedulable + Running
nodes.
2016-05-06 10:32:12 -04:00
k8s-merge-robot
1f6711ca07 Merge pull request #25192 from ingvagabund/e2e-framework-util-start-pods-dont-wait-for-zero-pods
Automatic merge from submit-queue

e2e/framework/util.StartPods: don't wait for pods that are not created

When running ``[k8s.io] SchedulerPredicates [Serial] validates resource limits of pods that are allowed to run [Conformance]`` pods can be created in a way in which additional pods have to be create to fully saturate node's capacity CPU in a cluster. Additional pods are created by calling ``framework.StartPods``. The function creates pods with a given label and waits for them (if ``waitForRunning`` is ``true``). This is fine as long as the number of pods to created is non-zero. If there are zero pods to be created and ``waitForRunning`` is ``true``, the function waits forever as there is not going to be any pods with requested label. Thus, resulting in ``Error waiting for 0 pods to be running - probably a timeout``. Causing the e2e test to fail even if it should not.

Adding condition to return from the function immediately if there is not pod to create.
2016-05-05 09:49:43 -07:00
Prashanth Balasubramanian
2d7e2eb09f Modify e2e to wait for RC to stabilize before test 2016-05-05 09:27:19 -07:00
k8s-merge-robot
f5e1e9a227 Merge pull request #24912 from bprashanth/petset_controller
Automatic merge from submit-queue

Petset controller

Took longer than I expected. Main parts of this pr are:
1. Identity generation based on petset spec (volumes are mapped per discussion in #18016)
2. Ensure that we create/delete pets in sequence
3. Ensuring that we create, wait for healthy, create; or delete, wait for terminationGrace, delete
4. Controller that watches apiserver and drives actual -> desired

PVCs are not deleted, yet.
2016-05-05 08:58:23 -07:00
gmarek
78331db78d Fix units in kubemark resource gatherer 2016-05-05 14:10:21 +02:00
Jan Chaloupka
59fc509fb7 e2e/framework/util.StartPods: don't wait for pods that are not created 2016-05-05 12:28:03 +02:00
Prashanth Balasubramanian
6bc3052551 PetSet alpha controller 2016-05-04 18:39:17 -07:00
k8s-merge-robot
1642083e60 Merge pull request #24645 from jlowdermilk/rolling-update
Automatic merge from submit-queue

kubectl rolling-update support for same image

Fixes #23497.

Enables `kubectl rolling-update --image` to the same image, adding a `--image-pull-policy` flag to remove ambiguity. This allows rolling-update to behave as an "update and/or restart" (https://github.com/kubernetes/kubernetes/issues/23497#issuecomment-212349730), or as a forced update when the same tag can mean multiple versions (e.g. `:latest`). cc @janetkuo @nikhiljindal
2016-05-04 07:24:22 -07:00
k8s-merge-robot
66730c53c5 Merge pull request #24445 from vishh/framework-node-e2e
Automatic merge from submit-queue

Framework support for node e2e.

This should let us port existing e2e tests to the node e2e suite, if the tests are node specific.
2016-05-02 02:17:48 -07:00
Vishnu kannan
fa476b8044 Framework support for node e2e.
Signed-off-by: Vishnu kannan <vishnuk@google.com>
2016-04-29 15:37:35 -07:00
Clayton Coleman
fdb110c859 Fix the rest of the code 2016-04-29 17:12:10 -04:00
k8s-merge-robot
e6295f165a Merge pull request #22869 from jayunit100/iperf-e2e
Automatic merge from submit-queue

[Networking] [E2E]  n-to-1 iperf client->server throughput benchmarking
2016-04-29 10:03:29 -07:00
Jay Vyas
95e315e427 E2E Network performance run which uses iperf.
generic pod-per-node functionality for testing - 2 node test only
- update framework to decompose pod vs svc creation for composition.
- remove hard coded 2 and pointer to --scale
2016-04-26 18:42:19 -04:00
Jeff Lowdermilk
9b91750284 add e2e test for same-image rolling-update 2016-04-25 13:38:45 -07:00
k8s-merge-robot
0057931f4e Merge pull request #24434 from gmarek/services
Automatic merge from submit-queue

Create multiple RCs in NC - prerequisite for adding services

WIP because I need to make the logs readable again.
2016-04-23 15:19:36 -07:00
k8s-merge-robot
e61e396de7 Merge pull request #24291 from gmarek/gatherer
Automatic merge from submit-queue

Make resource gatherer work for Kubemark
2016-04-23 02:53:58 -07:00
k8s-merge-robot
71f0d058b6 Merge pull request #24542 from Random-Liu/versioned-perf-data
Automatic merge from submit-queue

Use mCPU as CPU usage unit, add version in PerfData, and fix memory usage bug.

Partially addressed #24436.

This PR:
1) Change the CPU usage unit to "mCPU"
2) Add version in PerfData, and perfdash will only support the newest version now.
3) Fix stupid mistake when calculating the memory usage average.

/cc @vishh
2016-04-23 01:17:59 -07:00
k8s-merge-robot
aa4da07157 Merge pull request #24631 from goltermann/spell
Automatic merge from submit-queue

Fix a few typos in comments
2016-04-22 09:45:46 -07:00
k8s-merge-robot
9a871ed554 Merge pull request #24284 from marun/e2e-conn-check-timeout
Automatic merge from submit-queue

Add timeout to e2e network connectivity checks

Some e2e tests use wget to check connectivity, and the default e2e
timeout is 900s.  This change allows the timeout to be specified on a
check-by-check basis.  This will also make the check useful for negative
checks (like those used by openshift to validate isolation) since a
short timeout is suggested where connectivity is not expected.
2016-04-21 23:41:44 -07:00
goltermann
dddc6cb6c8 Fix a few spellings. 2016-04-21 15:16:42 -07:00
gmarek
d344c2e32b Create multiple RCs in NC - prerequisite for adding services 2016-04-21 17:20:05 +02:00
Random-Liu
7af6642e65 Use mCPU as CPU usage unit, add version in PerfData, fix memory usage bug. 2016-04-20 16:42:14 -07:00
goltermann
3fa6c6f6d9 Enable vet 2016-04-20 09:48:24 -07:00
k8s-merge-robot
15ed9dbd02 Merge pull request #23771 from jayunit100/ClusterVerificationFramework
Automatic merge from submit-queue

Cluster Verification Framework

I've spent the last few days looking at the general patterns of verification we have that we tend to reuse in the e2es.  Basically, we need 
 
- label filters
- forEach and WaitFor (where forEach doesn't necessarily waitFor anything).
- timeouts
- multiple phases (reusable definition of state)
- an extensible way to define cluster state that can evolve over time in a data object rather than as a set of parameters that have magic semantics

This PR 
- implements the abstract above functionality declaratively, and w/o hidden semantics.
- addresses the sprawling duplicate methods in #23540, so that we can phase out the wrapper methods and replace them with well defined, extensible semantics for cluster state.
- fixes the recently discovered #23730 issue (where kubectl.go is relying on examples.go, which is obviously wacky) by using the new framework to implement forEachPod in just a couple of lines and migrating the wrapper function into framework.go.

There is some cleanup to do here, but this is seemingly working for a couple of use cases that are important (spark,cassandra,...,kubectl) tests. - i played with a few different ideas and this wound up seeming to be the most natural implementation from a usability standpoint... 

in any case, just thought id push this up as a first iteration, open to feedback.

@kubernetes/sig-testing @timothysc
2016-04-20 04:23:21 -07:00
k8s-merge-robot
56d7579bfd Merge pull request #24359 from janetkuo/rollover-e2e-no-events
Automatic merge from submit-queue

Avoid relying on events in deployment rollover e2e test

Fixes #22028

@kubernetes/sig-config
2016-04-18 16:51:22 -07:00
Jay Vyas
632a0a81d4 Cluster verification framework supporting declarative definition and iteration against pod spectrum
- rebase: ForEach only on Running pods
- add waitFor step in guestbook describe and wrapper
- simplify logs in polling, make panic immediate, give rolluped stats in
the logs.

Improve logging for failure on ForEach
2016-04-18 10:01:10 -04: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
Clayton Coleman
845e496572 Convert poll in e2e with watch.Until 2016-04-15 22:21:42 -04:00
Janet Kuo
eb96b28004 Avoid relying on events in deployment rollover e2e test 2016-04-15 15:20:41 -07:00
gmarek
0071a8627c Make resource gatherer work for Kubemark 2016-04-15 20:12:26 +02:00
Clayton Coleman
0f95b91f96 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).
2016-04-15 11:44:17 -04:00
Maru Newby
75c49a98d4 Add timeout to e2e network connectivity checks
Some e2e tests use wget to check connectivity, and the default e2e
timeout is 900s.  This change allows the timeout to be specified on a
check-by-check basis.  This will also make the check useful for negative
checks (like those used by openshift to validate isolation) since a
short timeout is suggested where connectivity is not expected.
2016-04-14 21:27:10 +00:00