Commit Graph

129 Commits (15ed9dbd02e8e4bb616f17a5a0fadf39ae9ec030)

Author SHA1 Message Date
goltermann 32d569d6c7 Fixing all the "composite literal uses unkeyed fields" Vet errors. 2016-03-25 15:25:09 -07:00
Hongchao Deng ae88f08af0 Scheduler: replace system modeler with scheduler cache 2016-03-14 09:03:41 -07:00
Piotr Szczesniak 33cc3c7653 Fixed logging in scheduler 2016-03-05 10:53:06 +01:00
Marek Grabowski eb2f5153b3 Revert "Scheduler: replace system modeler with scheduler cache and do O(1) lookup for resource req" 2016-03-02 15:38:56 +01:00
Kris e664ef922f Move restclient to its own package 2016-02-29 12:05:13 -08:00
Hongchao Deng f29a1d6c5c scheduler: Scheduler: replace system modeler with scheduler cache
We're using the scheduler cache to do O(1) lookup for resource request
2016-02-26 09:22:29 -08:00
mqliang 0aab44a00d add ReplicaSet support in scheduler 2016-02-16 14:34:46 +08:00
harry 1032067ff9 Replace runtime reference by pkg 2016-02-01 21:06:44 +08:00
harry 080cb60dab Fix duplicated rate limit in scheduler
Remove BindingRateLimiterSaturation metrics

Update generated doc
2016-01-13 20:51:55 +08:00
Justin Santa Barbara f9a6ac077e Ubernetes Lite: Volumes can dictate zone scheduling
For AWS EBS, a volume can only be attached to a node in the same AZ.
The scheduler must therefore detect if a volume is being attached to a
pod, and ensure that the pod is scheduled on a node in the same AZ as
the volume.

So that the scheduler need not query the cloud provider every time, and
to support decoupled operation (e.g. bare metal) we tag the volume with
our placement labels.  This is done automatically by means of an
admission controller on AWS when a PersistentVolume is created backed by
an EBS volume.

Support for tagging GCE PVs will follow.

Pods that specify a volume directly (i.e. without using a
PersistentVolumeClaim) will not currently be scheduled correctly (i.e.
they will be scheduled without zone-awareness).
2015-12-31 12:27:01 -05:00
k8s-merge-robot f4f4e5cb9f Merge pull request #18817 from mqliang/schedulerSelector
Auto commit by PR queue bot
2015-12-23 12:09:19 -08:00
mqliang e58eae313e move filter logic to list&watch client 2015-12-22 19:32:18 +08:00
HaiyangDING d9f3607292 Implement multi-scheduler:
1. Name default scheduler with name `kube-scheduler`
2. The default scheduler only schedules the pods meeting the following condition:
	- the pod has no annotation "scheduler.alpha.kubernetes.io/name: <scheduler-name>"
	- the pod has annotation "scheduler.alpha.kubernetes.io/name: kube-scheduler"

update gofmt

update according to @david's review

run hack/test-integration.sh, hack/test-go.sh and local e2e.test
2015-12-22 10:49:40 +08:00
k8s-merge-robot b97cfd8d8f Merge pull request #18818 from mqliang/parseordie
Auto commit by PR queue bot
2015-12-20 15:08:38 -08:00
combk8s f697732a5d move parse or die logic to selector.go 2015-12-17 19:59:46 +08:00
jiangyaoguo f4c5d00b0c Implement a cachedNodeInfo in predicates 2015-11-27 21:49:14 +08:00
Ravi Gadde cadc24e9fd Scheduler extension 2015-11-25 08:19:27 -08:00
Madhusudan.C.S ce257b5a0e Use node out of disk condition in the scheduler while scheduling pods.
Set the out of disk node condition to unknown in the node controller if
the kubelet does not report its node condition in a long time. Update
node controller unit tests.

Implement a node condition predicate function that checks if a given
node satisfies the conditions defined by the predicate and if it
does, use that node for scheduling pods. The predicate function takes
both NodeReady and NodeOutOfDisk into consideration to determine if a
node is fit for scheduling pods.

The predicate is then passed to the node lister in the scheduler factory
so that the node lister can run the predicate function on the nodes when
schedling pods thereby omitting nodes that does not satisfy the
predicate.

