Commit Graph

3815 Commits (d51e27fe96a811ea3bbedd08a1c22f7bfad77a70)

Author SHA1 Message Date
Kubernetes Submit Queue a7b63e1a95 Merge pull request #36723 from dims/fix-matchcontainer-output-retry
Automatic merge from submit-queue

Cleanup pod in MatchContainerOutput

MatchContainerOutput always creates a pod and does not cleanup. We need
to fix this to be better at re-trying the scenarios.

When there is an error say in the first attempt of ExpectNoErrorWithRetries
(for example in "Pods should contain environment variables for services" test)
the retries logic calls MatchContainerOutput another time and the
podClient.create fails correctly since the pod was not cleaned up the
first time MatchContainerOutput was called.

Fixes #35089
2016-11-14 20:06:22 -08:00
Davanum Srinivas d4a912208d Cleanup pod in MatchContainerOutput
MatchContainerOutput always creates a pod and does not cleanup. We need
to fix this to be better at re-trying the scenarios.

When there is an error say in the first attempt of ExpectNoErrorWithRetries
(for example in "Pods should contain environment variables for services" test)
the retries logic calls MatchContainerOutput another time and the
podClient.create fails correctly since the pod was not cleaned up the
first time MatchContainerOutput was called.

Fixes #35089
2016-11-14 20:36:13 -05:00
Kubernetes Submit Queue 3245e8b355 Merge pull request #36767 from vishh/rename-cgroups-flags
Automatic merge from submit-queue

[kubelet] rename --cgroups-per-qos to --experimental-cgroups-per-qos

This reflects the true nature of "cgroups per qos" feature.

```release-note
 * Rename `--cgroups-per-qos` to `--experimental-cgroups-per-qos` in Kubelet
```
2016-11-14 17:35:19 -08:00
Kubernetes Submit Queue 122a228b63 Merge pull request #36771 from euank/bump-some-memory
Automatic merge from submit-queue

tests: update memory resource limits

```release-note
NONE
```

On ubuntu, the `RestartNever` test OOMs its cgroup limit fairly
frequently.

This bumps the number up to something suitably large since the test
isn't testing anything related to this anyways.

Fixes #36159

Fix based on https://github.com/kubernetes/kubernetes/issues/36159#issuecomment-258992255

cc @yujuhong @saad-ali
2016-11-14 16:59:19 -08:00
Vishnu kannan 9066253491 [kubelet] rename --cgroups-per-qos to --experimental-cgroups-per-qos to reflect the true nature of that feature
Signed-off-by: Vishnu kannan <vishnuk@google.com>
2016-11-14 14:06:39 -08:00
Euan Kemp 08382c1697 test/e2e: update init container memory limit
On ubuntu, the `RestartNever` test OOMs its cgroup limit fairly
frequently.

This bumps the number up to something suitably large since the test
isn't testing anything related to this anyways.

Fixes #36159
2016-11-14 12:55:33 -08:00
Rajat Ramesh Koujalagi c0f62b2186 Add test for: mount a secret in the presence of another secret in a
different namespace
2016-11-14 10:52:15 -08:00
Kubernetes Submit Queue 03455d04aa Merge pull request #36623 from yujuhong/adjust_limits
Automatic merge from submit-queue

Use generous limits in the resource usage tracking tests

These tests are mainly used to catch resource leaks in the soak cluster. Using
higher limits to reduce noise.

This should fix #32942 and #32214.
2016-11-14 10:28:19 -08:00
Kubernetes Submit Queue 706224d9c3 Merge pull request #36225 from piosz/logging-e2e
Automatic merge from submit-queue

Promoted GCL e2e test to stable

The test is stable - haven't failed during last ~runs.
2016-11-14 04:19:56 -08:00
Kubernetes Submit Queue 454f60c758 Merge pull request #36506 from Crassirostris/kibana-test-fix
Automatic merge from submit-queue

Fix kibana e2e test

Thanks @Random-Liu for noticing a problem in kibana e2e test!

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

@piosz
2016-11-12 19:07:05 -08:00
Mik Vyatskov 2b837ba02c Fixed kibana e2e test 2016-11-12 22:27:37 +01:00
Kubernetes Submit Queue f228edbf8e Merge pull request #36668 from mwielgus/dis_e2e
Automatic merge from submit-queue

Add back e2e tests for disruption budget

The tests were temporarily removed due to problems with api versions in client-go. The test is almost exactly the same as it used to be before api version change.

