Commit Graph

1044 Commits

Author SHA1 Message Date
Kubernetes Prow Robot
0ae9aaacfa
Merge pull request #118271 from tangwz/add_nodeports_prefilter_skip_status
feat(NodePorts): return Skip status in PreFilter
2023-07-09 20:49:04 -07:00
Gunju Kim
7286d122fb
Mark pods with restartable init containers as UnschedulableAndUnresolvable
This marks the pods with restartable init containers as
`UnschedulableAndUnresolvable` if the feature gate is disabled to avoid
the inconsistency in resource calculation between the scheduler and the
older kubelet.
2023-07-08 07:26:13 +09:00
tangwz
1bf2f6c9c0 feat(NodePorts): return Skip status in PreFilter 2023-07-06 08:42:08 +08:00
utam0k
ef26510164
Return Skip in PodTopologySpread#PreScore under specific conditions
Signed-off-by: utam0k <k0ma@utam0k.jp>
2023-06-28 12:08:10 +00:00
Kubernetes Prow Robot
52457842d1
Merge pull request #117055 from cyclinder/csi_migration
remove CSI-migration gate
2023-06-28 04:28:31 -07:00
Kubernetes Prow Robot
d9714078f8
Merge pull request #118551 from sanposhiho/event-to-register
feature(scheduler): implement ClusterEventWithHint to filter out useless events
2023-06-26 06:41:45 -07:00
Kensei Nakada
6f8d38406a feature(scheduler): implement ClusterEventWithHint to filter out useless events 2023-06-22 13:36:19 +00:00
Kubernetes Prow Robot
bc8e312857
Merge pull request #117903 from sourcelliu/dynamic
feature(DynamicResources): return Skip in PreFilter
2023-06-20 17:48:20 -07:00
Kubernetes Prow Robot
4483bf66fe
Merge pull request #116635 from mengjiao-liu/contextual-logging-plugin-interpodaffinity
Migrated `pkg/scheduler/framework/plugins/interpodaffinity` to contextual logging
2023-06-09 08:14:13 -07:00
guoguangwu
1d9eed9f95 chore: slice replace loop 2023-06-05 22:40:53 +08:00
SataQiu
410b6023d6 scheduler: fix code style issues for pkg/scheduler 2023-06-05 17:29:49 +08:00
cyclinder
8e4228a8c1 remove CSI-migration gate 2023-06-04 18:40:17 +08:00
Mengjiao Liu
6d23da045f Migrated pkg/scheduler/framework/plugins/interpodaffinity to use contextual logging 2023-06-01 18:24:54 +08:00
Mengjiao Liu
074900e81b scheduler: update the scheduler interface and cache methods to use contextual logging 2023-05-29 13:26:32 +08:00
Kubernetes Prow Robot
f7cfb5f02f
Merge pull request #118257 from pohly/dra-scheduler-plugin-loopvar-fix
dra scheduler plugin test: fix loopvar bug and "reserve" expected data
2023-05-26 06:06:53 -07:00
Patrick Ohly
7a6b4a9215 dra scheduler plugin test: fix loopvar bug and "reserve" expected data
The `listAll` function returned a slice where all pointers referred to the same
instance. That instance had the value of the last list entry. As a result, unit
tests only compared that element.

