Commit Graph

78 Commits

Author SHA1 Message Date
sanposhiho
0b16a7fefa Support ExtenderName in FakeExtender 2022-02-23 12:14:39 +09:00
Abdullah Gharaibeh
8a1c70b48c Graduate PodAffinityNamespaceSelector to GA 2022-02-18 12:07:29 -05:00
Alex Wang
52275fc831 add preemption info in scheduling failed event 2022-02-01 00:37:16 +08:00
Jordan Liggitt
c0af728f43 Handle invalid selectors properly 2022-01-14 12:11:02 -05:00
Wei Huang
2433b083a9
clear pod's .status.nominatedNodeName when necessary 2021-12-16 10:55:13 -08:00
Abdullah Gharaibeh
33a04dc5f5 Added an integration test for NodeResourcesFit scoring 2021-11-30 12:13:30 -05:00
Kubernetes Prow Robot
8e8bf06f15
Merge pull request #105796 from sanposhiho/move/parallelizer-to-non-internal
Fix: move parallelize package to non-internal file
2021-10-28 15:31:00 -07:00
Dave Chen
468a6005a6 Fix the return status when a plugin internal status is found
Currently, the status code returned is `Unschedulable` when an internal error
found, the `Unschedulable` status is built from a `FitError` which means no
fit nodes found without a internal error.

Instead of build an Unschedulable status from the `FitError`, return the
Error status directly.

Signed-off-by: Dave Chen <dave.chen@arm.com>
2021-10-28 09:43:31 +08:00
sanposhiho
9dc0489c1a Fix: move parallelize package to non-internal file 2021-10-21 02:39:23 +09:00
kerthcet
75a255d2ed remove scheduler component config v1beta1
Signed-off-by: kerthcet <kerthcet@gmail.com>
2021-09-28 13:13:17 +08:00
Wei Huang
3b64c1b01d
sched: de-duplicate plugin registration logic by using FactoryAdapter 2021-09-20 10:12:34 -07:00
Dave Chen
3af26bae2c Refactor defaultpreemption for out-of-tree plugins
Signed-off-by: Dave Chen <dave.chen@arm.com>
2021-08-11 09:29:17 +08:00
Wei Huang
36eaa11d50
cleanup usage of NewPodNominator
- replace NewPodNominator() with NewSafePodNominator()
- rename nominatedPodMap to nominator
2021-06-10 14:01:07 -07:00
Abdullah Gharaibeh
46f3e4dfdd Define in-tree scheduler plugin names in separate pkg to break a cyclic depednecy when moving plugin defaulting to CC 2021-06-09 15:36:09 -04:00
Dave Chen
b049e1b9ab Cleanup redundant failure reason in InterPodAffinity plugin
Both `ErrReasonAffinityRulesNotMatch` and `ErrReasonAntiAffinityRulesNotMatch` are
more precise than `ErrReasonAffinityNotMatch`.

