Commit Graph

2742 Commits

Author SHA1 Message Date
Kubernetes Prow Robot
17f6f28621
Merge pull request #103468 from Huang-Wei/fix-sched-cc
instantiates scheduler ComponentConfig after parsing feature gates
2021-07-07 01:22:43 -07:00
Kubernetes Prow Robot
7df432f78f
Merge pull request #99582 from chendave/fix_config
custom plugin config should take precedence over default plugin config
2021-07-06 22:10:43 -07:00
Kubernetes Prow Robot
f41f3b15bc
Merge pull request #103480 from chendave/pluginconfig_issue
Readable error message on the plugin configs of the removed plugins
2021-07-06 10:42:48 -07:00
Kubernetes Prow Robot
ea3bcbc205
Merge pull request #101946 from chendave/balance_allocation
Support extended resource in NodeResourcesBalancedAllocation plugin
2021-07-06 10:42:19 -07:00
Wei Huang
4c9c761bbb
instantiates scheduler ComponentConfig after parsing feature gates 2021-07-06 10:39:12 -07:00
Dave Chen
9a5237ca63 Custom plugin config should take precedence over default plugin config
Signed-off-by: Dave Chen <dave.chen@arm.com>
2021-07-06 23:16:28 +08:00
Dave Chen
823a0f101a Don't return in api validation 2021-07-06 22:06:44 +08:00
肖旸
1e2bf2548c Add verbose logs for node/plugin scores when scheduling 2021-07-06 20:47:41 +08:00
Kubernetes Prow Robot
68a4a4373c
Merge pull request #100003 from cofyc/fix94009-volumebinding
implement EnqueueExtensions interface in volumebinding
2021-07-05 11:31:09 -07:00
Dave Chen
5ea9460234 Readable error message on the plugin configs of the removed plugins
Several plugins are removed in the v1beta2, but the legacy scheduler
config would still have the plugin configs of those removed plugins.

It was throwing raw byte data when those plugin configs are still in
place which will hard to read and understand.

Fix it by checking the removed plugin config before the validation of
the plugin args.