During the reserve phase, the first claim gets reserved in two test
cases. Those two tests must expect that change. That hadn't been noticed before
because that first claim didn't get compared.
2023-05-25 15:10:05 +02:00
Mengjiao Liu
1c05cf1d51 kube-scheduler: NewFramework function to pass the context parameter
Co-authored-by: Aldo Culquicondor <1299064+alculquicondor@users.noreply.github.com>
2023-05-23 10:17:34 +08:00
Kubernetes Prow Robot
c7c41d27b4
Merge pull request #117834 from NoicFank/cleanup-scheduler-node-must-not-nil-in-snapshot
cleanup useless null pointer check about nodeInfo.Node() from snapshot for in-tree plugins
2023-05-20 15:16:18 -07:00
dingzhu lurong
ed26fcf5b8 cleanup useless null pointer check about nodeInfo.Node() from snapshot for in-tree plugins 2023-05-20 22:53:43 +08:00
Kubernetes Prow Robot
da1b9df26c
Merge pull request #118032 from kerthcet/cleanup/interpodaffinity2
Chore: cleanup in interPodAffinity
2023-05-17 14:00:33 -07:00
Kubernetes Prow Robot
53772982be
Merge pull request #116829 from mengjiao-liu/contextual-logging-scheduler-plugin-volumezone
Migrated the volumezone scheduler plugin to use contextual logging
2023-05-16 09:53:35 -07:00
kerthcet
3ac7497361 Chore: cleanup in interpodaffinity
Signed-off-by: kerthcet <kerthcet@gmail.com>
2023-05-16 14:46:15 +08:00
mantuliu
6e2ea32fc8 feature(DynamicResources): return Skip in PreFilter 2023-05-15 00:06:08 +08:00
Kubernetes Prow Robot
58e13496d6
Merge pull request #116842 from mengjiao-liu/contextual-logging-scheduler-runtime
Migrated `pkg/scheduler/framework/runtime` to use contextual logging
2023-05-11 10:59:02 -07:00
Mengjiao Liu
fe728996ca scheduler test: call frameworkruntime.WithLogger function for contextual logging 2023-05-11 15:46:08 +08:00
utam0k
c0611b6bb3
Return Skip in InterPodAffinity#PreScore under specific conditions
This commit updates the InterPodAffinity PreScore to return a Skip status when the following conditions are met:
1. There are no nodes to score.
2. The incoming pod has no inter-pod affinities && the `IgnorePreferredTermsOfExistingPods` option is enabled.

Signed-off-by: utam0k <k0ma@utam0k.jp>
2023-05-10 13:02:23 +00:00
mantuliu
e6900f5ead Optimize the performance of the Clone method of preFilterState 2023-05-05 19:53:12 +08:00
mantuliu
887654160f Improve the performance of schedulinggates 2023-05-04 18:09:49 +08:00
Kubernetes Prow Robot
47f1bd9f80
Merge pull request #117649 from SataQiu/scheduler-remove-v1beta2-20230427
scheduler: remove deprecated v1beta2 KubeSchedulerConfiguration  component config
2023-05-03 09:54:41 -07:00
Kubernetes Prow Robot
0d67dd689b
Merge pull request #117683 from utam0k/skip-topologyspread-empty
Add check to skip PodTopologySpread PreFilter if no constraints are specified
2023-05-03 06:48:24 -07:00
SataQiu
1f7c07f355 scheduler: remove deprecated v1beta2 KubeSchedulerConfiguration 2023-05-03 21:43:19 +08:00
utam0k
d82684e691
Add check to skip PodTopologySpread PreFilter if no constraints are specified
This commit adds a check in the PodTopologySpread PreFilter function to
return a Skip status if there are no topology spread constraints specified
This prevents unnecessary processing and filtering for pods that don't have any topology spread
constraints.
This change is a part of the work for issue #114399.

