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