Signed-off-by: Dave Chen <dave.chen@arm.com>
2021-07-05 17:27:46 +08:00
Jerry-Ge
2069ff9efc fix compatibiltiy_test failures 2021-07-05 16:13:00 +08:00
Jerry-Ge
29814890f6 fix compatibiltiy test 2021-07-05 15:57:24 +08:00
Jerry-Ge
f1f0183d2b refactored extenders from scheduler/core to scheduler
Signed-off-by: Jerry Ge jerry.ge@arm.com
2021-07-05 15:37:51 +08:00
Jerry-Ge
570365178a merge packages of scheduler/core and scheduler
Signed-off-by: Jerry Ge <jerry.ge@arm.com>
2021-07-05 14:21:32 +08:00
Yecheng Fu
83ee392ed4 implement EnqueueExtensions interface in volumebinding 2021-07-03 08:25:06 +08:00
Kubernetes Prow Robot
25bbe2ebc5
Merge pull request #99594 from cofyc/kep1845-api
Prioritizing nodes based on volume capacity: API changes
2021-07-01 15:35:51 -07:00
Yecheng Fu
b522e95aae Prioritizing nodes based on volume capacity: API changes 2021-07-01 10:00:59 +08:00
Kubernetes Prow Robot
385402d506
Merge pull request #103082 from chrishenzie/read-write-once-pod-access-mode-scheduler
Enforce ReadWriteOncePod during scheduling
2021-06-30 16:11:36 -07:00
Chris Henzie
7ad44d04fc Enforce ReadWriteOncePod access mode during scheduling
Check the PVC ref count on the node info cache to determine if a pod's
PVCs are in use. If they are and it is using ReadWriteOncePod, fail the
request.
2021-06-30 10:40:14 -07:00
Dave Chen
1fa673c15c Extent the NodeResourcesBalancedAllocation plugin to cover more resources
Signed-off-by: Dave Chen <dave.chen@arm.com>
2021-06-30 11:15:12 +08:00
Kubernetes Prow Robot
e0f66be1aa
Merge pull request #101822 from yuzhiquan/NodeResourcesFit-score
Add score func for NodeResourcesFit plugin
2021-06-29 13:42:20 -07:00
yuzhiquan
deb14b995a Add score plugin for NodeResourcesFit 2021-06-29 13:16:55 -04:00
Chris Henzie
ebc3fdb293 Store PVC reference counts in NodeInfo cache
This map will be queried as part of enforcement of the ReadWriteOncePod
access mode for PVCs
2021-06-29 10:07:32 -07:00
Kubernetes Prow Robot
51e1969d9c
Merge pull request #103133 from marwanad/allow-scheduler-to-patch-conditions
switch scheduler to generate the merge patch on pod status instead of the full pod
2021-06-28 12:46:28 -07:00
Marwan Ahmed
48dfa2a554 generate scheduler merge patches on the pod status instead of the full pod 2021-06-28 09:35:55 -07:00
Kubernetes Prow Robot
df2e13376d
Merge pull request #103169 from Huang-Wei/res-scorer
Optimize scheduler res scorer on non-requested extended res
2021-06-26 04:21:23 -07:00
Kubernetes Prow Robot
015a0d9b01
Merge pull request #103130 from ahg-g/ahg-ca
Add a function that returns default scheduler configuration
2021-06-25 12:13:24 -07:00
Wei Huang
20f84b12a1
Optimize scheduler res scorer on non-requested extended res 2021-06-25 11:41:36 -07:00
Abdullah Gharaibeh
b6a317aeaf add a function that returns default scheduler configuration 2021-06-24 11:48:35 -04:00
Kubernetes Prow Robot
72fc6d9ea0
Merge pull request #103089 from chendave/ratio_cleanup
Simplify the formula used in the `RequestedToCapacityRatio` plugin
2021-06-22 12:00:23 -07:00
ravisantoshgudimetla
b6c75bee15 Remove balanced attached node volumes
kubernetes#60525 introduced
Balanced attached node volumes feature gate to include volume
count for prioritizing nodes. The reason for introducing this
flag was its usefulness in Red Hat OpenShift Online environment
which is not being used any more. So, removing the flag
as it helps in maintainability of the scheduler code base
as mentioned at kubernetes#101489 (comment)
2021-06-22 11:19:30 -04:00
Dave Chen
0f922b200f Simplify the formula used in the RequestedToCapacityRatio plugin
Signed-off-by: Dave Chen <dave.chen@arm.com>
2021-06-22 17:11:26 +08:00
Hidehito Yabuuchi
e371b27e6c Fix frameworkImpl.extenders being not set 2021-06-19 18:07:31 +09:00
Kubernetes Prow Robot
f899bbe445
Merge pull request #102925 from alculquicondor/fix-node-resources
Fix Node Resources plugins score when there are pods with no requests
2021-06-18 07:20:06 -07:00
Aldo Culquicondor
63d1237102 Fix Node Resources plugins score when there are pods with no requests
Given that we give a default CPU/memory requests for containers that don't provide any, the calculated usage can exceed the allocatable.

