Commit Graph

143 Commits

Author SHA1 Message Date
Shintaro Murakami
a0c93b10c9 Remove unnecessary factory layer 2019-08-24 08:08:30 +09:00
Wei Huang
8f559ea53b
Optimize internal data structure of EvenPodsSpread
- Rename 'topologyPairsPodSpreadMap' to 'podSpreadCache'
- New struct `criticalPaths criticalPaths`
- Add unified method `*criticalPaths.update()` for:
    - regular update
    - addPod in preemption case
    - remotePod in preemption case
2019-08-20 09:26:41 -07:00
Wei Huang
7f1a3965fd
Add Benchmark test for EvenPodsSpread predicate
- go test k8s.io/kubernetes/pkg/scheduler/algorithm/predicates -benchmem -run=^$ -bench .
2019-08-20 09:25:01 -07:00
Kubernetes Prow Robot
decdf8891f
Merge pull request #80460 from mrkm4ntr/pvc-class-name
Use v1helper.GetPersistentVolumeClaimClass for compatibility
2019-08-05 15:08:30 -07:00
Fabio Bertinatto
c5d9af2bda Update predicates to use cached CSINode in scheduler 2019-08-01 10:15:20 +02:00
Fabio Bertinatto
6e9112b7fe When PVC is invalid, don't count volumes in scheduler predicate 2019-07-31 12:56:28 +02:00
Fabio Bertinatto
ee7b48b7c5 Don't count unrelated volumes in scheduler predicate 2019-07-31 12:56:28 +02:00
Wei Huang
0bff4c27d6
EvenPodsSpread: weigh constraints individually
- update logic to weigh each constraint individually
- address comments and misc fixes
2019-07-26 20:48:05 -07:00
Wei Huang
821446ed70
EvenPodsSpread: Make some funcs in predicates pkg as public 2019-07-26 20:48:05 -07:00
Kubernetes Prow Robot
50a0d38e3a
Merge pull request #80503 from tedyu/spread-constaints
Refactor nested loop in getTPMapMatchingSpreadConstraints
2019-07-25 20:48:11 -07:00
Ted Yu
89818d8d09 Refactor nested loop in getTPMapMatchingSpreadConstraints 2019-07-25 07:15:14 -07:00
Wei Huang
794847967c
EvenPodsSpread: update addPod() logic to match individual constraint
- also add TODO items for potential perf optimization
2019-07-24 15:27:55 -07:00
Wei Huang
fe7072a482
fixup: address comments 2019-07-24 15:27:55 -07:00
Wei Huang
ff831c3df2
EvenPodsSpread: Supports Preemption (addPod)
- add addPod() for podSpreadMap
2019-07-24 15:27:55 -07:00
Wei Huang
9e9808d0ab
EvenPodsSpread: Supports Preemption (removePod)
- add removePod() for podSpreadMap
2019-07-24 15:27:54 -07:00
Wei Huang
1822085088
EvenPodsSpread: update 'selfMatch' logic 2019-07-24 10:28:46 -07:00
Wei Huang
39e459ae9a
fixup: address comments 2019-07-24 10:28:46 -07:00
Wei Huang
e0e3889d74
EvenPodsSpread: Core Predicate logic 2019-07-24 10:28:46 -07:00
Wei Huang
08e7b3bacb
EvenPodsSpread: Define a new Predicate 2019-07-24 10:28:46 -07:00
Shintaro Murakami
c94e800008 Use v1helper.GetPersistentVolumeClaimClass for compatibility 2019-07-24 10:35:00 +09:00
Wei Huang
f822487f05
EvenPodsSpread: match selector of each constraint independently
- see more discussion at https://github.com/kubernetes/kubernetes/pull/77760#discussion_r305107973
2019-07-22 17:51:23 -07:00
Wei Huang
249752cc1f
fixup: fix comments and use a channel to pass err 2019-07-22 17:34:56 -07:00
Wei Huang
dce6686c9a
EvenPodsSpread: refactor "chained" utils
- move "chanined" utils to pkg/scheduler/testing/utils.go so as to be re-used by all scheduler tests
2019-07-22 17:34:56 -07:00
Wei Huang
3dbef991a3
EvenPodsSpread: refactor topologyPairsPodSpreadMap
- update minMatchMap from []int32 to map[string]int32
2019-07-22 17:34:56 -07:00
Wei Huang
a242e376ac
EvenPodsSpread: PredicateMetadata initilization
- build a new `topologyPairsPodSpreadMap` into PredicateMetadata
- update ShallowCopy()
- unit tests
2019-07-22 17:34:56 -07:00
Eric Ernst
62e9717386 scheduler: add pod Overhead support for requests
Signed-off-by: Eric Ernst <eric.ernst@intel.com>
2019-07-16 12:56:19 -07:00
draveness
fab1948a1b feat: use channel instead of mutex in scheduling predicates 2019-07-13 09:11:52 +08:00
jingxueli
6a1bbff60c keep processing other nodes for the nil node error 2019-07-11 15:34:40 +08:00
shiyan2016
c329d5117d cancel process node if error occurs 2019-07-09 19:50:48 -07:00
Kubernetes Prow Robot
6653a490fb
Merge pull request #79532 from snowplayfire/update-errMsg
improve error msg for predicate meta data
2019-07-09 13:46:37 -07:00
Kubernetes Prow Robot
3a009af5c2
Merge pull request #79098 from chendave/update_comments
Update the comments on how to check disk conflict
2019-07-04 08:18:36 -07:00
jingxueli
6196f7274e improve error msg for predicate meta data 2019-06-30 03:32:02 +08:00
draveness
30b0f8bf3b fix: predicates read nodes from scheduler cache 2019-06-29 02:34:08 +08:00
Hemant Kumar
6abc04d059 Add unit tests for CSI predicate 2019-06-25 16:30:54 +02:00
Fabio Bertinatto
00b0ab86af Update scheduler to use volume limits from CSINode 2019-06-25 16:30:54 +02:00
Dave Chen
a9aea022ce Update the comments on how to check disk conflict
Signed-off-by: Dave Chen <dave.chen@arm.com>
2019-06-17 17:47:16 +08:00
Wei Huang
c4df3a2c44
prevent predicatesOrdering from escaping from UT
- sets `predicatesOrdering` back to original value in UT
2019-05-08 18:05:34 -07:00
Andrew Kim
c919139245 update import of generic featuregate code from k8s.io/apiserver/pkg/util/feature -> k8s.io/component-base/featuregate 2019-05-08 10:01:50 -04:00
Kubernetes Prow Robot
71d064040f
Merge pull request #76883 from hex108/cancel
Cancel processing node if error occurs when getting affinity and anti…
2019-04-24 02:44:17 -07:00
Jun Gong
5ad4cd6b72 Cancel processing node if error occurs when getting affinity and antiaffinity 2019-04-22 11:35:23 +08:00
caiweidong
4486021837 Avoid useless caller 2019-04-19 00:18:54 +08:00
Kubernetes Prow Robot
a670e85ad8
Merge pull request #76536 from cwdsuzhou/remove_unused_lock
Remove unused lock in scheduler
2019-04-16 17:48:19 -07:00
shinytang6
6d11926709 clean up comments 2019-04-14 20:03:39 +08:00
caiweidong
4038a5e3db Remove unused lock in scheduler 2019-04-13 13:27:16 +08:00
Ted Yu
02e0f9c5fd Produce map according to the shorter array in haveOverlap 2019-04-08 13:22:30 -07:00
PingWang
b43a9d6ad1 Delete unused struct
Signed-off-by: PingWang <wang.ping5@zte.com.cn>
2019-04-03 17:43:42 +08:00
Kubernetes Prow Robot
76b1d83517
Merge pull request #73863 from gnufied/fix-attach-limit-delayed
Fix code to handle delayed binding volumes
2019-04-01 13:18:35 -07:00
Jonathan Basseri
1b447e8d19 Scheduler: Logging cleanup in predicates.go.
This is some light cleanup of logs in predicates.go. In particular, some
log lines have details clarified that will make debugging easier.

I have not touched any VLOG messages, since those usually have plenty of
detail.
2019-03-22 17:33:18 -07:00
Hemant Kumar
a3a93c560b Add more volume types and unbound pvcs etc 2019-03-14 17:07:36 -04:00
Hemant Kumar
8c537b4693 Deprecate cloudprovider specific volume limit predicates
Fixes https://github.com/kubernetes/kubernetes/issues/72920
2019-02-25 16:24:29 -05:00