cc: @caesarxuchao @davidopp
2016-11-11 16:28:53 -08:00
Kubernetes Submit Queue b85acd957a Merge pull request #36579 from kargakis/restore-events-for-tests
Automatic merge from submit-queue

Restore event messages for replica sets in the deployment controller

Needed to unblock release upgrade tests (see https://github.com/kubernetes/kubernetes/issues/36453)

@kubernetes/deployment ptal
2016-11-11 15:50:31 -08:00
Marcin e3091d8304 Add back e2e tests for disruption budget 2016-11-11 22:30:56 +01:00
Kubernetes Submit Queue 1bc5b822cd Merge pull request #36479 from Random-Liu/node-e2e-node-name
Automatic merge from submit-queue

Node Conformance & E2E: Get node name from node object.

This PR changes the node e2e test framework to get node name from apiserver instead of test flags.

When a user tried out the node conformance test, he found that node conformance test will not work properly if kubelet is started with `hostname-override`.

The reason is that node conformance test is using [the default node name - `os.Hostname`](https://github.com/kubernetes/kubernetes/blob/master/test/e2e_node/e2e_node_suite_test.go#L124), which may be different from `hostname-override`. This will cause test pods not scheduled, and eventually test timeout.

We can expose a flag from node conformance test, and let user set node name themselves if they are using `hostname-override` on kubelet. However, let the framework automatically detect it from apiserver is more user friendly.

/cc @kubernetes/sig-node 
This PR 1) only changes node e2e test framework; 2) fixes a problem in node conformance test which is a 1.5 feature. @saad-ali Can we have this in 1.5?
2016-11-10 18:56:53 -08:00
Yu-Ju Hong 5bf9a699f1 Use generous limits in the resource usage tracking tests
These tests are mainly used to catch resource leaks in the soak cluster. Using
higher limits to reduce noise.
2016-11-10 18:01:58 -08:00
Random-Liu 1c70c899f7 Get node name from node object. 2016-11-10 14:25:50 -08:00
Kubernetes Submit Queue 44f672e5e2 Merge pull request #34877 from resouer/e2e-log-path
Automatic merge from submit-queue

Add e2e node test for log path

fixes #34661

A node e2e test to check if container logs files are properly created with right content.