Change-Id: I72e249652acacfbe8cea0dd6f895dabe43ff6376
2021-06-16 20:36:07 +00:00
Abdullah Gharaibeh
265ef1741f Move scheduler plugin set and configuration defaulting to component config 2021-06-16 10:15:29 -04:00
Abdullah Gharaibeh
c13c3ebc79 Remove deprecated scheduler CLI flags hard-pod-affinity-symmetric-weight and scheduler-name 2021-06-11 10:01:42 -04:00
Wei Huang
36eaa11d50
cleanup usage of NewPodNominator
- replace NewPodNominator() with NewSafePodNominator()
- rename nominatedPodMap to nominator
2021-06-10 14:01:07 -07:00
Kubernetes Prow Robot
8955463c17
Merge pull request #102745 from ahg-g/ahg-provider
Remove SchedulerAlgorithmSource from scheduler's internal CC API
2021-06-10 07:17:39 -07:00
Kubernetes Prow Robot
521be6344e
Merge pull request #102558 from Jerry-Ge/unroll-extenders
Unroll ScheduleAlgorithm#Extenders() to Scheduler.go
2021-06-10 07:17:27 -07:00
Kubernetes Prow Robot
0d9c29078b
Merge pull request #102746 from ahg-g/ahg-names
Define in-tree scheduler plugin names in separate pkg
2021-06-10 02:45:27 -07:00
Jerry-Ge
110c39ef60 unroll extenders
Signed-off-by: Jerry Ge <jerry.ge@arm.com>

