Commit Graph

1172 Commits

Author SHA1 Message Date
Patrick Ohly
d2ff210c20 scheduler: add dynamic resource allocation plugin
The plugin handles the interaction with ResourceClaims that are referenced by a
Pod.
2022-11-11 21:58:03 +01:00
Jan Safranek
5b284a50b7 Revert "Remove references to openstack and cinder"
This reverts commit 9bbf01bae9.
2022-11-10 18:25:30 +01:00
kerthcet
7b7da83a8a Fix: resourceToWeightMap will never be nil
Use len() instead of telling whether it's nil
Add tests to guarantee that when resourceToWeightMap is nil, scheduler will not crash

Signed-off-by: kerthcet <kerthcet@gmail.com>
2022-11-10 14:07:02 +08:00
Kubernetes Prow Robot
c84e920a48
Merge pull request #113786 from sanposhiho/revert-prefilter-skip
Revert "feature(scheduler): won't run Filter if PreFilter returned a Skip status"
2022-11-09 10:08:13 -08:00
Kensei Nakada
f3868abfed Revert "feature(scheduler): won't run Filter if PreFilter returned a Skip status"
This reverts commit 786be73b4b.
2022-11-09 11:55:33 +00:00
Michal Wozniak
b3e9d8ef4c Cleanup the default_preemption_test by indexing the potential victim pods 2022-11-09 10:26:08 +01:00
Michal Wozniak
c803892bd8 Enable the feature into beta 2022-11-09 09:02:40 +01:00
Kubernetes Prow Robot
2b7b5245ea
Merge pull request #112637 from sanposhiho/pre-filter-skip
feature(scheduler): won't run Filter if PreFilter returned a Skip status
2022-11-08 06:16:37 -08:00
Kensei Nakada
786be73b4b feature(scheduler): won't run Filter if PreFilter returned a Skip status 2022-11-07 23:47:48 +00:00
Wei Huang
0b27f25252
PreEnqueue implementation
- Add PreEnqueuePlugin to Scheduler Framework
- Implement PreEnqueuePlugin in scheduler queue
- Implementation of SchedulingGates plugin
- Metrics
2022-11-07 14:02:58 -08:00
Wei Huang
2de75d92bf
API, Codegen, UT for PreEnqueue extension point 2022-11-07 14:02:57 -08:00
Kubernetes Prow Robot
fce1fbec29
Merge pull request #113528 from iyear/remove-useless-set
scheduler/framework: remove useless SetFailedPlugin
2022-11-07 06:52:16 -08:00
Abirdcfly
bf8570029e
chore(scheduler): cleanup some minor issues in testing 2022-11-03 09:07:28 +08:00
iyear
a62f0c3b9f scheduler/framework: remove useless SetFailedPlugin
Signed-off-by: iyear <ljyngup@gmail.com>
2022-11-02 10:42:52 +08:00
Michal Wozniak
fea883687f SSA to add pod failure conditions - ready for review 2022-10-27 18:21:33 +02:00
Kubernetes Prow Robot
8305358630
Merge pull request #108494 from sanposhiho/RunScorePlugins-return-type
change framework.RunScorePlugins to return slice organized by node
2022-10-20 08:57:02 -07:00
sanposhiho
cbf1ea5e68 change framework.RunScorePlugins to return slice organized by node 2022-10-20 01:04:38 +00:00
Kubernetes Prow Robot
ca17d9ba2b
Merge pull request #113127 from tangwz/parallel_preemption
Do pod preemption in parallel.
2022-10-19 07:23:01 -07:00
tangwz
480ae2a7c1 Do pod preemption in parallel. 2022-10-19 09:28:53 +08:00
Kubernetes Prow Robot
424a98ccc2
Merge pull request #109662 from astraw99/fix-prebind-pvc-update
Replace `DeepEqual` to `Diff` compare on scheduler-binding
2022-10-18 11:29:18 -07:00
Kubernetes Prow Robot
521fbd7e6a
Merge pull request #112521 from yuanchen8911/profile-config
Add a scheduler profile level parameter percentageOfNodesToScore
2022-10-17 11:09:06 -07:00
SataQiu
ba925a8393 scheduler: remove unused constant DefaultBindTimeoutSeconds from VolumeBinding plugin 2022-10-17 17:25:59 +08:00
Yuan Chen
7297f48f12 Add profile level percentageOfNodesToScore
Fix conversion errors

