renyuquan
53ee08a40e
fix scheduler queue update logic
2021-03-10 15:48:18 +08:00
Abdullah Gharaibeh
c7fef196b6
Implements pod affinity NamespaceSelector feature
2021-03-04 07:30:24 -05: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
Benjamin Elder
56e092e382
hack/update-bazel.sh
2021-02-28 15:17:29 -08:00
drfish
bc2df9de72
Use PodInfo instead of Pod for nominatedPods and QueuedPodInfo
2021-02-22 22:00:23 +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
tanjing2020
d0eecbd0a9
migrate scheduling_queue.go to structured logging
2021-02-18 09:56:31 +08:00
Wei Huang
04a40d1f18
sched: remove Unknown queuing literal
2021-02-10 11:03:07 -08:00
Justin SB
8797738c02
Fix spelling typos: scheduable -> schedulable
...
Bulk fix of a common typo.
2021-01-09 12:59:33 -05:00
jinde.zgm
17b084938a
fix gofmt bug
2020-12-15 20:07:47 +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
Ali
09b2e8f638
Move scheduler interface to pkg/scheduler/framework
2020-10-13 13:13:27 +11: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
Gaurav Singh
00f28747b3
TestSchedulingQueue_Close: Remove struct tests and the corresponding for loop
...
Signed-off-by: Gaurav Singh <gaurav1086@gmail.com>
TestSchedulingQueue_Close: Remove for loop
Signed-off-by: Gaurav Singh <gaurav1086@gmail.com>
remove the tests slice
Signed-off-by: Gaurav Singh <gaurav1086@gmail.com>
Remove struct
Signed-off-by: Gaurav Singh <gaurav1086@gmail.com>
Remove t.Run()
Signed-off-by: Gaurav Singh <gaurav1086@gmail.com>
Add function name
Signed-off-by: Gaurav Singh <gaurav1086@gmail.com>
Remove nested function
Signed-off-by: Gaurav Singh <gaurav1086@gmail.com>
Replace expectedErr with wantErr
Signed-off-by: Gaurav Singh <gaurav1086@gmail.com>
2020-06-11 11:19:14 -04: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
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
Kubernetes Prow Robot
d4ce66fe0b
Merge pull request #90660 from Huang-Wei/synced-sched-err-call
...
Move unschedulable Pod to internal schedulingQ synchronously
2020-05-16 19:00:06 -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
Wei Huang
133a02540f
Move unschedulable Pod to internal schedulingQ synchronously
...
- use in-cache Pod instead of real-time Pod (by calling API server) to mark it as unschedulable
in internal schedulingQ
- remove the backoff logic as now we don't call API server
- the whole logic is changed to a synchronous call
2020-05-15 19:27:28 -07:00
Abdullah Gharaibeh
5e0211c72d
Added pre-processed required affinity terms to scheduler's PodInfo type.
2020-05-14 10:30:42 -04:00
Wei Huang
8c2a540cdc
Refine schedulerQueue test to avoid unneeded locks
...
- revert PR 88331
- remove createAndRunPriorityQueue()
- PriorityQueue is created and not run by default
- flushXYZ() is called on demand by manipulating FakeClock and Step()
2020-05-05 00:11:04 -07:00
lixiang
5844bc3b9f
There's no need to set moveRequestCycle and do broadcast twice.
2020-04-28 00:43:58 +08:00
Abdullah Gharaibeh
a151682887
Split scheduler's PodInfo into two types, PodInfo and PodQueueInfo
2020-04-21 21:45:20 -04:00
Aldo Culquicondor
c048858471
Support multiple scheduling profiles in a single scheduler
...
Signed-off-by: Aldo Culquicondor <acondor@google.com>
2020-02-25 11:31:20 -05:00
skilxn-go
74718adf10
fix data races for other usage of Q
2020-02-20 00:50:13 +08:00
skilxn-go
7e33feec57
fix data races in scheduler unit tests
2020-02-19 22:27:40 +08:00
Kubernetes Prow Robot
bde718d100
Merge pull request #87948 from notpad/feature/pod_backoff
...
Remove PodBackoffMap
2020-02-14 13:11:28 -08:00
notpad
a4e4a99435
Remove PodBackoffMap
2020-02-14 08:31:07 +08: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
Aldo Culquicondor
9d2786c383
Fix back off when scheduling cycle is delayed
...
Signed-off-by: Aldo Culquicondor <acondor@google.com>
2020-01-29 13:15:13 -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
Wei Huang
b2159b5d66
Remove scheduler/algorithm/priorities/util package
2020-01-09 20:16:05 -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
skilxn-go
5def91d778
Add VolumeBinder to FrameworkHandle interface
2020-01-09 10:29:35 +08:00
Abdullah Gharaibeh
f3c7a4c823
Update scheduler's RunFilterPlugins to return a plugin to status map
2020-01-08 16:44:51 -05:00
caiweidong
02e217759e
update comments of some funs in scheduling_queue
2020-01-02 23:35:12 +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
ca7ad98d60
Merge pull request #85470 from cwdsuzhou/add_pod_info
...
add pod info when failing to add pod to unschedulableQ
2019-12-03 18:35:10 -08:00
Abdullah Gharaibeh
f388534082
make scheduling queue start before the scheduler starts and stops after the scheduler stops
2019-12-02 14:35:09 -05:00
caiweidong
81afa77e3b
add pod info when failing to add pod to queue
2019-11-22 11:07:31 +08:00
Alex Wang
83dce763ec
add event to remove and reject waitingpods
2019-11-05 22:04:44 +08:00
Jun Gong
b4c2b00690
Make sure score plugins are executed when no priority configured
2019-10-29 17:25:35 +08: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
Abdullah Gharaibeh
373cf8c1b1
move nodeinfo/snapshot.go into its own package
2019-10-23 16:12:13 -04:00
draveness
39af760930
feat: several cleanups in the scheduling package
...
+ Remove unused variable in tests.
+ Use more common statement for interface conformance check.
+ Fix several comments in the framework plugins.
2019-10-18 11:14:05 +08:00
Kubernetes Prow Robot
3719fcdffa
Merge pull request #82072 from draveness/feature/use-context-instead-of-channel
...
feat(scheduler): use context in scheduler package
2019-10-17 01:46:39 -07:00