Signed-off-by: Dave Chen <dave.chen@arm.com>
2021-06-02 11:52:55 +08:00
Mike Dame
5a77ebe28b Scheduler: remove pkg/features dependency from NodeResources plugins 2021-05-18 08:59:02 -04:00
Yuan Chen
fce28dbac9 Prevent scheduler crashing in default preemption 2021-05-04 19:30:11 -07:00
Konstantin Misyutin
74e30c5e38 Scheduler: remove pkg/features dependency from DefaultPreemption plugin
Signed-off-by: Konstantin Misyutin <konstantin.misyutin@huawei.com>
2021-04-29 23:12:46 +08:00
Dave Chen
c6e65079c7 Validate plugin config for KubeSchedulerConfiguration
Signed-off-by: Dave Chen <dave.chen@arm.com>
2021-04-14 09:30:20 +08:00
caiweidong
850759ec87 Preempting: do not delete the victim if it just exits in WaitingPods 2021-03-23 14:37:36 +08:00
Kubernetes Prow Robot
d256468a09
Merge pull request #99644 from gavinfish/sched-param
Scheduler: make parallelism as part of schedulerOptions
2021-03-09 11:05:42 -08:00
Morten Torkildsen
21fba79d45 Promote PDBs to GA 2021-03-09 10:29:11 -05:00
drfish
c2ceb21a3e Make parallelism as part of schedulerOptions 2021-03-09 23:25:55 +08:00
Mengxue Zhang
b38caa91cc make runtime.NewFramework accept KubeSchedulerProfile 2021-03-05 18:30:21 +00:00
Abdullah Gharaibeh
c7fef196b6 Implements pod affinity NamespaceSelector feature 2021-03-04 07:30:24 -05:00
Kubernetes Prow Robot
0ced9d2854
Merge pull request #99498 from gavinfish/sched-preempthandle
Scheduler: unroll PreemptHandle to Handle
2021-03-01 13:58:28 -08:00
Benjamin Elder
56e092e382 hack/update-bazel.sh 2021-02-28 15:17:29 -08:00
drfish
38ad860c2f Unroll PreemptHandle to Handle 2021-02-27 00:44:05 +08:00
Kubernetes Prow Robot
1d02dfb79a
Merge pull request #99085 from gavinfish/jieshe/nominated-podinfo
Scheduler: Use PodInfo instead of Pod for nominatedPods and QueuedPodInfo
2021-02-24 08:52:50 -08:00
drfish
bc2df9de72 Use PodInfo instead of Pod for nominatedPods and QueuedPodInfo 2021-02-22 22:00:23 +08:00
Kubernetes Prow Robot
0b5dd00d03
Merge pull request #99119 from gavinfish/sched-preempt
Scheduler: let default preemption returns status instead of err
2021-02-19 20:49:41 -08:00
drfish
a1bfa0120e Let default preemption returns status instead of err 2021-02-19 23:57:23 +08:00
Kubernetes Prow Robot
2b6a8381d2
Merge pull request #98875 from tanjing2020/change-log
migrate to structured logging
2021-02-19 07:48:25 -08:00
Kubernetes Prow Robot
d69d228a2c
Merge pull request #99211 from deepakiam/master
Substituting bool maps with String sets
2021-02-19 00:20:57 -08:00
Deepak Nair
49a9e28dd8 Substitute boolean maps with String sets 2021-02-18 20:59:32 -08:00
drfish
ac0b034b02 Remove reflect.DeepEqual for defaultpreemption, helper, and imagelocality package 2021-02-13 16:16:14 +08:00
tanjing2020
300d109d78 migrate to structured logging 2021-02-10 16:11:52 +08:00
Kubernetes Prow Robot
ebe7380b38
Merge pull request #98518 from tanjing2020/change-log
migrate default_preemption.go to structured logging
2021-02-03 19:54:28 -08:00
Kubernetes Prow Robot
4e72a35b35
Merge pull request #98588 from gavinfish/sched-fw-ut
Scheduler: organize framework unit tests in subtests
2021-02-01 20:40:36 -08:00
tanjing2020
e62cfa7cc4 migrate default_preemption.go to structured logging 2021-02-02 09:38:23 +08:00
Dave Chen
fe5a266a03 Include UnschedulableAndUnresolvable nodes into the status map
Signed-off-by: Dave Chen <dave.chen@arm.com>
2021-02-01 10:49:43 +08:00
drfish
0c3d8b9720 Organize framework unit tests in subtests 2021-01-31 13:34:52 +08:00
Dave Chen
9d48a44601 Expose node status so that external preemption plugins can use it
Signed-off-by: Dave Chen <dave.chen@arm.com>
2021-01-29 10:17:25 +08:00
Wei Huang
f8a6bdb044
Surface info of failed plugins during PerFilter and Filter 2021-01-28 12:20:42 -08:00
drfish
a6f2736032 Wrap errors from DefaultPreemption and InterPodAffinity plugins 2021-01-26 23:00:12 +08:00
drfish
8be6d9650c Update potentialVictims as framework.PodInfo type 2021-01-24 22:17:28 +08:00
drfish
d4418c1402 Update the PreFilterExtensions interface to use PodInfo 2021-01-19 00:49:52 +08:00
Dave Chen
7315c1f6dd Show the details on the failure of preemption
Since the filter status is missed for the phase of preemption, there
will be no way to tell why the preemption failed for some reasons, and
those reasons could be different with the status from the main scheduling
process (the first failed plugin will hide other failures in the chain).

This change provides verbose information based on the node status generated
during pod preemption, those information helps us to diagnose the issue which
is happened during pod preemption.

Signed-off-by: Dave Chen <dave.chen@arm.com>
2021-01-15 23:20:17 +08:00
Kubernetes Prow Robot
974404757d
Merge pull request #96929 from gavinfish/sched-plugin-core
Scheduler: Move PodPassesFiltersOnNode out of core to avoid plugin dependency
2021-01-05 11:46:13 -08:00
drfish
070773c399 Remove scheduler plugins package's dependency from core package 2020-12-20 00:18:40 +08:00