Changed the order

update

update

fix manaul coversions

keep the global parameter for backward compatibility

Address Wei's comments

Fix an error

Fix issues

Add unit tests for validation

Fix a comment

Address comments

Update comments

fix verifiation errors

Add tests for scheme_test.go

Convert percentageOfNodesToScore to pointer

Fix errors

Resolve conflicts

Fix testing errors

Address Wei's comments

Revert IntPtr to Int changes

Address comments

Not overrite percentageOfNodesToScore

Fix a bug

Fix a bug

change errs to err

Fix a nit

Remove duplication

Address comments

Fix lint warning

Fix an issue

Update comments

Clean up

Address comments

Revert changes to defaults

fix unit test error

Update

Fix tests

Use default PluginConfigs
2022-10-14 13:01:06 -07:00
kidddddddddddddddddddddd
b901ef0f68 changes in test files 2022-10-12 22:11:04 +08:00
kidddddddddddddddddddddd
121d24cfc7 changes in non-test files 2022-10-12 21:09:55 +08:00
kidddddddddddddddddddddd
1eb9d42c3f function changes 2022-10-12 21:00:48 +08:00
Kubernetes Prow Robot
27344212ce
Merge pull request #112827 from SataQiu/clean-scheduler-20221003
scheduler: cleanup the unused event types about Service
2022-10-04 16:24:00 -07:00
Kubernetes Prow Robot
6ece379ad6
Merge pull request #112658 from BinacsLee/binacs/cleanup-reuse-code-logic-in-nodeinfo
cleanup: reuse code logic in NodeInfo.AddPod & NodeInfo.RemovePod
2022-10-03 08:46:14 -07:00
BinacsLee
b616d41c25 cleanup: reuse code logic in NodeInfo.AddPod & NodeInfo.RemovePod 2022-10-03 21:10:50 +08:00
SataQiu
8640d17760 scheduler: cleanup the unused event types about Service 2022-10-03 16:30:38 +08:00
kerthcet
55dcde737d typo fixed
Signed-off-by: kerthcet <kerthcet@gmail.com>
2022-09-29 18:08:15 +08:00
SataQiu
7ab0c56f71 scheduler: remove unused plugin name ServiceAffinity 2022-09-28 17:25:18 +08:00
Kubernetes Prow Robot
5fe1450ba7
Merge pull request #112028 from dengyufeng2206/test2508
fix several typos under scheduler framework
2022-09-22 15:18:53 -07:00
Kubernetes Prow Robot
9cd59bfc38
Merge pull request #112660 from kerthcet/cleanup/change-approver
Make autoscaling team the autoscaler_contract package approver
2022-09-22 12:51:22 -07:00
kerthcet
2679d998d3 Make autoscaling team as the autoscaler_contract package approver
Signed-off-by: kerthcet <kerthcet@gmail.com>
2022-09-22 23:18:12 +08:00
Sergey Kanzhelev
ad7199a9da remove podOverhead feature gate as a feature is now GA since 1.24 2022-09-19 19:25:16 +00:00
Kubernetes Prow Robot
3e5e5cc7ee
Merge pull request #112357 from SataQiu/deprecated-20220907
kube-scheduler: add taints filtering logic consistent with TaintToleration plugin for PodTopologySpread plugin
2022-09-16 18:14:27 -07:00
kerthcet
9a9fbf598e Fix calculating error when adding nominated pods in podTopologySpread
Signed-off-by: kerthcet <kerthcet@gmail.com>
2022-09-16 17:28:49 +08:00
Kubernetes Prow Robot
3ac752e4a0
Merge pull request #112003 from sanposhiho/metrics-goroutine
feature(scheduler): add "goroutines" metric and deprecate the "scheduler_goroutines" metric
2022-09-12 12:01:16 -07:00
Kubernetes Prow Robot
6cf208e4d4
Merge pull request #112354 from pohly/volumebinding-delete-event-handler
volumebinding: handle special delete event in AssumeCache
2022-09-12 08:07:36 -07:00
SataQiu
bc9c494319 kube-scheduler: add taints filtering logic consistent with TaintToleration plugin for PodTopologySpread plugin
Signed-off-by: SataQiu <shidaqiu2018@gmail.com>
2022-09-10 09:04:30 +08:00
Kante Yin
096dafe757
Feat: unify the status handle when return in bindingCycle (#112103)
Signed-off-by: kerthcet <kerthcet@gmail.com>

Signed-off-by: kerthcet <kerthcet@gmail.com>
2022-09-09 08:31:23 -07:00
Kubernetes Prow Robot
904417b5d3
Merge pull request #110894 from yuanchen8911/prefilter
Consolidate PreFilter and Filter reason messages for scheduler
2022-09-02 16:34:27 -07:00
Kubernetes Prow Robot
f0fa987c05
Merge pull request #111544 from jlsong01/fix_resource_req_zero
fix pod created failed when resource request is 0
2022-09-02 10:56:05 -07:00
Patrick Ohly
c70203bda3 volumebinding: handle special delete event in AssumeCache
Sometimes an informer might not directly send the deleted object to the
OnDelete callback, but rather a DeletedFinalStateUnknown. The AssumeCache did
not handle that case.
2022-09-02 12:39:40 +02:00
Kensei Nakada
08bd123b95 feature(scheduler): add "goroutines" metric and deprecate the "scheduler_goroutines" metric 2022-09-01 13:21:21 +00:00
Yuan Chen
cf28762aef Add PreFilter messages to Diagnosis
Address Wei Huang's comments

Define a separatorTemplate

Add test for scheduler FitError.Error()
2022-08-31 12:46:03 -07:00
Dave Chen
7533748bcc fix: Node not found when testcases is executed
Signed-off-by: Dave Chen <dave.chen@arm.com>
2022-08-31 18:28:48 +08:00
Kubernetes Prow Robot
4269caeffd
Merge pull request #111864 from kerthcet/cleanup/remove-untrue-comments
Remove not correct annotations with node.Spec.Unschedulable
2022-08-26 11:30:15 -07:00
Kubernetes Prow Robot
dbe3ac755a
Merge pull request #112029 from chendave/fix_status
Fix the wrong status returned from `RunPreFilterPlugins`
2022-08-25 23:34:50 -07:00
Dave Chen
8a288d6406 Fix the wrong status returned from RunPreFilterPlugins
event msg will be impacted due to the wrong status is returned.
e.g.

Warning  FailedScheduling ... running PreFilter plugin "PodTopologySpread": %!!(MISSING)w(<nil>)

Signed-off-by: Dave Chen <dave.chen@arm.com>
2022-08-26 11:20:11 +08:00
dengyufeng2206
1a07ea2f60 fix several typos under scheduler framework
Signed-off-by: dengyufeng2206 <deng.yufeng@zte.com.cn>
2022-08-25 19:02:07 +08:00
Kubernetes Prow Robot
34aa4c39e0
Merge pull request #111845 from ialidzhikov/cleanup/pkg-scheduler
pkg/scheduler: Replace deprecated func usage from the `k8s.io/utils/pointer` pkg
2022-08-23 20:08:15 -07:00
Kubernetes Prow Robot
ea4ff062ab
Merge pull request #111810 from Huang-Wei/sched-context-leak
Fix potential context leaking in scheduler
2022-08-23 19:01:12 -07:00
Kubernetes Prow Robot
07bca2d791
Merge pull request #67782 from dims/yank-in-tree-openstack-cloud-provider
Remove in-tree openstack cloud provider
2022-08-23 18:59:48 -07:00
Kubernetes Prow Robot
6c9c9ff851
Merge pull request #110717 from kerthcet/poc/ca-detector
Add Framework interface detectors in scheduler
2022-08-23 16:04:55 -07:00
Kubernetes Prow Robot
7424098eaf
Merge pull request #109945 from bells17/fix-error-message
Fix error message
2022-08-23 16:04:26 -07:00
Davanum Srinivas
9bbf01bae9
Remove references to openstack and cinder
Signed-off-by: Davanum Srinivas <davanum@gmail.com>
2022-08-22 16:43:14 -04:00
kerthcet
b27ceebc93 Remove out-of-date comments
Signed-off-by: kerthcet <kerthcet@gmail.com>
2022-08-16 14:05:11 +08:00
ialidzhikov
7c8a151faa pkg/scheduler: Replace deprecated func usage from the k8s.io/utils/pointer pkg 2022-08-16 08:39:18 +03:00
Wei Huang
a07e27082a
Fix potential context leaking in scheduler 2022-08-11 22:22:40 -07:00
amewayne
1457ad548c fix a memory leak problem when calling DryRunPreemption 2022-08-10 12:02:27 +08:00
kerthcet
97e3e50493 Remove potential goroutine leak in NewFramework
Signed-off-by: kerthcet <kerthcet@gmail.com>
2022-08-06 00:05:22 +08:00
bells17
e539e04103 Use stretchr/testify/assert 2022-08-05 00:54:19 +09:00
Kubernetes Prow Robot
442574f3a7
Merge pull request #111513 from jingxu97/july/localstorage
Promote Local storage capacity isolation feature to GA
2022-08-03 13:05:59 -07:00
jinxu
0064010cdd Promote Local storage capacity isolation feature to GA
This change is to promote local storage capacity isolation feature to GA

At the same time, to allow rootless system disable this feature due to
unable to get root fs, this change introduced a new kubelet config
"localStorageCapacityIsolation". By default it is set to true. For
rootless systems, they can set this configuration to false to disable
the feature. Once it is set, user cannot set ephemeral-storage
request/limit because capacity and allocatable will not be set.

Change-Id: I48a52e737c6a09e9131454db6ad31247b56c000a
2022-08-02 23:45:48 -07:00
Kubernetes Prow Robot
369a465fae
Merge pull request #111301 from mattcary/migration-feature
Upgrade CSIMigrationGCE feature gate to GA
2022-08-02 13:58:57 -07:00
Matthew Cary
e5d387c5d6 Upgrade CSIMigrationGCE feature gate to GA
Change-Id: I620bc4913765c0d6562eb1008216a72e8b0a2970
2022-08-02 09:14:27 -07:00
jlsong01
27824fb06a fix pod created failed when resource request is 0 2022-08-02 23:41:53 +08:00
Michal Wozniak
04fcbd721c Introduction of a pod condition type indicating disruption. Its reason field indicates the reason:
- PreemptionByKubeScheduler (Pod preempted by kube-scheduler)
- DeletionByTaintManager (Pod deleted by taint manager due to NoExecute taint)
- EvictionByEvictionAPI (Pod evicted by Eviction API)
- DeletionByPodGC (an orphaned Pod deleted by PodGC)PreemptedByScheduler (Pod preempted by kube-scheduler)
2022-08-02 11:12:16 +02:00
Kubernetes Prow Robot
1e18ff5b37
Merge pull request #111479 from wongma7/migrationawsga
Promote CSIMigrationAWS to GA
2022-08-01 13:18:29 -07:00
Kubernetes Prow Robot
3902a53419
Merge pull request #111441 from denkensk/respect-topology
Respect PodTopologySpread after rolling upgrades
2022-07-30 01:40:42 -07:00
Kubernetes Prow Robot
2ae27c89ba
Merge pull request #111206 from SataQiu/scheduler-20220718
scheduler: include supported ScoringStrategyType list in error message for NodeResourcesFit plugin
2022-07-30 01:40:29 -07:00
Alex Wang
f4bc904376 implementation for MatchLabelKeys in TopologySpreadConstraint
Signed-off-by: Alex Wang <wangqingcan1990@gmail.com>
2022-07-30 13:23:49 +08:00
Matthew Wong
777f43062c Remove unit tests that set & test CSIMigrationAWS false since it's now locked to true 2022-07-29 13:52:06 -07:00
Kubernetes Prow Robot
1865f7cb9b
Merge pull request #111287 from ldsdsy/modify1
Update the comment in pkg/scheduler/framework/plugins/noderesources
2022-07-29 08:35:11 -07:00
Davanum Srinivas
a9593d634c
Generate and format files
- Run hack/update-codegen.sh
- Run hack/update-generated-device-plugin.sh
- Run hack/update-generated-protobuf.sh
- Run hack/update-generated-runtime.sh
- Run hack/update-generated-swagger-docs.sh
- Run hack/update-openapi-spec.sh
- Run hack/update-gofmt.sh

Signed-off-by: Davanum Srinivas <davanum@gmail.com>
2022-07-26 13:14:05 -04:00
SataQiu
107dee6f04 scheduler: ValidateNodeResourcesFitArgs will check ScoringStrategy.Type field and print supported ScoringStrategyType list on error 2022-07-26 13:23:03 +08:00
ldsdsy
cc46cb002a Update the comment in pkg/scheduler/framework/plugins/noderesources/most_allocated.go 2022-07-20 21:38:50 +08:00
BinacsLee
14731ae1a7 cleanup: use sets.Clone() to avoid interim slice 2022-07-20 10:55:25 +08:00
kerthcet
a86bffedcf address comments
Signed-off-by: kerthcet <kerthcet@gmail.com>
2022-07-20 10:30:08 +08:00
kerthcet
c8360913ee Feat: add framework interface detector tests
Signed-off-by: kerthcet <kerthcet@gmail.com>
2022-07-19 18:16:56 +08:00
Kubernetes Prow Robot
1c1efde70d
Merge pull request #109639 from Abirdcfly/fixduplicateimport
cleanup: remove all duplicate import
2022-07-18 16:55:23 -07:00
Kubernetes Prow Robot
590e84c097
Merge pull request #111203 from ldsdsy/modify3
Remove redundant code in pkg/scheduler/framework/plugins/volumebinding
2022-07-18 15:36:59 -07:00
Kubernetes Prow Robot
fdc7a5dd25
Merge pull request #111200 from ldsdsy/modify2
Format the code in pkg/scheduler/framework/plugins/noderesources
2022-07-18 15:36:52 -07:00
Kubernetes Prow Robot
93cb8fda4d
Merge pull request #111199 from zhoumingcheng/master-v6
Update error log to Error Wrapping
2022-07-18 15:36:44 -07:00
Kubernetes Prow Robot
93b6af95a0
Merge pull request #111153 from SataQiu/fix-scheduler-20220715
scheduler: remove useless null pointer check about nodeInfo for in-tree plugins
2022-07-18 15:36:37 -07:00
Kubernetes Prow Robot
e56cda48d3
Merge pull request #111047 from SataQiu/fix-scheduler-20220709
scheduler: improve the comment and add more unit test cases for DefaultNormalizeScore
2022-07-18 15:36:17 -07:00
ldsdsy
dbe1331371 Remove redundant code in pkg/scheduler/framework/plugins/volumebinding/volume_binding.go 2022-07-18 11:23:37 +08:00
ldsdsy
2f1168d9a5 Format the code in pkg/scheduler/framework/plugins/noderesources/balanced_allocation.go 2022-07-18 11:03:33 +08:00
zhoumingcheng
d5ed07c8eb Update error log to Error Wrapping
Signed-off-by: zhoumingcheng <zhoumingcheng@beyondcent.com>
2022-07-18 10:54:54 +08:00
Kubernetes Prow Robot
d6f4a5d04a
Merge pull request #111062 from SataQiu/fix-scheduler-20220711
scheduler: using math.MinInt64 instead of -math.MaxInt64
2022-07-15 10:42:18 -07:00
astraw99
e3ea17a97c fix pvc/pv update on binding pod volumes 2022-07-15 10:23:25 +08:00
Kubernetes Prow Robot
0e826ffef4
Merge pull request #111127 from HecarimV/fix-22071410
fix: update comment for related updated func
2022-07-14 13:19:08 -07:00
SataQiu
9a2eaa8e3f scheduler: improve the comment and add more unit test cases for DefaultNormalizeScore 2022-07-15 00:15:18 +08:00
SataQiu
97d9d2bd17 scheduler: remove useless null pointer check about nodeInfo for in-tree plugins 2022-07-15 00:09:42 +08:00
Kubernetes Prow Robot
b70f340209
Merge pull request #110958 from kidddddddddddddddddddddd/cleanup/remove-potential-goroutine-leak-in-binder
Pass context to pkg/scheduler/framework/plugins/volumebinding.
2022-07-13 22:50:56 -07:00
Abirdcfly
00b9ead02c cleanup: remove duplicate import
Signed-off-by: Abirdcfly <fp544037857@gmail.com>
2022-07-14 11:25:19 +08:00
HaoJie Liu
d8702cc369
fix: update comment for related updated func
Signed-off-by: HaoJie Liu <liuhaojie@beyondcent.com>
2022-07-14 10:20:48 +08:00
Wei Huang
4f77732540
merge MakeDefaultErrorFunc into handleSchedulingFailure 2022-07-12 12:11:16 -07:00