Since the log files under `/var/log/containers` are actually symbolic of docker containers log files, we can not use a pod to mount them in and do check (symbolic doesn't supported by docker volume).

cc @Random-Liu
2016-11-10 08:35:59 -08:00
Kubernetes Submit Queue 6c18db06dd Merge pull request #36570 from wojtek-t/fix_kubeproxy_resources
Automatic merge from submit-queue

Fix resource constraints in density test

Fixes one source of flakes in #34911
2016-11-10 07:23:03 -08:00
Michail Kargakis 8ef6fdde72 Restore event messages for replica sets in the deployment controller 2016-11-10 14:34:40 +01:00
Kubernetes Submit Queue c98fc70195 Merge pull request #36008 from MrHohn/addon-rc-migrate
Automatic merge from submit-queue

Migrates addons from RCs to Deployments

Fixes #33698.

Below addons are being migrated:
- kube-dns
- GLBC default backend
- Dashboard UI
- Kibana

For the new deployments, the version suffixes are removed from their names. Version related labels are also removed because they are confusing and not needed any more with regard to how Deployment and the new Addon Manager works.

The `replica` field in `kube-dns` Deployment manifest is removed for the incoming DNS horizontal autoscaling feature #33239.

The `replica` field in `Dashboard` Deployment manifest is also removed because the rescheduler e2e test is manually scaling it.

Some resource limit related fields in `heapster-controller.yaml` are removed, as they will be set up by the `addon resizer` containers. Detailed reasons in #34513.

Three e2e tests are modified:
- `rescheduler.go`: Changed to resize Dashboard UI Deployment instead of ReplicationController.
- `addon_update.go`: Some namespace related changes in order to make it compatible with the new Addon Manager.
- `dns_autoscaling.go`: Changed to examine kube-dns Deployment instead of ReplicationController.

Both of above two tests passed on my own cluster. The upgrade process --- from old Addons with RCs to new Addons with Deployments --- was also tested and worked as expected.

The last commit upgrades Addon Manager to v6.0. It is still a work in process and currently waiting for #35220 to be finished. (The Addon Manager image in used comes from a non-official registry but it mostly works except some corner cases.)

@piosz @gmarek could you please review the heapster part and the rescheduler test?

@mikedanese @thockin 

cc @kubernetes/sig-cluster-lifecycle 

---

Notes:
- Kube-dns manifest still uses *-rc.yaml for the new Deployment. The stale file names are preserved here for receiving faster review. May send out PR to re-organize kube-dns's file names after this.
- Heapster Deployment's name remains in the old fashion(with `-v1.2.0` suffix) for avoiding describe this upgrade transition explicitly. In this way we don't need to attach fake apply labels to the old Deployments.
2016-11-10 02:36:38 -08:00
Wojciech Tyczynski 69069cd157 Fix resource constraints in density test 2016-11-10 10:21:27 +01:00
Kubernetes Submit Queue d263c1d694 Merge pull request #36195 from jingxu97/Nov/testnfs-3
Automatic merge from submit-queue

Enable NFS and GlusterFS tests in both node and cluster e2e tests

This PR is to enable NFS and GlusterFS tests on both node and cluster
e2e tests.

It also change the code to use ExecCommandInPod instead of kubectl since
node does not have kubectl available
2016-11-10 00:07:42 -08:00
Jing Xu 88d55388ae Enable NFS and GlusterFS tests in both node and cluster e2e tests
This PR is to enable NFS and GlusterFS tests on both node and cluster
e2e tests for gci and containervm distro.

It also change the code to use ExecCommandInPod instead of kubectl since
node does not have kubectl available
2016-11-09 14:42:52 -08:00
Zihong Zheng fe3a0d2937 Changed kube-dns-autoscaler's target to Deployment/kube-dns 2016-11-09 09:20:51 -08:00
Zihong Zheng e8c66d4aee Bumps up Addon Manager to v6.0-alpha.1 and updates related e2e test 2016-11-09 09:19:15 -08:00
Zihong Zheng 68f7a739c0 Modifies Rescheduler e2e test for the new dashboard addon 2016-11-09 09:17:05 -08:00
Kubernetes Submit Queue b6461c9536 Merge pull request #36504 from wojtek-t/increase_initialization-timeout
Automatic merge from submit-queue

Increase initialization timeout for podStore

Fix #33839 - see https://github.com/kubernetes/kubernetes/issues/33839#issuecomment-259442714 for more details.
2016-11-09 08:50:08 -08:00
Kubernetes Submit Queue 658d010633 Merge pull request #34539 from jszczepkowski/ha-e2e-zones
Automatic merge from submit-queue

Added e2e test for HA master replicas in different zones.
2016-11-09 08:09:28 -08:00
Wojciech Tyczynski 3ed6ea96c0 Increase initialization timeout for podStore 2016-11-09 16:32:58 +01:00
Kubernetes Submit Queue 00458a12a8 Merge pull request #36442 from wojtek-t/extend_lb_timeout
Automatic merge from submit-queue

Extend test timeout for LB creation in large clusters

This will most probably be necessary to test 3000-node clusters.
2016-11-09 00:10:35 -08:00
Kubernetes Submit Queue ee029d9f3f Merge pull request #33850 from ymqytw/add_e2e_test_for_kubectl_in_pod
Automatic merge from submit-queue

add e2e test for kubectl in a Pod

Add a e2e test to make sure kubectl can talk to the api server when it is mounted in a pod.
Fixes: #33138
2016-11-08 21:00:53 -08:00
Kubernetes Submit Queue 6983262914 Merge pull request #36267 from vishh/gci-mounter-scope
Automatic merge from submit-queue

Make GCI nodes mount non tmpfs, ext* & bind mounts using an external mounter 

This PR downloads the stage1 & gci-mounter ACIs as part of cluster bring up instead of downloading them dynamically from gcr.io, which was the cause for #36206.

I have also optimized the containerized mounter to pre-load the mounter image once to avoid fetch latency while using it.

Original PR which got reverted: https://github.com/kubernetes/kubernetes/pull/35821

```release-note
GCI nodes use an external mounter script to mount NFS & GlusterFS storage volumes
```

@mtaufen Node e2e is not re-enabled in this PR.

cc @jingxu97
2016-11-08 19:46:32 -08:00
Kubernetes Submit Queue 1e9344e9cc Merge pull request #36418 from jimmycuadra/fix-36323
Automatic merge from submit-queue

Use the new name for cassandra-statefulset.yaml in e2e tests.
2016-11-08 16:41:16 -08:00
Vishnu kannan dd8ec911f3 Revert "Revert "Merge pull request #35821 from vishh/gci-mounter-scope""
This reverts commit 402116aed4.
2016-11-08 11:09:10 -08:00
Harry Zhang fad1990eaa Fixe verify bazel
Remove rootfs and chroot in scripts
2016-11-08 13:01:28 -05:00
Kubernetes Submit Queue a2bf827e18 Merge pull request #36154 from m1093782566/m109-fix-del-ns
Automatic merge from submit-queue

fix e2e delete namespace bug

<!--  Thanks for sending a pull request!  Here are some tips for you:
1. If this is your first time, read our contributor guidelines https://github.com/kubernetes/kubernetes/blob/master/CONTRIBUTING.md and developer guide https://github.com/kubernetes/kubernetes/blob/master/docs/devel/development.md
2. If you want *faster* PR reviews, read how: https://github.com/kubernetes/kubernetes/blob/master/docs/devel/faster_reviews.md
3. Follow the instructions for writing a release note: https://github.com/kubernetes/kubernetes/blob/master/docs/devel/pull-requests.md#release-notes
-->

**What:**

Fix `CreateNamespace()` bug in `test/e2e/framework/framework.go`.

**Why:**

If we successfully create a namespace but fail to create a ServiceAccount in it, we should delete the namespace after test.

The current implement of `CreateNamespace()` int e2e test will forget to delete the namespace which we fail to create serviceAccount in it(but the namespace has been successfully created!).
2016-11-08 07:18:24 -08:00
Wojciech Tyczynski 4d775c175a Extend test timeout for LB creation in large clusters 2016-11-08 15:08:14 +01:00
Kubernetes Submit Queue 866293b704 Merge pull request #33366 from rhcarvalho/execincontainer-timeout-argument
Automatic merge from submit-queue

Add timeout argument to ExecInContainer

<!--  Thanks for sending a pull request!  Here are some tips for you:
1. If this is your first time, read our contributor guidelines https://github.com/kubernetes/kubernetes/blob/master/CONTRIBUTING.md and developer guide https://github.com/kubernetes/kubernetes/blob/master/docs/devel/development.md
2. If you want *faster* PR reviews, read how: https://github.com/kubernetes/kubernetes/blob/master/docs/devel/faster_reviews.md
3. Follow the instructions for writing a release note: https://github.com/kubernetes/kubernetes/blob/master/docs/devel/pull-requests.md#release-notes
-->

**What this PR does / why we need it**: This is related to https://github.com/kubernetes/kubernetes/issues/26895. It brings a timeout to the signature of `ExecInContainer` so that we can take timeouts into account in the future. Unlike my first attempt in https://github.com/kubernetes/kubernetes/pull/27956, it doesn't immediately observe the timeout, because it is impossible to do it with the current state of the Docker Remote API (the default exec handler implementation).

**Special notes for your reviewer**: This shares commits with https://github.com/kubernetes/kubernetes/pull/27956, but without some of them that have more controversial implications (actually supporting the timeouts). The original PR shall be closed in the current state to preserve the history (instead of dropping commits in that PR).

Pinging the original people working on this change: @ncdc @sttts @vishh @dims 

**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
NONE
```
2016-11-08 01:41:19 -08:00
Jerzy Szczepkowski 8266f55fc4 Added e2e test for HA master replicas in different zones.
Added e2e test for HA master replicas in different zones.
2016-11-08 10:32:31 +01:00
Kubernetes Submit Queue 0df6384770 Merge pull request #31093 from Random-Liu/containerize-node-e2e-test
Automatic merge from submit-queue

Node Conformance Test: Containerize the node e2e test

For #30122, #30174.
Based on #32427, #32454.

**Please only review the last 3 commits.**

This PR packages the node e2e test into a docker image:
- 1st commit: Add `NodeConformance` flag in the node e2e framework to avoid starting kubelet and collecting system logs. We do this because:
  - There are all kinds of ways to manage kubelet and system logs, for different situation we need to mount different things into the container, run different commands. It is hard and unnecessary to handle the complexity inside the test suite.
- 2nd commit: Remove all `sudo` in the test container. We do this because:
  - In most container, there is no `sudo` command, and there is no need to use `sudo` inside the container.
  - It introduces some complexity to use `sudo` inside the test. (https://github.com/kubernetes/kubernetes/issues/29211, https://github.com/kubernetes/kubernetes/issues/26748) In fact we just need to run the test suite with `sudo`.
- 3rd commit: Package the test into a docker container with corresponding `Makefile` and `Dockerfile`. We also added a `run_test.sh` script to start kubelet and run the test container. The script is only for demonstration purpose and we'll also use the script in our node e2e framework. In the future, we should update the script to start kubelet in production way (maybe with `systemd` or `supervisord`).

@dchen1107 @vishh 
/cc @kubernetes/sig-node @kubernetes/sig-testing



**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
Release alpha version node test container gcr.io/google_containers/node-test-ARCH:0.1 for users to verify their node setup.
```
2016-11-07 23:41:25 -08:00
Jimmy Cuadra 057d9df616 Use the new name for cassandra-statefulset.yaml in e2e tests.
Fixes #36323.
2016-11-07 22:33:47 -08:00
Kubernetes Submit Queue d8fa6a99a2 Merge pull request #36296 from nikhiljindal/cascDelFedSecret
Automatic merge from submit-queue

Adding cadcading deletion support for federated secrets

Ref https://github.com/kubernetes/kubernetes/issues/33612

Adding cascading deletion support for federated secrets.
The code is same as that for namespaces.  Just ensuring that DeletionHelper functions are called at right places in secret_controller.
Also added e2e tests.

cc @kubernetes/sig-cluster-federation @caesarxuchao

```release-note
federation: Adding support for DeleteOptions.OrphanDependents for federated secrets. Setting it to false while deleting a federated secret also deletes the corresponding secrets from all registered clusters.
```
2016-11-07 22:15:08 -08:00
Kubernetes Submit Queue a0c34eee35 Merge pull request #33239 from MrHohn/dns-autoscaler
Automatic merge from submit-queue

Deploy kube-dns with cluster-proportional-autoscaler

This PR integrates [cluster-proportional-autoscaler](https://github.com/kubernetes-incubator/cluster-proportional-autoscaler) with kube-dns for DNS horizontal autoscaling. 

Fixes #28648 and #27781.
2016-11-07 19:31:31 -08:00
Kubernetes Submit Queue 18cdbadb96 Merge pull request #36319 from yujuhong/cri_flag
Automatic merge from submit-queue

Rename experimental-runtime-integration-type to experimental-cri

Also rename the field in the component config to `EnableCRI`
2016-11-07 17:07:14 -08:00
Kubernetes Submit Queue 356230f8a1 Merge pull request #36299 from Random-Liu/mark-more-conformance-test
Automatic merge from submit-queue

Node Conformance Test: Mark more conformance test

For https://github.com/kubernetes/kubernetes/issues/30122.

This PR:
1) Removes unused image test.
2) Marks more conformance tests based on https://docs.google.com/spreadsheets/d/1yib6ypfdWuq8Ikyo-rTcBGHe76Xur7tGqCKD9dkzx0Y/edit?usp=sharing.

