Commit Graph

132 Commits

Author SHA1 Message Date
Kubernetes Prow Robot
d3ece70f0b
Merge pull request #108269 from kerthcet/refactor/rename-schedulercache-to-cache
refactor: rename SchedulerCache to Cache in Scheduler
2022-02-24 14:46:13 -08:00
kerthcet
eafbaad9f7 refactor: rename SchedulerCache to Cache in Scheduler
Signed-off-by: kerthcet <kerthcet@gmail.com>
2022-02-24 09:47:21 +08:00
Alex Wang
87549203e9 add deprecated flag for flush pods to activeq interval 2022-02-16 11:05:52 +08:00
Abdullah Gharaibeh
33a04dc5f5 Added an integration test for NodeResourcesFit scoring 2021-11-30 12:13:30 -05:00
kerthcet
a6f695581b remove legacy scheduler policy config, as well as associated flags policy-config-file, policy-configmap, policy-configmap-namespace and use-legacy-policy-config
Signed-off-by: kerthcet <kerthcet@gmail.com>
2021-10-08 23:57:49 +08:00
Jerry-Ge
f1f0183d2b refactored extenders from scheduler/core to scheduler
Signed-off-by: Jerry Ge jerry.ge@arm.com
2021-07-05 15:37:51 +08:00
Jerry-Ge
570365178a merge packages of scheduler/core and scheduler
Signed-off-by: Jerry Ge <jerry.ge@arm.com>
2021-07-05 14:21:32 +08:00
Hidehito Yabuuchi
e371b27e6c Fix frameworkImpl.extenders being not set 2021-06-19 18:07:31 +09:00
Abdullah Gharaibeh
265ef1741f Move scheduler plugin set and configuration defaulting to component config 2021-06-16 10:15:29 -04:00
Wei Huang
36eaa11d50
cleanup usage of NewPodNominator
- replace NewPodNominator() with NewSafePodNominator()
- rename nominatedPodMap to nominator
2021-06-10 14:01:07 -07:00
Kubernetes Prow Robot
8955463c17
Merge pull request #102745 from ahg-g/ahg-provider
Remove SchedulerAlgorithmSource from scheduler's internal CC API
2021-06-10 07:17:39 -07:00
Kubernetes Prow Robot
521be6344e
Merge pull request #102558 from Jerry-Ge/unroll-extenders
Unroll ScheduleAlgorithm#Extenders() to Scheduler.go
2021-06-10 07:17:27 -07:00
Jerry-Ge
110c39ef60 unroll extenders
Signed-off-by: Jerry Ge <jerry.ge@arm.com>

Co-authored-by: Huang-Wei <wei.huang1@ibm.com>
2021-06-10 08:31:44 +08:00
Abdullah Gharaibeh
52f5ba3a58 Remove SchedulerAlgorithmSource from scheduler's internal CC API 2021-06-09 19:14:54 -04:00
Kubernetes Prow Robot
6cb421487a
Merge pull request #99597 from adtac/v1b2
scheduler CC: add v1beta2 API, deprecate plugins
2021-06-08 12:26:08 -07:00
Adhityaa Chandrasekar
3c8e56bef9 scheduler: graduate CC to v1beta2, deprecate plugins
Signed-off-by: Adhityaa Chandrasekar <adtac@google.com>
2021-06-07 12:42:55 +00:00
Wei Huang
8e85a2b0c2
sched: fix a bug that a preemptor pod exists as a phantom
- SafePodNominator to resolve racing issue when dealing with nominated pod
2021-06-05 11:07:29 -07:00
Kubernetes Prow Robot
d541872f9a
Merge pull request #102239 from Haleygo/clean-up-AlgorithmProvider-flag-and-pkg
clean up algorithmprovider pkg and remove scheduler deprecated algorithm-provider flag
2021-05-27 00:54:23 -07:00
Haleygo
2769e99dba remove scheduler deprecated algorithm-provider flag and clean up algorithmprovider pkg 2021-05-26 13:19:44 +08:00
Wei Huang
1b3a124ba6
Scheduler now registers event handlers dynamically
- move clusterEventMap to Configurator
- dynamic event handlers registration for core API resources
- dynamic event handlers registration for custom resources
2021-05-21 13:47:06 -07:00
Wei Huang
e7f67b1a63
Surface kube config in scheduler framework handle 2021-03-30 11:54:59 -07:00
Kubernetes Prow Robot
d256468a09
Merge pull request #99644 from gavinfish/sched-param
Scheduler: make parallelism as part of schedulerOptions
2021-03-09 11:05:42 -08:00
Kubernetes Prow Robot
17395678c4
Merge pull request #99671 from tanjing2020/scheduler-policy
Log invalid scheduler-policy input instead of panic
2021-03-09 09:19:26 -08:00
drfish
c2ceb21a3e Make parallelism as part of schedulerOptions 2021-03-09 23:25:55 +08:00
tanjing2020
2d79ebbe58 Log invalid scheduler-policy input instead of panic 2021-03-09 15:21:46 +08:00
Abdullah Gharaibeh
c7fef196b6 Implements pod affinity NamespaceSelector feature 2021-03-04 07:30:24 -05:00
Wei Huang
f322019d7a
Store a cluster event to plugin map in SchedulerQueue 2021-03-03 07:20:07 -08:00
drfish
bc2df9de72 Use PodInfo instead of Pod for nominatedPods and QueuedPodInfo 2021-02-22 22:00:23 +08:00
drfish
74315f9c56 Change config.Plugins from pointers to objects 2021-02-10 23:45:59 +08:00
Dave Chen
7315c1f6dd Show the details on the failure of preemption
Since the filter status is missed for the phase of preemption, there
will be no way to tell why the preemption failed for some reasons, and
those reasons could be different with the status from the main scheduling
process (the first failed plugin will hide other failures in the chain).

