Commit Graph

93 Commits

Author SHA1 Message Date
Harry Zhang
b646467536 Add namespace name into e2e event verify 2018-03-29 17:37:03 -07:00
Kubernetes Submit Queue
40c68e26c4
Merge pull request #61038 from aveshagarwal/master-issue-61018
Automatic merge from submit-queue (batch tested with PRs 61546, 61038, 61575, 60779, 61496). If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.

Use random port to avoid conflict with other important pods that might be listening on 80.

**What this PR does / why we need it**:
Fix https://github.com/kubernetes/kubernetes/issues/61018

**Which issue(s) this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close the issue(s) when PR gets merged)*:
Fixes # https://github.com/kubernetes/kubernetes/issues/61018

**Special notes for your reviewer**:

**Release note**:

```release-note
None.
```
@smarterclayton
2018-03-26 18:56:02 -07:00
p0lyn0mial
1f1d24005a removes custom scalers from kubectl 2018-03-26 19:33:42 +02:00
Avesh Agarwal
3289085ecc Use a random unused port for these e2e tests. Do not use port 80 to avoid
conflict with other important pods that might be listening on 0.0.0.0:80.
2018-03-21 11:13:35 -04:00
chenxingyu
954c97fe6d add e2e test on the hostport predicates 2017-11-10 15:44:23 +08:00
Paulo Pires
d2edb8af9e
fix scheduler predicates test that may violate DNS label rules
This commit fixes an issue where in clusters which have FQDN as the node names,
one of the scheduling predicates tests will fail because it will try and run a
pod with a name that violates DNS-1123 rules. As an example, one such pod name
could look like "filler-pod-kube-node-0.kubelet.mesos".

Signed-off-by: Paulo Pires <pjpires@gmail.com>
2017-11-05 16:01:39 +00:00
Matt Liggett
a5967cbaf1 Add framework.ConformanceIt as the new way to declare conformance tests.
Also rewrite all existing conformance tests to use this.
2017-10-27 15:29:59 -07:00
Brad Topol
095913e9d7 Add conformance annotations for proxy and scheduler predicate tests
Signed-off-by: Brad Topol <btopol@us.ibm.com>
2017-10-23 11:30:05 -07:00
Bobby (Babak) Salamat
e4c8eefd41 Fix a scheduler flaky e2e test 2017-09-28 19:47:53 -07:00
Kubernetes Submit Queue
be78d113b1 Merge pull request #52201 from timothysc/ephemeral_gate
Automatic merge from submit-queue

Version gates the ephemeral storage e2e test

Version gates the ephemeral storage e2e test.

**Release note**:
```
NONE
```

@kubernetes/sig-testing-pr-reviews
2017-09-12 23:24:42 -07:00
Timothy St. Clair
79725246f4 Version gates the ephemeral storage e2e test 2017-09-08 16:53:38 -05:00
Kubernetes Submit Queue
f695a3120a Merge pull request #50949 from bsalamat/preemption_eviction
Automatic merge from submit-queue

Add pod preemption to the scheduler

**What this PR does / why we need it**:
This is the last of a series of PRs to add priority-based preemption to the scheduler. This PR connects the preemption logic to the scheduler workflow.

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

