Jun Gong
706e90a033
Skip scheduling the pod if it has been assumed and the pod updates could be skipped.
2019-12-31 14:21:41 +08:00
Abdullah Gharaibeh
fe7de96ebe
cleanup scheduler's in-tree plugins registry naming
2019-12-24 15:56:36 -05:00
sunxiaofei03
70b80ae28a
Deprecate scheduling_duration_seconds Summary metric
2019-12-24 19:17:29 +08:00
Kubernetes Prow Robot
f4caa62593
Merge pull request #85590 from yuzhiquan/master
...
handle registry merge error
2019-12-04 08:50:57 -08:00
Dc.Hannibal
9a9db00451
handle registry merge error
...
Handle registry merge error.
Add test case
Add a test case in TestSchedulerCreation
Add test case comment
Add test case comment, and modify error msg.
gofmt
gofmt import order
replace NewDefaultRegistry with a fake registry
update comment
rename framework plugins nodeaffinity import
remove nodeaffinity plugin import, get fake registry name from default registry randomly
Add a space
Add a space after //
update comment, trans FrameWork to Framework
2019-12-04 09:21:18 +08:00
Abdullah Gharaibeh
f388534082
make scheduling queue start before the scheduler starts and stops after the scheduler stops
2019-12-02 14:35:09 -05:00
Kubernetes Prow Robot
9b75e36436
Merge pull request #85294 from ahg-g/ahg-15k
...
Rename PluginConfigArgs to AlgorithmConfigArgs
2019-11-14 11:20:11 -08:00
Kubernetes Prow Robot
78d2e52dee
Merge pull request #84859 from denkensk/move-volumebind-behind-permit
...
Move pod bindVolumes behind RunPermitPlugins
2019-11-14 10:05:48 -08:00
Abdullah Gharaibeh
05606bb6e4
rename PluginConfigArgs to AlgorithmConfigArgs
2019-11-14 11:30:59 -05:00
Kubernetes Prow Robot
5e30d32d2c
Merge pull request #83394 from bertinatto/convert_pv_no_affinity
...
Convert existing PVs to use volume topology in VolumeBinderPredicate
2019-11-13 21:45:56 -08:00
Kubernetes Prow Robot
fa1ca34550
Merge pull request #85236 from liu-cong/metrics-bucket
...
Update bucket for scheduler framework latency histograms.
2019-11-13 17:29:17 -08:00
Cong Liu
8995c1e030
Update bucket for scheduler framework latency histograms.
2019-11-13 16:35:59 -05:00
Kubernetes Prow Robot
7d1580270a
Merge pull request #85151 from hypnoglow/scheduler-default-algo-source
...
scheduler: make algorithm source an option
2019-11-13 13:04:09 -08:00
Kubernetes Prow Robot
e0c483b889
Merge pull request #85150 from ahg-g/ahg-informer
...
Pass InformerFactory/SharedLister instead of individual informers/listers in scheduler config logic
2019-11-13 09:28:23 -08:00
Fabio Bertinatto
bbfc6ef450
Convert volume binder to use CSINode GA
2019-11-13 14:01:01 +01:00
Fabio Bertinatto
7cba40fb09
Use CSI translation lib in VolumeBinderPredicate
2019-11-13 14:01:01 +01:00
Igor Zibarev
6350095d3c
scheduler: make algorithm source an option
...
Changes scheduler.New so that algorithm source is moved from the
parameter to an option. The default algorithm source is source with the
DefaultProvider.
2019-11-13 10:22:29 +03:00
Abdullah Gharaibeh
acc66ede1a
Pass InformerFactory instead of indivisual informers in scheduler configuration logic
2019-11-12 19:38:27 -05:00
Kubernetes Prow Robot
ce11622bb6
Merge pull request #84522 from liu-cong/plugin
...
Add scheduler plugin execution duration metric.
2019-11-12 13:50:11 -08:00
Kubernetes Prow Robot
c580a12c8e
Merge pull request #83568 from bertinatto/volume_limits_ga
...
Promote volume limits to GA
2019-11-12 11:50:22 -08:00
Cong Liu
af6a8160c3
Add scheduler plugin execution duration metric.
...
Address comments
Sample metrics
Use rand.Intn and some cleanup
2019-11-12 13:00:20 -05:00
Fabio Bertinatto
a59abc3cc3
Convert scheduler to use CSINode GA
2019-11-12 09:43:54 +01:00
Ahmad Diaa
7156d4532e
remove factory.Config struct and NewFromConfig
2019-11-11 19:27:53 +01:00
Ahmad Diaa
7b8e5fb4f5
make Configurator.Create return a Scheduler
2019-11-11 19:27:53 +01:00
Alex Wang
c9fda7aac0
move bindVolumes behind RunPermitPlugins
2019-11-11 11:30:01 +08:00
Kubernetes Prow Robot
d22e04c181
Merge pull request #84337 from hex108/cancel_context
...
Cancel context when RunPermitPlugins finishes
2019-11-07 09:04:10 -08:00
Wei Huang
c649666b4a
manual API changes and code refactoring
...
- add Policy API to pkg/scheduler/apis/config and staging/src/k8s.io/kube-scheduler/config/v1
- dual-register Policy as apiGroup "v1" and "kubescheduler.config.k8s.io
- move/merge pkg/scheduler/api to pkg/scheduler/apis/config/...
- alias schedulerapi to pkg/scheduler/apis/config
- alias legacyapi to pkg/scheduler/api
- eliminate latest.Codec; use scheme.Codecs instead
- unit tests to verify Policy YAML with version "v1" or "kubescheduler.config.k8s.io/v1" can be loaded properly
- update api/api-rules/violation_exceptions.list
2019-11-01 14:24:36 -07:00
Jun Gong
81b705960f
Cancel context to make sure all plugins are cancelled when each schedule finishes
2019-10-29 22:37:59 +08:00
Cong Liu
571cea0519
Convert NodeLabelPresence custom predicate to filter plugin.
2019-10-25 19:31:17 -04:00
Abdullah Gharaibeh
8ec56aeafb
Change all scheduler's Node and Pod list/lookups to be from the snapshot rather than the cache.
2019-10-25 14:24:55 -04:00
Jordan Liggitt
0e2f2dde4d
Feature-gate CSINode and CSIDriver informer starts
2019-10-24 17:44:25 -04:00
Kubernetes Prow Robot
09a251ce92
Merge pull request #84274 from liggitt/beta-gate-pdb-informers
...
Feature-gate PDB informer starts
2019-10-24 11:56:34 -07:00
Jordan Liggitt
feac7a40f5
Feature-gate PDB informer starts
2019-10-24 01:17:39 -04:00
draveness
76a42fb29b
feat: remove WaitForCacheSync from scheduler factory
2019-10-24 10:19:35 +08:00
Kubernetes Prow Robot
4f63f61c36
Merge pull request #84193 from ahg-g/ahg-list
...
Separate scheduler listers into their own package
2019-10-23 12:51:30 -07:00
Abdullah Gharaibeh
d393804237
separate listers into their own package
2019-10-22 18:11:02 -04:00
Guoliang Wang
08f7b22025
Add a metric to track number of scheduler binding goroutines
2019-10-21 16:38:12 +08:00
Shintaro Murakami
bf256bcb00
Use frameworkHandle to get listers
2019-10-19 01:29:05 +09:00
draveness
47a6c5b693
feat(scheduler): use context in the scheduler package
...
+ Use context instead of stopCh
+ Add context to the scheduling framework interface
2019-10-17 09:03:55 +08:00
Ahmad Diaa
4448a1cea9
move factory package to scheduler
2019-10-12 23:03:07 +02:00
Ahmad Diaa
6bbc607d72
move PodPreemptor to scheduler
2019-10-11 22:57:39 +02:00
Kubernetes Prow Robot
54f089fa08
Merge pull request #83603 from Tabrizian/master
...
feat: change the `pod_preemption_victims` to Histogram
2019-10-11 10:53:43 -07:00
draveness
ee4dec65b5
feat(scheduler): expose SharedInformerFactory to the framework handle
2019-10-11 10:23:21 +08:00
Kubernetes Prow Robot
a5e6ac0a95
Merge pull request #83694 from ahg-g/ahg-adv-config
...
[migration phase 1] Make scheduler cache, volume binder and listers available when registering default plugins
2019-10-10 19:00:21 -07:00
Cong Liu
085852160a
Add per-pod metrics for scheduler.
2019-10-10 16:58:21 -04:00
Abdullah Gharaibeh
456df97745
made scheduler cache and volume binder available when instantiating factories for default plugins
2019-10-10 16:21:29 -04:00
Iman Tabrizian
451a535401
feat: feat: change the pod_preemption_victims
to Histogram
2019-10-09 18:28:32 -04:00
draveness
9646afb1f5
feat: add pod initial/max backoff duration to config API
2019-10-09 19:48:28 +08:00
Kubernetes Prow Robot
1501de6a56
Merge pull request #78461 from mysunshine92/correct-return-information-scheduler
...
correct the return information in scheduler.go
2019-10-08 09:37:13 -07:00
draveness
c73ff9749b
feat(scheduler): rename PluginContext to CycleState
2019-10-04 17:30:36 +08:00
Kubernetes Prow Robot
0a17315e18
Merge pull request #83418 from ahg-g/ahg-first-priority
...
Refactor scheduler.New so that all framework-related parameters are options
2019-10-03 10:00:11 -07:00
Abdullah Gharaibeh
30e7016ccf
Refactor scheduler.New so that all framework-related parameters are passed as options
2019-10-03 11:39:59 -04:00
Ahmad Diaa
6c75e1baa2
move PodConditionUpdater to scheduler
2019-10-02 23:29:49 +02:00
Ahmad Diaa
bf6a70a1ce
use scheduler.Option in initTestSchedulerWithOptions
2019-09-21 00:06:42 +02:00
Kubernetes Prow Robot
82f5531df3
Merge pull request #82119 from wgliang/fixbug/fix-scheudle-function-context
...
Take the context as the first argument of Schedule
2019-09-12 11:46:28 -07:00
Abdullah Gharaibeh
54ac023a53
Scheduler PreBind plugins are currently allowed to return Unschedulable status, which should not according to the KEP and comments.
2019-09-11 14:03:18 -04:00
Guoliang Wang
d84a75c140
Fix filter plugins are not been called during preemption
2019-09-06 09:59:01 +08:00
Guoliang Wang
008f4e2ddc
Take the context as the first argument of Schedule
2019-08-29 17:47:49 +08:00
Aldo Culquicondor
3c1f8a8c4e
[Framework] Add UnschedulableAndUnresolvable status code
...
The status can be used by (Pre)Filter plugins to indicate that
preemption wouldn't change the decision of the filter.
Signed-off-by: Aldo Culquicondor <acondor@google.com>
2019-08-28 10:10:47 -04:00
draveness
af2e0428f6
feat: use PreBind instead of Prebind in the scheduling framework
2019-08-23 02:09:19 +08:00
draveness
03f0934c80
feat: use PostBind instead of Postbind in the scheduling framework
2019-08-23 02:09:12 +08:00
Ahmad Diaa
61ab77ef7a
use factory.Config fields directly in scheduler struct
2019-08-16 15:21:28 +02:00
Kubernetes Prow Robot
2ad2795136
Merge pull request #79641 from yqwang-ms/yqwang/fix-ds-crash
...
Fix default scheduler crash if scheduler extender filter returns a not found node
2019-08-14 02:08:37 -07:00
Yuqi Wang
5927ec4f8b
Fix default scheduler crash if scheduler extender filter returns a not found node
2019-08-14 10:38:42 +08:00
Kubernetes Prow Robot
f3c94c9c42
Merge pull request #81151 from mrkm4ntr/remove-node-lister
...
Remove algorithm.NodeLister from scheduler interface
2019-08-13 12:29:55 -07:00
Shintaro Murakami
11f043c784
Remove algorithm.NodeLister from scheduler interface
...
Will fixup
2019-08-13 10:30:30 +09:00
Kubernetes Prow Robot
3f6f3fc3f9
Merge pull request #80416 from mrkm4ntr/metrics-framework-returns-unschedulable
...
Record metrics when framework returns unschedulable error
2019-08-09 03:01:25 -07:00
Kubernetes Prow Robot
2bea7a371b
Merge pull request #80811 from liu-cong/loglevel
...
Lower verbosity level for some useful scheduler logs; Also add node resource info when pod is scheduled on node.
2019-08-08 17:57:38 -07:00
Cong Liu
df0ade56c4
Lower verbosity level for some useful scheduler logs; Also add node resource info when pod is scheduled on node.
2019-08-07 16:20:40 -04:00
Kubernetes Prow Robot
1a01d10f5f
Merge pull request #80590 from alculquicondor/refactor/configurator-pod
...
Remove Configurator interface
2019-08-06 21:05:31 -07:00
Aldo Culquicondor
d935b1054c
Remove Configurator interface
...
The Configurator has been used as a holder for listers that tests need,
which is not its purpose. By making the tests obtain listers from more
appropriate places, such as informers, there is no need for various
accessors to the Configurator.
Also, FakeConfigurator is not being used anymore, so there's no need for
an interface instead of a plain pointer.
Signed-off-by: Aldo Culquicondor <acondor@google.com>
2019-08-01 08:36:38 -04:00
Yecheng Fu
00afede30d
Log an error when kube-scheduler fails to update the condition of the pod.
2019-07-30 10:05:20 +08:00
Jun Gong
df14adf474
Send a reject message to permit plugin when preempting a WaitingPod
2019-07-23 10:23:54 +08:00
Shintaro Murakami
169537499c
Record metrics when framework returns unschedulable error
2019-07-22 16:01:22 +09:00
Chun Chen
1f3bc52eab
Calling Unreserve plugin before recordSchedulingFailure in case of binding failure
...
Calling recordSchedulingFailure puts the pod back to scheduling queue in another
goroutine so pod may get a chance to be bond again before unreseve plugin cleaning
state about it.
2019-07-19 10:55:06 +08:00
Chun Chen
e04f03d3cb
Fix flaky test TestBindPlugin
2019-07-15 23:36:06 +08:00
Chun Chen
3bb1a081ab
Revert "Revert "Add Bind extension point of the scheduling framework""
...
This reverts commit b8950dab50
.
2019-07-15 23:36:02 +08:00
Yassine TIJANI
08522f8e5a
move scheduler to use v1beta1.events
...
Signed-off-by: Yassine TIJANI <ytijani@vmware.com>
2019-07-12 11:39:01 +02:00
danielqsj
d4ea78ea39
call unreserve plugin before record event
2019-07-03 11:34:52 +08:00
Fabio Bertinatto
00b0ab86af
Update scheduler to use volume limits from CSINode
2019-06-25 16:30:54 +02:00
draveness
ca6003bc75
feat: cleanup PodPriority features gate
2019-06-23 11:57:24 +08:00
Abdullah Gharaibeh
a61a437ef2
prefilter extension point implementation.
2019-06-10 17:01:50 -04:00
yameiwang
7a380ebce9
correct the return information in scheduler.go
2019-05-29 18:41:18 +08:00
Guoliang Wang
20f9c9940e
Add Post-bind extension point to the scheduling framework
2019-05-19 18:12:16 +08:00
JieJhih Jhang
2cd5fc54a1
add scheduling framework configuration
...
update bazel build
fix get plugin config method
initialize only needed plugins
fix unit test
fix import duplicate package
update bazel
add docstrings
add weight field to plugin
add plugin to v1alpha1
add plugins at appropriate extension points
remove todo statement
fix import package file path
set plugin json schema
add plugin unit test to option
initial plugin in test integration
initialize only needed plugins
update bazel
rename func
change plugins needed logic
remove v1 alias
change the comment
fix alias shorter
remove blank line
change docstrings
fix map bool to struct
add some docstrings
add unreserve plugin
fix docstrings
move variable inside the for loop
make if else statement cleaner
remove plugin config from reserve plugin unit test
add plugin config and reduce unnecessary options for unit test
update bazel
fix race condition
fix permit plugin integration
change plugins to be pointer
change weight to int32
fix package alias
initial queue sort plugin
rename unreserve plugin
redesign plugin struct
update docstrings
check queue sort plugin amount
fix error message
fix condition
change plugin struct
add disabled plugin for unit test
fix docstrings
handle nil plugin set
2019-05-18 06:30:28 +08:00
Abdullah Gharaibeh
98de316436
Implement the permit extension point in scheduler.
2019-05-10 12:42:04 -04:00
danielqsj
997648a923
Add Un-reserve extension point for the scheduling framework
2019-05-10 13:19:22 +08:00
Han Kang
51992d61a0
Revert "Add Un-reserve extension point for the scheduling framework"
...
This reverts commit 8b5182581a
.
2019-05-07 21:17:29 -07:00
danielqsj
8b5182581a
Add Un-reserve extension point for the scheduling framework
2019-05-07 14:51:58 +08:00
Bobby (Babak) Salamat
77824f5135
Change scheduler constructors to receive a plugin registry.
2019-04-29 16:40:56 -07:00
Bobby (Babak) Salamat
404dc1ed79
Update scheduler framework plugins to align with the latest changes to the framework design
2019-04-29 16:40:56 -07:00
caiweidong
4c12c76a90
clean up unused code
2019-04-10 19:12:40 +08:00
shinytang6
86515d8b9e
scheduler: handle missing err
2019-03-29 19:20:15 +08:00
Wei Huang
6897fda878
scheduler: correct dated comments on pod preemption
...
- correct wordings related with annotations - which hasn't been used since alpha version
2019-03-26 12:10:46 -07:00
Wei Huang
49346c1e04
shorten scheduler package alias for better readability
...
- schedulerinternalcache -> internalcache
2019-03-21 18:14:19 -07:00
Kubernetes Prow Robot
9b8c58644a
Merge pull request #74418 from danielqsj/duration
...
convert latency/latencies in metrics name to duration
2019-03-01 17:58:12 -08:00
danielqsj
f7b437cae0
convert latency in mertics name to duration
2019-02-22 21:40:13 +08:00
wangqingcan
ea9e1a4118
not updae timestamp for each scheduling attempt
2019-02-22 09:46:18 +08:00
Mayank Kumar
e0a7d96632
Move informer event handlers to Scheduler
2019-01-29 17:53:20 -08:00
Kubernetes Prow Robot
b91cbf7b4e
Merge pull request #72332 from danielqsj/ks
...
Change scheduler metrics to conform metrics guidelines
2019-01-14 22:05:52 -08:00