Commit Graph

3503 Commits

Author SHA1 Message Date
Yecheng Fu
22d874993c build files 2020-06-23 22:18:33 +08:00
Yecheng Fu
4627b419b4 tests only 2020-06-23 22:18:33 +08:00
Yecheng Fu
ee4d7410be Share pod volume binding cache via framework.CycleState 2020-06-23 22:18:33 +08:00
Dave Chen
e1d61b621a Scheduler: remove the misleading comments in NodeResourcesBalancedAllocation
Signed-off-by: Dave Chen dave.chen@arm.com
2020-06-23 17:33:02 +08:00
Kubernetes Prow Robot
83a15867b1 Merge pull request #92049 from Huang-Wei/postfilter-impl-3
[postfilter-impl-3] Register and enable the defaultpreemption plugin
2020-06-22 23:53:54 -07:00
Kubernetes Prow Robot
79a7088340 Merge pull request #92202 from alculquicondor/profile-metrics
Add profile label to schedule_attempts_total metric and e2e_scheduling_duration_seconds
2020-06-22 22:00:10 -07:00
Kubernetes Prow Robot
819ad44c90 Merge pull request #91603 from pancernik/v1beta1-requested-to-cap-ratio-encoding
Configure strict encoding for RequestedToCapacityRatioArgs
2020-06-22 21:59:41 -07:00
Wei Huang
d99cc01646 Register and enable defaultpreemption plugin
- Enable defaultpreemption as a PostFilter plugin
- Remote legacy hard-coded preemption logic
2020-06-22 17:22:27 -07:00
Aldo Culquicondor
eb9711dc1f Add profile label to schedule_attempts_total metric
and e2e_scheduling_duration_seconds

Also adding result label to e2e_scheduling_duration_seconds. Previously, the metric was only updated for successful attempts

Signed-off-by: Aldo Culquicondor <acondor@google.com>
2020-06-22 15:19:57 -04:00
Ali Farah
a22e115a0e Split scheduler framework implementation into new runtime package 2020-06-22 00:23:43 +10:00
Kubernetes Prow Robot
5ed7b1afb8 Merge pull request #92012 from Huang-Wei/postfilter-impl-2
[postfilter-impl-2] Introduce a defaultpreemption PostFilter plugin
2020-06-19 21:51:42 -07:00
Kubernetes Prow Robot
9c3f648300 Merge pull request #91705 from mrkm4ntr/revert-assumed-in-unreserve
Revert assumed PVs and PVCs in unreserve extension point
2020-06-19 21:50:54 -07:00
Kubernetes Prow Robot
5968bc4653 Merge pull request #92247 from chendave/skiptopology
Skip `PreScore` when the `TopologySpreadConstraints` is specified
2020-06-19 11:37:44 -07:00
Wei Huang
196056d7fe Introduce a defaultpreemption PostFilter plugin
- Add a defaultpreemption PostFilter plugin
- Make g.Preempt() stateless
    - make g.Preempt() stateless
    - make g.getLowerPriorityNominatedPods() stateless
    - make g.processPreemptionWithExtenders() stateless
2020-06-19 09:13:55 -07:00
Shintaro Murakami
79ab958996 Revert assumed PVs and PVCs in unreserve extension point 2020-06-19 17:39:42 +09:00
Dave Chen
068c69d743 Skip PreScore when the TopologySpreadConstraints is specified
`DefaultPodTopologySpread` need't score when the `TopologySpreadConstraints`
is specified.

`PreScore` needn't do this as well, this cut off the cost of `PreScore` if
possible.

Signed-off-by: Dave Chen <dave.chen@arm.com>
2020-06-18 18:01:56 +08:00
Dave Chen
9ebd872e71 Explicitly declare the interfaces for extension points
This make it easier to catch the issue during the compilation, also,
this also align with other plugins, i.e. plugin of "InterPodAffinity".