Notice that 2 tests are not marked conformance for now:
1. **OOM score test:** The test is serial and is verifying host PID directly. The test should start a pod with PID=host and verify inside the pod. @vishh 
2. **Summary api test:** The assumption made in the test doesn't always make sense for arbitrary image, for example: The fs capacity bounds is only [(100mb, 100gb)](https://github.com/kubernetes/kubernetes/blob/master/test/e2e_node/summary_test.go#L62). @timstclair 
3. We should consider mark **[cgroup manager test](https://github.com/kubernetes/kubernetes/blob/master/test/e2e_node/cgroup_manager_test.go)** as conformance test. 

@dchen1107 @vishh @timstclair 
/cc @kubernetes/sig-node
2016-11-07 12:45:40 -08:00
nikhiljindal 17b2178222 Adding cadcading deletion support to federated secrets 2016-11-07 11:42:59 -08:00
Yu-Ju Hong dcce768a3e Rename experimental-runtime-integration-type to experimental-cri 2016-11-07 11:29:24 -08:00
Zihong Zheng 452e6d8c11 Adds e2e tests for DNS horizontal autoscaling feature
The e2e tests cover cases like cluster size changed, parameters
changed, ConfigMap got deleted, autoscaler pod got deleted, etc.
They are separated into a fast part(could be run parallelly) and
a slow part(put in [serial]). The fast part of the e2e tests cost
around 50 seconds to run.
2016-11-07 11:28:52 -08:00
Kubernetes Submit Queue b6f077defe Merge pull request #36309 from kargakis/scaled-rollout-fix
Automatic merge from submit-queue

test: wait until all pods are available for newly created deployment

Fixes https://github.com/kubernetes/kubernetes/issues/35337

@kubernetes/deployment
2016-11-07 09:44:33 -08:00