Co-authored-by: Huang-Wei <wei.huang1@ibm.com>
2021-06-10 08:31:44 +08:00
Abdullah Gharaibeh
52f5ba3a58 Remove SchedulerAlgorithmSource from scheduler's internal CC API 2021-06-09 19:14:54 -04:00
Abdullah Gharaibeh
183bc3cece Allow scheduler maintainers to approve changes in the internal apis pkg 2021-06-09 16:46:36 -04: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
Wei Huang
8e85a2b0c2
sched: fix a bug that a preemptor pod exists as a phantom
- SafePodNominator to resolve racing issue when dealing with nominated pod
2021-06-05 11:07:29 -07:00
Kubernetes Prow Robot
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
llhuii
3c899f9b54 sched: fix Dump's doc comment 2021-05-30 00:39:20 +08: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
d541872f9a
Merge pull request #102239 from Haleygo/clean-up-AlgorithmProvider-flag-and-pkg
clean up algorithmprovider pkg and remove scheduler deprecated algorithm-provider flag
2021-05-27 00:54:23 -07:00
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
Haleygo
2769e99dba remove scheduler deprecated algorithm-provider flag and clean up algorithmprovider pkg 2021-05-26 13:19:44 +08: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
Kubernetes Prow Robot
943e0c2f91
Merge pull request #101394 from Huang-Wei/dynamic-events-handler
sched: dynamic event handlers registration
2021-05-24 16:18:40 -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
Wei Huang
1b3a124ba6
Scheduler now registers event handlers dynamically
- move clusterEventMap to Configurator
- dynamic event handlers registration for core API resources
- dynamic event handlers registration for custom resources
2021-05-21 13:47:06 -07:00
Mike Dame
5a77ebe28b Scheduler: remove pkg/features dependency from NodeResources plugins 2021-05-18 08:59:02 -04:00
Aldo Culquicondor
7c50cd762a Use aliases in sig apps and scheduling APIs OWNERS
Add alculquicondor to sig-scheduling-api-reviewers and sig-apps-api-reviewers
2021-05-17 17:56:20 +00:00
Kubernetes Prow Robot
1ff18a9c43
Merge pull request #101964 from chendave/cleanup_defaults_test
cleanup redundant testcases
2021-05-14 12:53:59 -07:00
Dave Chen
1e106c4650 cleanup redundant testcases
Signed-off-by: Dave Chen <dave.chen@arm.com>
2021-05-14 15:30:09 +08: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
Kubernetes Prow Robot
aab19d4299
Merge pull request #101560 from yuanchen8911/master
Prevent scheduler crashing in default preemption plugin
2021-05-05 11:17:15 -07:00
Yuan Chen
fce28dbac9 Prevent scheduler crashing in default preemption 2021-05-04 19:30:11 -07:00
Kubernetes Prow Robot
39e47b0c2c
Merge pull request #101454 from wangyx1992/redundant-alias
code cleanup: omit redundant alias in import
2021-05-04 14:37:15 -07:00
Jiahao Huang
0980b33b0e use '_' in nodelabel plugin for unused parameters 2021-05-03 18:06:02 +08:00
Kubernetes Prow Robot
9a60677591
Merge pull request #101466 from ingvagabund/GetNonzeroRequestForResource-drop-check-for-scalar-resource
Drop IsScalarResourceName check in GetNonzeroRequestForResource
2021-05-01 12:52:00 -07:00
Jan Chaloupka
b9356df066 Drop IsScalarResourceName check in GetNonzeroRequestForResource
All invokers of GetNonzeroRequestForResource in k/k are either setting
the resource name to CPU/Memory or are checking if the requested
resource name is scalar after the invocation.
Thus, it's unnecessary to check for scalar resource name again.
In the worst case, GetNonzeroRequestForResource returns non-zero
resource quantity which can be ignored by an invoker by running
IsResourceName helpers afterwards.
2021-04-30 13:00:55 +02: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
wangyx1992
5fa9b46bf5 omit redundant alias in import
Signed-off-by: wangyx1992 <wang.yixiang@zte.com.cn>
2021-04-25 16:37:15 +08: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
ae40c62c49
Merge pull request #100286 from tanjing2020/skip_updates_assumed_pods
Scheduler: skip updates of assumed pods
2021-04-08 20:29:29 -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
39fb6282be
Merge pull request #100068 from chendave/validation
Update comments for the resource weight of `RequestedToCapacityRatio` plugin
2021-04-08 17:11:31 -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
tanjing2020
d4465b995e Scheduler: skip updates of assumed pods 2021-03-24 10:01:22 +08: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
Kubernetes Prow Robot
5bed8d355f
Merge pull request #98829 from NickrenREN/scheduler-queue-update
fix scheduler queue update logic
2021-03-16 09:08:36 -07:00
Dave Chen
4c5c349165 Update comments for the resource weight of RequestedToCapacityRatio plugin
Signed-off-by: Dave Chen <dave.chen@arm.com>
2021-03-13 14:27:59 +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
renyuquan
53ee08a40e fix scheduler queue update logic 2021-03-10 15:48:18 +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
Wei Huang
8f5416c1ec
Revert "Surface more information about plugin scores in scheduler"
This reverts commit d09a841246.
2021-03-06 19:54:12 -08:00
Kubernetes Prow Robot
c37073b87b
Merge pull request #99890 from yahaa/fix-lint
fix gosimple lint check
2021-03-06 18:43:41 -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
yahaa
22a8a9ab45 fix gosimple lint check
Signed-off-by: yahaa <1477765176@qq.com>
2021-03-06 19:57:36 +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
Kubernetes Prow Robot
05988d7617
Merge pull request #99411 from damemi/scheduler-score-logging
Surface more information about plugin scores in scheduler
2021-03-04 13:39:05 -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
Kubernetes Prow Robot
60a4998395
Merge pull request #98241 from Huang-Wei/sched-enqueue-2
Store a cluster event to plugin map in SchedulerQueue
2021-03-04 04:18:21 -08:00
Wei Huang
6fdb1a8439
sched: add a benchmark test for MoveAllToActiveOrBackoffQueue 2021-03-03 07:20:08 -08:00
Wei Huang
f322019d7a
Store a cluster event to plugin map in SchedulerQueue 2021-03-03 07:20:07 -08:00
Mengxue Zhang
7d1ab94b9a remove useless pluginConfigs 2021-03-03 05:14:36 +00:00
Mike Dame
d09a841246 Surface more information about plugin scores in scheduler 2021-03-02 14:01:55 -05: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
Kubernetes Prow Robot
57ff7d2994
Merge pull request #99246 from tanjing2020/change-log
Add detailed logs and start log messages with upper case
2021-02-22 17:24:39 -08:00
drfish
bc2df9de72 Use PodInfo instead of Pod for nominatedPods and QueuedPodInfo 2021-02-22 22:00:23 +08:00
tanjing2020
d2b24a664e Add detailed logs and start log messages with upper case 2021-02-22 09:22:34 +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
Kubernetes Prow Robot
320aaf4859
Merge pull request #98358 from tanjing2020/scheduling_queue.go
migrate scheduling_queue.go to structured logging
2021-02-19 00:20:24 -08:00
Deepak Nair
49a9e28dd8 Substitute boolean maps with String sets 2021-02-18 20:59:32 -08:00
tanjing2020
d0eecbd0a9 migrate scheduling_queue.go to structured logging 2021-02-18 09:56:31 +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
ccdc59d26e
Merge pull request #98899 from Huang-Wei/remove-unknown-event
sched: remove Unknown queuing literal
2021-02-10 17:58:31 -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
Wei Huang
04a40d1f18
sched: remove Unknown queuing literal 2021-02-10 11:03:07 -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
3416b6b0a4
Merge pull request #98715 from carlory/truncate-message
fix kube-scheduler cannot send event because the Note field is too large
2021-02-04 08:20:32 -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
carlory
0b730f04ce fix kube-scheduler cannot send event because the Note field is too large 2021-02-04 10:36:11 +08:00
Kubernetes Prow Robot
0083786ca9
Merge pull request #98481 from gavinfish/sched-isstatusequal
Scheduler: add StatusEqual func for Status comparer
2021-02-03 13:32:28 -08:00
drfish
d15dacb57d Add Equal func for Status struct 2021-02-04 00:32:01 +08:00
drfish
ebb6fb5b0c Organize scheduler unit tests into subtests 2021-02-02 21:41:20 +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
Kubernetes Prow Robot
ba8344435f
Merge pull request #98625 from gavinfish/sched-dup-log
Scheduler: remove duplicated error log in framework
2021-02-01 12:49:49 -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
chymy
ed6475ae48 migrate pkg/scheduler/internal/cache/debugger/comparer.go to structured logs
Signed-off-by: chymy <chang.min1@zte.com.cn>
2021-02-01 11:20:05 +08: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
Kubernetes Prow Robot
21d3c73f54
Merge pull request #93179 from chendave/preemption_improve
prefer nominated node - IMPL
2021-01-26 21:03:40 -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
Dave Chen
6d800ffe07 Prefer nominated node in the new scheduling cycle
Signed-off-by: Dave Chen <dave.chen@arm.com>
2021-01-26 09:59:00 +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
Kubernetes Prow Robot
e1c1fd9edf
Merge pull request #97880 from justinsb/spelling
Fix spelling typos: scheduable -> schedulable
2021-01-15 03:43:51 -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
Justin SB
8797738c02 Fix spelling typos: scheduable -> schedulable
Bulk fix of a common typo.
2021-01-09 12:59:33 -05: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
172cb33f32
Merge pull request #97509 from aldudko/scheduler-go
Migrate scheduler.go, factory.go to structured logging
2021-01-05 09:02:11 -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
Alex Dudko
b11e4f2484 Migrate scheduler.go, factory.go to structured logging 2020-12-24 18:50:30 -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
Kubernetes Prow Robot
94be86aaa2
Merge pull request #97349 from aldudko/kube-scheduler-logging
Migrate pkg/scheduler logs to structured logging
2020-12-22 15:02:26 -08:00
Kubernetes Prow Robot
8c6f244c18
Merge pull request #97302 from jindezgm/patch-1
Refresh Timestamp when pod is not present in the three sub-queues
2020-12-22 07:52:26 -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
KeZhang
fca0636090 cleanup unused constants for deprecated flags 2020-12-16 15:00:52 +08:00
jinde.zgm
17b084938a
fix gofmt bug 2020-12-15 20:07:47 +08:00
Kubernetes Prow Robot
989b2fd371
Merge pull request #97221 from 249043822/br-scheduler-metrics
cleanup constants for scheduler metrics
2020-12-14 17:45:56 -08:00
jindezgm
5e6177897d
Refresh Timestamp when pod is not present in the three sub-queues
The pInfo.Timestamp is refreshed but the sort in activeQ or podBackoffQ is not be updated when pod  is already present in the backoff or active queue.
AddUnschedulableIfNotPresent() return error if pod is already present in the backoff or active queue, and there is no re-add.
So  refresh  pInfo.Timestamp when  the pod is not present in the three sub-queues, otherwise need to update the order of the pod in the active or backoff queue, for example p.activeQ.Update(pInfo)
2020-12-14 22:39:08 +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
KeZhang
1208c53c8b cleanup constants for scheduler metrics 2020-12-11 14:22:20 +08:00
ialidzhikov
bc432124a2 Remove CSINodeInfo feature gate
Signed-off-by: ialidzhikov <i.alidjikov@gmail.com>
2020-12-10 09:58:22 +02:00
Aldo Culquicondor
4736b396f9 Return field.Errors from node affinity parsing
Change-Id: Id91dfb29b9f0322e2ff6035387a0a3df92b5db37
2020-12-09 13:47:07 -05: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
d7a389ce7a
Merge pull request #96582 from chenyw1990/fixSchedulerBug
don't add pod to podQueue when the NodeName of pod is not empty
2020-12-08 17:29:35 -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
chenyw1990
a8add50ab6 don't add pod to podQueue when the NodeName of pod is not empty 2020-11-19 08:01:59 +08:00
Kubernetes Prow Robot
cd21a1240a
Merge pull request #94866 from smarterclayton/scheduling_metrics
scheduler: Implement resource metrics at /metrics/resources
2020-11-12 18:36:23 -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
Mike Dame
14fa76d92f Log defaulted kube-scheduler component config at startup 2020-11-12 16:03:11 -05: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
Clayton Coleman
264496cc41
scheduler: Implement resource metrics at /metrics/resources
Implement pod resource metrics as described in KEP 1916. The new
`/metrics/resources` endpoint is exposed on the active scheduler
and reports kube_pod_resources* metrics that present the effective
requests and limits for all resources on the pods as calculated by
the scheduler and kubelet. This allows administrators using the
system to quickly perform resource consumption, reservation, and
pending utilization calculations when those metrics are read.
Because metrics calculation is on-demand, there is no additional
resource consumption incurred by the scheduler unless the endpoint
is scraped.
2020-11-12 12:37:38 -05: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
Kubernetes Prow Robot
c3769096c6
Merge pull request #96439 from Huang-Wei/sched-policy-defaultpreemption
Fix a bug that DefaultPreemption plugin is disabled when using scheduler policy
2020-11-11 07:44:18 -08:00
lixiaobing1
2cba0a02f7 fix note delete to update according to code 2020-11-11 09:50:47 +08:00
Wei Huang
47a7c374c6
Fix a bug that DefaultPreemption plugin is disabled when using scheduler policy 2020-11-10 17:48:32 -08:00
Aldo Culquicondor
d6ef6d6e43 Capture defaulted plugin configs from framework
Some plugin configs are not produced until the framework is instantiated. Add a callback to capture them inside the framework constructor.