Signed-off-by: Dave Chen <dave.chen@arm.com>
2020-06-17 15:11:44 +08:00
Kubernetes Prow Robot
42cb4d5510 Merge pull request #92130 from chendave/InterPodAffinity_cleanup
cleanup: remove invalid comments in plugin of InterPodAffinity
2020-06-16 19:24:02 -07:00
Kubernetes Prow Robot
7e073db5e0 Merge pull request #91986 from denkensk/fix-pdb-preempt
Computing DisruptedPods of PDB in scheduling preemption
2020-06-16 19:23:03 -07:00
Dave Chen
8f0c329758 cleanup: update invalid comments in plugin of InterPodAffinity
Signed-off-by: Dave Chen <dave.chen@arm.com>
2020-06-16 14:11:59 +08:00
Alex Wang
02e4060b1b Computing DisruptedPods of PDB in scheduling preemption 2020-06-16 10:24:55 +08:00
Kubernetes Prow Robot
1c11ff7a26 Merge pull request #92107 from Huang-Wei/fake-artifacts-refactor
Move scheduler fake artifacts to pkg/scheduler/testing
2020-06-15 18:14:34 -07:00
Wei Huang
dd5db75840 Move scheduler fake artifacts to pkg/scheduler/testing
- move some fake artifacts from pkg/scheduler/core to pkg/scheduler/testing so it can be consumed
by core as well as plugin testings
2020-06-15 10:56:06 -07:00
Wei Huang
36c8ecc98c Refactor scheduler preempt interface
- replace error with NodeToStatusMap in Preempt() signature
- eliminate podPreemptor interface and expose its functions statelessly
- move logic in scheduler.go#preempt to generic_scheduler.go#Preempt()
2020-06-15 08:42:00 -07:00
Kubernetes Prow Robot
1385280afc Merge pull request #91775 from cofyc/fix91755
VolumeBinding: Skip/fail fast in PreFilter phase and improve error reporting
2020-06-12 10:47:56 -07:00
Rafal Wicha
707e1eb512 Configure strict encoding for RequestedToCapacityRatioArgs 2020-06-12 14:55:32 +01:00
Kubernetes Prow Robot
b8f24173da Merge pull request #91874 from gaurav1086/TestSchedulingQueue_Close_fix_race_condition
TestSchedulingQueue: Remove the unnecessary slice and for loop
2020-06-11 23:45:55 -07:00
Yecheng Fu
814a6f2acd remove FakeVolumeBinderConfig and test new statues and states 2020-06-12 10:00:19 +08:00
Yecheng Fu
c4138361e4 Fail fast in PreFilter phase and return UnschedulableAndUnresolvable if immediate PVCs are not bound 2020-06-12 10:00:19 +08:00
Gaurav Singh
00f28747b3 TestSchedulingQueue_Close: Remove struct tests and the corresponding for loop
Signed-off-by: Gaurav Singh <gaurav1086@gmail.com>

TestSchedulingQueue_Close: Remove for loop

Signed-off-by: Gaurav Singh <gaurav1086@gmail.com>

remove the tests slice

Signed-off-by: Gaurav Singh <gaurav1086@gmail.com>

Remove struct

Signed-off-by: Gaurav Singh <gaurav1086@gmail.com>

Remove t.Run()

Signed-off-by: Gaurav Singh <gaurav1086@gmail.com>

Add function name

Signed-off-by: Gaurav Singh <gaurav1086@gmail.com>

Remove nested function

Signed-off-by: Gaurav Singh <gaurav1086@gmail.com>

Replace expectedErr with wantErr

