Bartosz
43c5d2a419
Add PlacementGeneratePlugin interface and runner
2026-03-12 09:33:05 +00:00
Bartosz
f50ae7284a
Remove feature gate check for placement score plugin validation
2026-03-10 09:42:07 +00:00
Bartosz
db3c8f3a4b
Add PlacementScorePlugin interface and runner
2026-03-10 09:42:04 +00:00
Kubernetes Prow Robot
8275484dcf
Merge pull request #137297 from atombrella/feature/pkg_forvar_modernize
...
Remove redundant variable re-assignment in for-loops under pkg
2026-03-05 00:28:20 +05:30
Maciej Skoczeń
912bf9c4ef
Use a single RunPermitPlugins function and call AddWaitingPod outside a framework
2026-03-02 15:14:12 +00:00
Mads Jensen
f11bb48738
Remove redundant re-assignment in for-loops under pkg
...
This the forvar rule from modernize. The semantics of the for-loop
changed from Go 1.22 to make this pattern obsolete.
2026-03-02 08:47:43 +01:00
Maciej Skoczeń
6233b25907
Introduce Workload Scheduling Cycle
...
Add integration tests for gang and basic policy workload scheduling
Add more tests for cluster snapshot
Proceed to binding cycle just after pod group cycle
Enforce one scheduler name per pod group, rename workload cycle to pod group cycle
Add unit tests for pod group scheduling cycle
Run ScheduleOne tests treating pod as part of a pod group
Rename NeedsPodGroupCycle to NeedsPodGroupScheduling
Observe correct per-pod and per-podgroup metrics during pod group cycle
Rename pod group algorithm status to waiting_on_preemption
Mention forgotAllAssumedPods is a safety check
2026-02-17 09:02:32 +00:00
Antoni Zawodny
833b7205fc
Run PreBind plugins in parallel if feasible
2026-01-11 14:19:18 +01:00
Ania Borowiec
fadb40199f
Move interfaces: Handle and Plugin and related types from kubernetes/kubernetes to staging repo kube-scheduler
2025-09-02 09:42:53 +00:00
Kensei Nakada
ac9fad6030
feat: trigger PreFilterPreBind in the binding cycle
2025-07-29 19:01:02 +09:00
Ania Borowiec
aecd37e6fb
Moving Scheduler interfaces to staging: Move PodInfo and NodeInfo interfaces (together with related types) to staging repo, leaving internal implementation in kubernetes/kubernetes/pkg/scheduler
2025-07-24 12:10:58 +00:00
Kensei Nakada
ebae419337
feat: add PreBindPreFlight and implement in in-tree plugins
2025-07-05 17:14:21 -07:00
Ania Borowiec
ee8c265d35
Move Code and Status from pkg/scheduler/framework to k8s.io/kube-scheduler/framework
2025-06-30 10:06:22 +00:00
Ania Borowiec
d75af825fb
Extract interface CycleState and move is to staging repo. CycleState implementation remains in k/k/pkg/scheduler/framework
2025-05-29 16:18:36 +00:00
Kubernetes Prow Robot
8a6b916765
Merge pull request #130720 from saintube/scheduler-expose-nodeinfo-in-prefilter
...
Expose NodeInfo to PreFilter plugins
2025-04-23 13:31:29 -07:00
saintube
8dc6806d26
Expose NodeInfo to PreFilter plugins and Framework
...
Co-authored-by: Zhan Sheng <49895476+AxeZhan@users.noreply.github.com>
Co-authored-by: shenxin <rougang.hrg@alibaba-inc.com>
Signed-off-by: saintube <saintube@foxmail.com>
2025-03-21 14:55:25 +08:00
carlory
aab7a079fa
make each scheduler test independent
...
Signed-off-by: carlory <baofa.fan@daocloud.io>
2025-03-13 14:39:50 +08:00
saintube
afb4e96510
Expose NodeInfo to Score plugins
...
Co-authored-by: shenxin <rougang.hrg@alibaba-inc.com>
Signed-off-by: saintube <saintube@foxmail.com>
2025-03-04 17:57:14 +08:00
Ania Borowiec
4205f04ce3
Replace uses of reflect.DeepEqual with cmp.Diff in pkg/scheduler tests
2025-02-26 09:27:51 +00:00
googs1025
69831b0043
chore(scheduler): refactor import package ordering
2024-09-18 20:31:03 +08:00
Richa Banker
6944af22d1
Initialize scheduler metrics after metrics options are applied
2024-09-13 12:52:32 -07:00
dom4ha
e7827879db
Enable testing logger in the remaining scheduler tests.
2024-09-09 21:59:24 +00:00
Kensei Nakada
8519d3399f
chore: move the scheduler internal components out of internal dir
2024-08-25 13:10:29 +09:00
Maciej Skoczeń
33815db3c1
Move NominatedPodsForNode to scheduling queue directly
2024-08-21 07:24:52 +00:00
Kubernetes Prow Robot
ea1143efc7
Merge pull request #126022 from macsko/new_node_to_status_map_structure
...
Change structure of NodeToStatus map in scheduler
2024-08-13 21:02:55 -07:00
Maciej Skoczeń
98be7dfc5d
Change structure of NodeToStatus map in scheduler
2024-07-25 07:48:35 +00:00
Kubernetes Prow Robot
d879103c28
Merge pull request #125820 from macsko/add_separate_lock_for_pod_nominator_scheduling_queue
...
Add a separate lock for pod nominator in scheduling queue
2024-07-17 12:06:10 -07:00
Maciej Skoczeń
5def93b10a
Add a separate lock for pod nominator in scheduling queue
2024-07-17 07:58:59 +00:00
Kubernetes Prow Robot
31062790a1
Merge pull request #125855 from googs1025/refactor_scheduler_ut
...
chore: call close framework when finishing
2024-07-12 05:14:35 -07:00
googs1025
d4627f16a5
chore: call close framework when finishing
...
Signed-off-by: googs1025 <googs1025@gmail.com>
2024-07-12 18:11:04 +08:00
olderTaoist
b478621596
register unscheduable plugin when prefileter with NodeNames
2024-07-02 13:02:45 +08:00
NoicFank
31a4b13238
enhancement(scheduler): share waitingPods among profiles
2024-05-17 17:07:27 +08:00
kerthcet
84750fe52e
Revert "enhancement(scheduler): share waitingPods among profiles"
...
This reverts commit 227c1915db .
2024-03-19 22:52:59 +01:00
NoicFank
227c1915db
enhancement(scheduler): share waitingPods among profiles
2024-02-01 10:06:23 +08:00
Kubernetes Prow Robot
5b979a3a53
Merge pull request #122498 from Gekko0114/close
...
Allow framework plugins to be closed
2024-01-08 17:30:36 +01:00
moriya
288c00c0c7
Allow framework plugins to be closed
2024-01-06 10:11:19 +09:00
Kensei Nakada
09abd6be5a
address reviews
2024-01-02 02:10:41 +00:00
Kensei Nakada
5ab2317947
run all PreFilter when the preemption will happen later in the same scheduling cycle
2024-01-01 09:44:06 +00:00
AxeZhan
be48c93689
Sched framework: expose NodeInfo in all functions of PluginsRunner interface
2023-12-15 11:30:06 +08:00
caohe
1f5738df84
fix(scheduler): fix incorrect loop logic in MultiPoint to avoid a plugin being loaded multiple times
...
Signed-off-by: caohe <caohe9603@gmail.com>
2023-11-29 20:14:18 +08:00
Kubernetes Prow Robot
d84ee0ba69
Merge pull request #121632 from kerthcet/fix/runscoreplugins
...
Fix panic when process RunScorePlugins for cap out of range
2023-10-31 13:14:32 +01:00
kerthcet
b02aad42fa
Fix panic when process RunScorePlugins for cap out of range
...
Signed-off-by: kerthcet <kerthcet@gmail.com>
2023-10-31 16:02:16 +08:00
Kensei Nakada
27bb66fd7b
cleanup: rename failedPlugin to plugin in framework.Status
2023-10-25 12:03:56 +00:00
Mengjiao Liu
a7466f44e0
Change the scheduler plugins PluginFactory function to use context parameter to pass logger
...
- Migrated pkg/scheduler/framework/plugins/nodevolumelimits to use contextual logging
- Fix golangci-lint validation failed
- Check for plugins creation err
2023-09-20 17:49:54 +08:00
Stephen Kitt
9990307146
kube-scheduler: drop deprecated pointer package
...
This replaces deprecated k8s.io/utils/pointer functions with their ptr
equivalent.
Signed-off-by: Stephen Kitt <skitt@redhat.com>
2023-09-13 09:42:19 +02:00
kerthcet
ab01848134
Make sure skip score plugins alwarys returned
...
Signed-off-by: kerthcet <kerthcet@gmail.com>
2023-08-24 13:39:47 +08:00
Wei Huang
765f3916c2
Fix a bug that PostFilter plugin may not function if previous PreFilter plugins return Skip
2023-08-10 13:43:00 -07:00
kerthcet
c0eb0caf4a
Support fine-gained rescheduling in ReservePlugin
...
Signed-off-by: kerthcet <kerthcet@gmail.com>
2023-07-07 13:30:29 +08:00
kerthcet
278a8376e1
Fix: fiterror in permit plugin not handled perfectly
...
We only added failed plulgins, but actually this will not work unless
we make the status with a fitError because we only copy the failured plugins
to podInfo if it is a fitError
Signed-off-by: kerthcet <kerthcet@gmail.com>
2023-07-07 10:35:59 +08:00
Kensei Nakada
6f8d38406a
feature(scheduler): implement ClusterEventWithHint to filter out useless events
2023-06-22 13:36:19 +00:00