Commit Graph

99 Commits

Author SHA1 Message Date
Kubernetes Prow Robot
ccb1e1f26d Merge pull request #72045 from cofyc/fix71928
Make volume binder resilient to races
2019-01-11 17:42:32 -08:00
Kubernetes Prow Robot
97d7795070 Merge pull request #71504 from ping035627/k8s-181128
Perfect some logs description
2019-01-09 19:28:10 -08:00
Kubernetes Prow Robot
bd8edc27db Merge pull request #72615 from xiaoanyunfei/cleanup/getBinderFunc
Change `getBinderFunc` from method to function
2019-01-09 05:33:22 -08:00
Kubernetes Prow Robot
db60e4f20c Merge pull request #72632 from danielqsj/sch_pod
Move getNextPod to closure
2019-01-08 19:22:19 -08:00
Yecheng Fu
cfc8ef51d1 Make volume binder resilient to races: scheduler change
There is no need to clear stale pod binding cache in scheduling, because
it will be recreated at beginning of each schedule loop, and will be
cleared when pod is removed from scheduling queue.
2019-01-09 10:50:07 +08:00
sunxiaofei03
cf4eacfdc7 Change from method to function 2019-01-09 09:11:12 +08:00
Kubernetes Prow Robot
80afde7ca7 Merge pull request #70026 from bertinatto/only_schedule_pod_if_pv_requirements_are_met
Check PV requirements before scheduling
2019-01-07 03:46:21 -08:00
danielqsj
554ad383e3 Move getNextPod to closure 2019-01-07 17:54:49 +08:00
Fabio Bertinatto
bb4fcddd1b Check PV requirements before scheduling pod 2019-01-04 12:33:18 +01:00
Jonathan Basseri
95254d5457 Move CacheDebugger signal handling into the package.
This moves the signal handling for CacheDebugger from the factory
package into the CacheDebugger's package. That makes it easier to reuse
from packages other than factory.
2019-01-03 18:15:51 -08:00
Kubernetes Prow Robot
222d7837a8 Merge pull request #72303 from cofyc/fix72013-cleanup-scheduler
Update comments to reflect current logic
2019-01-03 15:51:34 -08:00
Yecheng Fu
fa88bcc154 Update comments for PriorityQueue.
Log condition reason which is useful for debugging.
2019-01-03 09:25:05 +08:00
Jordan Liggitt
73dcfe12da Stop checking VolumeScheduling feature gate 2018-12-27 17:45:45 -05:00
wangqingcan
b82a1d4600 Move predicate types from algorithm to predicates 2018-12-21 22:26:47 +08:00
PingWang
a9154b1a91 Perfect some logs description
Signed-off-by: PingWang <wang.ping5@zte.com.cn>
2018-12-21 17:29:47 +08:00
wangqingcan
1081e919e3 Eclass Task 1: clean up old equiv class code
Co-authored-by: Harry Zhang <resouer@gmail.com>
Co-authored-by: Wang Qingcan <wangqingcan@baidu.com>
2018-12-17 17:05:49 -08:00
Jonathan Basseri
8e25361320 Move ScheduleAlgorithm to the core package.
This moves the type `ScheduleAlgorithm` from `pkg/scheduler/algorithm`
to `pkg/scheduler/core`. The reason for this move is to fix our import
dependency graph and allow predicate & priority types to be moved into
their appropriate packages.

The new location makes sense because `core` is the only package that
exports an implementation of this type.
2018-12-13 15:08:38 -08:00
mlmhl
2fe9b1438c activate unschedulable pods only if the node became more schedulable 2018-12-10 09:48:23 +08:00
Gregory Haynes
73710f06db Check for shutdown in TryBackoffAndWait 2018-12-06 16:57:20 +00:00
Gregory Haynes
5e4ccede4c Reschedule with backoff
With the alpha scheduling queue we move pods from unschedulable to
active on certain events without a backoff. As a result we can cause
starvation issues if high priority pods are in the unschedulable queue.
Implement a backoff mechanism for pods being moved to active.

Closes #56721
2018-12-06 16:38:34 +00:00
Gregory Haynes
082b48240a Implement scheduler.util.backoff as a queue
We are going to use PodBackoff for controlling backoff when adding
unschedulable pods back to the active scheduling queue. In order to do
this more easily, limit the interface for PodBackoff to only this struct
(rather than exposing BackoffEntry) and change the backing expiry
implementation to be queue based.
2018-12-04 18:01:43 +00:00
Bobby (Babak) Salamat
f74b30868c Add plugin invocation for 'reserve' and 'prebind' plugins to the scheduler. 2018-11-30 16:03:47 -08:00
Wei Huang
b4fd11512a ensure scheduler preemptor behaves in an efficient/correct path
- don't update nominatedMap cache when Pop() an element from activeQ
- instead, delete the nominated info from cache when it's "assumed"
- unit test behavior adjusted
- expose SchedulingQueue in factory.Config
2018-11-16 14:22:15 -08:00
Davanum Srinivas
954996e231 Move from glog to klog
- Move from the old github.com/golang/glog to k8s.io/klog
- klog as explicit InitFlags() so we add them as necessary
- we update the other repositories that we vendor that made a similar
change from glog to klog
  * github.com/kubernetes/repo-infra
  * k8s.io/gengo/
  * k8s.io/kube-openapi/
  * github.com/google/cadvisor