Signed-off-by: Gaurav Singh <gaurav1086@gmail.com>
2020-06-11 11:19:14 -04:00
Kubernetes Prow Robot
6bb7e8ab83 Merge pull request #92010 from Huang-Wei/sched-fwk-expose-EventRecorder
Expose EventRecorder to scheduler FrameworkHandle
2020-06-10 22:44:12 -07:00
Kubernetes Prow Robot
5372e017b6 Merge pull request #92003 from mattcary/format-plugins
Remove warning about misuse of %w
2020-06-10 22:44:02 -07:00
Kubernetes Prow Robot
34e19b0623 Merge pull request #91679 from tanjunchen/update-logging-20200602
Migrate to log calls to  klog.ErroS for pkg/scheduler
2020-06-10 22:43:10 -07:00
Wei Huang
7dfabd7af6 Expose EventRecorder to scheduler FrameworkHandle 2020-06-10 18:27:21 -07:00
Kubernetes Prow Robot
17630c34cf Merge pull request #91793 from alculquicondor/new-default-spread
Use PodTopologySpread for default spreading
2020-06-10 17:13:38 -07:00
Matthew Cary
ee9e6a3bcc Remove warning about misuse of %w 2020-06-10 14:58:55 -07:00
Kubernetes Prow Robot
418c2cbb45 Merge pull request #91918 from alculquicondor/new_max_skew
Use maxSkew in PodTopologySpread scoring as tolerance to skew
2020-06-10 04:40:21 -07:00
Wen Gao
b21b298074 add arg for noderesourcesfit plugin to support ignore a group of extended resources 2020-06-10 10:52:54 +08:00
tanjunchen
7fe9f3451f Migrate to log calls to klog.ErroS for pkg/scheduler 2020-06-09 18:39:58 -07:00
Wei Huang
51a9dcce22 Revert "Fix an issue that a Pod's nominatedNodeName cannot be cleared when the nominated node is deleted"
This reverts commit 369a9001c6.
2020-06-09 16:47:37 -07:00
Kubernetes Prow Robot
94833ccdf2 Merge pull request #91673 from skilxn-go/PickNodeFix
Fix pick-node strategy when there is no filter plugin
2020-06-09 14:49:11 -07:00
Aldo Culquicondor
170f81cff3 Use PodTopologySpread for default spreading
Under the feature gate DefaultPodTopologySpread, which will disable the legacy DefaultPodTopologySpread plugin from the default algorithm providers.

Signed-off-by: Aldo Culquicondor <acondor@google.com>
2020-06-09 14:59:42 -04:00
Kubernetes Prow Robot
1cbb5d1e51 Merge pull request #91894 from chendave/podaffinity_comments
Fix the incorrect error message of `InterPodAffinity` plugin
2020-06-08 21:44:45 -07:00
Kubernetes Prow Robot
5248bef370 Merge pull request #91750 from Huang-Wei/clear-nnn
Fix an issue that a Pod's nominatedNodeName cannot be cleared upon node deletion
2020-06-08 21:43:58 -07:00
Kubernetes Prow Robot
de1a277185 Merge pull request #91735 from gpldirk/tps-comment
fix minor comment in podtopologyspread scoring test
2020-06-08 21:43:48 -07:00
Aldo Culquicondor
d353cc1532 Use maxSkew in PodTopologySpread scoring as tolerance to skew
This new approach results in better spreading for small number of pods, while still giving meaning to the maxSkew parameter.

Signed-off-by: Aldo Culquicondor <acondor@google.com>
2020-06-08 16:25:59 -04:00
SataQiu
932e61aefa deprecate ResourceLimitsPriorityFunction feature gate in the scheduler
Signed-off-by: SataQiu <1527062125@qq.com>
2020-06-08 22:20:14 +08:00
Dave Chen
02fb3387a0 Fix the incorrect error message of InterPodAffinity plugin
A line of copy/paste code firstly from the method named `buildTopologyPairToScore`.

Signed-off-by: Dave Chen <dave.chen@arm.com>
2020-06-08 16:39:19 +08:00
Kubernetes Prow Robot
82d27aa030 Merge pull request #91832 from ahg-g/ahg-over
Remove log message causing significant overhead on Preemption evaluation
2020-06-06 07:13:45 -07:00
Abdullah Gharaibeh
8bf30530e8 Remove unnecessary log message causing significant overhead on preemption evaluation 2020-06-05 16:50:25 -04:00