Commit Graph

3182 Commits (75fba4c953c70d17aa615a54622eed4cf726a485)

Author SHA1 Message Date
Kubernetes Submit Queue 20e078fdb7 Merge pull request #31426 from mwielgus/ns-e2e-fix3
Automatic merge from submit-queue

Use deleteTimestamp in federated ns e2e tests

Fixes: #31317
2016-08-25 11:56:35 -07:00
Marcin Wielgus e67c6a750f Handle deleteTimestamp in federated ns e2e tests 2016-08-25 18:36:48 +02:00
Kubernetes Submit Queue 4ddfc4849a Merge pull request #27180 from sttts/sysctl-implementation
Automatic merge from submit-queue

Add sysctl support

Implementation of proposal https://github.com/kubernetes/kubernetes/pull/26057, feature  https://github.com/kubernetes/features/issues/34

TODO:
- [x] change types.go
- [x] implement docker and rkt support
- [x] add e2e tests
- [x] decide whether we want apiserver validation
- ~~[ ] add documentation~~: api docs exist. Existing PodSecurityContext docs is very light and links back to the api docs anyway: 6684555ed9/docs/user-guide/security-context.md
- [x] change PodSecurityPolicy in types.go
- [x] write admission controller support for PodSecurityPolicy
- [x] write e2e test for PodSecurityPolicy
- [x] make sure we are compatible in the sense of https://github.com/kubernetes/kubernetes/blob/master/docs/devel/api_changes.md
- [x] test e2e with rkt: it only works with kubenet, not with no-op network plugin. The later has no sysctl support.
- ~~[ ] add RunC implementation~~ (~~if that is already in kube,~~ it isn't)
- [x] update whitelist
- [x] switch PSC fields to annotations
- [x] switch PSP fields to annotations
- [x] decide about `--experimental-whitelist-sysctl` flag to be additive or absolute
- [x] decide whether to add a sysctl node whitelist annotation

### Release notes:

```release-note
The pod annotation `security.alpha.kubernetes.io/sysctls` now allows customization of namespaced and well isolated kernel parameters (sysctls), starting with `kernel.shm_rmid_forced`, `net.ipv4.ip_local_port_range`, `net.ipv4.tcp_max_syn_backlog` and `net.ipv4.tcp_syncookies` for Kubernetes 1.4.

The pod annotation  `security.alpha.kubernetes.io/unsafeSysctls` allows customization of namespaced sysctls where isolation is unclear. Unsafe sysctls must be enabled at-your-own-risk on the kubelet with the `--experimental-allowed-unsafe-sysctls` flag. Future versions will improve on resource isolation and more sysctls will be considered safe.
```
2016-08-25 06:21:24 -07:00
Dr. Stefan Schimanski dd7826359c Add sysctl e2e tests 2016-08-25 13:22:01 +02:00
Marcin Wielgus 99cb1d7702 Use non-fed client for subclusters in federated namespace e2e test 2016-08-25 10:26:08 +02:00
Kubernetes Submit Queue c5e7e5124a Merge pull request #30969 from asalkeld/raw-status-code
Automatic merge from submit-queue

Make sure the StatusCode is taken into account in DoRaw()

**What this PR does / why we need it**:
Currently if there is an error (not found) the error printed out
is to do with the inablity to convert an empty body into the expected json.

This patch will fill in the err correctly.

example of before (with NotFound error):
$ kubectl top node
failed to unmarshall heapster response: json: cannot unmarshal object into Go value of type []v1alpha1.NodeMetrics

Now:
$ kubectl top node
the server could not find the requested resource (get services http:heapster:)

**Which issue this PR fixes** 
related to bug #30818

**Special notes for your reviewer**:
None

**Release note**:
```release-note
NONE
```
2016-08-25 01:01:05 -07:00
Kubernetes Submit Queue f0462c4043 Merge pull request #31200 from ronnielai/test1
Automatic merge from submit-queue

Skip disk eviction test on non-supported images.
2016-08-24 20:06:07 -07:00
Kubernetes Submit Queue c958d3d4fd Merge pull request #31325 from piosz/disable-e2e
Automatic merge from submit-queue

Run Rescheduler e2e on GCE only

fix #31277
2016-08-24 05:38:02 -07:00
Kubernetes Submit Queue 0a3219ebf7 Merge pull request #31335 from mwielgus/fix-ns-e2e
Automatic merge from submit-queue

Fix panics in federation e2e tets

cc: @quinton-hoole @madhusudancs
2016-08-24 04:15:48 -07:00
Marcin Wielgus a653a5e8ce Fix panics in federation e2e 2016-08-24 11:14:03 +02:00
Piotr Szczesniak 9c2a951ae3 Run Rescheduler e2e on GCE only 2016-08-24 06:47:17 +02:00
Tim St. Clair a29ad353a6
Increase the AppArmor pod stop timeout to match the start timeout 2016-08-23 17:03:38 -07:00
Kubernetes Submit Queue f297ea966e Merge pull request #30838 from caesarxuchao/per-resource-orphan-behavior
Automatic merge from submit-queue

[GarbageCollector] Allow per-resource default garbage collection behavior

What's the bug:
When deleting an RC with `deleteOptions.OrphanDependents==nil`, garbage collector is supposed to treat it as `deleteOptions.OrphanDependents==true", and orphan the pods created by it. But the apiserver is not doing that.

What's in the pr:
Allow each resource to specify the default garbage collection behavior in the registry. For example, RC registry's default GC behavior is Orphan, and Pod registry's default GC behavior is CascadingDeletion.
2016-08-23 08:46:32 -07:00
Kubernetes Submit Queue a3a33c53e1 Merge pull request #30496 from mwielgus/nc-e2e
Automatic merge from submit-queue

Federated namespace controller e2e test

Depends on #30443

cc: @quinton-hoole @wojtek-t @kubernetes/sig-cluster-federation
2016-08-23 07:18:15 -07:00
Piotr Szczesniak 4a6123df0a Enabled Rescheduler e2e test for serial suites 2016-08-23 13:23:29 +02:00
Kubernetes Submit Queue 28ded18c4c Merge pull request #31216 from piosz/e2e-utils-fix
Automatic merge from submit-queue

Improve ScaleRC function to be more generic

Relaxed the requirement for RC selector.
2016-08-23 02:27:16 -07:00
Marcin Wielgus 309630b548 E2E tests for federated namespace controller 2016-08-23 11:15:06 +02:00
Piotr Szczesniak e8135c30d5 Improve ScaleRC function to be more generic 2016-08-23 09:25:00 +02:00
Kubernetes Submit Queue 13305ef0ff Merge pull request #31139 from nikhiljindal/namespaceAdmissionControl
Automatic merge from submit-queue

federation: Adding support for namespace admission controls in federation-apiserver

Now that we have namespaces in federation apiserver, we can support namespace admission controls.

There are 3 of these:
namespace/autoprovision, namespace/exists and namespace/lifecycle.
namespace/autoprovision, namespace/exists should be deprecated in kubernetes(https://github.com/kubernetes/kubernetes/issues/31195). Adding support for namespace/lifecycle to federation-apiserver.
As in kube-apiserver, enabling namespace/lifecycle by default.


```release-note
Action required: If you have a running federation control plane, you will have to ensure that for all federation resources, the corresponding namespace exists in federation control plane.

federation-apiserver now supports NamespaceLifecycle admission control, which is enabled by default. Set the --admission-control flag on the server to change that.
```

cc @kubernetes/sig-cluster-federation @quinton-hoole
2016-08-23 00:19:08 -07:00
nikhiljindal db7af6c0d7 Fixing/updating e2e tests 2016-08-22 21:49:34 -07:00
Angus Salkeld 9c5e11e991 Fix static URL conformance test
1. /validate service does not exist, so remove the test for it and add some that actually do exist
2. The namespace does not exist so this will always return NotFound

Note: DoRaw() ignores the StatusCode.
This is in preparation for the next commit
2016-08-23 11:42:42 +10:00
bindata-mockuser 7b70c23998 Make disk eviction test run correctly on all images. 2016-08-22 18:40:54 -07:00
nikhiljindal 18a8597a4e Enabling namespace admission controls 2016-08-22 17:28:03 -07:00
Chao Xu 67b7c7290a Allow per-resource default garbage collection behavior 2016-08-22 11:37:04 -07:00
Kubernetes Submit Queue 51a9fdb2a4 Merge pull request #31113 from piosz/rescheduler-e2e
Automatic merge from submit-queue

e2e test for rescheduling critical pods

ref #29023

The test is disabled by default.
2016-08-22 10:24:18 -07:00
Kubernetes Submit Queue 1e7545393f Merge pull request #30979 from m1093782566/fix-unnecessary-delete-rc-requests
Automatic merge from submit-queue

[e2e density test] Fix unnecessary Delete RC requests when not running latency test

As the following code block
https://github.com/kubernetes/kubernetes/blob/master/test/e2e/density.go#L666-L670
shows, after running each density test case, it will attempt to delete "additional replication controllers" even though there is **no additional replication controller**.

When we are not running latency test, API Server will return "404 error code". So, I propose to move the above code block inside thedetermine statementsif `itArg.runLatencyTest{ }` , looks like:

```
if itArg.runLatencyTest {
  ...
  for i := 1; i <= nodeCount; i++ {
    name := additionalPodsPrefix + "-" + strconv.Itoa(i)
    c.ReplicationControllers(ns).Delete(name, nil)
  }
}
```
In this way, removing RC will be executed only if we set `itArg.runLatencyTest` to be `true`. It can avoid post some necessary requests to API Server.

Issuse is #30977
2016-08-22 07:00:52 -07:00
Piotr Szczesniak 9614f00832 e2e test for rescheduling critical pods 2016-08-22 15:30:42 +02:00
Wojciech Tyczynski 943860b3c7 Tweak resource consumption in density test 2016-08-22 10:03:45 +02:00
Kubernetes Submit Queue 6b333d1f82 Merge pull request #30964 from m1093782566/m109-master-density
Automatic merge from submit-queue

[e2e test] Fix e2e test pause image hard code

Use `framework.GetPauseImageName(f.Client)` instead of hard code(such as `"gcr.io/google_containers/pause-amd64:3.0"`) to represent pause image name.

Related issus is #30967
2016-08-21 22:10:13 -07:00
Kubernetes Submit Queue 37f8559c22 Merge pull request #31039 from coufon/add_benchmark_to_jenkins
Automatic merge from submit-queue

Add benchmark to jenkins

This PR contains the following changes:

1. Add more tests in density benchmark test;
2. Add the peak value (100%) in latency and CPU usage statistic data;
3. Move the Ginkgo focus flag from e2e_remote.go to run_e2e.go;
4. Support running benchmark in run_e2e.go. The benchmark configuration file is an extension of image configuration. Each item requires additional GCE machine type (e.g. n1-standard-1, default value will be used if empty) and test names (Ginkgo focus regex strings). A test item is regarded as benchmark if the tests field is non-empty.
2016-08-21 08:32:39 -07:00
Kubernetes Submit Queue 7272cd09e3 Merge pull request #26541 from sttts/sttts-kubectl-exec-rc
Automatic merge from submit-queue

Return container command exit codes in kubectl run/exec

Fixes https://github.com/kubernetes/kubernetes/issues/26424
Based on https://github.com/kubernetes/kubernetes/pull/25273.

TODO:
- [x] add e2e tests
- [x] investigate `kubectl run` exit code for `--restart=Never` (compare issue #24533 and PR #25253)
- [x] document exit codes
2016-08-21 00:44:55 -07:00
Kubernetes Submit Queue c6bc654635 Merge pull request #30721 from ronnielai/test1
Automatic merge from submit-queue

Disk eviction node e2e test

Please review d202816cfb4ae4dc38d0fe4f45cd11cc81e0e178 only.

#29800
2016-08-20 08:05:52 -07:00
bindata-mockuser e792d4117d Add return code support to kubectl-exec and -run 2016-08-20 15:58:47 +02:00
Kubernetes Submit Queue 65233e4bf2 Merge pull request #30575 from soltysh/scheduledjobs_e2e
Automatic merge from submit-queue

Scheduledjobs e2e

@janetkuo resubmitted e2e for SJ, I've updated all scripts to consume `KUBE_RUNTIME_CONFIG` properly in 2nd commit, ptal
2016-08-19 23:42:32 -07:00
bindata-mockuser 1c47d9ddd0 Adding disk eviciton test to node e2e tests 2016-08-19 21:28:02 -07:00
Kubernetes Submit Queue e9815020eb Merge pull request #30475 from derekwaynecarr/pod-cgroup
Automatic merge from submit-queue

Unblock iterative development on pod-level cgroups

In order to allow forward progress on this feature, it takes the commits from #28017 #29049 and then it globally disables the flag that allows these features to be exercised in the kubelet.  The flag can be re-added to the kubelet when its actually ready.

/cc @vishh @dubstack @kubernetes/rh-cluster-infra
2016-08-19 21:06:48 -07:00
Kubernetes Submit Queue ea5a17fbce Merge pull request #30994 from gmarek/unused
Automatic merge from submit-queue

Stop pretending that reaper cares about delete options in e2e tests
2016-08-19 15:48:00 -07:00
Zhou Fang 30eb6882f4 add peak (100%) lantecy and CPU usage in perf data 2016-08-19 14:33:38 -07:00
Kubernetes Submit Queue 5f7875a9bc Merge pull request #30786 from coufon/add_time_series
Automatic merge from submit-queue

Add logging time series to benchmark test

This PR adds a new file benchmark_util.go which contains tool functions for benchmark (we can migrate benchmark related functions into it). 

The PR logs time series data for density benchmark test.
2016-08-19 13:41:29 -07:00
derekwaynecarr fde285cd8f Disable cgroups-per-qos flag until implementation is stabilized 2016-08-19 11:08:59 -04:00
gmarek d844dd463a Stop pretending that reaper cares about delete options in e2e tests 2016-08-19 14:44:35 +02:00
Kubernetes Submit Queue 40367df750 Merge pull request #30590 from kevin-wangzefeng/taint-unique-by-key-effect
Automatic merge from submit-queue

make taints unique by <key, effect> on a node

closes #29362
2016-08-19 04:58:12 -07:00
m1093782566 09668823a9 fix unnecessary delete rc requests
Change-Id: I5e7813acebd0607c049d521cce559b96708be1a2
2016-08-19 16:14:50 +08:00
m1093782566 47e0d4dc89 fix e2e test pause image hard code
Change-Id: I30ee8d5da96b6de42cf7d308776dcb9606d67dfb
2016-08-19 12:11:28 +08:00
mfanjie 78df9c4c85 pass FederatedServiceName to createServiceOrFail and createService as they are util functions for federated service and federated ingress now. 2016-08-19 09:57:39 +08:00
mfanjie a1bed2723e address review comments, and fix panic in ingress e2e 2016-08-19 09:53:38 +08:00
mfanjie 6ecea5944c extract common function in service, ingress and federation e2e to util, to be reused. 2016-08-19 09:53:38 +08:00
Zhou Fang 58495b5214 add labels to perf dataset 2016-08-18 17:15:43 -07:00
Chao Xu a0c6a664a5 adjust waitForPodsInactive polling interval and timeout 2016-08-18 15:38:24 -07:00
Kubernetes Submit Queue 9d2a5fe5e8 Merge pull request #29006 from jsafrane/dynprov2
Automatic merge from submit-queue

Implement dynamic provisioning (beta) of PersistentVolumes via StorageClass

Implemented according to PR #26908. There are several patches in this PR with one huge code regen inside.

* Please review the API changes (the first patch) carefully, sometimes I don't know what the code is doing...

* `PV.Spec.Class` and `PVC.Spec.Class` is not implemented, use annotation `volume.alpha.kubernetes.io/storage-class`

* See e2e test and integration test changes - Kubernetes won't provision a thing without explicit configuration of at least one `StorageClass` instance!

* Multiple provisioning volume plugins can coexist together, e.g. HostPath and AWS EBS. This is important for Gluster and RBD provisioners in #25026

* Contradicting the proposal, `claim.Selector` and `volume.alpha.kubernetes.io/storage-class` annotation are **not** mutually exclusive. They're both used for matching existing PVs. However, only `volume.alpha.kubernetes.io/storage-class` is used for provisioning, configuration of provisioning with `Selector` is left for (near) future.

* Documentation is missing. Can please someone write some while I am out?

For now, AWS volume plugin accepts classes with these parameters:

```
kind: StorageClass
metadata:
  name: slow
provisionerType: kubernetes.io/aws-ebs
provisionerParameters:
  type: io1
  zone: us-east-1d
  iopsPerGB: 10
```

* parameters are case-insensitive
* `type`: `io1`, `gp2`, `sc1`, `st1`. See AWS docs for details
* `iopsPerGB`: only for `io1` volumes. I/O operations per second per GiB. AWS volume plugin multiplies this with size of requested volume to compute IOPS of the volume and caps it at 20 000 IOPS (maximum supported by AWS, see AWS docs).
* of course, the plugin will use some defaults when a parameter is omitted in a `StorageClass` instance (`gp2` in the same zone as in 1.3).

GCE:

```
apiVersion: extensions/v1beta1
kind: StorageClass
metadata:
  name: slow
provisionerType: kubernetes.io/gce-pd
provisionerParameters:
  type: pd-standard
  zone: us-central1-a
```

* `type`: `pd-standard` or `pd-ssd`
* `zone`: GCE zone
* of course, the plugin will use some defaults when a parameter is omitted in a `StorageClass` instance (SSD in the same zone as in 1.3 ?).


No OpenStack/Cinder yet

@kubernetes/sig-storage
2016-08-18 09:56:16 -07:00