- Entirely remove all references to glog
- Fix some tests by explicit InitFlags in their init() methods

Change-Id: I92db545ff36fcec83afe98f550c9e630098b3135
2018-11-10 07:50:31 -05:00
Dr. Stefan Schimanski
d91feb6d18 kube-scheduler: move stopCh creation out of scheduler factory code
Enforces clean ownership of the channel.
2018-11-08 16:43:59 +01:00
Babak "Bobby" Salamat
2c8e73a16b Revert "Activate unschedulable pods only if the node became more schedulable" 2018-11-07 16:57:47 -08:00
Bobby (Babak) Salamat
7ce3245ca9 Add a scheduler cache dumper 2018-11-05 13:31:51 -08:00
mlmhl
c50f89dd43 activate unschedulable pods only if the node became more schedulable 2018-10-30 10:45:59 +08:00
ravisantoshgudimetla
fad6b326e3 Fix default algorithm provider priority insertion 2018-10-26 13:48:44 -04:00
k8s-ci-robot
94306c12f5 Merge pull request #69057 from denkensk/create-a-new-scheduler-constructor
create-a-new-scheduler-constructor
2018-10-11 13:45:02 -07:00
Guoliang Wang
f44f55cdd7 [scheduler cleanup phase 1]: Move CacheComparer to pkg/scheduler/internal/cache/comparer 2018-10-10 21:28:14 +08:00
wangqingcan
a74fd15e62 create a new scheduler constructor 2018-10-10 17:10:10 +08:00
Bobby (Babak) Salamat
5f2555e3ad Remove pod status.phase check from pod event handlers 2018-10-09 13:39:04 -07:00
Guoliang Wang
187e2e01c9 Move scheduler cache interface and implementation to pkg/scheduler/internal/cache 2018-10-06 20:48:59 +08:00
Wei Huang
9da576f03c move SchedulingQueue to pkg/scheduler/internal/queue 2018-09-28 11:51:02 -07:00
k8s-ci-robot
db1d1c8674 Merge pull request #68700 from Huang-Wei/schedulingQ-graceful-shutdown
shutdown schedulingQueue gracefully
2018-09-28 00:46:14 -07:00
Wei Huang
be661fddb4 shutdown schedulingQueue gracefully
- add Close() to interface SchedulingQueue
- implement Close() for FIFO and PriorityQueue
- add unit test
2018-09-27 14:32:58 -07:00
Wei Huang
56fcfc5fee cleanup duplicate assignment logic in scheduler 2018-09-27 11:38:05 -07:00
k8s-ci-robot
823530d4db Merge pull request #68917 from zhangmingld/fixwordserr
Fix some typo err
2018-09-26 22:59:32 -07:00
Bobby (Babak) Salamat
f340f8baf8 Remove PDB and its event handlers from the scheduler cache 2018-09-26 14:22:21 -07:00
k8s-ci-robot
28d86ac47d Merge pull request #67308 from cofyc/fix67260
Use monotonically increasing generation to prevent equivalence cache race
2018-09-25 00:18:00 -07:00
Yecheng Fu
b3f1e1200b Update notes to document why invalidation order is important. 2018-09-22 12:09:24 +08:00
Yecheng Fu
2f46bc8a18 Use seqeuence number to represent generation of equivalence cache.
- snapshot equivalence cache generation numbers before snapshotting the
scheduler cache
- skip update when generation does not match live generation
- keep the node and increment its generation to invalidate it instead of
deletion
- use predicates order ID as key to improve performance
2018-09-22 12:08:21 +08:00
zhangmingld
6aaeb209eb fix some typo 2018-09-21 10:19:35 +08:00
Kubernetes Submit Queue
ca43f007a3 Merge pull request #67731 from gnufied/fix-csi-attach-limit
Automatic merge from submit-queue (batch tested with PRs 68161, 68023, 67909, 67955, 67731). If you want to cherry-pick this change to another branch, please follow the instructions here: https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md.

Fix csi attach limit

Add support for volume limits for CSI.

xref: https://github.com/kubernetes/community/pull/2051

```release-note
Add support for volume attach limits for CSI volumes
```
2018-09-05 14:51:55 -07:00
Michelle Au
e124159990 Add scheduler option for bind timeout 2018-09-04 17:25:23 -07:00
tizhou86
2a2c0c37d4 Fix golint error under scheduler/factory. 2018-08-23 17:24:32 +08:00
Hemant Kumar
4b17a48def Implement support for updating volume limits
Create a new predicate to count CSI volumes
2018-08-22 19:36:00 -04:00
Bobby (Babak) Salamat
abb70aee98 Add a scheduler config argument to set the percentage of nodes to score 2018-08-17 11:18:51 -07:00
Kubernetes Submit Queue
6274590518 Merge pull request #66656 from wackxu/fixappversion
Automatic merge from submit-queue. If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.

 use apps/v1 version for scheduler

/kind cleanup

**Release note**:

```release-note
NONE
```
2018-08-11 23:25:33 -07:00