Signed-off-by: utam0k <k0ma@utam0k.jp>
2023-05-03 04:39:00 +00:00
Kubernetes Prow Robot
8353d4623b
Merge pull request #117427 from cbandy/pkg-testing-setenv
Replace os.Setenv with testing.T.Setenv in tests
2023-04-29 08:28:16 -07:00
Kubernetes Prow Robot
b44482a37c
Merge pull request #116797 from mengjiao-liu/contextual-looging-scheduler-plugin-podtopologyspread
Migrated `pkg/scheduler/framework/plugins/podtopologyspread` to contextual logging
2023-04-27 12:28:27 -07:00
Kubernetes Prow Robot
a38efaccc0
Merge pull request #116748 from mengjiao-liu/contextual-logging-scheduler-plugin-noderesource
Migrated `pkg/scheduler/framework/plugins/noderesources` to contextual logging
2023-04-27 12:28:15 -07:00
Kubernetes Prow Robot
5170c25609
Merge pull request #116835 from mengjiao-liu/contextual-logging-scheduler-plugin-preemption
Migrated `pkg/scheduler/framework/preemption & defaultpreemption` to use contextual logging
2023-04-27 11:10:16 -07:00
Kubernetes Prow Robot
87f3acf7f6
Merge pull request #115398 from tangwz/add_NodeVolumeLimits_PreFilter
feat(NodeVolumeLimits): return Skip in PreFilter
2023-04-27 01:44:14 -07:00
Mengjiao Liu
7f370d651d Migrated pkg/scheduler/framework/plugins/podtopologyspread to contextual logging 2023-04-27 15:55:09 +08:00
Mengjiao Liu
54e6f609ce Migrated pkg/scheduler/framework/plugins/noderesources to contextual logging 2023-04-27 14:46:13 +08:00
Mengjiao Liu
37a9260d5c Migrate pkg/scheduler/framework/plugins/defaultpreemption/default_preemption.go to use contextual logging 2023-04-27 11:28:19 +08:00
Mengjiao Liu
eeb1399383 Migrated pkg/scheduler/framework/preemption to use contextual logging 2023-04-27 11:28:14 +08:00
tangwz
8ed861889a feat(NodeVolumeLimits): return Skip in PreFilter 2023-04-26 20:17:04 +08:00
Maciej Borsz
5c584269a7 avoid volume copy in checkAttachableInlineVolume 2023-04-19 20:10:22 +00:00
Chris Bandy
d38ac7e7c6 Replace os.Setenv with testing.T.Setenv in tests
T.Setenv ensures that the environment is returned to its prior state
when the test ends. It also panics when called from a parallel test to
prevent racy test interdependencies.
2023-04-17 20:39:46 -05:00
Kubernetes Prow Robot
94a15929cf
Merge pull request #116408 from ChenLingPeng/fit
skip pod resource check when request is zero
2023-04-17 11:44:45 -07:00
Kubernetes Prow Robot
242702cb86
Merge pull request #116940 from sarab97/sarab/feat/sets
Use the generic Set in scheduler
2023-04-11 19:17:14 -07:00
Kubernetes Prow Robot
365ac69fc4
Merge pull request #116845 from major1201/fix_binder_typo
fix GetPodVolumeClaims in comments
2023-04-11 18:20:05 -07:00
Kubernetes Prow Robot
e77ca49022
Merge pull request #114898 from AxeZhan/volumerestrictions
feature(volume_restrictions): return Skip in PreFilter
2023-04-11 15:35:04 -07:00
sarab
8d18ae6fc2 Use the generic Set in scheduler 2023-04-09 11:34:17 +05:30
kidddddddddddddddddddddd
8d644fbc72 return skip in volumerestrictions 2023-03-23 23:14:24 +08:00
major1201
daa1d287e4 fix GetPodVolumeClaims in comments 2023-03-22 17:23:05 +08:00
Mengjiao Liu
27f84b755e Migrated the volumezone scheduler plugin to use contextual logging 2023-03-22 11:09:31 +08:00
Kubernetes Prow Robot
0e8eae6e35
Merge pull request #116607 from alculquicondor/optimize-spreading
Optimize topology spreading for null selector
2023-03-14 15:14:57 -07:00
Kubernetes Prow Robot
fbfc887a09
Merge pull request #116556 from pohly/dra-podschedulingcontext
dra: PodScheduling -> PodSchedulingContext
2023-03-14 15:14:34 -07:00
Kubernetes Prow Robot
f2e1a67c05
Merge pull request #116535 from denkensk/fix-match
feat: forbid to set matchLabelKeys when labelSelector isn’t set in topologySpreadConstraints
2023-03-14 14:13:04 -07:00
Aldo Culquicondor
3dae9ba6d6
Optimize topology spreading for null selector
Change-Id: I28f031a040b143fa9452b4400cc3ae85d58e572c
2023-03-14 15:01:59 -04:00
Kubernetes Prow Robot
25edb4943a
Merge pull request #116465 from sourcelliu/nodeaffinity
Fix PreFilter logic problem in node affinity
2023-03-14 10:40:52 -07:00
Kubernetes Prow Robot
49649c89ea
Merge pull request #113584 from yangjunmyfm192085/volume-contextual-logging
volume: use contextual logging
2023-03-14 10:40:16 -07:00
Kubernetes Prow Robot
e660a1702b
Merge pull request #116571 from mengjiao-liu/scheduler-plugins-defaultbinder
Migrate pkg/scheduler/framework/plugins/defaultbinder to contextual logging
2023-03-14 09:39:59 -07:00
Patrick Ohly
fec5233668 api: resource.k8s.io PodScheduling -> PodSchedulingContext
The name "PodScheduling" was unusual because in contrast to most other names,
it was impossible to put an article in front of it. Now PodSchedulingContext is
used instead.
2023-03-14 10:18:08 +01:00
Mengjiao Liu
c512232782 Migrate pkg/scheduler/framework/plugins/defaultbinder to contextual logging 2023-03-14 17:02:25 +08:00
Patrick Ohly
29941b8d3e api: resource.k8s.io v1alpha1 -> v1alpha2
For Kubernetes 1.27, we intend to make some breaking API changes:
- rename PodScheduling -> PodSchedulingHints (https://github.com/kubernetes/kubernetes/issues/114283)
- extend ResourceClaimStatus (https://github.com/kubernetes/enhancements/pull/3802)

We need to switch from v1alpha1 to v1alpha2 for that.
2023-03-14 07:52:03 +01:00
Kubernetes Prow Robot
0701e4b3b0
Merge pull request #116508 from tangwz/fix_PreFilter_and_PreScore_test_name
Avoid using negative words in PreFilter and PreScore tests.
2023-03-13 21:17:20 -07:00
Kubernetes Prow Robot
e3cf864279
Merge pull request #116502 from sourcelliu/removecast
Remove unnecessary int64 type conversion
2023-03-13 21:17:08 -07:00
Alex Wang
08dfa41f17 fix: key in matchLabelKeys needs to be ignored when LabelSelector is nil
Signed-off-by: Alex Wang <wangqingcan1990@gmail.com>
2023-03-14 11:25:04 +08:00
mantuliu
42ddbb4276 Fix PreFilter logic problem in node affinity 2023-03-14 11:23:40 +08:00
杨军10092085
361e4ff0fa volume: use contextual logging 2023-03-14 08:37:30 +08:00
Kubernetes Prow Robot
3106a5c553
Merge pull request #116301 from andyzhangx/remove-azuredisk-code
Remove Azure disk in-tree storage plugin
2023-03-13 10:38:48 -07:00
tangwz
3766e060e5 Avoid using negative words in PreFilter and PreScore tests. 2023-03-12 15:06:26 +08:00
mantuliu
4204251acf Remove unnecessary int64 type conversion
Signed-off-by: mantuliu <240951888@qq.com>
2023-03-12 09:50:09 +08:00
tangwz
be080584c6
scheduler(NodeResourcesFit & NodeResourcesBalancedAllocation): calculatePodResourceRequest in PreScore phase (#115655)
* scheduler(NodeResourcesFit): calculatePodResourceRequest in PreScore phase

* scheduler(NodeResourcesFit and NodeResourcesBalancedAllocation): calculatePodResourceRequest in PreScore phase

* modify the comments and tests.

* revert the tests.

* don't need consider nodes.

* use list instead of map.

* add comment for podRequests.

* avoid using negative wording in variable names.
2023-03-10 07:44:53 -08:00
Todd Neal
4096c9209c dedupe pod resource request calculation 2023-03-09 17:15:53 -06:00
andyzhangx
5d0a54dcb5 remove Azure Disk in-tree driver code
fix
2023-03-09 13:24:08 +00:00
forrestchen
bbf2b968c8 skip pod resource check when request is zero
Signed-off-by: forrestchen <forrestchen@tencent.com>
2023-03-09 17:05:11 +08:00
Kubernetes Prow Robot
9d7db70882
Merge pull request #116066 from yoongon/feature/fit-test-comments
Fix comments at fit_test.go to increase redability
2023-03-06 20:52:16 -08:00
torredil
6aebda9b1e Remove AWS legacy cloud provider + EBS in-tree storage plugin
Signed-off-by: torredil <torredil@amazon.com>
2023-03-06 14:01:15 +00:00
Yoon Park
8d2c81e7ec Fix comments at fit_test.go to increase redability 2023-03-04 13:03:15 +09:00
Kubernetes Prow Robot
b9fd1802ba
Merge pull request #102884 from vinaykul/restart-free-pod-vertical-scaling
In-place Pod Vertical Scaling feature
2023-02-27 22:53:15 -08:00
mantuliu
ccde866a2f Improve the performance of method CandidatesToVictimsMap
Signed-off-by: mantuliu <240951888@qq.com>
2023-02-27 23:53:19 +08:00
vinay kulkarni
231849a908 In-place Pod Vertical Scaling - Scheduler changes 2023-02-24 18:14:21 +00:00
TommyStarK
5531295bf9 scheduler/framework/plugins/volumebinding: fix inaccurate log for when a volume is bound to a claim
Signed-off-by: TommyStarK <thomasmilox@gmail.com>
2023-02-24 16:43:38 +01:00
Kubernetes Prow Robot
4dfd2fe74d
Merge pull request #115922 from sourcelliu/impovevolume
Improve performance of method haveOverlap
2023-02-21 11:34:08 -08:00
mantuliu
edc0455c5c Improve performance of method haveOverlap
Signed-off-by: mantuliu <240951888@qq.com>
2023-02-22 00:51:55 +08:00
mantuliu
af85f410a2 Improve the performance of slice usage
Signed-off-by: mantuliu <240951888@qq.com>
2023-02-21 19:30:27 +08:00
mantuliu
e1e07e34e3 Improve performance of method haveOverlap
Signed-off-by: mantuliu <240951888@qq.com>
2023-02-21 16:50:10 +08:00
Yoon Park
c6276cc2ab Fix typo at most_allocated_test.go 2023-02-21 10:32:40 +09:00
Kubernetes Prow Robot
a0878eb715
Merge pull request #115709 from yoongon/feature/default-binder-testnode
Use predefined variable instead of duplicated string
2023-02-13 14:53:49 -08:00
Yoon
a3405f35b4 Use predefined variable instead of duplicated string 2023-02-12 20:50:39 +09:00
Chris Henzie
dbc7d8ded0 feat: support preemption for pods using ReadWriteOncePod PVCs
PVCs using the ReadWriteOncePod access mode can only be referenced by a
single pod. When a pod is scheduled that uses a ReadWriteOncePod PVC,
return "Unschedulable" if the PVC is already in-use in the cluster.

To support preemption, the "VolumeRestrictions" scheduler plugin
computes cycle state during the PreFilter phase. This cycle state
contains the number of references to the ReadWriteOncePod PVCs used by
the pod-to-be-scheduled.

During scheduler simulation (AddPod and RemovePod), we add and remove
reference counts from the cycle state if they use any of these
ReadWriteOncePod PVCs.

In the Filter phase, the scheduler checks if there are any PVC reference
conflicts, and returns "Unschedulable" if there is a conflict.

This is a required feature for the ReadWriteOncePod beta. See for more context:
https://github.com/kubernetes/enhancements/tree/master/keps/sig-storage/2485-read-write-once-pod-pv-access-mode#beta
2023-01-30 10:59:22 -08:00
Sunny Song
5e2f12e943 Fix nil pointer error in nodevolumelimits csi logging 2023-01-25 09:37:46 -08:00
Patrick Ohly
bc6c7fa912 logging: fix names of keys
The stricter checking with the upcoming logcheck v0.4.1 pointed out these names
which don't comply with our recommendations in
https://github.com/kubernetes/community/blob/master/contributors/devel/sig-instrumentation/migration-to-structured-logging.md#name-arguments.
2023-01-23 14:24:29 +01:00
Kubernetes Prow Robot
7b1b8d5734
Merge pull request #114889 from sanposhiho/skip/inter-pod-affinity
feature(InterPodAffinity): return Skip in PreFilter
2023-01-18 20:36:35 -08:00
Kensei Nakada
3b20a007ed feature(InterPodAffinity): return Skip in PreFilter 2023-01-19 01:24:18 +00:00
Kubernetes Prow Robot
98da10e4f2
Merge pull request #115052 from kidddddddddddddddddddddd/fix/volume_zone
fix volume_zone, iterate all topologyLabels when check node
2023-01-18 10:54:46 -08:00
Kubernetes Prow Robot
f16e62ae0c
Merge pull request #114897 from kidddddddddddddddddddddd/volumebinding
feature(volumebinding): return Skip in PreFilter
2023-01-16 23:38:32 -08:00
kidddddddddddddddddddddd
2ba4c00b3c hasAnyNodeConstraint 2023-01-14 15:29:54 +08:00
Kubernetes Prow Robot
eabb70833a
Merge pull request #114896 from kidddddddddddddddddddddd/volume_zone
feature(volume_zone): return Skip in PreFilter
2023-01-13 23:14:13 -08:00
Kubernetes Prow Robot
3a8e2e399b
Merge pull request #114393 from danielvegamyhre/myfeature
Option to ignore existing pods' preferred inter-pod affinities if the incoming pod has no preferred inter-pod affinities
2023-01-13 17:28:15 -08:00
Daniel Vega-Myhre
41817b1888 optionally ignore preferred terms of existing pods unless incoming pod
has inter-pod affinities
2023-01-13 23:15:53 +00:00
kidddddddddddddddddddddd
733d5695f2 always run filter in test 2023-01-08 11:13:16 +08:00
kidddddddddddddddddddddd
5411c05460 save state data for reserve 2023-01-08 10:49:35 +08:00
kidddddddddddddddddddddd
0abdf6abc2 revert check in filter 2023-01-07 22:30:16 +08:00
kidddddddddddddddddddddd
059d520537 return skip 2023-01-07 21:58:54 +08:00
kidddddddddddddddddddddd
de7c8db7cb return skip 2023-01-07 21:48:30 +08:00
Kensei Nakada
570c2d7036 cleanup(nodeaffinity): remove impossible scenario from test cases 2023-01-07 08:46:35 +00:00
Kubernetes Prow Robot
c549b59983
Merge pull request #114125 from sanposhiho/skip-reimplementation
feature(scheduler): won't run Filter if PreFilter returned a Skip status
2023-01-06 02:25:59 -08:00
Kensei Nakada
e5b536755f feature(scheduler): won't run Filter if PreFilter returned a Skip status 2023-01-06 07:38:15 +00:00
Wei Huang
9b64025f36
rename 'PreemptionByKubeScheduler' to 'PreemptionByScheduler' 2023-01-05 10:31:57 -08:00
Wei Huang
91742e2393
Enhanced logic to identify eligible preemption node 2023-01-05 10:31:57 -08:00
Kubernetes Prow Robot
3a5829044c
Merge pull request #114098 from kidddddddddddddddddddddd/feat/pv_list
Optimize volumebinding by moving PV list calls to PreFilter
2022-12-22 10:11:37 -08:00
Kubernetes Prow Robot
419e0ec3d2
Merge pull request #114390 from tangwz/improve_NodeResourcesFit_replace_small_maps_with_slices
Improve performance of NodeResourcesFit scoring
2022-12-22 06:57:26 -08:00
kidddddddddddddddddddddd
27c5c0a16d pv_list to prefilter 2022-12-22 14:59:41 +08:00
Kubernetes Prow Robot
70c28f3e12
Merge pull request #114486 from kerthcet/cleanup/make-preemption-more-readable
Make handling scheduleResult more readable
2022-12-21 15:01:25 -08:00
Kante Yin
c8908716ee Make handling scheduleResult more readable
Signed-off-by: Kante Yin <kerthcet@gmail.com>
2022-12-22 01:22:34 +08:00
tangwz
a4ab559ba4 Improve performance of NodeResourcesFit scoring
Signed-off-by: tangwz <tangwz.com@gmail.com>
2022-12-21 23:23:47 +08:00
Kubernetes Prow Robot
a3ca5fd2c8
Merge pull request #114456 from kidddddddddddddddddddddd/status_with_error
return error message when calling status.Message()
2022-12-19 11:09:43 -08:00
kidddddddddddddddddddddd
e789beb213 errMsg 2022-12-19 23:52:06 +08:00
Jordan Liggitt
78cb3862f1
Fix indentation/spacing in comments to render correctly in godoc 2022-12-17 23:27:38 -05:00
Kubernetes Prow Robot
c2b5457dfa
Merge pull request #109877 from yibozhuang/local-pv-prefilter-result
scheduler volumebinding: leverage PreFilterResult for bound local PVs
2022-12-13 14:53:34 -08:00
Kubernetes Prow Robot
c80b03fee8
Merge pull request #113499 from kerthcet/cleanup/map-empty-judgement
Fix: resourceToWeightMap will never be nil here
2022-12-12 00:15:33 -08:00
Kubernetes Prow Robot
a800f1e0c0
Merge pull request #114216 from alculquicondor/avoid-serialization
Avoid serialization of maps when log level < 10
2022-12-10 07:54:24 -08:00
kidddddddddddddddddddddd
9e0a7c7ee7 add pre_filter for volume_zone 2022-12-03 02:11:04 +08:00
Aldo Culquicondor
b62541fe84
Avoid serialization of maps when log level < 10
Change-Id: If264c26ae599602d5b4919301f011c2095d706ee
2022-11-30 12:53:52 -05:00
Yibo Zhuang
380c7f248e scheduler volumebinding: leverage PreFilterResult
This change will leverage the new PreFilterResult
to reduce down the list of eligible nodes for pod
using Bound Local PVs during PreFilter stage so
that only the node(s) which local PV node affinity
matches will be cosnidered in subsequent scheduling
stages.

Today, the NodeAffinity check is done during Filter
which means all nodes will be considered even though
there may be a large number of nodes that are not
eligible due to not matching the pod's bound local
PV(s)' node affinity requirement. Here we can
reduce down the node list in PreFilter to ensure that
during Filter we are only considering the reduced
list and thus can provide a more clear message to
users when node(s) are not available for scheduling
since the list only contains relevant nodes.

If error is encountered (e.g. PV cache read error) or
if node list reduction cannot be done (e.g. pod uses
no local PVs), then we will still proceed to consider
all nodes for the rest of scheduling stages.

Signed-off-by: Yibo Zhuang <yibzhuang@gmail.com>
2022-11-17 21:37:24 -08:00
Kubernetes Prow Robot
d1c0171aed
Merge pull request #111023 from pohly/dynamic-resource-allocation
dynamic resource allocation
2022-11-11 16:21:56 -08:00
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
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
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
Abirdcfly
bf8570029e
chore(scheduler): cleanup some minor issues in testing 2022-11-03 09:07:28 +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
SataQiu
ba925a8393 scheduler: remove unused constant DefaultBindTimeoutSeconds from VolumeBinding plugin 2022-10-17 17:25:59 +08: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
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
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
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
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