Change-Id: Id3f709b6461ccd0eafec7d21412cda093d9c4645
2020-11-10 19:41:18 -05:00
Wei Huang
6e0fb9ad7f
Ignore specific Pod update events in scheduler 2020-11-09 20:35:01 -08:00
Kubernetes Prow Robot
e5194dd936
Merge pull request #96202 from alculquicondor/default-node-affinity
Add AddedAffinity to NodeAffinity Filter and Score plugin
2020-11-09 15:14:55 -08: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
tangwz
3341023664 scheduler: remove FrameworkFactory. 2020-11-07 00:07:36 +08:00
lixiaobing1
6a41d81264 remove annotation cache sync because of code removed 2020-11-06 18:41:08 +08: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
Kubernetes Prow Robot
43a0007fae
Merge pull request #96062 from Huang-Wei/sched-aware-of-nodes
Ensure created nodes are present in scheduler cache before scheduling
2020-11-05 13:13:05 -08:00
Kubernetes Prow Robot
3222053798
Merge pull request #96010 from serathius/datapolicy-scheduler-pkg
Add datapolicy tags to pkg/scheduler/
2020-11-05 06:31:35 -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
Kubernetes Prow Robot
05e5a49e0a
Merge pull request #96105 from lixiaobing1/nodeInfo
fix n to nodeInfo easy to understand
2020-11-04 15:47:06 -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
Wei Huang
f054765762
Add a function to ensure created nodes are present in scheduler cache 2020-11-03 15:25:44 -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
lixiaobing1
03cfd30ee2 fix n to nodeInfo easy to understand 2020-11-03 08:44:55 +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
Kubernetes Prow Robot
d0bee69fc9
Merge pull request #94636 from hprateek43/cpu_threads_parameter
Added config parameter for CPU threads
2020-10-29 21:04:05 -07:00
Mike Dame
b7ba77c25b Move MatchNodeSelectorTerms to k8s.io/component-helpers 2020-10-29 13:39:13 -04:00
Marek Siarkowicz
899b9c1f74 Add datapolicy tags to pkg/scheduler/ 2020-10-29 18:24:41 +01: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
Harsh Singh
1763688d71 Added config parameter for CPU threads 2020-10-29 12:16:10 +05:30
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
Kubernetes Prow Robot
0f4f699639
Merge pull request #95772 from alculquicondor/fix-spread-bench
Fix labels for spreading benchmark
2020-10-22 22:17:26 -07: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
Amim Knabben
8ed6ca58bc Replacing factory tests with scheduler.New and options 2020-10-22 11:43:28 -04: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
He Jie Xu
6e55b88725 Reorder default Filter plugins to have UnschedulableAndUnresolvable first 2020-10-14 09:40:51 +00: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
Kubernetes Prow Robot
8deb70c2ad
Merge pull request #95091 from arghya88/wrap-errors-plugins-selectorspread/podtopologyspread
wrap errors in selectorspread and podtoplogyspread plugin
2020-09-29 13:43:25 -07:00
Kubernetes Prow Robot
3a987d5b85
Merge pull request #95130 from alculquicondor/fix-snapshot
Fix UpdateSnapshot when Node is partially removed
2020-09-28 21:31:38 -07:00
Aldo Culquicondor
d6f09f7dfb Fix UpdateSnapshot when Node is partially removed
Change-Id: I5b459e9ea67020183c87d1ce0a2380efb8cc3e05
2020-09-28 17:50:41 -04:00
Aldo Culquicondor
290bdf3f08 Fix test name TestDump
Change-Id: If885303b86060aed7a3e2aa20450cadd1f30752c
2020-09-28 15:30:05 -04: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
769f047675
Merge pull request #95024 from chendave/exported
Use the exported struct member directly
2020-09-24 09:24:34 -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
Dave Chen
a9b71c198b Use the exported struct member directly
Signed-off-by: Dave Chen <dave.chen@arm.com>
2020-09-24 16:15:11 +08:00
Arghya Sadhu
078b355da3 deprecate scheduler metrics BindingLatency and SchedulingAlgorithmPreemptionEvaluationDuration 2020-09-23 17:15:13 +05:30
Kubernetes Prow Robot
18782e9996
Merge pull request #94884 from arghya88/remove-deprecated-scheduler-metrics
removing deprecated scheduler metrics
2020-09-22 14:42:32 -07:00
Kubernetes Prow Robot
9aae0ac354
Merge pull request #94864 from alculquicondor/empty-default-constraints
Tests for empty constraints array when DefaultPodTopologySpread is enabled
2020-09-22 14:42:09 -07:00
Kubernetes Prow Robot
a576196076
Merge pull request #94413 from chendave/flake
Enhancement on the testcase to cover more possibilities
2020-09-22 12:23:20 -07:00
Arghya Sadhu
c62f0dd165 removing deprecated scheduler metrics 2020-09-22 21:04:15 +05:30
Aldo Culquicondor
e856706984 Tests for empty constraints array when DefaultPodTopologySpread is enabled
An empty array in the configuration signifies that the user operator intends to disable the k8s provided default for TopologyPodSpread.

