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
Abdullah Gharaibeh
46f3e4dfdd
Define in-tree scheduler plugin names in separate pkg to break a cyclic depednecy when moving plugin defaulting to CC
2021-06-09 15:36:09 -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
Kubernetes Prow Robot
2e6e8857d1
Merge pull request #102518 from chendave/cleanup_constat
...
Cleanup redundant failure reason in InterPodAffinity plugin
2021-06-02 09:46:34 -07:00
Kubernetes Prow Robot
a9725892b7
Merge pull request #102485 from alculquicondor/cleanup_interface
...
Cleanup Framework interface
2021-06-01 23:12:32 -07:00
Dave Chen
b049e1b9ab
Cleanup redundant failure reason in InterPodAffinity plugin
...
Both `ErrReasonAffinityRulesNotMatch` and `ErrReasonAntiAffinityRulesNotMatch` are
more precise than `ErrReasonAffinityNotMatch`.
Signed-off-by: Dave Chen <dave.chen@arm.com>
2021-06-02 11:52:55 +08:00
Aldo Culquicondor
673352dbd2
Cleanup Framework interface
...
remove repeated methods
2021-06-01 20:43:32 +00:00
Abdullah Gharaibeh
4567a43101
Return UnschedulableAndUnresolvable when looking up volume-related resources returns NotFound error
2021-06-01 09:19:04 -04:00
Kubernetes Prow Robot
ae1f28d7b0
Merge pull request #102306 from ahg-g/ahg-vol-restrictions
...
Return UnschedulableAndUnresolvable instead of Error when failing to lookup volume-related resources
2021-05-27 20:48:25 -07:00
Kubernetes Prow Robot
2da8d1c18f
Merge pull request #102234 from sanposhiho/scheduler/add/interface-check-on-nodeaffinity
...
scheduler/add: interface check on nodeaffinity
2021-05-26 03:17:32 -07:00
Kubernetes Prow Robot
aa0017ad13
Merge pull request #102236 from ahg-g/ahg-spread
...
Use ownerReference to build default spreading constraints
2021-05-25 19:39:28 -07:00
Abdullah Gharaibeh
17551f291d
Return UnschedulableAndUnresolvable instead of Error when failing to lookup pvc or storageclass in VolumeZone plugin
2021-05-25 18:58:11 -04:00
Abdullah Gharaibeh
6c0976814c
use ownerReference to build default spreading contraints in the scheduler
2021-05-25 16:04:48 -04:00
Davanum Srinivas
383ce85649
[scheduler] avoid comparing function pointers in unit tests
...
PluginFactory is a function that returns a plugin. We have been
comparing these functions in unit tests and it has worked so far, but
starts to fail in gotip/master.
Note from the golang team:
```
Func values are incomparable. It is true that you could get the PC
through reflection but it is still not expected to be compared. PCs
can change due to inlining, wrappers, etc., depending on the
compiler's details, which is subject to change.
```
Signed-off-by: Davanum Srinivas <davanum@gmail.com>
2021-05-25 09:34:54 -04:00
sanposhiho
1b6895c11f
Fix: remove framework.ScoreExtensions interface check
2021-05-25 13:57:30 +09:00
Kubernetes Prow Robot
4509d6f79f
Merge pull request #101460 from edwardstudy/ed/fix-score-weight
...
Introduce scorePluginWeightMap to replace pluginNameToWeightMap
2021-05-24 21:48:56 -07:00
Kubernetes Prow Robot
5cdf7a714f
Merge pull request #100026 from minbaev/enqueue-extions-to-nvl
...
add enqueue-extensions nodevolumelimits plugin
2021-05-24 21:48:20 -07:00
Alexander Minbaev
3b4be144ab
add enqueue-extensions nodevolumelimits plugin
2021-05-24 16:59:31 -05:00
sanposhiho
517feed45b
Add: interface check
2021-05-23 23:48:42 +09:00
sanposhiho
be16b7f818
Fix: Logging causes nilpointer
2021-05-23 23:17:29 +09:00
Mike Dame
5a77ebe28b
Scheduler: remove pkg/features dependency from NodeResources plugins
2021-05-18 08:59:02 -04:00
edwardstudy
47785131e2
Introduce scorePluginWeightMap to replace pluginNameToWeightMap
2021-05-11 10:23:29 +08:00
yuzhiquan
2b6af46624
fix potential panic for node resource plugin
2021-05-08 18:03:24 +08:00
houjun
447e55132a
Delete duplicate judgments
2021-05-07 22:44:41 +08:00
Kubernetes Prow Robot
43e3669482
Merge pull request #101757 from pacoxu/test-fix-registry
...
compare the func with .Pointer() in scheduler registry-test
2021-05-06 20:59:03 -07:00
Kubernetes Prow Robot
d5691f754f
Merge pull request #101703 from july2993/read
...
use '_' in nodelabel plugin for unused parameters
2021-05-06 05:15:16 -07:00
pacoxu
be0f192acd
compare the func with .Pointer() in scheduler registry-test
...
Signed-off-by: pacoxu <paco.xu@daocloud.io>
2021-05-06 18:49:04 +08:00
Wei Huang
9c45e8a974
sched: make CycleState's Read()/Write()/Delete() thread-safe
...
- add internal locking to CycleState's Read()/Write()/Delete() functions
- remove Lock() and Unlock() functions
2021-05-05 12:00:52 -07:00
Yuan Chen
fce28dbac9
Prevent scheduler crashing in default preemption
2021-05-04 19:30:11 -07:00
Jiahao Huang
0980b33b0e
use '_' in nodelabel plugin for unused parameters
2021-05-03 18:06:02 +08:00
Konstantin Misyutin
74e30c5e38
Scheduler: remove pkg/features dependency from DefaultPreemption plugin
...
Signed-off-by: Konstantin Misyutin <konstantin.misyutin@huawei.com>
2021-04-29 23:12:46 +08:00
Kubernetes Prow Robot
b4ea4322a6
Merge pull request #101467 from ingvagabund/noderesources-replace-IsScalerResourceName-with-nodeinfo-allocatable-scalar-resource-presence
...
noderesource: node info already knows which resources are scalar
2021-04-28 18:12:50 -07:00
Jan Chaloupka
7286f9712a
pkg/scheduler: drop Resource.ResourceList() method
...
The method is used only for testing purposes. Given Resource data type
exposes all its fields, any invoker of ResourceList that is still
using the method outside of kubernetes/kubernetes can still either
copy paste the original implementation or implement a custom method
that's converting resources into proper Quantity data type.
Given the hugepage resource is a scalar resource, it's sufficient
the underlying code under fit_test.go to take into account any
extended resources. For predicate_test.go, the hugepage
resource does not play any role as the General predicates test cases
does not set any scaler resource at all.
Additionally, by removing ResourceList method, pkg/scheduler/framework
can get rid of dependency on k8s.io/kubernetes/pkg/apis/core/v1/helper.
2021-04-28 16:26:33 +02:00
Jan Chaloupka
11d6576f83
noderesource: node info already knows which resources are scalar
...
NodeInfo.Allocatable.ScalarResources already knows which resources
are scaler. Also, if the resource name is not present,
it's pointless to compute score for a resources the node can not allocate
since nodeInfo.Allocatable.ScalarResources[resource] is zero for the case.
And both leastRequestedScore and mostRequestedScore returns 0 score
for nodes with zero allocatable resource.
The balancedResourceScorer deals only with CPU and memory which
are not scalable resources.
2021-04-25 23:32:03 +02:00
Kubernetes Prow Robot
a160d1dedc
Merge pull request #101297 from houjun41544/20210421-volumezone
...
Remove redundant checks
2021-04-21 19:15:56 -07:00
Kubernetes Prow Robot
75b846dee4
Merge pull request #101313 from BinacsLee/binacs-scheduler-fwk-types-cleanup
...
code cleanup: scheduler / framework use `max` function instead of if-cond…
2021-04-21 17:04:13 -07:00
Kubernetes Prow Robot
5779fec3c4
Merge pull request #99959 from AliceZhang2016/nodeaffinity-cleanup
...
Move nodeaffinity helpers to component-helpers package
2021-04-21 17:03:53 -07:00
Kubernetes Prow Robot
ba5ec40d41
Merge pull request #101277 from wangyx1992/capatial-log-scheduler
...
cleanup: fix log capitalization in scheduler
2021-04-21 12:20:03 -07:00
BinacsLee
9ff1419511
code cleanup: scheduler simplify the check function in NodeLabel.Filter
2021-04-21 20:30:02 +08:00
BinacsLee
8f57233a3a
code cleanup: scheduler/framework use max function instead of if-condition in types.go
2021-04-21 17:40:35 +08:00
houjun
d3a355d6dc
Remove redundant checks
2021-04-21 09:55:45 +08:00
wangyx1992
97c4a4ffa5
cleanup: fix log capitalization in scheduler
...
Signed-off-by: wangyx1992 <wang.yixiang@zte.com.cn>
2021-04-20 20:20:02 +08:00
BinacsLee
c1fd8390e5
code cleanup: pkg/scheduler modify framework/types.go
2021-04-20 20:07:43 +08:00
Kubernetes Prow Robot
a95fd40203
Merge pull request #100322 from minbaev/cluster-event-reg-cleanup
...
got rid of ClusterEventReg generate ClusterEvent objects on the fly
2021-04-14 21:27:49 -07:00
Kubernetes Prow Robot
6d130d3b97
Merge pull request #100557 from chendave/validation_cleanup
...
Validate plugin config for KubeSchedulerConfiguration
2021-04-14 18:20:01 -07:00
Kubernetes Prow Robot
74763cd7e8
Merge pull request #100370 from houjun41544/20210318-nodeinfoIsNil
...
Remove redundant checks
2021-04-14 18:19:49 -07:00
Kubernetes Prow Robot
d09d1ea6cb
Merge pull request #100853 from yuzhiquan/scheduler-events
...
Implement EnqueueExtensions interface in TopologySpreading scheduling
2021-04-14 13:15:10 -07:00
Kubernetes Prow Robot
e42f44588a
Merge pull request #100090 from whypro/enqueue-extension
...
Implement EnqueueExtensions interface in volumerestrictions and volumezone.
2021-04-14 11:57:09 -07:00
Alexander Minbaev
8325c6b0da
got rid of ClusterEventReg with generating ClusterEvent objects on the fly
2021-04-14 13:38:46 -05:00
Dave Chen
c6e65079c7
Validate plugin config for KubeSchedulerConfiguration
...
Signed-off-by: Dave Chen <dave.chen@arm.com>
2021-04-14 09:30:20 +08:00
Dave Chen
62d7f8f570
Fix couple of nits in nodevolumelimits
plugin
...
Signed-off-by: Dave Chen <dave.chen@arm.com>
2021-04-13 15:59:50 +08:00
Kubernetes Prow Robot
1fa101d1a4
Merge pull request #100947 from lojies/cleanuppkgsheduler
...
code cleanup for pkg/scheduler
2021-04-13 00:44:50 -07:00
Kubernetes Prow Robot
ed3e0d302f
Merge pull request #100644 from Huang-Wei/sched-fwk-config
...
Surface kube config in scheduler framework handle
2021-04-12 19:12:49 -07:00
卢振兴10069964
5ddb1be59a
code cleanup for pkg/scheduler
2021-04-13 08:16:16 +08:00
whypro
641627980b
Implement EnqueueExtensions interface in volumerestrictions and volumezone.
2021-04-10 00:17:57 +08:00
Kubernetes Prow Robot
4959cd6339
Merge pull request #100671 from Niekvdplas/spelling-mistakes
...
Fixed several spelling mistakes
2021-04-09 05:19:45 -07:00
Kubernetes Prow Robot
c0778c7e9a
Merge pull request #100479 from houjun41544/20210323-InterPodAffinity
...
Missing return when error
2021-04-08 22:10:05 -07:00
Kubernetes Prow Robot
ad84094a8f
Merge pull request #100477 from chendave/validation_noderesource
...
Move NodeResourcesFit plugin args validation to apis/config/validation
2021-04-08 22:09:56 -07:00
Kubernetes Prow Robot
b678d1b51d
Merge pull request #100444 from july2993/mode
...
Change go file mode from 755 to 644
2021-04-08 22:09:22 -07:00
Kubernetes Prow Robot
3c75651d15
Merge pull request #100357 from Huang-Wei/enq-serviceaffinity
...
implement EnqueueExtensions interface in serviceaffinity
2021-04-08 20:30:20 -07:00
Kubernetes Prow Robot
4b9421674f
Merge pull request #100325 from cwdsuzhou/donot_delete_waitingpod
...
Preempting: do not delete the victim if it just exits in WaitingPods
2021-04-08 20:29:46 -07:00
Kubernetes Prow Robot
227db2e0d4
Merge pull request #100279 from Jerry-Ge/nodename
...
added eventsToRegister for nodeName & nodeUnschedulable plugins
2021-04-08 20:29:21 -07:00
Kubernetes Prow Robot
2b89558a1f
Merge pull request #100051 from tanjing2020/nodeaffinity
...
implement EnqueueExtensions interface in nodeaffinity
2021-04-08 17:11:13 -07:00
Kubernetes Prow Robot
7cd73076a2
Merge pull request #100049 from Huang-Wei/basic-check-prior-to-enq
...
sched: support PreEnqueueChecks prior to moving Pods
2021-04-08 17:11:04 -07:00
Kubernetes Prow Robot
2159f967b4
Merge pull request #100020 from pravarag/interpodaffinity-schedule-plugin
...
implement EnqueueExtensions in interPodAffinity
2021-04-08 17:10:38 -07:00
Kubernetes Prow Robot
d0510aae37
Merge pull request #100004 from KofClubs/implement-EventsToRegister-nodeports
...
Implemented EnqueueExtensions interface for NodePorts
2021-04-08 17:10:30 -07:00
Kubernetes Prow Robot
10ed4502f4
Merge pull request #99937 from wzshiming/fea/enq-nodelabel
...
Implement EnqueueExtensions interface in nodelabel
2021-04-08 16:00:51 -07:00
Kubernetes Prow Robot
adbf279bf1
Merge pull request #99936 from pacoxu/feature/taint-schedule-plugin
...
implement EnqueueExtensions interface in taint toleration scheduling
2021-04-08 16:00:43 -07:00
yuzhiquan
76b68a19d7
implement register events for PodTopologySpread
2021-04-08 09:14:34 +08:00
Pravar Agrawal
2cf284994f
implement EnqueueExtensions in interPodAffinity
2021-04-07 08:43:49 +05:30
Niekvdplas
fec272a7b2
Fixed several spelling mistakes
2021-03-30 23:02:09 +02:00
Wei Huang
e7f67b1a63
Surface kube config in scheduler framework handle
2021-03-30 11:54:59 -07:00
houjun
d9939a34d9
Missing return on error
2021-03-23 17:21:07 +08:00
Dave Chen
a0d93cc0c8
Move NodeResourcesFit plugin args validation to apis/config/validation
...
Signed-off-by: Dave Chen <dave.chen@arm.com>
2021-03-23 16:09:53 +08:00
caiweidong
850759ec87
Preempting: do not delete the victim if it just exits in WaitingPods
2021-03-23 14:37:36 +08:00
Jiahao Huang
4621722888
Change go file mode from 755 to 644
...
to check all file:
find . -perm 755 | grep "\.go$"
2021-03-23 10:50:17 +08:00
Wei Huang
9d1ef9f4c5
unregister Service events if a plugin doesn't implement EventsToRegister()
2021-03-18 11:04:06 -07:00
houjun
4c6d5ea709
Remove redundant checks
2021-03-18 19:52:39 +08:00
Jerry.Ge
31b79f481e
added eventsToRegister for nodeName & nodeUnschedulable plugins
...
Signed-off-by: Jerry Ge <jerry.ge@arm.com>
2021-03-18 04:22:51 -04:00
Wei Huang
ed673ba0e9
implement EnqueueExtensions interface in serviceaffinity
2021-03-17 19:04:08 -07:00
Zhang Zhanpeng
2678f26944
Implemented function EventsToRegister for NodePorts
...
Signed-off-by: Zhang Zhanpeng <zhanpeng.zhang@daocloud.io>
Added pod deletion event
Signed-off-by: Zhang Zhanpeng <zhanpeng.zhang@daocloud.io>
Deleted node condition update event & added service deletion
Signed-off-by: Zhang Zhanpeng <zhanpeng.zhang@daocloud.io>
Implemented function EventsToRegister for NodePorts
Signed-off-by: Zhang Zhanpeng <zhanpeng.zhang@daocloud.io>
Deleted service deletion
Signed-off-by: Zhang Zhanpeng <zhanpeng.zhang@daocloud.io>
Added a comment to explain why not registering pod update events
2021-03-17 14:42:13 +08:00
Wei Huang
6384f397b4
sched: support PreEnqueueChecks prior to moving Pods
2021-03-11 12:31:50 -08:00
Mengxue Zhang
bdda9728e7
move nodeaffinity helpers to component-helpers package
2021-03-10 20:19:25 +00:00
tanjing2020
cd6bf47a19
implement EnqueueExtensions interface in nodeaffinity
2021-03-10 19:22:08 +08:00
Kubernetes Prow Robot
f17004981b
Merge pull request #100034 from AliceZhang2016/nodeaffinity-cleanup-only-scheduler
...
move nodeaffinity helpers to component-helpers package (only impact s…
2021-03-09 17:39:56 -08:00
Mengxue Zhang
fd8128d7d6
move nodeaffinity helpers to component-helpers package (only impact scheduler plugins)
2021-03-09 21:33:02 +00:00
Kubernetes Prow Robot
2bcbc527a7
Merge pull request #99995 from wzshiming/fix/scheduler-nodelabel
...
Scheduler/plugins/nodelabel fix no label preference
2021-03-09 12:23:04 -08: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
046ad61479
Merge pull request #99290 from mortent/PromotePDBsToGA
...
Promote PodDisruptionBudget to policy/v1
2021-03-09 11:05:05 -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
Shiming Zhang
ab3a765570
Scheduler/plugins/nodelabel fix no label preference
2021-03-10 00:19:28 +08:00
Morten Torkildsen
21fba79d45
Promote PDBs to GA
2021-03-09 10:29:11 -05:00
drfish
c2ceb21a3e
Make parallelism as part of schedulerOptions
2021-03-09 23:25:55 +08:00
Kubernetes Prow Robot
7c57489f84
Merge pull request #99297 from chendave/testonly
...
Move test specific option setting to the test file
2021-03-09 06:35:00 -08:00
tanjing2020
2d79ebbe58
Log invalid scheduler-policy input instead of panic
2021-03-09 15:21:46 +08:00
pacoxu
09298dd83f
implement EnqueueExtensions interface in taint toleration scheduling
...
Signed-off-by: pacoxu <paco.xu@daocloud.io>
Co-authored-by: Wei Huang <weih@hey.com>
2021-03-09 12:21:00 +08:00
Shiming Zhang
6907b915f5
implement EnqueueExtensions interface in nodelabel
2021-03-09 10:32:57 +08:00
Dave Chen
20cad3b5da
Move test specific option setting to the test file
...
Setting of "metricsRecorder" is only needed for testcase.
Signed-off-by: Dave Chen <dave.chen@arm.com>
2021-03-09 10:30:22 +08:00
Wei Huang
e86a72add7
implement EnqueueExtensions interface in noderesources
2021-03-08 15:24:05 -08:00
Kubernetes Prow Robot
14c25eed8d
Merge pull request #99641 from pohly/storage-capacity-beta
...
CSIStorageCapacity beta API
2021-03-08 15:04:59 -08:00
Kubernetes Prow Robot
2b3f97b08f
Merge pull request #99389 from tanjing2020/change-log
...
Use %w instead of %v to format errors
2021-03-08 12:07:12 -08:00
Patrick Ohly
5ca0814165
CSIStorageCapacity: use beta API
2021-03-08 20:52:50 +01:00
Kubernetes Prow Robot
027d9e6c25
Merge pull request #99835 from chendave/args
...
Move VolumeBinding plugin args validation to apis/config/validation
2021-03-08 09:31:42 -08:00
tanjing2020
61cd099bc1
Use %w instead of %v to format errors
2021-03-08 10:23:08 +08:00
Kubernetes Prow Robot
699b38669f
Merge pull request #99731 from AliceZhang2016/newFramework-accept-KubeSchedulerProfile
...
Make runtime.NewFramework accept KubeSchedulerProfile
2021-03-06 12:49:48 -08:00
Dave Chen
b8394c4700
Move VolumeBinding plugin args validation to apis/config/validation
...
This PR also looses the check to allow zero since the API doc has
explained that value zero indicates no waiting.
Signed-off-by: Dave Chen <dave.chen@arm.com>
2021-03-06 11:06:39 +08:00
Mengxue Zhang
b38caa91cc
make runtime.NewFramework accept KubeSchedulerProfile
2021-03-05 18:30:21 +00:00
Yecheng Fu
d791f7feef
Prioritizing nodes based on volume capacity: unit tests
2021-03-05 23:59:25 +08:00
Yecheng Fu
21a43586e7
Prioritizing nodes based on volume capacity
2021-03-05 23:59:25 +08:00
Kubernetes Prow Robot
9067b5691d
Merge pull request #97818 from damemi/remove-util-node-dep
...
Scheduler: remove direct dependency for k8s.io/kubernetes/pkg/util/node
2021-03-05 04:06:32 -08:00
Kubernetes Prow Robot
d1fb9fda24
Merge pull request #99523 from gavinfish/sched-nodeaff-todo
...
Scheduler: remove outdated TODO in node_affinity.go
2021-03-04 14:41:03 -08:00
Mike Dame
af045087d9
Move GetZoneKey function to component-helpers
2021-03-04 10:32:38 -05: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
Kubernetes Prow Robot
0ced9d2854
Merge pull request #99498 from gavinfish/sched-preempthandle
...
Scheduler: unroll PreemptHandle to Handle
2021-03-01 13:58:28 -08:00
Benjamin Elder
56e092e382
hack/update-bazel.sh
2021-02-28 15:17:29 -08:00
drfish
da6d5669b3
Remove outdated TODO in node_affinity.go
2021-02-27 14:00:33 +08:00
Kubernetes Prow Robot
c200a8f9b7
Merge pull request #98433 from damemi/remove-helper-from-volume-zone
...
Move GetPersistentVolumeClaimClass to component-helpers
2021-02-26 12:38:15 -08:00
drfish
38ad860c2f
Unroll PreemptHandle to Handle
2021-02-27 00:44:05 +08:00
Kubernetes Prow Robot
6d16a7737f
Merge pull request #99406 from gavinfish/sched-remove-fw-todo
...
Scheduler: remove legacy TODO in framework.go
2021-02-25 10:01:45 -08:00
Kubernetes Prow Robot
4fefc856db
Merge pull request #99213 from AliceZhang2016/affinity
...
parse pod's node affinity once in preFilter
2021-02-25 10:01:24 -08:00
Mengxue Zhang
4fb8e343c0
parse pod's node affinity once in preFilter
2021-02-25 00:21:32 +00:00
Kubernetes Prow Robot
8feec9bf94
Merge pull request #99351 from CaoDonghui123/fixissues3
...
Remove deadcode
2021-02-24 15:29:34 -08:00
Kubernetes Prow Robot
1d02dfb79a
Merge pull request #99085 from gavinfish/jieshe/nominated-podinfo
...
Scheduler: Use PodInfo instead of Pod for nominatedPods and QueuedPodInfo
2021-02-24 08:52:50 -08:00
drfish
4e79760968
Remove legacy TODO in framework.go
2021-02-24 23:43:45 +08:00
xiaofei.sun
fd62f32125
Scheduler: remove pkg/apis/core/field_constants.go
2021-02-24 18:06:29 +08:00
caodonghui
f435e24403
Remove deadcode
2021-02-23 17:58:47 +08:00
Kubernetes Prow Robot
4225e1f1cc
Merge pull request #98593 from chymy/scheduler-structured-logs-0130
...
migrate pkg/scheduler/framework/plugins/volume to structured logs
2021-02-22 18:48:03 -08:00
drfish
bc2df9de72
Use PodInfo instead of Pod for nominatedPods and QueuedPodInfo
2021-02-22 22:00:23 +08:00
Kubernetes Prow Robot
0b5dd00d03
Merge pull request #99119 from gavinfish/sched-preempt
...
Scheduler: let default preemption returns status instead of err
2021-02-19 20:49:41 -08:00
chymy
57fc5f67e7
migrate pkg/scheduler/framework/plugins/volume to structured logs
...
Signed-off-by: chymy <chang.min1@zte.com.cn>
2021-02-20 08:42:31 +08:00
drfish
a1bfa0120e
Let default preemption returns status instead of err
2021-02-19 23:57:23 +08:00
Kubernetes Prow Robot
2b6a8381d2
Merge pull request #98875 from tanjing2020/change-log
...
migrate to structured logging
2021-02-19 07:48:25 -08:00
Kubernetes Prow Robot
d69d228a2c
Merge pull request #99211 from deepakiam/master
...
Substituting bool maps with String sets
2021-02-19 00:20:57 -08:00
Deepak Nair
49a9e28dd8
Substitute boolean maps with String sets
2021-02-18 20:59:32 -08:00
Kubernetes Prow Robot
5ce38504fb
Merge pull request #99118 from adtac/remove-fwk-readme
...
scheduler/framework/plugins: delete moved docs
2021-02-16 13:45:44 -08:00
Kubernetes Prow Robot
0ce2036e81
Merge pull request #98949 from gavinfish/sched-rm-reflect1
...
Scheduler: remove reflect.DeepEqual for defaultpreemption, helper, imagelocality package
2021-02-16 07:13:06 -08:00
Adhityaa Chandrasekar
4e8454ae9d
scheduler/framework/plugins: delete moved docs
...
Signed-off-by: Adhityaa Chandrasekar <adtac@google.com>
2021-02-16 13:26:27 +00:00
drfish
ac0b034b02
Remove reflect.DeepEqual for defaultpreemption, helper, and imagelocality package
2021-02-13 16:16:14 +08:00
Kubernetes Prow Robot
b1a2a99f1f
Merge pull request #98997 from gavinfish/sched-remove-todo
...
Scheduler: remove outdated TODO in interpodaffinity
2021-02-11 15:48:46 -08:00
drfish
2e7e075762
Remove outdated TODO in interpodaffinity
2021-02-11 20:45:00 +08:00
Kubernetes Prow Robot
838bb6a567
Merge pull request #98663 from gavinfish/sched-remove-plugin-pt
...
Scheduler: change config.Plugins from pointers to objects
2021-02-10 15:36:15 -08:00
drfish
74315f9c56
Change config.Plugins from pointers to objects
2021-02-10 23:45:59 +08:00
tanjing2020
300d109d78
migrate to structured logging
2021-02-10 16:11:52 +08:00
Kubernetes Prow Robot
28e2e12b88
Merge pull request #98863 from chendave/test_coverage
...
Improve test coverage for service affinity
2021-02-08 17:04:02 -08:00
Dave Chen
06bc3b48af
Improve test coverage for service affinity
...
Pods that are filtered by the plugin should has UID associated, otherwise all those
matching pods will be filtered out, this is the against of the spec of testcases.
Signed-off-by: Dave Chen <dave.chen@arm.com>
2021-02-08 17:02:53 +08:00
dabaooline
7c99f426cd
fix ignored podinfo parserr
...
Co-authored-by: Jie Shen <drfish.me@gmail.com>
2021-02-06 18:59:12 +08:00
Kubernetes Prow Robot
ebe7380b38
Merge pull request #98518 from tanjing2020/change-log
...
migrate default_preemption.go to structured logging
2021-02-03 19:54:28 -08:00
drfish
d15dacb57d
Add Equal func for Status struct
2021-02-04 00:32:01 +08:00
Kubernetes Prow Robot
673a844834
Merge pull request #98338 from gavinfish/sched-remove-pro
...
Cleanup: remove prometheus dependencies for scheduler
2021-02-01 23:22:40 -08:00
Kubernetes Prow Robot
8096513aca
Merge pull request #92866 from cofyc/fix91281
...
scheduler: Extend ExtenderFilterResult to include UnschedulableAndUnresolvable nodes
2021-02-01 23:22:27 -08:00
Kubernetes Prow Robot
4e72a35b35
Merge pull request #98588 from gavinfish/sched-fw-ut
...
Scheduler: organize framework unit tests in subtests
2021-02-01 20:40:36 -08:00
Kubernetes Prow Robot
ba85bfee39
Merge pull request #98129 from chendave/expose_status
...
Expose node status so that external preemption plugins can use it
2021-02-01 19:24:40 -08:00
Kubernetes Prow Robot
f27318c0da
Merge pull request #98445 from damemi/taint-toleration-internal-helpers
...
Move Taint/Toleration helpers to component-helpers repo
2021-02-01 17:50:27 -08:00
tanjing2020
e62cfa7cc4
migrate default_preemption.go to structured logging
2021-02-02 09:38:23 +08:00
Mike Dame
578ff3ec34
Move Taint/Toleration helpers to component-helpers repo
...
This is part of the goal for scheduling to remove dependencies on internal
packages for the scheduling framework. It also provides these functions in an
external location for other components and projects to import.
2021-02-01 11:06:03 -05:00
Mike Dame
ba72411aa2
Move GetPersistentVolumeClaimClass to component-helpers
...
The goal of this move is related to issue 89930, to break the dependence
of scheduling plugins on internal helpers. This function can easily move to
component-helpers where it will be used by other components as well.
2021-02-01 10:48:38 -05:00
Dave Chen
fe5a266a03
Include UnschedulableAndUnresolvable
nodes into the status map
...
Signed-off-by: Dave Chen <dave.chen@arm.com>
2021-02-01 10:49:43 +08:00
drfish
b9ab8768b6
Remove duplicated error log in framework
2021-01-31 17:17:03 +08:00
drfish
0c3d8b9720
Organize framework unit tests in subtests
2021-01-31 13:34:52 +08:00
drfish
c959e23250
Remove prometheus dependencies for scheduler
2021-01-30 12:15:22 +08:00
Kubernetes Prow Robot
03168d2e32
Merge pull request #98540 from damemi/internal-helper-get-avoid-pods
...
Scheduler: move GetAvoidPodsFromNodeAnnotations to component-helpers
2021-01-29 15:11:48 -08:00
Yecheng Fu
9a2713503a
multiple extenders and UnschedulableAndUnresolvable takes precedence
...
over Unschedulable
2021-01-29 11:32:43 +08:00
Dave Chen
9d48a44601
Expose node status so that external preemption plugins can use it
...
Signed-off-by: Dave Chen <dave.chen@arm.com>
2021-01-29 10:17:25 +08:00
Wei Huang
f8a6bdb044
Surface info of failed plugins during PerFilter and Filter
2021-01-28 12:20:42 -08:00
Mike Dame
73d8eba1a4
Scheduler: move GetAvoidPodsFromNodeAnnotations to component-helpers
2021-01-28 14:41:55 -05:00
Kubernetes Prow Robot
252887e39f
Merge pull request #98485 from gavinfish/sched-wrap-all-err
...
Scheduler: wrap all errors in pkg/scheduler
2021-01-28 08:21:46 -08:00
Jie Shen
f82e3c430c
Wrap all errors in pkg/scheduler
2021-01-28 09:13:40 +08:00
Kubernetes Prow Robot
4b3d6369dd
Merge pull request #98453 from tanjing2020/change-log
...
Add pod information to the error logs
2021-01-27 14:51:07 -08:00
tanjing2020
53671ffcd2
Add pod information to the log
2021-01-27 09:49:06 +08:00
Kubernetes Prow Robot
bfac3e9309
Merge pull request #98364 from gavinfish/sched-error-interpod
...
Scheduler: wrap errors from DefaultPreemption and InterPodAffinity plugins
2021-01-26 09:40:46 -08:00
Kubernetes Prow Robot
41a42ef675
Merge pull request #98266 from gavinfish/sched-runtime-error
...
Scheduler: wrap errors for framework/runtime
2021-01-26 07:48:47 -08:00
Kubernetes Prow Robot
35871e49b7
Merge pull request #98134 from tanjing2020/change-log
...
migrate generic_scheduler.go and types.go to structured logs
2021-01-26 07:48:35 -08:00
drfish
a6f2736032
Wrap errors from DefaultPreemption and InterPodAffinity plugins
2021-01-26 23:00:12 +08:00
Jie Shen
b79c2ebd7e
Wrap errors for framework/runtime
2021-01-26 13:48:58 +08:00
tanjing2020
d59d10762f
migrate generic_scheduler.go and types.go to structured logs
2021-01-26 09:31:05 +08:00
Kubernetes Prow Robot
fa3be1bcd2
Merge pull request #98096 from leileiwan/master
...
fix(*):inter pod affinity default min score is zero
2021-01-25 07:22:54 -08:00
drfish
8be6d9650c
Update potentialVictims as framework.PodInfo type
2021-01-24 22:17:28 +08:00
leileiwan
65d2dda443
fix(*): init max score with -maxInt64
2021-01-24 17:30:27 +08:00
Wei Huang
2ba120dcfa
sched: avoid using shareable singleton instance
2021-01-21 22:47:12 -08:00
Kubernetes Prow Robot
39115c64b0
Merge pull request #97599 from gavinfish/refact-updatewithpod
...
Scheduler: Update the PreFilterExtensions interface to use PodInfo
2021-01-20 12:09:01 -08:00
Kubernetes Prow Robot
3fedfb8ed8
Merge pull request #97454 from lixiaobing1/nodename
...
modify hostname of ErrReason
2021-01-19 08:19:45 -08:00
drfish
d4418c1402
Update the PreFilterExtensions interface to use PodInfo
2021-01-19 00:49:52 +08:00
leileiwan
273de36b5d
fix unit test
2021-01-18 22:55:37 +08:00
Kubernetes Prow Robot
c37905c06c
Merge pull request #97917 from gavinfish/refact-addpod
...
Scheduler: Add function AddPodInfo(*PodInfo) for NodeInfo struct
2021-01-16 00:25:43 -08:00
Kubernetes Prow Robot
38585884e3
Merge pull request #97184 from chendave/add_status
...
Show the details on the failure of preemption
2021-01-15 10:25:51 -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
leileiwan
8eb8f8ab26
fix(*):inter pod affinity default min score is zero
2021-01-15 17:41:52 +08:00
Kubernetes Prow Robot
faaae71427
Merge pull request #97794 from chendave/cleanup_status
...
Refactor: rewrite `Merge` method to address readability and efficiency
2021-01-14 07:15:17 -08:00
Dave Chen
3c197c55ff
Refactor: rewrite Merge
method to address readability and efficiency
...
Signed-off-by: Dave Chen <dave.chen@arm.com>
2021-01-14 10:20:58 +08:00
Kubernetes Prow Robot
a28c802db7
Merge pull request #97538 from lingsamuel/requirement-return-field-error
...
make labels.NewRequirement returns aggregated field.ErrorList
2021-01-13 14:17:17 -08:00
drfish
90ba736433
Add function AddPodInfo(*PodInfo) for NodeInfo struct
2021-01-13 23:04:37 +08:00
Ling Samuel
a1f8dc41ef
make labels.NewRequirement returns aggregated field.ErrorList, make nodeaffinity parsing function use it
...
Signed-off-by: Ling Samuel <lingsamuelgrace@gmail.com>
2021-01-11 16:23:53 +08:00
lixiaobing1
b5487d823c
modify hostname of ErrReason
2021-01-06 09:25:25 +08:00
Kubernetes Prow Robot
86f8c3ee91
Merge pull request #97591 from gavinfish/sched-interpodaffinity-typo
...
Cleanup: fix typos in scheduler interpodaffinity package
2021-01-05 15:12:05 -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
Kubernetes Prow Robot
07bd985724
Merge pull request #96561 from ialidzhikov/cleanup/csi-node-info
...
Remove CSINodeInfo feature gate
2021-01-05 11:46:00 -08:00
Kubernetes Prow Robot
3e36f78c42
Merge pull request #97521 from lixiaobing1/nodeselector
...
add node selector info in ErrReasonPod
2021-01-04 16:13:56 -08:00
drfish
2fcea1f737
Fix typos in scheduler interpodaffinity package
2020-12-30 14:20:07 +08:00
lixiaobing1
0e274441ba
add node selector info in ErrReasonPod
2020-12-26 14:15:08 +08:00
chymy
6ec7b823c1
Add a hyperlink to issue 95156
...
Signed-off-by: chymy <chang.min1@zte.com.cn>
2020-12-24 15:41:05 +08:00
drfish
070773c399
Remove scheduler plugins package's dependency from core package
2020-12-20 00:18:40 +08:00
Alex Dudko
c03b4c7850
Migrate pkg/scheduler logs to structured logging
...
in pkg/scheduler/eventhandlers.go
* add event for unscheduled pod
* delete event for unscheduled pod
* add event for scheduled pod
* delete event for scheduled pod
in pkg/scheduler/framework/plugins/defaultbinder/default_binder.go
* Attempting to bind pod to node
in pkg/scheduler/scheduler.go
* Updating pod condition
* Attempting to schedule pod
* Skip schedule deleting pod
2020-12-18 10:45:00 -08:00
Kubernetes Prow Robot
bd4d197b52
Merge pull request #96447 from chendave/bind_postfilter
...
Remove the deprecated metrics from scheduler
2020-12-14 06:31:28 -08:00
Dave Chen
5144e2ec78
Remove the deprecated metrics from scheduler
...
Deprecated metrics are removed and suggest to use the Histogram
metrics got from scheduler extension points.
Signed-off-by: Dave Chen <dave.chen@arm.com>
Co-authored-by: wawa0210 <xiaozhang0210@hotmail.com>
2020-12-14 11:31:50 +08:00
ialidzhikov
bc432124a2
Remove CSINodeInfo feature gate
...
Signed-off-by: ialidzhikov <i.alidjikov@gmail.com>
2020-12-10 09:58:22 +02:00
Kubernetes Prow Robot
5996839425
Merge pull request #96745 from lingsamuel/scheduler-validation
...
Use field.Error(s) in scheduler plugin args validation
2020-12-09 02:10:50 -08:00
Kubernetes Prow Robot
f367cb671a
Merge pull request #96774 from lixiaobing1/noderesources2
...
clarify the logic of noderesources comparison
2020-12-08 20:03:01 -08:00
Kubernetes Prow Robot
dfd3f0ffc3
Merge pull request #96713 from lixiaobing1/fixTypoUtilization
...
fix typos in type functionShapePoint
2020-12-08 18:36:05 -08:00
Kubernetes Prow Robot
83b2c7a1bf
Merge pull request #96311 from thockin/kep-1659-topology-labels
...
Convert users of old failure-domain labels to new
2020-12-08 17:28:27 -08:00
Kubernetes Prow Robot
9a175b9b2a
Merge pull request #96223 from SataQiu/fix-scheduler-20201104
...
scheduler: parse Pod's Node affinity once in PreScore phase
2020-12-08 17:28:06 -08:00
Ling Samuel
77f0f442a1
Use field.Error(s) in scheduler plugin args validation
...
Signed-off-by: Ling Samuel <lingsamuelgrace@gmail.com>
2020-12-02 08:49:33 +08:00
SataQiu
2b38078de1
scheduler: parse Pod's Node affinity once in PreScore phase
...
Signed-off-by: SataQiu <1527062125@qq.com>
2020-11-26 11:19:52 +08:00
lixiaobing1
e12fab6779
optimize the logic of noderesources comparision
2020-11-24 08:31:28 +08:00
rootlh
42c00bc523
fix bug: concurrent map writes error
2020-11-22 01:40:51 +08:00
lixiaobing1
8b351ac9d0
fix typos in type functionShapePoint
2020-11-19 20:22:09 +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
Tim Hockin
4068402459
Change trivial topology labels
...
In these cases the actual label key is incidental.
2020-11-12 11:21:37 -08:00
Kubernetes Prow Robot
3e43d5b92a
Merge pull request #96292 from wangyx1992/cleanup-scheduler-log-capatilization
...
cleanup: fix log capitalization in scheduler
2020-11-12 11:20:45 -08:00
Yixiang2019
842cc6b4e2
cleanup: fix log capitalization in scheduler
...
Signed-off-by: Yixiang2019 <wang.yixiang@zte.com.cn>
2020-11-12 20:10:26 +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
Aldo Culquicondor
3ce145787a
Add AddedAffinity to the NodeAffinityArgs
...
And use it in Filter and Score.
Change-Id: I173d8f2d5578762e9873181d5b44ea30b6dbbbc2
2020-11-09 15:19:15 -05:00
Kubernetes Prow Robot
bd95fb101d
Merge pull request #94814 from adtac/preemption2
...
optimise defaultpreemption: enumerate fewer candidates
2020-11-05 21:18:50 -08:00
Tim Hockin
819ff9b087
Use topology labels instead of old beta names ( #96033 )
...
* Rename const for topology.../zone
* Rename const for topology.../region
* Rename const for failure-domain.../zone
* Rename const for failure-domain.../region
* Restore old names for compat
2020-11-05 20:26:50 -08:00
Kubernetes Prow Robot
2d6cd683bd
Merge pull request #95541 from cofyc/fix95538
...
volume binding: report UnschedulableAndUnresolvable status instead of an error when bound PVs not found
2020-11-05 15:16:51 -08:00
Yecheng Fu
0961891a7a
report UnschedulableAndUnresolvable status instead of an error when PVCs can't find bound
...
persistent volumes
This is an user error. We should't report an error.
2020-11-05 10:28:40 +08:00
Adhityaa Chandrasekar
a3d94b53ca
optimise defaultpreemption: enumerate fewer candidates
...
Signed-off-by: Adhityaa Chandrasekar <adtac@google.com>
2020-11-04 22:39:58 +00:00
Kubernetes Prow Robot
48fa50fb5e
Merge pull request #95944 from wangyx1992/error-log-captialize
...
cleanup: fix some error log capitalization
2020-11-04 13:25:21 -08:00
Kubernetes Prow Robot
9866d4303a
Merge pull request #96151 from warmchang/volumelimittype
...
Remove maximum volume limit comment which is easily outdated
2020-11-04 07:02:05 -08:00
William Zhang
a7919225e2
Remove maximum volume limit comment which is easily outdated.
2020-11-04 21:39:22 +08:00
Aldo Culquicondor
d572249d30
Add runtime representation of []v1.PreferredSchedulingTerm
...
to be used for repeatedly scoring nodes.
Change-Id: Ib1a0866979ce6cf75d1d9668c4bf8f6fb57298b2
2020-11-03 10:21:31 -05:00
Kubernetes Prow Robot
43edb40632
Merge pull request #96092 from Huang-Wei/honor-false-LocalStorageCapacityIsolation
...
Honor disabled LocalStorageCapacityIsolation in scheduling
2020-11-02 17:12:15 -08:00
Wei Huang
fb782eee57
Honor disabled LocalStorageCapacityIsolation in scheduling
2020-11-02 13:21:08 -08:00
Kubernetes Prow Robot
17dcccbe07
Merge pull request #96109 from ingvagabund/move-IsScalarResourceName-under-scheduler
...
Move pkg/apis/core/v1.IsScalarResourceName under pkg/scheduler/util
2020-11-02 10:24:27 -08:00
Kubernetes Prow Robot
332d17c7f5
Merge pull request #95731 from farah/split-scheduler
...
Delete framework/v1alpha1 folder and change remaining import paths
2020-10-30 11:14:22 -07:00
Mike Dame
b7ba77c25b
Move MatchNodeSelectorTerms to k8s.io/component-helpers
2020-10-29 13:39:13 -04:00
Kubernetes Prow Robot
2729b8e375
Merge pull request #95871 from damemi/move-unchanged-scheduler-helpers
...
Change function signature for MatchNodeSelectorTerms
2020-10-29 04:18:59 -07:00
Yixiang2019
62710bc034
cleanup: fix some error log capitalization
...
Signed-off-by: Yixiang2019 <wang.yixiang@zte.com.cn>
2020-10-28 16:44:54 +08:00
Kubernetes Prow Robot
93fcb22e64
Merge pull request #95687 from tangwz/make_profile_an_interface
...
scheduler: make Profile an interface.
2020-10-27 11:41:26 -07:00
Mike Dame
d9f334683e
Change function signature for MatchNodeSelectorTerms
...
As part of externalizing this function to the k8s.io/component-helpers repo,
this commit simplifies the function signature and makes its 2 helpers private
(nodeSelectorRequirementsAsSelector and nodeSelectorRequirementsAsFieldSelector).
2020-10-27 12:52:06 -04:00
Jan Chaloupka
6822a0ec20
Move pkg/apis/core/v1.IsScalarResourceName under pkg/scheduler/util
...
IsScalarResourceName is imported only inside pkg/scheduler packages.
2020-10-27 13:40:32 +01:00
tangwz
5f3efa671d
scheduler: make Profile an interface.
2020-10-27 09:13:04 +08:00
Kubernetes Prow Robot
5ed903dbfd
Merge pull request #95809 from alculquicondor/rebench-spread
...
Optimize NormalizeScore for PodTopologySpread
2020-10-26 11:23:02 -07:00
Kubernetes Prow Robot
1fcd02cc2e
Merge pull request #95812 from Huang-Wei/fix-pts-node-miss-label
...
Fix a bug that Pods with topologySpreadConstraints get scheduled to nodes without required labels
2020-10-23 09:55:57 -07:00
Aldo Culquicondor
e721576d55
Optimize NormalizeScore for PodTopologySpread
...
Change-Id: I928174a220c8c0f4b69180fdfb2f075278a482be
2020-10-23 11:15:15 -04:00
Aldo Culquicondor
ab7a38220f
Add 5k nodes benchmark for pod topology spreading
...
Change-Id: I1a5ed73ba03570671c0a92277678c0f3f786385f
2020-10-23 11:15:15 -04:00
Ali
bfdeda58b7
Delete framework/v1alpha1 folder and change remaining import paths
2020-10-23 13:16:13 +11:00
Wei Huang
f7a93ea915
Fix a bug that Pods with topologySpreadConstraints get scheduled to nodes without required labels
2020-10-22 15:56:16 -07:00
Aldo Culquicondor
15d2ab1615
Fix labels for spreading benchmark
...
Nodes where being created with beta zone label, whereas the service was using stable.
Change-Id: I08ba1b6c083217759524236bde3888e527b4a44f
2020-10-21 15:51:44 -04:00
Aldo Culquicondor
87c8349bdc
Graduate DefaultPodTopologySpread to beta
...
And set to enabled by default
Change-Id: Ie4cc4758c52492924cb0663450f2747908cb5882
2020-10-19 16:58:09 -04:00
Kubernetes Prow Robot
fbe806ef9e
Merge pull request #95448 from alculquicondor/policy-spread
...
Map SelectorSpreadPriority to PodTopologySpread plugin
2020-10-15 12:55:25 -07:00
Aldo Culquicondor
95dd99905f
Map SelectorSpreadPriority to PodTopologySpread plugin
...
when DefaultPodTopologySpread feature is enabled
If SelectorSpreadPriority is in use, PodTopologySpread gets inevitably enabled.
When only EvenPodsSpreadPriority is in use, PodTopologySpread is configured without system defaults.
Change-Id: I2389a585cd8ad0bd35b0d2acae1665cd46908b3e
2020-10-14 13:45:26 -04:00
Kubernetes Prow Robot
6268e6f990
Merge pull request #95069 from farah/split-scheduler
...
Move scheduler interface to pkg/scheduler/framework
2020-10-13 14:23:54 -07:00
Kubernetes Prow Robot
e3d7d067ab
Merge pull request #95066 from SataQiu/wrap-errors-2020092502
...
Wrap errors for NodeLabel, NodePorts, NodePreferAvoidPods and NodeResourcesBalancedAllocation plugins
2020-10-13 09:46:27 -07:00
Kubernetes Prow Robot
dc98ed96f6
Merge pull request #95085 from arghya88/wrap-error-taint-toleration-plugin
...
Wrap errors in taint-toleration, service-affinity plugin
2020-10-13 08:16:26 -07:00
Ali
09b2e8f638
Move scheduler interface to pkg/scheduler/framework
2020-10-13 13:13:27 +11:00
Kubernetes Prow Robot
4bbf4111e2
Merge pull request #92507 from ingvagabund/staging-library-go
...
Initialize k8s.io/component-helpers staging repository
2020-10-12 10:30:48 -07:00
Jan Chaloupka
274c536da3
Removing GetPodPriority from pkg/api and importing PodPriority from k8s.io/component-helpers
2020-10-11 21:40:11 +02:00
Kubernetes Prow Robot
c72b30b3b7
Merge pull request #93534 from everpeace/score-in-preemption-handle
...
scheduler: expose Run[Pre]ScorePlugins functions to PreemptionHandle(through PluginRunner)
2020-10-09 20:34:47 -07:00
SataQiu
a0efc33158
wrap errors from NodeLabel, NodePorts, NodePreferAvoidPods and NodeResourcesBalancedAllocation plugins
2020-10-10 11:00:40 +08:00
Aldo Culquicondor
c8a0b9e8e7
Add defaultingType to PodTopologySpreadArgs
...
Change-Id: Ibf6a4fdb39a31fe9deed68de7e7cb24a9bf9d06a
2020-10-09 17:12:12 -04:00
Kubernetes Prow Robot
281412b5e9
Merge pull request #95191 from alculquicondor/policy-default-spread
...
Move predicates and priorities configuration creation to Policy mapping
2020-10-05 17:04:33 -07:00
Kubernetes Prow Robot
2f15024e7d
Merge pull request #95157 from adtac/schedplugins
...
scheduler framework: document how to make plugins configurable
2020-10-05 17:04:20 -07:00
Adhityaa Chandrasekar
3e7b2c0707
scheduler framework: document how to make plugins configurable
...
Signed-off-by: Adhityaa Chandrasekar <adtac@google.com>
2020-10-05 21:29:11 +00: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
Kubernetes Prow Robot
5b33feb943
Merge pull request #95146 from draveness/patch-5
...
fix: use ">" instead of ">=" in resource allocation
2020-09-30 12:55:08 -07:00
Draven
79f05c65a0
fix: use ">" instead of ">=" in resource allocation
2020-09-30 11:06:17 +08:00
Arghya Sadhu
8154dc95b5
wrap errors in selectorspread and podtoplogyspread plugin
2020-09-28 21:28:54 +05:30
Arghya Sadhu
ad415b9f54
wrap errors in service affinity plugin
2020-09-27 11:28:31 +05:30
Arghya Sadhu
ff3c751afc
wrap errors in taint-toleration plugin
2020-09-26 21:16:41 +05:30
SataQiu
8c51c9955c
wrap errors from DefaultPreemption, ImageLocality and NodeAffinity plugins
2020-09-25 10:38:27 +08:00
Kubernetes Prow Robot
44cd4fcedc
Merge pull request #95001 from arghya88/deprecate-scheduler-metrics
...
deprecate scheduler metrics
2020-09-24 13:57:48 -07:00
Kubernetes Prow Robot
48cb3b2b4f
Merge pull request #94850 from SataQiu/structed-log-20200917
...
Using structured logging in scheduler framework runtime
2020-09-24 09:24:06 -07:00
SataQiu
47c58c3785
using structured logging in scheduler framework runtime
2020-09-24 21:54:31 +08:00
Arghya Sadhu
078b355da3
deprecate scheduler metrics BindingLatency and SchedulingAlgorithmPreemptionEvaluationDuration
2020-09-23 17:15:13 +05:30
Arghya Sadhu
c62f0dd165
removing deprecated scheduler metrics
2020-09-22 21:04:15 +05:30
Kubernetes Prow Robot
965137a992
Merge pull request #94692 from alculquicondor/wrap_errors_min
...
Wrap errors from VolumeBinding and DefaultBinder plugins
2020-09-15 18:27:34 -07:00
Wei Huang
185ba08fcd
Move podPassesBasicChecks() to VolumeBinding plugin
2020-09-11 13:54:02 -07:00
Aldo Culquicondor
7fb40fc03c
Wrap errors on VolumeBinding plugin
...
Signed-off-by: Aldo Culquicondor <acondor@google.com>
Change-Id: I23053528ac6857124fddd7f9fa26e122202ff4bd
Signed-off-by: Aldo Culquicondor <acondor@google.com>
2020-09-10 16:22:16 -04:00
Aldo Culquicondor
94985e28ac
Wrap errors on DefaultBinder plugin
...
Signed-off-by: Aldo Culquicondor <acondor@google.com>
Change-Id: I2e3c8aa2c1a2a5102e9110b6cff91d66a79a90f1
2020-09-10 16:22:16 -04:00
Aldo Culquicondor
aefcfcc627
Wrap errors when running Bind plugins
...
Signed-off-by: Aldo Culquicondor <acondor@google.com>
Change-Id: I29f8d3ea219a5cf667cf718545e8dfff971ca6ec
2020-09-10 16:22:15 -04:00
Aldo Culquicondor
a482d7ef8e
Wrap errors when running PreBind plugins
...
Signed-off-by: Aldo Culquicondor <acondor@google.com>
Change-Id: I31bf35d7e96b1cebb285cf03ffad310d83224d9c
Signed-off-by: Aldo Culquicondor <acondor@google.com>
2020-09-10 16:22:12 -04:00
Aldo Culquicondor
34102140e2
Hold error in framework's Status
...
To allow obtaining and comparing the original error.
Signed-off-by: Aldo Culquicondor <acondor@google.com>
Change-Id: Ibcef89f7b876a273ecc24548f8d204966e0e6059
2020-09-10 10:52:36 -04:00
Wei Huang
4f7ae54f3e
fixup: add podLister as a member field of DefaultPreemption
2020-09-08 18:27:23 -07:00
Wei Huang
52bf6ba8ba
Preemption plugin to fetch pod from informer cache
2020-09-08 18:27:23 -07:00
Kubernetes Prow Robot
44ecd80cf1
Merge pull request #91557 from chendave/cleanup
...
cleanup: remove useless methods
2020-09-08 06:27:44 -07:00
Kubernetes Prow Robot
d239cdfbc0
Merge pull request #94059 from ahg-g/ahg-anti-affinity
...
Track pods with required anti-affinity
2020-09-08 04:54:12 -07:00
Kubernetes Prow Robot
b837699f74
Merge pull request #94125 from soulxu/only_includes_all_nodes_for_preferred
...
Only process all nodes when incoming pod has no preferred affinity
2020-09-07 14:01:58 -07:00
Kubernetes Prow Robot
217d89a59f
Merge pull request #93843 from soulxu/fast_path_podaffinity
...
Fast return when no any matched anti-affinity terms
2020-09-04 03:31:55 -07:00
Yuan Chen
f6f9bf3e76
Update comments in pkg/scheduler/framework/v1alpha1/interface.go
2020-08-31 15:51:42 -07:00
Kubernetes Prow Robot
2382628f16
Merge pull request #93246 from lixiaobing1/lxb-remove-algorithm
...
remove some notes about scheduler/algorithm
2020-08-28 06:36:18 -07:00
Kubernetes Prow Robot
72350a3cf7
Merge pull request #93083 from Huang-Wei/dupe-import-alias
...
Remove duplicate path imports
2020-08-28 04:34:53 -07:00
Kubernetes Prow Robot
27c9bd4fd4
Merge pull request #92939 from yuanchen8911/patch-1
...
Fix an error in PreBindPlugin comment
2020-08-27 19:08:04 -07:00
Kubernetes Prow Robot
a4103dfeaf
Merge pull request #92819 from chendave/cleanup_machine
...
Change the node name from "machine" to "node"
2020-08-27 19:06:57 -07:00
Kubernetes Prow Robot
9062c43b76
Merge pull request #94211 from soulxu/cleanup_candidates
...
Initialize candidate directly instead of iterating the array of candidates
2020-08-27 16:08:06 -07:00
Kubernetes Prow Robot
a5160414e0
Merge pull request #93706 from SimpCosm/fix/scheduler-plugin-comment
...
Fix an error in NodeUnschedulable plugin comment
2020-08-27 16:06:48 -07:00
Kubernetes Prow Robot
19064f4738
Merge pull request #93669 from Mr-Linus/patch-1
...
Remove unnecessary conversion
2020-08-27 16:06:25 -07:00
He Jie Xu
0e8bd4c550
Initialize candidate directly instead of iterating the array of candidates
...
Using existing victimsMap to get the victims, then it is easy to build candidate
directly.
2020-08-27 23:29:36 +08:00
He Jie Xu
ccd8eb3b1b
Only process all nodes when incoming pod has no preferred affinity
...
Currently, in interpodaffinty plugin, it only processes all nodes when the incoming
pod with affinity. Actually, it only cares about all nodes when the incoming pod
with preferred affinity. Then it will reduces the number of nodes need to be
processed.
2020-08-25 16:13:17 +08:00
Linus Lee 李俊江
e55856048d
Remove unnecessary conversion
...
Update framework.go
Update framework.go
Update framework.go
remove unnecessary conversion
remove unnecessary conversion
remove unnecessary conversion
remove unnecessary conversion
2020-08-25 10:07:11 +08:00
Kubernetes Prow Robot
1c93be24ee
Merge pull request #93629 from cofyc/93009
...
fix flaky TestVolumeBinding unit test
2020-08-21 08:33:40 -07:00
Abdullah Gharaibeh
a8873e1a43
Track pods with required anti-affinity
...
This is a performance optimization that reduces the overhead of inter-pod affinity PreFilter calculaitons. Basically
eliminates that overhead when no pods in the cluster use required pod anti-affinity. This offered 20% improvement on 5k clusters for preferred anti-affinity benchmarks.
2020-08-21 10:09:21 -04:00
Aldo Culquicondor
dfe9e413d9
Keep track of remaining pods when a node is deleted.
...
The apiserver is expected to send pod deletion events that might arrive at a different time. However, sometimes a node could be recreated without its pods being deleted.
Partial revert of https://github.com/kubernetes/kubernetes/pull/86964
Signed-off-by: Aldo Culquicondor <acondor@google.com>
Change-Id: I51f683e5f05689b711c81ebff34e7118b5337571
2020-08-13 14:24:01 -04:00
lixiaobing1
7920de5b57
remove some notes about scheduler/algorithm
2020-08-13 10:01:54 +08:00
He Jie Xu
75ccb90407
Fast return when no any matched anti-affinity terms
...
When check the incoming pod's anti-affinity rules, there is change to
return early when there is no any matched anti-affinity terms in the
whole cluster.
2020-08-10 14:53:10 +08:00
houmin
868dd41a96
Fix an error in NodeUnschedulable plugin comment
2020-08-10 11:20:23 +08:00
Mike Dame
012245c5b9
Add LabelSelector validation in Pod Affinity/AntiAffinity Filter and Score plugins
...
The lack of this validation on incoming pods causes unpredictable cluster outcomes
when later calculating affinity results against existing pods (see #92714 ). This fix
quickly addresses the main source where these problems should be caught.
It is unfortunately difficult to add this validation directly to the API server due
to the fact that it may break migrations with existing pods that fail this check. This
is a compromise to address the current issue.
2020-08-07 12:17:40 -04:00
Shingo Omura
ef1fab7642
expose Run[Pre]ScorePlugins functions in PluginRunner interface
2020-08-04 22:50:13 +09:00
Yecheng Fu
96d0408a89
fix TestVolumeBinding unit test
2020-08-03 07:06:06 +08:00
Abdullah Gharaibeh
5e81a2de98
Optimize VolumeRestrictions scheduler plugin
2020-07-22 23:00:01 -04:00
Wei Huang
bc04d73330
remove duplicate path import
2020-07-14 16:34:09 -07:00
Wei Huang
4e8ccf0187
Refactor and expose common preemption functions
2020-07-11 23:17:21 -07:00
Kubernetes Prow Robot
d06ff65943
Merge pull request #92876 from Huang-Wei/pdbLister
...
Add pdbLister as a member field of struct DefaultPreemption
2020-07-11 20:57:42 -07:00
Kubernetes Prow Robot
016c2f64de
Merge pull request #92840 from adtac/listers
...
selectorspread: access listers in plugin instantiation
2020-07-11 20:56:23 -07:00
Kubernetes Prow Robot
36b4c2942b
Merge pull request #92815 from Huang-Wei/bypass-prefilter-svcaffinity
...
Bypass PreFilter in ServiceAfffinity if AffinityLabels arg is not present
2020-07-10 15:43:11 -07:00
Kubernetes Prow Robot
fbc9cf0894
Merge pull request #92797 from ahg-g/ahg-prefilter
...
Return a FitError when PreFilter fails with unschedulable status
2020-07-10 15:42:31 -07:00
Kubernetes Prow Robot
0cb7e320a5
Merge pull request #92784 from pohly/generic-ephemeral-inline-volumes
...
generic ephemeral inline volumes
2020-07-10 15:41:46 -07:00
Dave Chen
a1b2a7765d
Change the node name from "machine" to "node"
...
Latest change on master rename the node name from "machine" to "node"
but haven't update all the affected code, which causes some of testcases
invalid.
Signed-off-by: Dave Chen <dave.chen@arm.com>
2020-07-10 10:17:58 +08:00
Patrick Ohly
ff3e5e06a7
GenericEphemeralVolume: initial implementation
...
The implementation consists of
- identifying all places where VolumeSource.PersistentVolumeClaim has
a special meaning and then ensuring that the same code path is taken
for an ephemeral volume, with the ownership check
- adding a controller that produces the PVCs for each embedded
VolumeSource.EphemeralVolume
- relaxing the PVC protection controller such that it removes
the finalizer already before the pod is deleted (only
if the GenericEphemeralVolume feature is enabled): this is
needed to break a cycle where foreground deletion of the pod
blocks on removing the PVC, which waits for deletion of the pod
The controller was derived from the endpointslices controller.
2020-07-09 23:29:24 +02:00
Yuan Chen
57de07064f
Fix a typo in PreBindPlugin comment
...
"before a pod is being scheduled" ->" before a pod is bound"
2020-07-09 10:51:14 -07:00
Kubernetes Prow Robot
3a5e7ea986
Merge pull request #92752 from chendave/skip_preemption
...
Cut off the cost to run filter plugins when no victim pods are found
2020-07-09 09:10:10 -07:00
Kubernetes Prow Robot
70e09f2c24
Merge pull request #88842 from angao/fit-arg
...
add args for NodeResourcesFit plugin
2020-07-09 05:04:10 -07:00
Kubernetes Prow Robot
55d77ade67
Merge pull request #92489 from alculquicondor/sig-storage-ownership
...
Add SIG storage owner aliases
2020-07-09 00:05:20 -07:00
Kubernetes Prow Robot
94a08e159a
Merge pull request #92387 from pohly/csi-storage-capacity
...
CSI storage capacity check
2020-07-09 00:04:59 -07:00
Wei Huang
9d377eb655
Add pdbLister as a member field of struct DefaultPreemption
2020-07-07 12:25:53 -07:00
Adhityaa Chandrasekar
832a53acdb
selectorspread: access listers in plugin instantiation
2020-07-07 14:45:28 +00:00
Aldo Culquicondor
27ec356d76
Add SIG storage owner aliases
...
And give ownership to pkg/scheduler/framework/plugins/volumebinding
Signed-off-by: Aldo Culquicondor <acondor@google.com>
Change-Id: I4bd89b1745a2be0e458601056ab905bdd6692195
2020-07-07 10:26:16 -04:00
Dave Chen
028af0970f
Cut off the cost to run filter plugins when no victim pods are found
...
If no potential victims could be found, there is no need to evaluate the node
again, since its state didn't change.
It's safe to return and thus prevent scheduling from running the filter plugins
again.
NOTE:
A node that is filtered out by filter plugins could pass the filter plugins if
there is a change on that node, i.e. pods termination on that node.
Previously, this could be either caught by the normal `schedule` or `preempt` (pods
are terminated when the preemption logic tries to find the nodes and re-evaluate
the filter plugins.)
Actually, this shouldn't be taken care by the preemption, consider the routine
of `schedule` is always running when the interval is "zero", let `schedule`
take care of it will release `preempt` from something irrelevant with the `preemption`.
Due to above reason, couple of testcase as well as the logic of checking the existence
of victim pods are removed as it will never happen after the change.
Signed-off-by: Dave Chen <dave.chen@arm.com>
2020-07-07 09:55:34 +08:00
Abdullah Gharaibeh
c98dee4945
Return a FitError when PreFilter fails with unschedulable status
2020-07-06 15:02:07 -04:00
Patrick Ohly
0efbbe8555
CSIStorageCapacity: check for sufficient storage in volume binder
...
This uses the information provided by a CSI driver deployment for
checking whether a node has access to enough storage to create the
currently unbound volumes, if the CSI driver opts into that checking
with CSIDriver.Spec.VolumeCapacity != false.
This resolves a TODO from commit 95b530366a
.
2020-07-06 19:20:10 +02:00
Wei Huang
07583bf95b
Bypass PreFilter in ServiceAfffinity if AffinityLabels arg is not present
2020-07-05 23:37:04 -07:00
Kubernetes Prow Robot
86096addb1
Merge pull request #92689 from chendave/fix_testcase
...
Fix the nits found in the testcases of `PodTopologySpread`
2020-07-03 20:31:26 -07:00
Kubernetes Prow Robot
19883b50f8
Merge pull request #92604 from soulxu/fix_preemption_with_nominated_node
...
The Pod is eligible to preempt when previous nominanted node is UnschedulableAndUnresolvable
2020-07-03 05:03:01 -07:00
Dave Chen
3e65fe4378
Change the exception to avoid the cost of preemption
...
node's labels doesn't contain the required topologyKeys in `Constraints`
cannot be resolved by preempting the pods on that pods.
One use case that could easily reproduce the issue is,
- set `alwaysCheckAllPredicates` to true.
- one node contains all the required topologyKeys but is failed in predicates
such as 'taint'.
- another node doesn't hold all the required topologyKeys, and thus return `Unschedulable`
status code.
- scheduler will try to preempt the pods on the above node with lower priorities.
Signed-off-by: Dave Chen <dave.chen@arm.com>
2020-07-03 10:17:31 +08:00
He Jie Xu
b3741f344e
The Pod is eligible to preempt when previous nominanted node is UnschedulableAndUnresolvable
...
If the Pod's previous nominated node is UnschedulableAndUnresolvable from previous
filtering, it should be considered for preemption again.
2020-07-03 08:57:45 +08:00
Dave Chen
41fd19760e
Fix the nits found in the testcases of PodTopologySpread
...
Signed-off-by: Dave Chen <dave.chen@arm.com>
2020-07-02 12:37:46 +08:00
Wei Huang
7362fccdd7
Polish unit tests of defaultpreemptio plugin
2020-06-30 14:05:48 -07:00
Kubernetes Prow Robot
784b0738b5
Merge pull request #92578 from zhouya0/fix_preemt_comment
...
Fix scheduler preemt function comment
2020-06-29 18:35:27 -07:00
Kubernetes Prow Robot
281023790f
Merge pull request #92501 from rakeshreddybandi/rename-plugin
...
Rename DefaultPodTopologySpread plugin #91994
2020-06-29 18:34:58 -07:00
zhouya0
59f9a7d81e
Fix preemt function comment
2020-06-28 18:29:55 +08:00
Kubernetes Prow Robot
4fc5c1eda2
Merge pull request #92391 from adtac/adtac/reserve-failure
...
scheduler: run Unreserve if Reserve fails
2020-06-27 16:04:14 -07:00
RAKESH REDDY BANDI
d44a20f9ca
Rename DefaultPodTopologySpread plugin #91994
2020-06-27 13:46:31 -04:00
Kubernetes Prow Robot
ad29e168dc
Merge pull request #92108 from Huang-Wei/postfilter-impl-4
...
[postfilter-impl-4] Move Preempt() to defaultpreemption package.
2020-06-27 09:02:15 -07:00
Adhityaa Chandrasekar
1b223b861a
scheduler: run Unreserve if Reserve fails
...
If a reserve plugin's Reserve method returns an error, there could be
previously allocated resources from successfully completed reserve
plugins that must be unallocated by the corresponding Unreserve
operation. Since Unreserve operations are idempotent, this patch runs
the Unreserve operation of ALL reserve plugins when a Reserve operation
fails.
2020-06-26 20:41:33 +00: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
Adhityaa Chandrasekar
ec83143342
scheduler: merge Reserve and Unreserve plugins
...
Previously, separate interfaces were defined for Reserve and Unreserve
plugins. However, in nearly all cases, a plugin that allocates a
resource using Reserve will likely want to register itself for Unreserve
as well in order to free the allocated resource at the end of a failed
scheduling/binding cycle. Having separate plugins for Reserve and
Unreserve also adds unnecessary config toil. To that end, this patch
aims to merge the two plugins into a single interface called a
ReservePlugin that requires implementing both the Reserve and Unreserve
methods.
2020-06-24 21:10:35 +00:00
Kubernetes Prow Robot
8adcd7978e
Merge pull request #92268 from alculquicondor/ext-point-profile
...
Add profile label to framework_extension_point_duration_seconds
2020-06-24 13:31:37 -07:00
Kubernetes Prow Robot
c6d2b223fb
Merge pull request #92222 from cofyc/fix92186
...
Share pod volume binding cache via framework.CycleState
2020-06-24 13:31:21 -07:00
Yecheng Fu
f899976b41
fixup
2020-06-24 14:14:03 +08:00
Aldo Culquicondor
698eda3079
Add profile label to scheduler extension point metrics
...
Signed-off-by: Aldo Culquicondor <acondor@google.com>
2020-06-23 15:30:22 -04:00
Yecheng Fu
22d874993c
build files
2020-06-23 22:18:33 +08:00
Yecheng Fu
4627b419b4
tests only
2020-06-23 22:18:33 +08:00
Yecheng Fu
ee4d7410be
Share pod volume binding cache via framework.CycleState
2020-06-23 22:18:33 +08:00
Dave Chen
e1d61b621a
Scheduler: remove the misleading comments in NodeResourcesBalancedAllocation
...
Signed-off-by: Dave Chen dave.chen@arm.com
2020-06-23 17:33:02 +08:00
Wei Huang
d99cc01646
Register and enable defaultpreemption plugin
...
- Enable defaultpreemption as a PostFilter plugin
- Remote legacy hard-coded preemption logic
2020-06-22 17:22:27 -07:00
Ali Farah
a22e115a0e
Split scheduler framework implementation into new runtime package
2020-06-22 00:23:43 +10:00
Kubernetes Prow Robot
5ed7b1afb8
Merge pull request #92012 from Huang-Wei/postfilter-impl-2
...
[postfilter-impl-2] Introduce a defaultpreemption PostFilter plugin
2020-06-19 21:51:42 -07:00
Kubernetes Prow Robot
9c3f648300
Merge pull request #91705 from mrkm4ntr/revert-assumed-in-unreserve
...
Revert assumed PVs and PVCs in unreserve extension point
2020-06-19 21:50:54 -07:00
Kubernetes Prow Robot
5968bc4653
Merge pull request #92247 from chendave/skiptopology
...
Skip `PreScore` when the `TopologySpreadConstraints` is specified
2020-06-19 11:37:44 -07: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
Shintaro Murakami
79ab958996
Revert assumed PVs and PVCs in unreserve extension point
2020-06-19 17:39:42 +09:00
Dave Chen
068c69d743
Skip PreScore
when the TopologySpreadConstraints
is specified
...
`DefaultPodTopologySpread` need't score when the `TopologySpreadConstraints`
is specified.
`PreScore` needn't do this as well, this cut off the cost of `PreScore` if
possible.
Signed-off-by: Dave Chen <dave.chen@arm.com>
2020-06-18 18:01:56 +08:00
Dave Chen
9ebd872e71
Explicitly declare the interfaces for extension points
...
This make it easier to catch the issue during the compilation, also,
this also align with other plugins, i.e. plugin of "InterPodAffinity".
Signed-off-by: Dave Chen <dave.chen@arm.com>
2020-06-17 15:11:44 +08:00
Dave Chen
8f0c329758
cleanup: update invalid comments in plugin of InterPodAffinity
...
Signed-off-by: Dave Chen <dave.chen@arm.com>
2020-06-16 14:11:59 +08:00
Yecheng Fu
814a6f2acd
remove FakeVolumeBinderConfig and test new statues and states
2020-06-12 10:00:19 +08:00
Yecheng Fu
c4138361e4
Fail fast in PreFilter phase and return UnschedulableAndUnresolvable if immediate PVCs are not bound
2020-06-12 10:00:19 +08: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
Kubernetes Prow Robot
5372e017b6
Merge pull request #92003 from mattcary/format-plugins
...
Remove warning about misuse of %w
2020-06-10 22:44:02 -07:00
Wei Huang
7dfabd7af6
Expose EventRecorder to scheduler FrameworkHandle
2020-06-10 18:27:21 -07:00
Matthew Cary
ee9e6a3bcc
Remove warning about misuse of %w
2020-06-10 14:58:55 -07:00
Kubernetes Prow Robot
418c2cbb45
Merge pull request #91918 from alculquicondor/new_max_skew
...
Use maxSkew in PodTopologySpread scoring as tolerance to skew
2020-06-10 04:40:21 -07:00
Wen Gao
b21b298074
add arg for noderesourcesfit plugin to support ignore a group of extended resources
2020-06-10 10:52:54 +08:00
Kubernetes Prow Robot
1cbb5d1e51
Merge pull request #91894 from chendave/podaffinity_comments
...
Fix the incorrect error message of `InterPodAffinity` plugin
2020-06-08 21:44:45 -07:00
Kubernetes Prow Robot
de1a277185
Merge pull request #91735 from gpldirk/tps-comment
...
fix minor comment in podtopologyspread scoring test
2020-06-08 21:43:48 -07:00
Aldo Culquicondor
d353cc1532
Use maxSkew in PodTopologySpread scoring as tolerance to skew
...
This new approach results in better spreading for small number of pods, while still giving meaning to the maxSkew parameter.
Signed-off-by: Aldo Culquicondor <acondor@google.com>
2020-06-08 16:25:59 -04:00
SataQiu
932e61aefa
deprecate ResourceLimitsPriorityFunction feature gate in the scheduler
...
Signed-off-by: SataQiu <1527062125@qq.com>
2020-06-08 22:20:14 +08:00
Dave Chen
02fb3387a0
Fix the incorrect error message of InterPodAffinity
plugin
...
A line of copy/paste code firstly from the method named `buildTopologyPairToScore`.
Signed-off-by: Dave Chen <dave.chen@arm.com>
2020-06-08 16:39:19 +08:00
Wei Huang
69b9ba6012
Introduce PostFilter extension point
2020-06-05 13:23:45 -07:00
Wei Huang
7f178b2831
Adjust weight of PodTopologySpread to 2 in legacy Policy API
2020-06-04 07:35:25 -07:00
gpldirk
6a26f76add
fix minor comment in podtopologyspread scoring test
2020-06-03 16:03:10 +00:00
Wei Huang
133dde6358
Remove EvenPodsSpread
featuregate and related logic
2020-06-02 11:24:12 -07:00
Kubernetes Prow Robot
413bc1a1d2
Merge pull request #91138 from chendave/imagelocality
...
Define the thresholds per the size of container images
2020-05-31 16:17:53 -07:00
Dave Chen
42fbb1d72f
Define the thresholds per the size of container images
...
Given the assumption that 90% of images on dockerhub drops into this range (23~1000)MB,
this assumption is based on the container images instead of the pod.
pod might hold multiple container images, it's better to multiply the assumption by the size
of container images.
Signed-off-by: Dave Chen <dave.chen@arm.com>
2020-05-30 20:57:50 +08:00
Wei Huang
1837b49554
Scheduler PostFilter API
2020-05-29 18:18:00 -07:00
Dave Chen
649523ce91
cleanup: remove useless methods
...
`BuildArgs` is not used anywhere and the `args` can be directly got from
the instance instead of defining a method to do that.
Signed-off-by: Dave Chen <dave.chen@arm.com>
2020-05-29 10:41:54 +08:00
Kubernetes Prow Robot
c682b313d9
Merge pull request #91420 from pancernik/scheduler-config-v1beta1
...
Promote kubescheduler.config.k8s.io to v1betav1
2020-05-28 12:24:39 -07:00
Kubernetes Prow Robot
b0e0692490
Merge pull request #91446 from pancernik/scheduler-plugin-args-validation-nr
...
Move Node Resources scheduler plugin args validation to apis/config/validation
2020-05-26 19:13:18 -07:00
Kubernetes Prow Robot
5217fa2299
Merge pull request #91462 from lo24/fwk-typo
...
fix typo in scheduler framework
2020-05-26 16:49:05 -07:00
Rafal Wicha
3ffd71c4a2
Move Node Resources scheduler plugin args validation to apis/config/validation
2020-05-26 22:37:16 +01:00
Wei Huang
59eff29d22
- Add Extenders() and PluginsRunner interface to PreemptHandle
...
- Make some private functions stateless
- make addNominatedPods() not dependent on genericScheduler
- make addNominatedPods() not dependent on genericScheduler
- make selectVictimsOnNode() not dependent on genericScheduler
- make selectNodesForPreemption() not dependent on genericScheduler
2020-05-26 10:00:45 -07:00
lo24
4caae61f03
fix typo in scheduler framework
2020-05-26 16:00:22 +00:00
Rafal Wicha
852442c0ff
Promote kubescheduler.config.k8s.io to v1betav1
2020-05-25 22:25:57 +01:00
Kubernetes Prow Robot
7a30cf8046
Merge pull request #91241 from pancernik/scheduler-plugin-args-validation
...
Move Scheduler plugin args validation to apis/config/validation
2020-05-25 13:43:11 -07:00
Rafal Wicha
85be9c1673
Move Scheduler plugin args validation to apis/config/validation
2020-05-25 16:27:21 +01:00
Dave Chen
84915d1623
Expose the issue that max threshold haven't considered container size
...
Signed-off-by: Dave Chen <dave.chen@arm.com>
2020-05-25 17:31:47 +08:00
Yecheng Fu
0a3d55f2e0
Add versioned counterparts for VolumeBindingArgs
2020-05-22 09:30:52 +08:00
Kubernetes Prow Robot
d871ab9690
Merge pull request #91278 from chendave/testcase
...
scheduler: Expand testcases to cover more plugin defaults
2020-05-20 19:41:39 -07:00
Kubernetes Prow Robot
f7a6e9e2f1
Merge pull request #91175 from Huang-Wei/volume-binding-leftover
...
Cleanup volume binding leftover
2020-05-20 19:41:10 -07:00
Wei Huang
f4b726237a
Add function NominatedPodsForNode to PodNominator interface.
...
- replace SchedulingQueue with PodNominator in genericScheduler.
2020-05-20 14:05:18 -07:00
Wei Huang
b6d5a3328a
cleanup volume binding leftover
2020-05-20 10:30:22 -07:00
Dave Chen
c74a5d4fe2
scheduler: Expand testcases to cover more plugin defaults
...
Signed-off-by: Dave Chen <dave.chen@arm.com>
2020-05-20 12:37:06 +08:00
Kubernetes Prow Robot
4310732c55
Merge pull request #91102 from chendave/capacity_ratio
...
Move `RequestedToCapacityRatio` Args defaults to versioned packages
2020-05-19 20:35:20 -07:00
Kubernetes Prow Robot
0746f165bd
Merge pull request #91229 from ahg-g/ahg-affinity3
...
Eliminate locking in (anti)affinity calculations
2020-05-19 16:32:42 -07:00
Kubernetes Prow Robot
2185064307
Merge pull request #90356 from Huang-Wei/prefactor-preemption-nompods-interface
...
Extract logic related with scheduler nominatedPods to an interface
2020-05-18 20:03:36 -07:00
Abdullah Gharaibeh
4ff554ba83
Eliminate locking in (anti)affinity calculations
2020-05-18 22:37:37 -04:00
Kubernetes Prow Robot
9eb097c4b0
Merge pull request #91168 from ahg-g/ahg-affinity5
...
First pod with affinity can schedule only on nodes with matching topology keys
2020-05-18 16:29:51 -07:00
Abdullah Gharaibeh
5d2c05408d
First pod with affinity can schedule only on nodes with matching topology keys
2020-05-18 15:15:09 -04:00
Wei Huang
bd184035c4
Extract logic related with scheduler nominatedPods to an interface
...
- rename `UpdateNominatedPodForNode` to `AddNominatedPod`
- promote `update` to `UpdateNominatedPod`
- anonymous lock in nominatedMap
- pass PodNominator as an option to NewFramework
2020-05-18 10:29:08 -07:00
Dave Chen
838a0a8c03
Move RequestedToCapacityRatio
Args defaults to versioned packages
...
Signed-off-by: Dave Chen <dave.chen@arm.com>
2020-05-18 14:19:39 +08:00
Kubernetes Prow Robot
b170451caa
Merge pull request #90183 from dims/update-kubernetes-to-klog-v2
...
Update kubernetes to klog v2
2020-05-16 18:59:51 -07:00
Kubernetes Prow Robot
7f0c05b909
Merge pull request #90544 from chendave/weight
...
configurable weight on the CPU and memory
2020-05-16 07:36:30 -07:00
Kubernetes Prow Robot
9769e0f5da
Merge pull request #90008 from gavinfish/scheduler-utilparsers
...
Scheduler: remove direct import to /pkg/util/parsers
2020-05-16 07:35:49 -07:00
Davanum Srinivas
07d88617e5
Run hack/update-vendor.sh
...
Signed-off-by: Davanum Srinivas <davanum@gmail.com>
2020-05-16 07:54:33 -04:00
Davanum Srinivas
442a69c3bd
switch over k/k to use klog v2
...
Signed-off-by: Davanum Srinivas <davanum@gmail.com>
2020-05-16 07:54:27 -04:00
Dave Chen
621c73b984
Configurable weight on the CPU and memory
...
This change also make it possible to score the resources beyond the "cpu"
and "memory" which is currently listed in "defaultRequestedRatioResources".
Signed-off-by: Dave Chen <dave.chen@arm.com>
2020-05-15 22:26:30 +08:00
Abdullah Gharaibeh
087839daf7
Added pre-processed preferred affinity terms to scheduler's PodInfo type.
2020-05-15 09:00:56 -04:00
Kubernetes Prow Robot
71277de4d6
Merge pull request #91069 from alculquicondor/bind_ctx
...
Use passed context in default binder
2020-05-15 02:49:28 -07:00
Kubernetes Prow Robot
c453be845a
Merge pull request #91062 from ahg-g/ahg-affinity1
...
Added pre-processed required affinity terms to scheduler's PodInfo type.
2020-05-15 02:49:07 -07:00
Kubernetes Prow Robot
57b79e3fb4
Merge pull request #91037 from Huang-Wei/prefactor-PreemptExtender
...
Refactor preemption extender logic and move SchedulerExtender interface to framework pkg
2020-05-15 02:48:30 -07:00
Kubernetes Prow Robot
95e598586e
Merge pull request #91016 from chendave/nits
...
Fix nits in comments for NodeResources plugins
2020-05-15 02:48:02 -07:00
Abdullah Gharaibeh
5e0211c72d
Added pre-processed required affinity terms to scheduler's PodInfo type.
2020-05-14 10:30:42 -04:00
Dave Chen
6b9fb2c591
Fix nits in comments for NodeResources plugins
2020-05-14 18:45:59 +08:00
Wei Huang
eb17b7559c
move SchedulerExtender interface to pkg/scheduler/framework/v1alpha1
2020-05-13 13:09:13 -07:00
Wei Huang
e4f878ea3a
cleanup: use string instead of v1.Node as key of nodeToVictims
2020-05-13 13:08:20 -07:00
Aldo Culquicondor
78fca663ce
Use passed context in default binder
...
Signed-off-by: Aldo Culquicondor <acondor@google.com>
2020-05-13 11:36:14 -04:00
Yecheng Fu
85a8740d9b
scheduler/volumebinding: auto-generated files only
2020-05-12 10:13:06 +08:00
Yecheng Fu
c14b749521
scheduler/volumebinding: move all volume binding logic into VolumeBinding plugin
2020-05-12 10:13:05 +08:00
Kubernetes Prow Robot
e6e29fbbc3
Merge pull request #90820 from alculquicondor/score-max-skew
...
Use maxSkew in score calculation
2020-05-08 18:28:19 -07:00
Aldo Culquicondor
516c8fbfad
Use maxSkew in score calculation
...
Signed-off-by: Aldo Culquicondor <acondor@google.com>
2020-05-08 09:34:45 -04:00
Aldo Culquicondor
2935480cc8
Move Plugin Args defaults to versioned packages
...
Signed-off-by: Aldo Culquicondor <acondor@google.com>
2020-05-06 18:00:23 -04:00
Kubernetes Prow Robot
594cbdfd19
Merge pull request #89508 from KobayashiD27/test-coverage-up
...
Add test case to improve the test coverage.
2020-05-01 13:00:31 -07:00
Kubernetes Prow Robot
ba43630708
Merge pull request #90475 from alculquicondor/topology-scoring
...
Topology spreading scoring with automatically weighted topologies
2020-05-01 00:40:04 -07:00
Kubernetes Prow Robot
8dd93ca94c
Merge pull request #90309 from alculquicondor/plugin-args-decoding
...
Use internal config types in scheduling plugin args
2020-04-30 05:32:18 -07:00
Kubernetes Prow Robot
863ce9726e
Merge pull request #90295 from tanjunchen/pkg/scheduler/framework/plugins/-20200420
...
pkg/scheduler/framework/plugins/:fix unconsistent comments and make log more clear
2020-04-29 18:30:18 -07:00
Aldo Culquicondor
98d1e241f1
Use internal config types in scheduling plugin args
...
Signed-off-by: Aldo Culquicondor <acondor@google.com>
2020-04-29 17:07:10 -04:00
Aldo Culquicondor
1aaa5fcc80
Topology scoring with dynamically weighted topologies
...
Signed-off-by: Aldo Culquicondor <acondor@google.com>
2020-04-29 09:55:52 -04:00
Kubernetes Prow Robot
fabe9cddf1
Merge pull request #90467 from Huang-Wei/honor-runAllFilters
...
Simplify status handling of scheduler RunFilterPlugins
2020-04-27 22:26:43 -07:00
Aldo Culquicondor
a9461fe6f5
spreading: Store ignored instead of qualifying nodes
...
Signed-off-by: Aldo Culquicondor <acondor@google.com>
2020-04-27 13:18:34 -04:00
drfish
0b715ea690
Scheduler: remove direct import to /pkg/util/parsers
2020-04-26 23:41:52 +08:00
Wei Huang
92ba2a4e09
Simplify status handling of scheduler RunFilterPlugins
2020-04-24 12:16:42 -07:00
Kubernetes Prow Robot
277f7614ea
Merge pull request #90203 from tanjunchen/remove-repeat-test-sche
...
/pkg/scheduler/framework/plugins/ : remove the repeat test example and add an test example
2020-04-24 12:15:20 -07:00
tanjunchen
0e38ba0ef6
pkg/scheduler/framework/:fix unconsistent comments and make log more clear
2020-04-24 11:17:11 +08:00
Kubernetes Prow Robot
b850b5ce2e
Merge pull request #89222 from fengzixu/master
...
bugfix: initcontainer is also taken into account when calculating resource requests
2020-04-23 00:45:44 -07:00
Abdullah Gharaibeh
57585640e8
change scheduler's framework PodLister to PodInfoLister
2020-04-22 19:25:27 -04:00
fengzixu
d54822d193
bugfix: initcontainer wasn't considered when calculate resource request
2020-04-23 02:08:33 +09:00
Abdullah Gharaibeh
a151682887
Split scheduler's PodInfo into two types, PodInfo and PodQueueInfo
2020-04-21 21:45:20 -04:00
Gaurav Singh
31afb24244
[Scheduler] Map deletion complexity: log(n) => O(1)
2020-04-19 11:31:55 -04:00
tanjunchen
6180d701cc
/pkg/scheduler/framework/plugins/ : remove the repeat test example and add an test example
2020-04-17 09:24:45 +08:00
Rafal Wicha
b511fa8627
Add PodTopologySpread plugin arg types to kube-scheduler.config.k8s.io
2020-04-16 16:26:27 +01:00
Kubernetes Prow Robot
b35fdbc037
Merge pull request #89904 from alculquicondor/raw-extension-plugin-args
...
Use RawExtension and Object for external and internal, respectively, scheduling plugin args
2020-04-15 15:22:59 -07:00
Aldo Culquicondor
ce05382b58
Use RawExtension and Object for external and internal scheduling plugin args, respectively
...
Signed-off-by: Aldo Culquicondor <acondor@google.com>
2020-04-14 13:44:42 -04:00
Abdullah Gharaibeh
bed9b2f23b
Cleanup obsolete NodeInfo methods
2020-04-12 18:13:46 -04:00
Kubernetes Prow Robot
de5508839d
Merge pull request #90037 from angao/redundant
...
remove redundant code
2020-04-11 03:29:47 -07:00
Wen Gao
65b43e5d10
remove redundant code
2020-04-10 10:59:30 +08:00
Abdullah Gharaibeh
2c51c13620
Scheduler NodeInfo cleanup
2020-04-09 19:03:51 -04:00
Kubernetes Prow Robot
0c9245a29f
Merge pull request #89974 from ahg-g/ahg-info
...
scheduler's NodeInfo tracks PodInfos instead of Pods
2020-04-09 09:19:58 -07:00
Abdullah Gharaibeh
b8ddd00312
scheduler's NodeInfo tracks PodInfos instead of Pods
2020-04-08 17:53:20 -04:00
Rafał Wicha
c4d20ca8a8
Add types for Scheduler plugin args to kube-scheduler.config.k8s.io
2020-04-08 20:23:56 +01:00
Abdullah Gharaibeh
a5d8172715
move nodeinfo type to framework pkg
2020-04-07 10:25:24 -04:00
Harsh Singh
015d06bf41
Internal channels for scheduler
2020-04-04 02:30:16 +05:30
Abdullah Gharaibeh
ed3fe054df
move scheduler nodeinfo to pkg/scheduler/types
2020-03-31 21:02:09 -04:00
Aldo Culquicondor
93fc02cf54
Set initial map size
...
Signed-off-by: Aldo Culquicondor <acondor@google.com>
2020-03-31 15:48:34 -04:00
Aldo Culquicondor
65d9f81758
Replace lock with atomic updates in spreading filter
...
Signed-off-by: Aldo Culquicondor <acondor@google.com>
2020-03-31 15:48:32 -04:00
Aldo Culquicondor
275da7afc0
Benchmark for topology spreading filter
...
Signed-off-by: Aldo Culquicondor <acondor@google.com>
2020-03-31 15:12:22 -04:00
Kubernetes Prow Robot
59c66dab8c
Merge pull request #89487 from alculquicondor/per_node_spreading
...
Optimize preferred spreading for hostname topology
2020-03-30 08:21:54 -07:00
Aldo Culquicondor
d2b1903149
Calculate scores in parallel on spreading benchmarks
...
This is closer to what happens in the core scheduler
Signed-off-by: Aldo Culquicondor <acondor@google.com>
2020-03-26 15:33:50 -04:00
Kubernetes Prow Robot
894916b665
Merge pull request #89459 from chendave/scorer_desc
...
Trival fix: update the desc on the score plugins
2020-03-26 07:56:39 -07:00
Kobayashi Daisuke
9d6235c54e
Add test case to improve the test coverage.
2020-03-26 17:34:38 +09:00
Wei Huang
06f48a988f
Print detailed score results on verbose level 10
2020-03-25 10:46:28 -07:00
Aldo Culquicondor
4b31b55499
Count spreading node matches for hostname topology in Score
2020-03-25 13:29:27 -04:00
Kubernetes Prow Robot
d00f9c7c10
Merge pull request #89338 from skilxn-go/AddCompatibilityTestForPluginArgs
...
Add compatibility tests for plugin arguments
2020-03-25 08:49:03 -07:00
Dave Chen
4ab7be43ce
Trival fix: update the desc on the score plugins
...
For whatever the reason, the max score has been updated from "10"
to "100"
2020-03-25 12:09:09 +08:00
Kubernetes Prow Robot
c58a3757cb
Merge pull request #89365 from notpad/feature/zone_label_ga
...
Add check for volume zone GA labels
2020-03-24 15:27:34 -07:00
Aldo Culquicondor
e902e70d0d
Use sqrt(n) chunk size in pod affinity and core scheduler
2020-03-24 10:29:59 -04:00
Aldo Culquicondor
36efa035e2
Add chunk size option to ParallelizeUntil
...
Signed-off-by: Aldo Culquicondor <acondor@google.com>
2020-03-24 10:29:59 -04:00
skilxn-go
e0adb0ead9
Add compatibility tests for plugin config
2020-03-24 22:17:16 +08:00
notpad
98405a8bd9
Add check for volume zone GA labels
2020-03-24 21:11:25 +08:00
Kubernetes Prow Robot
fe2fdcd695
Merge pull request #89162 from alculquicondor/affinity-less-lock
...
Reduce locking when calculating affinity scores
2020-03-19 15:04:35 -07:00
Kubernetes Prow Robot
abe4dea072
Merge pull request #89149 from notpad/fix_comment
...
Fix comments
2020-03-19 08:27:23 -07:00
Kubernetes Prow Robot
ad2a1054b0
Merge pull request #88717 from mosesyou/dev-boris
...
Add unit test TestListPlugins for the scheduler
2020-03-17 16:21:55 -07:00
Aldo Culquicondor
d0dc178ab8
Reduce locking when calculating affinity scores
...
Signed-off-by: Aldo Culquicondor <acondor@google.com>
2020-03-17 15:46:01 -04:00
notpad
a043bc438d
Fix comments
2020-03-16 11:58:27 +08:00
mosesyou
d874275fb7
Add unit test TestListPlugins for the scheduler
2020-03-09 15:33:42 +08:00
Jordan Liggitt
d8abacba40
client-go: update expansions callers
2020-03-06 16:50:41 -05:00
Aldo Culquicondor
13fa48e592
Disallow duplicate PluginConfig in framework creation
...
Signed-off-by: Aldo Culquicondor <acondor@google.com>
2020-03-05 14:51:41 -05:00
Kubernetes Prow Robot
c51ad0cb61
Merge pull request #88735 from pancernik/plugin-args-api-improvements
...
Improve plugin args JSON tags
2020-03-02 14:51:06 -08:00
Aldo Culquicondor
73ad38593a
Add default constraints to PodTopologySpread
...
And update benchmark for even pod spreading to use default constraints
Signed-off-by: Aldo Culquicondor <acondor@google.com>
2020-03-02 13:50:21 -05:00
Rafal Wicha
09598d48f6
Improve plugin args JSON tags
2020-03-02 15:20:44 +00:00
louisgong
c6b94e4606
refactor volume binder
2020-02-29 12:03:39 +08:00
Kubernetes Prow Robot
901a884c71
Merge pull request #88338 from egernst/PodOverhead-beta
...
Upgrade PodOverhead to beta
2020-02-28 15:12:40 -08:00
Patrick Ohly
6329b17d2f
volume scheduler: introduce special string type
...
This makes it possible to search for the special strings more easily
(https://github.com/kubernetes/kubernetes/pull/88230#discussion_r382367043 ).
2020-02-28 10:09:19 +01:00
Patrick Ohly
6eb0b034ac
volume scheduler: move reason strings into volume code
...
The scheduler doesn't really need to know in detail which reasons
rendered a node unusable for a node. All it needs from the volume
binder is a list of reasons that it then can present to the user.
This seems a bit cleaner. But the main reason for the change is that
it simplifies the checking of CSI inline volumes and perhaps later
capacity checking. Both will lead to new failure reasons, which then
can be added without changing the interface.
2020-02-28 10:09:18 +01:00
Eric Ernst
991909fdfb
PodOverhead: remove feature gate override in tests
...
PodOverhead is now a beta feature and set to true by default. No need to
override to true during testing.
Signed-off-by: Eric Ernst <eric.ernst@intel.com>
2020-02-27 17:27:06 +00:00
Kubernetes Prow Robot
48a4da8a19
Merge pull request #88589 from alculquicondor/cleanup/spread
...
Test PodTopologySpread.{PreFilter,PreScore} instead of internal pre-processing
2020-02-26 19:40:11 -08:00
Aldo Culquicondor
fd5b298c50
Test PodTopologySpread.PreScore instead of internal pre-processing.
...
Signed-off-by: Aldo Culquicondor <acondor@google.com>
2020-02-26 16:25:01 -05:00
Aldo Culquicondor
0e46803e77
Test PodTopologySpread.PreFilter instead of internal pre-processing.
...
Signed-off-by: Aldo Culquicondor <acondor@google.com>
2020-02-26 16:17:17 -05:00
skilxn-go
e8245d6fd9
Add unit test for framework plugin configuration
2020-02-26 23:57:07 +08:00
Kubernetes Prow Robot
fc573f98fb
Merge pull request #88030 from alculquicondor/ipa_build_args
...
Exposing InterPodAffinity build args
2020-02-20 22:34:32 -08:00
Mateusz
d221d82eaf
run permit plugins in the scheduling cycle
2020-02-18 10:04:23 -08:00
Aldo Culquicondor
c8377ef7db
Add BuildArgs to interpodaffinity plugin
...
Signed-off-by: Aldo Culquicondor <acondor@google.com>
2020-02-18 09:55:06 -05:00
skilxn-go
8fd0d8028f
Remove FilteredNodesStatuses
argument from PreScore
interface
2020-02-15 13:53:04 +08:00
Aldo Culquicondor
99bda6fac0
Remove HardPodAffinityWeight from v1alpha2
...
Signed-off-by: Aldo Culquicondor <acondor@google.com>
2020-02-13 11:59:56 -05:00
Aldo Culquicondor
666bc6aeb4
Scheduler: Exclude plugin config for empty policy arguments
...
Signed-off-by: Aldo Culquicondor <acondor@google.com>
2020-02-13 11:11:47 -05:00
skilxn-go
f5b7e3cca3
Rename PostFilter
plugin to PreScore
2020-02-12 23:25:08 +08:00
Kubernetes Prow Robot
574acbe310
Merge pull request #87847 from notpad/feature/slow_path
...
Cleanup "slow-path" logic in scheduler Filters
2020-02-11 06:46:04 -08:00
notpad
fb895056c6
Add test
2020-02-11 16:51:21 +08:00
Kubernetes Prow Robot
db9123e50e
Merge pull request #87936 from Huang-Wei/waitingPods-glitch
...
Refine WaitingPod interface for scheduler Permit plugin
2020-02-10 09:23:54 -08:00
notpad
a7057f8df0
Cleanup "slow-path" logic in scheduler Filters
2020-02-10 22:48:49 +08:00
Wei Huang
b8e2b0d990
Refine WaitingPod interface
2020-02-07 16:32:48 -08:00
Kubernetes Prow Robot
7cfa396e7c
Merge pull request #87725 from alculquicondor/rm_affinity_weight
...
Add defaults to pod affinity args
2020-02-07 12:32:17 -08:00
Kubernetes Prow Robot
fc6f878a65
Merge pull request #87845 from Huang-Wei/pts-exclude-terminating-pods
...
PodTopologySpread plugin now excludes terminatingPods
2020-02-07 00:08:20 -08:00
Wei Huang
815206685c
PodTopologySpread excludes terminatingPods when making scheduling decision
2020-02-06 07:38:50 -08:00
Abdullah Gharaibeh
0a476eb7d4
reduce overhead of error message formatting and allocation for scheudler NodeResource filter
2020-02-04 11:02:29 -05:00
Aldo Culquicondor
60c972098c
Add defaults to pod affinity args
...
And remove pod affinity parameter from algorithm provider registry
Signed-off-by: Aldo Culquicondor <acondor@google.com>
2020-02-03 14:58:28 -05:00
Somtochi Onyekwere
0e00e0af11
Adds more unit test on Bind extension for the scheduler
2020-01-31 22:37:22 +01:00
skilxn-go
a4d1624fec
Skip default spreading scoring plugin for pods that define TopologySpreadConstraints
2020-01-28 22:25:03 +08:00
Kubernetes Prow Robot
93b2e42124
Merge pull request #87455 from SomtochiAma/scheduler-unit-tests
...
Adds unit test on Bind extension for the scheduler
2020-01-25 14:29:01 -08:00
Kubernetes Prow Robot
2cd685a020
Merge pull request #87250 from starizard/adding-taint-toleration-error-reasons
...
Adding taint toleration error reasons
2020-01-25 01:23:01 -08:00
Somtochi Onyekwere
8ae868b4e0
Adds more test cases in TestRunBindPlugins for the scheduler
2020-01-25 00:22:07 +01:00
Shawn Rebello
22bd26fefb
Adding taint toleration error reasons
2020-01-24 02:50:55 +05:30
Kubernetes Prow Robot
f409793eb6
Merge pull request #87458 from liu-cong/framework-metrics-new
...
Record overall Filter latency for all nodes in a scheduling cycle.
2020-01-22 14:48:50 -08:00
Aldo Culquicondor
4a5ab84dcc
Move default binding to a plugin
...
Signed-off-by: Aldo Culquicondor <acondor@google.com>
2020-01-22 14:13:33 -05:00
Cong Liu
e0aeb4d6a3
Record overall Filter latency for all nodes in a scheduling cycle.
2020-01-22 13:46:38 -05:00
Haosdent Huang
50d511d4b8
Deprecate scheduler's framework.plugins.RegistryArgs
2020-01-21 23:50:58 +08:00
Aldo Culquicondor
f53d7e55df
Move Snapshot from nodeinfo/snapshot to internal/cache
...
Signed-off-by: Aldo Culquicondor <acondor@google.com>
2020-01-17 13:29:41 -05:00
Wei Huang
c712230ac1
Implement default queue sort logic as a scheduler plugin
2020-01-16 19:10:43 -08:00
Abdullah Gharaibeh
fb66e807cd
Remove scheduler framework dependency on predicates package
2020-01-13 13:02:31 -05:00
Kubernetes Prow Robot
dc2099ea11
Merge pull request #87055 from denkensk/clean-unused-predicate-error
...
Cleanup unused predicate error types.
2020-01-10 12:25:16 -08:00
Kubernetes Prow Robot
942b526e5c
Merge pull request #87051 from Huang-Wei/remove-prio-util-pkg
...
Remove scheduler/algorithm/priorities/util package
2020-01-10 12:25:01 -08:00
Kubernetes Prow Robot
9269b5d430
Merge pull request #87014 from notpad/fix/comments
...
Fix comment
2020-01-09 21:58:55 -08:00
Alex Wang
0bab010b45
clean unused predicate error
2020-01-10 13:06:29 +08:00
Wei Huang
b2159b5d66
Remove scheduler/algorithm/priorities/util package
2020-01-09 20:16:05 -08:00
draveness
2c3c6721ce
refactor(scheduling): remove priorities package
2020-01-10 09:05:39 +08:00
Kubernetes Prow Robot
e648e944e0
Merge pull request #86848 from haosdent/clean-filter-deps-nodeunschedulable
...
Break nodeunschedulable Filter plugins dependency on predicates package
2020-01-09 16:10:34 -08:00
Kubernetes Prow Robot
aef336d712
Merge pull request #86999 from draveness/feature/remove-ErrTopologySpreadConstraintsNotMatch
...
fix: remove ErrTopologySpreadConstraintsNotMatch
2020-01-09 13:29:42 -08:00
Kubernetes Prow Robot
f634ee6fe2
Merge pull request #86545 from xiaoanyunfei/cleanup/enhance_scheduler_metrics
...
Cleanup/Enhance scheduler metrics
2020-01-09 13:29:22 -08:00
Kubernetes Prow Robot
eedf1945b5
Merge pull request #86998 from denkensk/rm-errserviceaffinityviolated
...
Remove ErrServiceAffinityViolated scheduler predicate error
2020-01-09 11:33:42 -08:00
Kubernetes Prow Robot
407b29fa05
Merge pull request #86981 from alculquicondor/fix/node_info_list_2
...
Remove uses of NodeInfoMap outside of snapshot and cache
2020-01-09 11:33:31 -08:00
Aldo Culquicondor
bcab9b4c9e
Remove uses of NodeInfoMap outside of snapshot and cache
...
Signed-off-by: Aldo Culquicondor <acondor@google.com>
2020-01-09 10:04:11 -05:00
Kubernetes Prow Robot
32d8799ef1
Merge pull request #86979 from ahg-g/ahg-cleanup2
...
Move TaintToleration predicate to its plugin
2020-01-09 06:53:45 -08:00
Abdullah Gharaibeh
50b697bacb
move TaintToleration predicate to its plugin
2020-01-09 08:14:53 -05:00
notpad
228891de9c
Fix comment
2020-01-09 20:06:56 +08:00
Kubernetes Prow Robot
edad4bbfc8
Merge pull request #86940 from skilxn-go/master
...
Add VolumeBinder to FrameworkHandle interface
2020-01-09 03:01:45 -08:00
draveness
0278d793c8
fix: remove ErrTopologySpreadConstraintsNotMatch
2020-01-09 16:01:13 +08:00
Alex Wang
80127fe10f
rm errserviceaffinityviolated
2020-01-09 15:08:59 +08:00
Haosdent Huang
864600f05f
Break nodeunschedulable Filter plugins dependency on predicates package
2020-01-09 14:54:28 +08:00
Kubernetes Prow Robot
2c800c5a70
Merge pull request #86985 from ahg-g/ahg-cleanup4
...
Remove test/integration dependency on predicates and algorithmprovider
2020-01-08 21:29:58 -08:00
Kubernetes Prow Robot
4d41f4809f
Merge pull request #86890 from damemi/move-selector-spread-to-plugin
...
Move selector spreading priority code to plugin
2020-01-08 21:29:45 -08:00
sunxiaofei03
6c58cc0ad0
change framework_extension_point_duration_seconds from sampling to always record
2020-01-09 12:23:05 +08:00
Kubernetes Prow Robot
b3c94d3fb9
Merge pull request #86966 from bharaththiruveedula/master
...
Fix interpodaffinity issue
2020-01-08 19:12:20 -08:00
Kubernetes Prow Robot
4426ccb2a6
Merge pull request #86963 from ahg-g/ahg-status
...
Update scheduler's RunFilterPlugins to return a plugin to status map
2020-01-08 19:12:12 -08:00
Kubernetes Prow Robot
4d95d40a41
Merge pull request #86836 from haosdent/clean-filter-deps-interpodaffinity
...
Break interpodaffinity Filter plugins dependency on predicates package
2020-01-08 19:11:53 -08:00
skilxn-go
5def91d778
Add VolumeBinder to FrameworkHandle interface
2020-01-09 10:29:35 +08:00
Abdullah Gharaibeh
c86f59610c
remove test/integration dependency on predicates and algorithmprovider
2020-01-08 19:51:22 -05:00
Abdullah Gharaibeh
f3c7a4c823
Update scheduler's RunFilterPlugins to return a plugin to status map
2020-01-08 16:44:51 -05:00
Bharath Thiruveedula
8e3c1b54a7
Fix interpodaffinity issue
...
Signed-off-by: Bharath Thiruveedula <bharath_ves@hotmail.com>
2020-01-09 01:18:49 +05:30
Mike Dame
d227b7822f
Move selector spreading priority code to plugin
2020-01-08 13:37:37 -05:00
Kubernetes Prow Robot
b34c96b62c
Merge pull request #86764 from haosdent/migrate-servie-affinity
...
Break serviceaffinity Filter plugins dependency on predicates package
2020-01-08 08:47:39 -08:00
Kubernetes Prow Robot
b1e8bed5be
Merge pull request #86755 from mwmix/scheduler_server_unit_tests
...
Adding in missing Registry unit tests.
2020-01-08 02:57:54 -08:00
Haosdent Huang
a1053e4835
Break interpodaffinity Filter plugins dependency on predicates package
2020-01-08 14:37:51 +08:00
Kubernetes Prow Robot
99600ae9a7
Merge pull request #86852 from haosdent/clean-filter-deps-volumezone
...
Break volumezone Filter plugins dependency on predicates package
2020-01-07 14:08:55 -08:00
Kubernetes Prow Robot
c867fdbc1c
Merge pull request #86847 from haosdent/clean-filter-deps-nodelabel
...
Break nodelabel Filter plugins dependency on predicates package
2020-01-07 14:08:46 -08:00
Kubernetes Prow Robot
c7af1da206
Merge pull request #86913 from ahg-g/ahg-nodelimit
...
fix a bug in scheduler's node resource limits score
2020-01-07 12:34:25 -08:00
Abdullah Gharaibeh
e26fbe6f08
fix a bug in scheduler's node resource limits score
2020-01-07 13:43:44 -05:00
Kubernetes Prow Robot
d4d3d4b55e
Merge pull request #86875 from ahg-g/ahg1-cleanup
...
Move RequestedToCapacityRatio argument processing to its plugin
2020-01-07 10:14:42 -08:00
Kubernetes Prow Robot
dc084fe131
Merge pull request #86849 from haosdent/clean-filter-deps-nodevolumelimits
...
Break nodevolumelimits Filter plugins dependency on predicates package
2020-01-07 10:14:33 -08:00
Haosdent Huang
320c9bfeed
Break volumezone Filter plugins dependency on predicates package
2020-01-08 01:03:01 +08:00
Matt Mix
42afa0a2cc
Adding in missing Registry unit tests.
2020-01-07 10:20:39 -05:00
Haosdent Huang
6a82609902
Break serviceaffinity Filter plugins dependency on predicates package
2020-01-07 22:43:37 +08:00
Haosdent Huang
4ef31f81c7
Break nodelabel Filter plugins dependency on predicates package
2020-01-07 16:37:52 +08:00
Abdullah Gharaibeh
729c37373a
Remove unused scheduler types
2020-01-06 21:19:42 -05:00
Kubernetes Prow Robot
e7c79050b4
Merge pull request #86718 from ahg-g/ahg1-err
...
Copy nodeaffinity predicate to its filter plugin
2020-01-06 18:06:46 -08:00
Abdullah Gharaibeh
4e67476867
move nodeaffinity predicate to its filter plugin
2020-01-06 13:22:51 -05:00
Abdullah Gharaibeh
b9e2389e0d
Move RequestedToCapacityRatio argument processing to its plugin
2020-01-06 11:54:09 -05:00
Haosdent Huang
9bcca31e52
Break volumerestrictions Filter plugins dependency on predicates package
2020-01-06 02:59:47 +08:00
Haosdent Huang
aae9a7f704
Break nodevolumelimits Filter plugins dependency on predicates package
2020-01-06 02:30:40 +08:00
Kubernetes Prow Robot
2d56d75061
Merge pull request #86730 from ahg-g/ahg1-ds
...
Break DS controller dependency on scheduler predicates and predicate errors
2020-01-04 14:39:40 -08:00
Haosdent Huang
d27dc6751e
Break volumebinding Filter plugins dependency on predicates package
2020-01-05 01:37:22 +08:00
Abdullah Gharaibeh
7d604c318c
Break DS controller on scheduler predicates and predicate errors
2020-01-03 13:05:07 -05:00
Abdullah Gharaibeh
b535ed3b0c
Merge scheduler's ConfigProducerRegistry into LegacyRegistry
2020-01-02 16:40:33 -05:00
Abdullah Gharaibeh
a6b7b0d95e
Define algorithm providers in terms of plugins.
2019-12-31 15:28:09 -05:00
notpad
7f79516705
Move resource-based priority functions to their Score plugins
2019-12-31 23:50:11 +08:00
Wei Huang
78352240f6
Move podtopologyspread priority logic to its Score plugin
2019-12-28 19:29:37 -08:00
Kubernetes Prow Robot
f796b750c6
Merge pull request #86681 from Huang-Wei/interpodaffinity-typo
...
Fix a typo in interpodaffinity score plugin
2019-12-28 08:23:38 -08:00
Wei Huang
b3bebddb30
Fix a typo in interpodaffinity score plugin
2019-12-27 20:23:28 -08:00
draveness
320ac4e277
feat(scheduling): implement azure, cinder, ebs and gce as filter plugin
2019-12-28 11:46:40 +08:00
Kubernetes Prow Robot
0387ee4244
Merge pull request #86625 from zouyee/cnu
...
Move CheckNodeUnschedulable predicate to its filter plugin
2019-12-27 09:27:39 -08:00
Kubernetes Prow Robot
429ad7db4f
Merge pull request #86659 from Huang-Wei/eps-move-pred
...
Move pod topology spread predicate logic to its filter plugin
2019-12-27 07:53:38 -08:00
Kubernetes Prow Robot
b52cdca17d
Merge pull request #86638 from danielqsj/ServiceAntiAffinityPriority
...
Move ServiceAntiAffinityPriority to score plugin
2019-12-27 04:05:38 -08:00
Wei Huang
8a4dce5431
Move pod topology spread predicate logic to its filter plugin
2019-12-26 23:56:03 -08:00
danielqsj
f53c81f4a2
Move ServiceAntiAffinityPriority to score plugin
2019-12-27 10:02:13 +08:00
draveness
291a7bb164
feat(scheduling): move csi volume predicates to csi filter plugin
2019-12-27 09:14:35 +08:00
zouyee
89867e1c21
Move CheckNodeUnschedulable predicate to its filter plugin
...
Signed-off-by: Zou Nengren <zouyee1989@gmail.com>
2019-12-26 21:38:27 +08:00
zouyee
c4331b0369
Move VolumeZone predicate to its Filter plugin
...
Signed-off-by: Zou Nengren <zouyee1989@gmail.com>
2019-12-26 21:36:11 +08:00
Abdullah Gharaibeh
2b3df3587e
Deprecate scheduler predicate and priority factory registration
2019-12-25 20:33:08 -05:00
Kubernetes Prow Robot
c84b1a8a10
Merge pull request #86601 from angao/no-disk-conflict
...
move NoDiskConflict predicate to its filter plugin
2019-12-25 15:27:38 -08:00
Kubernetes Prow Robot
bd1195c28e
Merge pull request #86580 from zouyee/rlp
...
Move ResourceLimitsPriority to its Score plugin
2019-12-25 07:39:38 -08:00
Alex Wang
e5168cc7bb
move nodepreferavoidpods to score plugin
2019-12-25 17:26:58 +08:00
zouyee
bf2b709e82
Move ResourceLimitsPriority to its Score plugin
...
Signed-off-by: Zou Nengren <zouyee1989@gmail.com>
2019-12-25 16:41:40 +08:00
Kubernetes Prow Robot
26253903b5
Merge pull request #86595 from draveness/feature/move-node-affinity-to-score-plugin
...
feat: implement node affinity priority as score plugin
2019-12-25 00:01:43 -08:00
Wen Gao
e5d90c57f0
move NoDiskConflict predicate to its filter plugin
2019-12-25 15:44:59 +08:00
notpad
c33c4fffd1
Move RequestedToCapacityRatio to plugins/noderesources
2019-12-25 12:18:32 +08:00
draveness
75872b8e79
feat: implement node affinity priority as score plugin
...
+ Add DefaultNormalizeScore function
+ Implement NodeAffinity as score plugin
2019-12-25 10:53:35 +08:00
Abdullah Gharaibeh
fe7de96ebe
cleanup scheduler's in-tree plugins registry naming
2019-12-24 15:56:36 -05:00
Kubernetes Prow Robot
24469a3692
Merge pull request #86585 from SataQiu/scheduler-taint-toleration
...
"Move Taint and toleration priority to its Score plugin"
2019-12-24 11:43:29 -08:00
Kubernetes Prow Robot
175ee0a111
Merge pull request #86542 from zouyee/nodeinfocheck
...
introduce checker for the result of nodeInfo.Node()
2019-12-24 03:23:29 -08:00
SataQiu
21c916c3d2
move Taint and toleration predicate to its Score plugin
2019-12-24 19:22:12 +08:00
Kubernetes Prow Robot
39d0710a4b
Merge pull request #86530 from zouyee/vbb
...
Move volumebinding predicate to its filter plugin
2019-12-23 22:05:29 -08:00
zouyee
bf8a8a657c
introduce checker for the result of nodeInfo.Node()
...
Signed-off-by: Zou Nengren <zouyee1989@gmail.com>
2019-12-24 09:11:40 +08:00
Kubernetes Prow Robot
06fb3eb582
Merge pull request #86496 from ahg-g/ahg1-check
...
Support AlwaysCheckAllPredicates in the scheduler framework.
2019-12-23 09:53:33 -08:00
draveness
3f591bb2dd
feat: implement image locality as score plugin
2019-12-23 23:05:23 +08:00
zouyee
83408acf75
Move volumebinding predicate to its filter plugin
...
Signed-off-by: Zou Nengren <zouyee1989@gmail.com>
2019-12-23 21:57:49 +08:00
Kubernetes Prow Robot
ff975e865d
Merge pull request #86498 from Huang-Wei/deprecate-failedPredicateMap
...
Cleanup failedPredicateMap from generic_scheduler.go
2019-12-21 08:41:33 -08:00
Abdullah Gharaibeh
eeb8a5b728
Added back the flag to trigger examining all Filters in the scheduler.
2019-12-21 05:17:23 -05:00
Kubernetes Prow Robot
8737890681
Merge pull request #86459 from ahg-g/ahg1-affinity-pred
...
move inter pod affinity predicate logic to its Filter plugin
2019-12-20 18:28:08 -08:00
Wei Huang
3e65b3793f
Cleanup failedPredicateMap from generic_scheduler.go
2019-12-20 15:18:15 -08:00
Abdullah Gharaibeh
429448cb40
move inter pod affinity predicate logic to its Filter plugin
2019-12-20 16:58:36 -05:00
Kubernetes Prow Robot
b632eaddba
Merge pull request #86446 from ahg-g/ahg1-nodelabel
...
Move NodeLabel priority logic to its Score and Filter plugin
2019-12-19 15:37:21 -08:00
Kubernetes Prow Robot
641d0290e4
Merge pull request #86399 from ahg-g/ahg1-prioritymeta
...
InterPodAffinity Priority as Score plugin
2019-12-19 13:39:56 -08:00
Abdullah Gharaibeh
68f3802ba8
move NodeLabel predicate logic to its Filter plugin
2019-12-19 14:00:39 -05:00
Abdullah Gharaibeh
119a9a94d1
InterPodAffinity Priority as Score plugin
2019-12-19 13:42:49 -05:00
Abdullah Gharaibeh
22a0f55a68
move NodeLabel priority logic to its Score plugin
2019-12-19 13:35:43 -05:00
Kubernetes Prow Robot
9fad2e3201
Merge pull request #84611 from cwdsuzhou/Nov/simplyfy_zone_checker
...
Simplify volume zone checker codes
2019-12-19 08:09:57 -08:00
Kubernetes Prow Robot
77c565025a
Merge pull request #86289 from ahg-g/ahg1-metadata
...
Deprecate PredicateMetadata
2019-12-17 23:42:10 -08:00
Abdullah Gharaibeh
770e51cd10
Deprecate PredicateMetadata
2019-12-17 08:02:59 -05:00
Abdullah Gharaibeh
b3abfdc9e4
registered nodeports and noderesources prefilters
2019-12-17 07:29:37 -05:00
Kubernetes Prow Robot
d2c5d0ae70
Merge pull request #86264 from ahg-g/ahg1-svcmeta
...
Move service affinity predicate logic to its plugin.
2019-12-16 21:39:39 -08:00
Jacek Kaniuk
8fae8e54af
Disable excessive logging in scheduler plugins
2019-12-16 15:14:39 +01:00
Abdullah Gharaibeh
7331ec7b02
Move service affinity predicate logic to its plugin.
2019-12-15 13:56:31 -05:00
Abdullah Gharaibeh
02a0aad6d3
podfitsresource metadata as prefilter
2019-12-14 00:51:25 -05:00
Wei Huang
3d353f5122
Update semantics of EvenPodsSpread metadata object
...
- Now `nil` represents the meta is not set at all (in PreFilter phase)
- An empty `PodTopologySpreadMetadata` object denotes it's a legit meta and is set in PreFilter phase.
2019-12-13 16:33:22 -08:00
Wei Huang
468aebc17f
Move EvenPodsSpread metadata computation logic as a PreFilter Plugin
2019-12-13 16:33:21 -08:00
Abdullah Gharaibeh
c54dbd85e0
wrap host ports metadata in a prefilter.
2019-12-13 09:16:25 -05:00
Abdullah Gharaibeh
2fdf1fa3c1
inter-pod affinity prefilter
2019-12-12 15:20:14 -05:00
Wei Huang
dc3d1bd238
Eliminate running paths of Predicates in scheduler
...
- eliminate running paths of Predicates in scheduler; use Filter Plugins instead.
- refactor all unit tests
- adjust the TestPreemptWithPermitPlugin integration test
2019-12-10 19:14:13 -08:00
Wei Huang
a136108d2b
Return all predicate failures instead of the first one
2019-12-08 21:10:40 -08:00
Kubernetes Prow Robot
a15b5dfb13
Merge pull request #85188 from charleszheng44/scheduler-ut
...
add ut for scheduler framework
2019-11-22 17:29:43 -08:00
chao zheng
259cc951ff
add ut for scheduler framework
2019-11-14 19:39:21 -08: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
055daafe23
Merge pull request #85139 from ahg-g/ahg-snapshot2
...
Updated NewSnapshot interface to accept a NodeInfoMap
2019-11-12 11:52:10 -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
Abdullah Gharaibeh
902cf48cd3
Updated NewSnapshot interface to accept a NodeInfoMap instead of lists of nodes and pods
2019-11-12 11:14:17 -05:00
Fabio Bertinatto
a59abc3cc3
Convert scheduler to use CSINode GA
2019-11-12 09:43:54 +01:00
Fabio Bertinatto
affcd0128b
Promote volume limits to GA
2019-11-12 09:43:53 +01:00
Kubernetes Prow Robot
01e014c7d6
Merge pull request #85012 from alculquicondor/feat/predicate_factory
...
Add MetadataProducerFactory for predicates
2019-11-11 14:46:36 -08:00
Kubernetes Prow Robot
bff9a7774c
Merge pull request #84639 from SataQiu/clean-scheduler-20191101
...
scheduler: improve some comments and validation messages
2019-11-11 12:56:04 -08:00
Aldo Culquicondor
6a98c93f3c
Add MetadataProducerFactory for predicates
...
Signed-off-by: Aldo Culquicondor <acondor@google.com>
2019-11-11 11:27:44 -05:00
Kubernetes Prow Robot
36acfecd4b
Merge pull request #84973 from draveness/feature/inter-pod-affinity-score
...
feat(scheduler): convert InterPodAffinity to score plugin
2019-11-09 02:43:40 -08:00
draveness
715068312a
feat(scheduler): convert InterPodAffinity to score plugin
2019-11-08 15:37:33 +08:00
Cong Liu
e438970730
Aggregate mulitple NodePreference custom priorities to a single score plugin.
2019-11-07 22:04:38 -05:00
Kubernetes Prow Robot
a82092442f
Merge pull request #84635 from danielqsj/CheckServiceAffinity
...
Migrate CheckServiceAffinity custom predicate to Filter plugin
2019-11-07 09:04:39 -08:00
danielqsj
c0bbc4ce82
Migrate CheckServiceAffinity custom predicate to Filter plugin
2019-11-07 21:46:22 +08:00
Kubernetes Prow Robot
05fea1e437
Merge pull request #84834 from ahg-g/ahg-fwk
...
Remove Framework dependency on nodeinfo snapshot
2019-11-07 04:36:29 -08:00
draveness
652baf1860
feat: update interpod affinity priority with map reduce pattern
2019-11-07 08:52:37 +08:00
Kubernetes Prow Robot
46472773cb
Merge pull request #84836 from yuxiaobo96/k8s-checks
...
Correct spelling mistakes
2019-11-06 12:21:11 -08:00
Kubernetes Prow Robot
b09b962d96
Merge pull request #84746 from Huang-Wei/move-sched-constrants
...
Move out const strings in pkg/scheduler/api/well_known_labels.go
2019-11-06 12:20:06 -08:00
Abdullah Gharaibeh
6b4bd87ba3
Remove Framework dependency on nodeinfo snapshot
2019-11-06 08:37:57 -05:00
yuxiaobo
81e9f21f83
Correct spelling mistakes
...
Signed-off-by: yuxiaobo <yuxiaobogo@163.com>
2019-11-06 20:25:19 +08:00
draveness
089e85e098
feat: convert selector spread priority to score plugin
2019-11-06 15:48:29 +08:00
Kubernetes Prow Robot
3d0f737cd9
Merge pull request #84816 from liu-cong/nodelabel
...
Aggregate mulitple NodePreference custom priorities to a single score plugin.
2019-11-05 22:19:30 -08:00
Kubernetes Prow Robot
042b17ef19
Merge pull request #83619 from damemi/cc-nilable
...
Change Scheduler ComponentConfig fields to nilable pointers
2019-11-05 22:17:13 -08:00
Wei Huang
019d7497a5
bazel files
2019-11-05 20:57:21 -08:00
Wei Huang
dd74205bcf
Move out const strings in pkg/scheduler/api/well_known_labels.go
2019-11-05 20:56:21 -08:00
Kubernetes Prow Robot
83b991a9c6
Merge pull request #84578 from denkensk/add-event-deleteandreject-podinwaiting
...
Update the event handler for deleting pods to reject the waiting pod
2019-11-05 15:31:18 -08:00
Mike Dame
9e2591f867
Change scheduler ComponentConfig fields to nilable
...
As part of graduating the scheduler's component config to beta, we require configurable fields to be nilable pointers (see https://github.com/kubernetes/kubernetes/issues/78109 ). This enables the ability to distinguish between default and unset values. We are only applying this change to external types, and reacting in our defaulting logic. This also reverts existing internal component config fields which were pointers to be non-pointers, for consistency.
2019-11-05 17:06:06 -05:00
Cong Liu
97d641b129
Aggregate mulitple NodePreference custom priorities to a single score plugin.
2019-11-05 16:25:19 -05:00
Abdullah Gharaibeh
134baa50b9
Convert multiple node label predicates to be a single filter plugin.
2019-11-05 10:34:51 -05:00
Alex Wang
83dce763ec
add event to remove and reject waitingpods
2019-11-05 22:04:44 +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
SataQiu
89c3673a53
scheduler: improve some comments and validation messages
2019-11-01 18:30:54 +08:00
caiweidong
fd6983c70f
simplify volume zone checker
2019-11-01 13:38:25 +08:00
Wei Huang
90603728fb
Migrate EvenPodsSpread Priority as Score plugin in map/reduce style
2019-10-31 00:52:37 -07:00
Kubernetes Prow Robot
409b468734
Merge pull request #84520 from mrkm4ntr/migrate-requested-to-capacity-ratio
...
RequestedToCapacityRatio as score plugin
2019-10-30 10:32:54 -07:00
Shintaro Murakami
4b72af9f00
RequestedToCapacityRatio as score plugin
2019-10-30 22:00:20 +09:00
Wei Huang
a4305a356c
Expose filteredNodes to func PriorityMetadataProducer
2019-10-29 18:40:47 -07:00
Abdullah Gharaibeh
c6baa263a3
Update priorities to use SharedLister instead of using the snapshot directly
2019-10-29 16:22:00 -04:00
Kubernetes Prow Robot
5f900f6332
Merge pull request #84389 from ahg-g/ahg-interpod
...
Predicates use SharedLister interface instead of NodeInfo Map
2019-10-29 13:06:53 -07:00
Jun Gong
b4c2b00690
Make sure score plugins are executed when no priority configured
2019-10-29 17:25:35 +08:00
Cong Liu
571cea0519
Convert NodeLabelPresence custom predicate to filter plugin.
2019-10-25 19:31:17 -04:00
Abdullah Gharaibeh
05cb382357
Update PredicateMetadataProducer to accept a scheduler SharedLister instead of nodeinfomap
2019-10-25 19:19:23 -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
Kubernetes Prow Robot
4ee1e7510f
Merge pull request #84328 from zouyee/renamefakelister
...
rename scheduler fake listers
2019-10-25 11:15:51 -07:00
zouyee
b86dbb97df
rename scheduler fake listers
...
Signed-off-by: Zou Nengren <zouyee1989@gmail.com>
2019-10-25 13:09:01 +08:00
Jordan Liggitt
0e2f2dde4d
Feature-gate CSINode and CSIDriver informer starts
2019-10-24 17:44:25 -04:00
Kubernetes Prow Robot
b0c0155c19
Merge pull request #84192 from zouyee/removewrapper
...
Remove wrappers around storage-related listers in the predicate
2019-10-24 11:56:10 -07:00
Kubernetes Prow Robot
4fdf582687
Merge pull request #84011 from liu-cong/permit
...
Add permit_wait_duration_seconds metric for scheduler.
2019-10-24 11:55:41 -07:00
zouyee
3bfdcf56e6
Remove wrappers around storage-related listers in the predicate
...
Signed-off-by: Zou Nengren <zouyee1989@gmail.com>
2019-10-24 23:26:15 +08:00
Abdullah Gharaibeh
373cf8c1b1
move nodeinfo/snapshot.go into its own package
2019-10-23 16:12:13 -04:00
Cong Liu
f32d735b50
Add permit_wait_duration_seconds metric for scheduler.
2019-10-23 09:01:27 -04:00
Abdullah Gharaibeh
d393804237
separate listers into their own package
2019-10-22 18:11:02 -04:00
louisgong
70ca08ec89
filter plugin for cloud provider storage predicate
2019-10-21 23:56:23 +08:00
Kubernetes Prow Robot
ac6c77c440
Merge pull request #84121 from zouyee/renamefit
...
rename FilterPlugin NodeResources
2019-10-20 20:45:37 -07:00
Kubernetes Prow Robot
019b662ff5
Merge pull request #84017 from ahg-g/ahg-csi
...
Remove CSINode from scheduler cache.
2019-10-20 03:17:37 -07:00
zouyee
04340eaa34
rename FilterPlugin NodeResources
...
Signed-off-by: Zou Nengren <zouyee1989@gmail.com>
2019-10-20 12:51:16 +08:00
Kubernetes Prow Robot
e1685b5b59
Merge pull request #84074 from zouyee/proirity
...
LeastRequestedPriority/MostRequestedPriority/BalancedResourceAllocation as Score plugins
2019-10-19 17:21:37 -07:00
Kubernetes Prow Robot
9c25b16d88
Merge pull request #84099 from draveness/feature/remove-lister-wrapper
...
feat(scheduler): replace several algorithm listers with client listers
2019-10-19 08:05:37 -07:00
zouyee
bd4167d149
remove unused meta and rename lablance_allocated
...
Signed-off-by: Zou Nengren <zouyee1989@gmail.com>
2019-10-19 22:43:15 +08:00
Kubernetes Prow Robot
7e53c9d808
Merge pull request #83756 from hex108/permit
...
Refactor scheduler's framework permit API
2019-10-19 06:47:37 -07:00