**Special notes for your reviewer**:
This PR includes other PRs which are under review (#50805, #50405, #50190). All the new code is located in 43627afdf9.

**Release note**:

```release-note
Add priority-based preemption to the scheduler.
```

ref/ #47604

/assign @davidopp 

@kubernetes/sig-scheduling-pr-reviews
2017-09-08 14:19:42 -07:00
Bobby (Babak) Salamat
4a08dff168 Add pod eviction logic for scheduler preemption
Add Preempt to scheduler interface
Add preemption to the scheduling workflow
Minor changes to the scheduler integration test library
2017-09-07 15:31:55 -07:00
NickrenREN
e5fc735906 Fix scheduling e2e test case for local ephemeral storage 2017-09-01 13:51:37 +08:00
NickrenREN
18f086c6f6 Add cluster e2es to verify scheduler local storage support 2017-08-26 14:44:15 +08:00
NickrenREN
40bcad482f Remove private and unused codes 2017-08-26 14:21:05 +08:00
Kubernetes Submit Queue
178a5ff314 Merge pull request #50665 from xiangpengzhao/hardcode-to-const
Automatic merge from submit-queue (batch tested with PRs 50257, 50247, 50665, 50554, 51077)

Replace hard-code "cpu" and "memory" to consts

**What this PR does / why we need it**:
There are many places using hard coded "cpu" and "memory" as resource name. This PR replace them to consts.

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

**Special notes for your reviewer**:
/kind cleanup

**Release note**:

```release-note
NONE
```
2017-08-23 02:35:09 -07:00
Avesh Agarwal
6b5118e2b9 Remove duplicate unused function. 2017-08-16 16:10:58 -04:00
xiangpengzhao
1c4dbcf5ca Replace hard-code "cpu" and "memory" to consts 2017-08-16 16:37:50 +08:00
Kevin
f76ca1fb16 update clientset.Core() to clientset.CoreV1() in test 2017-08-14 16:53:55 +08:00
vikaschoudhary16
189129c71d Add inter-pod-affinity integration tests and remove corresponding e2e tests
Signed-off-by: vikaschoudhary16 <choudharyvikas16@gmail.com>
2017-07-26 23:24:28 -04:00
Kubernetes Submit Queue
3f887171dd Merge pull request #49253 from Quentin-M/no_host_pred_test
Automatic merge from submit-queue (batch tested with PRs 49358, 49253)

Remove hostname label condition in SchedulerPredicates

**What this PR does / why we need it**:

```
validates that NodeSelector is respected if matching [Conformance]
validates that required NodeAffinity setting is respected if matching
```

The two tests above make the assumption that the node names are equal to the `kubernetes.io/hostname` labels. Unfortunately, this is not necessarily true all the time. For instance, when using the AWS Cloud Provider + Container Linux:
- The node name is set using the AWS SDK's `ec2.Instance.PrivateDnsName` and has the form `ip-10-0-35-57.ca-central-1.compute.internal` [[1](https://github.com/kubernetes/kubernetes/blob/v1.7.1/pkg/cloudprovider/providers/aws/aws.go#L3343-L3346)] [[2](https://raw.githubusercontent.com/aws/aws-sdk-go/master/service/ec2/api.go)]
- The node's hostname, however, is a simple call to `os.Hostname()`, itself reading `/proc/sys/kernel/hostname`, which contains what the AWS DHCP assigned to the instance, typically the hostname short-form: `ip-10-0-16-137`.  [[1](https://github.com/kubernetes/kubernetes/blob/v1.7.1/pkg/util/node/node.go#L43-L54)]

Consequently, we are trying to assign a pod to a node having the following label: `kubernetes.io/hostname=ip-10-0-35-57.ca-central-1.compute.internal` (in addition to the randomly generated label), whereas the actual label on the node is `kubernetes.io/hostname=ip-10-0-35-57`.

Furthermore, this inaccurate `kubernetes.io/hostname=<nodename>` condition is actually useless given we already match over a random label, that was assigned to that node. Later, the test ensures that the scheduled pod was scheduled to the right node by comparing the pod's node name and the node name we expected the pod to be on:

```
framework.ExpectNoError(framework.WaitForPodNotPending(cs, ns, labelPodName))
labelPod, err := cs.Core().Pods(ns).Get(labelPodName, metav1.GetOptions{})
framework.ExpectNoError(err)
Expect(labelPod.Spec.NodeName).To(Equal(nodeName))
```

The `k8s.io/apimachinery/pkg/types/nodename` data structure actually [warns](55bee3ad21/staging/src/k8s.io/apimachinery/pkg/types/nodename.go (L40-L43)) about the fact that the node name might be different than the hostname on AWS.

**Release note**:
```release-note
NONE
```
2017-07-24 21:31:08 -07:00
Quentin MACHU
d4db482a45 Remove hostname label condition in SchedulerPredicates 2017-07-19 18:01:47 -07:00
Mike Danese
3c39173ee4 fixit: break sig-cluster-lifecycle tests into subpackage 2017-07-19 10:14:51 -07:00
Kubernetes Submit Queue
2faf7ff2bc Merge pull request #36238 from resouer/eclass-2-dev
Automatic merge from submit-queue (batch tested with PRs 48043, 48200, 49139, 36238, 49130)

Implement equivalence cache by caching and re-using predicate result

The last part of #30844, I opened a new PR instead of overwrite the old one because we changed some basic assumption by allowing invalidating equivalence cache item by individual predicate.

The idea of this PR is based on discussion in https://github.com/kubernetes/kubernetes/issues/32024

- [x]  Pods belong to same controllerRef considered to be equivalent
- [x] ` podFitsOnNode` will use cached predicate result if it's available
- [x] Equivalence cache will be updated when if a fresh new predicate is done
- [x] `factory.go` will invalid specific predicate cache(s) based on the object change
- [x] Since `schedule` and `bind` are async, we need to optimistically invalid affected cache(s) before `bind`
- [x] Fully unit test of affected files
- [x] e2e test to verify cache update/invalid workflow
- [x] performance test results

- [x] Some nits fixes related but expected to result in `needs-rebase` so they are split to: #36060 #35968 #37512

cc @wojtek-t @davidopp
2017-07-19 01:57:32 -07:00
Harry Zhang
0e8517875e Update factory.go informers to update equivalence cache
Fix tombstone

Add e2e to verify equivalence cache

Addressing nits in factory,go and e2e

Update build files
2017-07-18 23:55:01 +08:00
xiangpengzhao
d9d3396566 Remove affinity annotations leftover 2017-07-18 19:42:52 +08:00
Jacob Simpson
29c1b81d4c Scripted migration from clientset_generated to client-go. 2017-07-17 15:05:37 -07:00
David Oppenheimer
a836d55d0f Mark sig-scheduling tests with [sig-scheduling] so they can be selected
for the testdash dashboard.
2017-07-15 00:07:30 -07:00
Kubernetes Submit Queue
b4e7628af1 Merge pull request #47329 from zhangxiaoyu-zidif/delete-meaningless-funcion-return
Automatic merge from submit-queue

Delete unused return

**What this PR does / why we need it**:
We do not use the function return, it's better not to write the return.

**Release note**:

```release-note
NONE
```
2017-07-08 02:46:43 -07:00
Kubernetes Submit Queue
11b5956f7a Merge pull request #47628 from bizhao/e2e
Automatic merge from submit-queue (batch tested with PRs 45610, 47628)

Replace capacity with allocatable to calculate pod resource

It is not accurate to use capacity to do the calculation.



**What this PR does / why we need it**:
The currently cpu resource calculation for a pod in end2end test is incorrect.

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

**Special notes for your reviewer**:
More details about capacity and allocatable:
https://github.com/kubernetes/community/blob/master/contributors/design-proposals/node-allocatable.md

**Release note**:

NONE
2017-06-27 17:46:11 -07:00
Chao Xu
60604f8818 run hack/update-all 2017-06-22 11:31:03 -07:00
Chao Xu
f4989a45a5 run root-rewrite-v1-..., compile 2017-06-22 10:25:57 -07:00
Binbin Zhao
82cbbb4845 Fix a typo
Fix a typo
2017-06-21 01:15:55 -07:00
Binbin Zhao
9cbe992fc5 Also rename leftCapacity to leftAllocatable 2017-06-21 00:55:38 -07:00
Binbin Zhao
b055246f0a Replace capacity with allocatable to calculate pod resource
It is not accurate to use capacity to do the calculation.
2017-06-15 20:05:15 -07:00
zhangxiaoyu-zidif
f244e3cb7c delete unused return 2017-06-13 19:48:42 +08:00
gmarek
99142b8911 Make SchedulerPredicates test more resiliant to recent Node restarts 2017-05-10 17:11:29 +02:00
Chao Xu
4f9591b1de move pkg/api/v1/ref.go and pkg/api/v1/resource.go to subpackages. move some functions in resource.go to pkg/api/v1/node and pkg/api/v1/pod 2017-04-17 11:38:11 -07:00
Haoran Wang
0b3a6c80ca Initial the scheduler priority test 2017-03-30 10:54:27 +08:00
Wojciech Tyczynski
2e3cd93fc8 Fix problems of not-starting image pullers 2017-03-28 11:05:57 +02:00
Bobby Salamat
2775a52e7a Fix waitForScheduler in scheduer predicates e2e tests 2017-03-15 17:21:35 -07:00
Timothy St. Clair
6cc40678b6 Initial breakout of scheduling e2es to help assist in both assignment
and refactoring.
2017-03-13 22:34:57 -05:00