Commit Graph

1044 Commits

Author SHA1 Message Date
Kubernetes Prow Robot
e566bd7769
Merge pull request #121952 from sanposhiho/optimize-csi
add(nodevolumelimits): return UnschedulableAndUnresolvable when PVC is not found
2024-02-06 07:16:28 -08:00
Toru Komatsu
3a4c35cc89
Comment on QHint for CSILimit when CSINodes are added (#122758)
Signed-off-by: utam0k <k0ma@utam0k.jp>
2024-02-02 22:16:20 -08:00
Kubernetes Prow Robot
278ea691e0
Merge pull request #122946 from NoicFank/enhance-sheduler-waiting-pods
enhancement(scheduler): share waitingPods among profiles
2024-02-02 02:11:32 -08:00
NoicFank
227c1915db enhancement(scheduler): share waitingPods among profiles 2024-02-01 10:06:23 +08:00
Kubernetes Prow Robot
c606448922
Merge pull request #122996 from Huang-Wei/cleanup-dra-postfilter
DRA: always returns Unschedulable in PostFilter
2024-01-27 08:19:44 -08:00
Kubernetes Prow Robot
02aaad0de9
Merge pull request #121876 from pohly/dra-reserve-during-pod-binding
dra: reserve + publish during pod binding
2024-01-26 19:58:01 +01:00
Wei Huang
ceabc4aba8
DRA: always returns Unschedulable in PostFilter 2024-01-26 09:44:00 -08:00
Patrick Ohly
6cf4203751 dra scheduler: reformat code
By continuing with the next item in the if clause, the else is no longer needed
and indention can be reduced.
2024-01-26 10:58:03 +01:00
Patrick Ohly
a809a6353b scheduler: publish PodSchedulingContext during PreBind
Blocking API calls during a scheduling cycle like the DRA plugin is doing slow
down overall scheduling, i.e. also affecting pods which don't use DRA.

It is easy to move the blocking calls into a goroutine while the scheduling
cycle ends with "pod unschedulable". The hard part is handling an error when
those API calls then fail in the background. There is a solution for that
(see https://github.com/kubernetes/kubernetes/pull/120963), but it's complex.

Instead, publishing the modified PodSchedulingContext can also be done
later. In the more common case of a pod which is ready for binding except for
its claims, that'll be in PreBind, which runs in a separate goroutine already.

In the less common case that a pod cannot be scheduled, that'll be in
Unreserve which is still blocking.
2024-01-26 10:58:03 +01:00
Patrick Ohly
5d1509126f dra: patch ReservedFor during PreBind
This moves adding a pod to ReservedFor out of the main scheduling cycle into
PreBind. There it is done concurrently in different goroutines. For claims
which were specifically allocated for a pod (the most common case), that
usually makes no difference because the claim is already reserved.

It starts to matter when that pod then cannot be scheduled for other reasons,
because then the claim gets unreserved to allow deallocating it. It also
matters for claims that are created separately and then get used multiple times
by different pods.

Because multiple pods might get added to the same claim rapidly independently
from each other, it makes sense to do all claim status updates via patching:
then it is no longer necessary to have an up-to-date copy of the claim because
the patch operation will succeed if (and only if) the patched claim is valid.

Server-side-apply cannot be used for this because a client always has to send
the full list of all entries that it wants to be set, i.e. it cannot add one
entry unless it knows the full list.
2024-01-26 10:58:03 +01:00
Kubernetes Prow Robot
6c493a1ef9
Merge pull request #122969 from kerthcet/fix/claim
[DRA] Fix indexing the error value in unavailableClaim
2024-01-25 17:34:11 +01:00
kerthcet
7801173f6e get the error claim in dra
Signed-off-by: kerthcet <kerthcet@gmail.com>
2024-01-25 23:22:50 +08:00
kerthcet
8371e4cf93 quick break when met
Signed-off-by: kerthcet <kerthcet@gmail.com>
2024-01-23 19:40:15 +08:00
Kubernetes Prow Robot
c6887b1c00
Merge pull request #117803 from sourcelliu/preFilterState
Optimize the performance of the Clone method of preFilterState
2024-01-19 10:57:20 +01:00
Kubernetes Prow Robot
b529e6ff1c
Merge pull request #122622 from nayihz/cleanup_comment
swap originalPod and modifiedPod to match the comments
2024-01-06 14:20:50 +01:00
nayihz
edff1c3b2f swap originalPod and modifiedPod to match the comments. 2024-01-06 19:07:18 +08:00
Kensei Nakada
bf1b3a161b add(nodevolumelimits): return UnschedulableAndUnresolvable when PVC is not found 2023-12-30 23:00:56 +00:00
Kubernetes Prow Robot
afa3f114d6
Merge pull request #117024 from sanposhiho/nodeaffinity-pre-score-skip
feature(NodeAffinity): return Skip in PreScore when nothing to do in Score
2023-12-27 16:53:51 +01:00
Patrick Ohly
b0d4a8cd6d dra scheduler: fix incorrect tracking of claim candidates for reallocation
When dealing with unschedulable pods, the intent was to deallocate only claims
which are allocated and use delayed allocation. That if check wasn't handled
correctly, causing also claims with immediate allocation to be considered as
candidates.

Found during code reading, probably has never occurred in practice yet.
2023-12-20 09:04:01 +01:00
Kubernetes Prow Robot
d74705119d
Merge pull request #122334 from carlory/fix-118893-4
NodeUnschedulable: scheduler queueing hints
2023-12-18 18:13:52 +01:00
Kubernetes Prow Robot
9dc0dbe878
Merge pull request #122195 from nayihz/feat_queuinghints
podtopologyspread: scheduler queueing hints
2023-12-18 16:58:12 +01:00
Kensei Nakada
1d0453127d feature(NodeAffinity): return Skip in PreScore when nothing to do in Score 2023-12-18 12:00:10 +00:00
nayihz
09a80df1d1 podtopologyspread: scheduler queueing hints 2023-12-17 14:30:53 +08:00
carlory
d36a7089cd scheduler/NodeUnschedulable: reduce pod scheduling latency
Co-authored-by: wackxu <xushiwei5@huawei.com>
Co-authored-by: Kensei Nakada <handbomusic@gmail.com>
2023-12-16 20:50:11 +08:00
Kubernetes Prow Robot
e04316a68a
Merge pull request #121954 from AxeZhan/nodeInfo
Sched framework: expose NodeInfo in all functions of PluginsRunner interface
2023-12-15 18:33:00 +01:00
Kubernetes Prow Robot
b1cf91b300
Merge pull request #122309 from carlory/fix-118893-1
nodeaffinity: scheduler queueing hints
2023-12-15 17:17:33 +01:00
Kubernetes Prow Robot
195bb67d36
Merge pull request #119177 from carlory/fix-118893-3
noderesourcefit: scheduler queueing hints
2023-12-15 17:17:19 +01:00
carlory
4d7c5d9257 nodeaffinity: scheduler queueing hints 2023-12-15 13:43:22 +08:00
AxeZhan
be48c93689 Sched framework: expose NodeInfo in all functions of PluginsRunner interface 2023-12-15 11:30:06 +08:00
Kubernetes Prow Robot
33beb81d8f
Merge pull request #122285 from sanposhiho/remove-qhint
Revert "scheduler/nodeaffinity: reduce pod scheduling latency"
2023-12-14 14:12:39 +01:00
Kubernetes Prow Robot
68ef2423e8
Merge pull request #122288 from sanposhiho/revert-qhint-nodeunschedulable
Revert "scheduler/NodeUnschedulable: reduce pod scheduling latency"
2023-12-14 10:49:19 +01:00
Kubernetes Prow Robot
7e4751964e
Merge pull request #122080 from SataQiu/clean-test-20231128
clean up unused parameters for volume zone unit test
2023-12-14 06:17:04 +01:00
Kubernetes Prow Robot
b155d51f97
Merge pull request #122041 from uniemimu/cleanup
remove unnecessary fmt.Sprintf call
2023-12-14 05:10:11 +01:00
Kubernetes Prow Robot
de2f38f8a8
Merge pull request #122014 from sanposhiho/owner
put storage related plugins under SIG-Storage reviewing
2023-12-14 05:09:43 +01:00
Kubernetes Prow Robot
f4240cbf92
Merge pull request #121953 from utam0k/not-found-pvc-lister
return not-found errors properly from fake listers
2023-12-14 03:53:45 +01:00
Kubernetes Prow Robot
e13f098c8e
Merge pull request #121387 from KunWuLuan/SidercarContainerChecking
move SidecarContainers featureGate checking
2023-12-13 21:26:09 +01:00
Kubernetes Prow Robot
74afd1a06f
Merge pull request #119539 from HirazawaUi/remove-not-register-event-code
remove unregistered event code
2023-12-13 21:25:33 +01:00
Kensei Nakada
7aeecc42a4 Revert "scheduler/NodeUnschedulable: reduce pod scheduling latency"
This reverts commit 28dbe8a34d.
2023-12-13 03:18:02 +00:00
Kensei Nakada
329b873e4e Revert "scheduler/nodeaffinity: reduce pod scheduling latency"
This reverts commit 1d88bf9789.
2023-12-13 02:57:45 +00:00
carlory
9e1adced5d noderesourcefit: scheduler queueing hints
Co-authored-by: Kensei Nakada <handbomusic@gmail.com>
2023-12-13 10:02:52 +08:00
AxeZhan
210ed2ebbd add preScore for volumeBinding 2023-12-06 15:35:35 +08:00
SataQiu
c86189d1de clean up unused parameters for volume zone unit test 2023-11-28 11:37:41 +08:00
Ukri Niemimuukko
02b0dc98dd remove unnecessary fmt.Sprintf call
default_preemtion.go has an unnecessary fmt.Sprintf call which
triggers common code checkers. This removes it.

Signed-off-by: Ukri Niemimuukko <ukri.niemimuukko@intel.com>
2023-11-25 21:36:04 +02:00
Kensei Nakada
03b8241fce put storage related plugins under SIG-Storage reviewing 2023-11-23 08:35:49 +00:00
utam0k
aba817ac1d
return not-found errors properly from fake listeres
Signed-off-by: utam0k <k0ma@utam0k.jp>
2023-11-20 19:14:08 +09:00
lianghao208
34e620d18c Support score extension function in preemption. 2023-11-15 15:28:20 +08:00
kunwuluan
a00a610d15
move SidecarContainers featureGate checking
to PreFilter

Signed-off-by: KunWuLuan <kunwuluan@gmail.com>
2023-11-06 10:46:52 +08:00
kerthcet
f77a4543d1 Unregister events in schedulingGates plugin
Signed-off-by: kerthcet <kerthcet@gmail.com>
2023-11-06 10:01:13 +08:00
kerthcet
5bf63036c7 Make EnablePodSchedulingReadiness public
Signed-off-by: kerthcet <kerthcet@gmail.com>
2023-11-03 11:44:56 +08:00
Kubernetes Prow Robot
fd5c406112
Merge pull request #120933 from mengjiao-liu/contextual-logging-scheduler-remaining-part
kube-scheduler: convert the remaining part to use contextual logging
2023-10-27 10:30:58 +02:00