This change provides verbose information based on the node status generated
during pod preemption, those information helps us to diagnose the issue which
is happened during pod preemption.

Signed-off-by: Dave Chen <dave.chen@arm.com>
2021-01-15 23:20:17 +08:00
Kubernetes Prow Robot
974404757d
Merge pull request #96929 from gavinfish/sched-plugin-core
Scheduler: Move PodPassesFiltersOnNode out of core to avoid plugin dependency
2021-01-05 11:46:13 -08:00
Alex Dudko
b11e4f2484 Migrate scheduler.go, factory.go to structured logging 2020-12-24 18:50:30 -08:00
drfish
070773c399 Remove scheduler plugins package's dependency from core package 2020-12-20 00:18:40 +08:00
chenyw1990
a8add50ab6 don't add pod to podQueue when the NodeName of pod is not empty 2020-11-19 08:01:59 +08:00
Kubernetes Prow Robot
ae95984e88
Merge pull request #96426 from damemi/print-scheduler-config
Log defaulted kube-scheduler component config at startup
2020-11-12 16:03:01 -08:00
Wei Huang
47a7c374c6
Fix a bug that DefaultPreemption plugin is disabled when using scheduler policy 2020-11-10 17:48:32 -08:00
Aldo Culquicondor
d6ef6d6e43 Capture defaulted plugin configs from framework
Some plugin configs are not produced until the framework is instantiated. Add a callback to capture them inside the framework constructor.

Change-Id: Id3f709b6461ccd0eafec7d21412cda093d9c4645
2020-11-10 19:41:18 -05:00
tangwz
3341023664 scheduler: remove FrameworkFactory. 2020-11-07 00:07:36 +08:00
tangwz
5f3efa671d scheduler: make Profile an interface. 2020-10-27 09:13:04 +08:00
Ali
09b2e8f638 Move scheduler interface to pkg/scheduler/framework 2020-10-13 13:13:27 +11:00
Aldo Culquicondor
a0b72dbef9 Move predicates and priorities configuration creation to Policy mapping
For separation of concerns. Also make the producers receive the
existing configuration so they can take decisions based on them.

Change-Id: Id5db5588aabb90e7b8f087bd3f3c967e86dc4acc
2020-10-01 15:04:24 -04:00
Wei Huang
42cfda2f94
Remove pvcLister from genericScheduler
PVCLister can be fetched from sharedInformerFactory.
2020-09-11 13:54:01 -07:00
Wei Huang
eb3d2de543
Remove field disablePreemption from internal scheduler codebase 2020-09-10 13:06:42 -07:00
Wei Huang
d8def59871
Initialize scheduler's podInformer in sharedInformerFactory
Scheduler's specific podInfomer is now initialized inside the sahredInformerFactory.
2020-09-08 12:57:17 -07:00
Wei Huang
058e3d4258
Move Preempt() and its related functions to defaultpreemption package
Refactor genericScheduler and signature of preemption funcs
  - remove podNominator from genericScheduler
  - simplify signature of preemption functions

Make Preempt() private
2020-06-25 12:33:51 -07:00
Ali Farah
a22e115a0e Split scheduler framework implementation into new runtime package 2020-06-22 00:23:43 +10:00
Wei Huang
196056d7fe
Introduce a defaultpreemption PostFilter plugin
- Add a defaultpreemption PostFilter plugin
- Make g.Preempt() stateless
    - make g.Preempt() stateless
    - make g.getLowerPriorityNominatedPods() stateless
    - make g.processPreemptionWithExtenders() stateless
2020-06-19 09:13:55 -07:00
Kubernetes Prow Robot
6bb7e8ab83
Merge pull request #92010 from Huang-Wei/sched-fwk-expose-EventRecorder
Expose EventRecorder to scheduler FrameworkHandle
2020-06-10 22:44:12 -07:00
Wei Huang
7dfabd7af6
Expose EventRecorder to scheduler FrameworkHandle 2020-06-10 18:27:21 -07:00
tanjunchen
7fe9f3451f Migrate to log calls to klog.ErroS for pkg/scheduler 2020-06-09 18:39:58 -07:00