Also update listers test.
2015-10-28 14:29:46 -07:00
eulerzgy 71b96422f4 set capital in some files 2015-09-30 14:46:20 +08:00
Brendan Burns 40247acb0f Fix a race in pod backoff. 2015-09-24 15:43:33 -07:00
Wojciech Tyczynski 53ae56f205 Replace "minion" with "node" in bunch of places. 2015-09-14 11:07:11 +02:00
Daniel Smith b225c1d47a Run gofmt (separate commit for easy rebases) 2015-09-10 17:17:59 -07:00
Daniel Smith 15b30b8b09 Move version agnostic parts of client
pkg/client/unversioned/cache -> pkg/client/cache
pkg/client/unversioned/record -> pkg/client/record
2015-09-10 17:17:59 -07:00
tummychow 78ce5da988 Move util.StringSet into its own package
A lot of packages use StringSet, but they don't use anything else from
the util package. Moving StringSet into another package will shrink
their dependency trees significantly.
2015-09-10 12:04:15 -07:00
Kris Rousey ae6c64d9bb Moving everyone to unversioned client 2015-08-18 10:23:03 -07:00
Kris Rousey 565189f5b8 Correcting all go vet errors 2015-08-11 13:55:37 -07:00
Mike Danese 8e33cbfa28 rewrite go imports 2015-08-05 17:30:03 -07:00
gmarek 4cc0a2f117 Allow changing Schedulers RateLimitter setting during startup. 2015-08-03 15:27:19 +02:00
gmarek 94eb52de33 Add spreading by controllers 2015-07-31 16:28:50 +02:00
Tim Hockin d0daabb34b Merge pull request #8471 from bprashanth/scheduler_burst
Limit the scheduler to a burst qps of 30
2015-05-28 16:55:25 -07:00
Chao Xu 9c1153322e update PodSpec.Host to PodSpec.NodeName in /pkg/api/types.go and /pkg/api/v1beta3/types.go 2015-05-28 14:10:06 -07:00
Prashanth Balasubramanian 4004a68ae9 Limit the scheduler to a burst qps of 30 and rate limit pod binding 2015-05-27 16:35:09 -07:00
Clayton Coleman d00f705652 Tone down scheduler logging
Having no nodes in the cluster is unusual and is likely a test
environment, and when a pod is deleted there is no need to log
information about our inability to schedule it.
2015-05-16 19:46:50 -04:00
hurf 6203ce9f85 Move pkg/scheduler to plugin/pkg/scheduler
As the TODO in plugin/pkg/scheduler/scheduler.go described:

move everything from pkg/scheduler into this package. Remove
references from registry.
2015-05-13 14:03:25 +08:00
Prashanth Balasubramanian 4b0607cf0b Scheduler ignored nodes with unknown condition status 2015-05-06 18:32:52 -07:00
Eric Paris 6b3a6e6b98 Make copyright ownership statement generic
Instead of saying "Google Inc." (which is not always correct) say "The
Kubernetes Authors", which is generic.
2015-05-01 17:49:56 -04:00
Daniel Smith 835a87aed2 Merge pull request #6857 from wojtek-t/fix_scheduler_nodes
Fix listing nodes in scheduler
2015-04-15 17:05:04 -07:00
Wojciech Tyczynski afb94c43b1 Fix listing nodes in scheduler 2015-04-15 14:26:25 +02:00
Daniel Smith fb0df935f6 add missing syncronization 2015-04-14 15:59:50 -07:00
Daniel Smith dd26cdf0f7 Fix comments; switch to watching nodes 2015-04-10 17:49:51 -07:00
Daniel Smith 6835318d1e switch to require 'go controller.Run()' 2015-04-10 14:05:08 -07:00
Daniel Smith 5f7715f0e9 Make scheduler not miss deletion events even in the case of a resync. 2015-04-10 14:05:08 -07:00
Wojciech Tyczynski 88eb0b0295 FieldSelector for node List() 2015-04-10 12:53:16 +02:00
Masahiro Sano d04cc5ced4 List in NodesInterface takes label selector 2015-04-08 23:41:27 +09:00
Wojciech Tyczynski 8a5c76356c Revert "Stop the bleeding for #6059"
This reverts commit 6be09c5e97.
2015-04-08 13:29:29 +02:00
Daniel Smith c1390a0836 version field selector field names in the client 2015-04-07 16:59:57 -07:00
gmarek ef56dca6b6 Remove ConditionSchedulable 2015-04-07 17:01:07 +02:00
Daniel Smith 6be09c5e97 Stop the bleeding for #6059 2015-04-02 13:54:10 -07:00
Piotr Szczesniak 5c6439d449 Removed PodStatus.Host
Fixes #6165
2015-04-02 16:38:45 +02:00
Deyuan Deng 6bb9701489 Remove Reachable Condition 2015-04-01 13:56:43 -04:00