Signed-off-by: Aldo Culquicondor <acondor@google.com>
Change-Id: Ib4696a49f0ba748183aef417b0882d494b89f602
2020-09-17 14:55:53 -04:00
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
Kubernetes Prow Robot
b14fcc544b
Merge pull request #92846 from Huang-Wei/rm-pvcLister
Remove pvcLister from genericScheduler
2020-09-15 07:54:07 -07:00
Jimmy Zhang
1f0bcc8f5d optimize the use of informer for scheduler 2020-09-15 18:21:40 +08:00
Wei Huang
185ba08fcd
Move podPassesBasicChecks() to VolumeBinding plugin 2020-09-11 13:54:02 -07:00
Wei Huang
42cfda2f94
Remove pvcLister from genericScheduler
PVCLister can be fetched from sharedInformerFactory.
2020-09-11 13:54:01 -07:00
Kubernetes Prow Robot
d39214ade1
Merge pull request #94603 from wojtek-t/migrate_leader_election_to_leases_todos
Migrate scheduler, controller-manager and cloud-controller-manager to use LeaseLock
2020-09-11 00:08:14 -07:00
Kubernetes Prow Robot
bd39d3933b
Merge pull request #94701 from Huang-Wei/rm-disablePreemption
Remove field disablePreemption from internal scheduler codebase
2020-09-10 22:14:14 -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
Wei Huang
eb3d2de543
Remove field disablePreemption from internal scheduler codebase 2020-09-10 13:06:42 -07: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
wojtekt
805c1753cd Migrate scheduler, controller-manager and cloud-controller-manager to lease lock. 2020-09-10 11:57:18 +02: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
Wei Huang
d8def59871
Initialize scheduler's podInformer in sharedInformerFactory
Scheduler's specific podInfomer is now initialized inside the sahredInformerFactory.
2020-09-08 12:57:17 -07:00
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
6b388f0684
Merge pull request #94187 from chendave/avoid_apicall
Avoid the API call to update pod if nothing is changed
2020-09-07 15:01:44 -07:00
Kubernetes Prow Robot
62d46b8b8b
Merge pull request #94573 from siadat/double-pointer
Remove unnecessary double-pointer
2020-09-07 14:02:07 -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
2481e88485
Merge pull request #93473 from Nordix/sched-fix-mael
Change nodeInfolist building logic in scheduler
2020-09-07 14:01:44 -07:00
Sina Siadat
6b18ff81a5 Remove unnecessary double-pointer 2020-09-06 16:22:06 +04:30
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
Dave Chen
4b2c054e59 Enhancement on the testcase to cover more possibilities
This change enriches the testcase of `TestPriorityQueue_MoveAllToActiveOrBackoffQueue`
to cover the case that pods in the unschedulableQ could be moved to activeQ after the
backing off.

Signed-off-by: Dave Chen <dave.chen@arm.com>
2020-09-03 14:04:03 +08:00
Dave Chen
77056e89e4 Avoid the API call to update pod if nothing is changed
Signed-off-by: Dave Chen <dave.chen@arm.com>
2020-09-02 14:38:11 +08: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
9bba0390ed
Merge pull request #94083 from soulxu/shrink_lock_scope
Only lock statuses map when status isn't successful
2020-08-27 16:07:57 -07:00
Kubernetes Prow Robot
90b8163b32
Merge pull request #93808 from zhouya0/seperate_registry_and_feature_gates
Scheduler ListAlgorithmProviders function return providers directly
2020-08-27 16:07:28 -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
Kubernetes Prow Robot
06eb495a0f
Merge pull request #93896 from alculquicondor/speed-up-volume-binding-test
Improve running time of TestSchedulerWithVolumeBinding
2020-08-26 19:41:10 -07: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