Commit Graph

94 Commits (d0577e7c74dc5e1e16c7f4b57414a8acec86c8ca)

Author SHA1 Message Date
Kevin c8c82c1d8f implement Node affinity and NodeSelector 2016-02-04 01:53:14 +00:00
Solly Ross 2d436ff080 Scheduler predicate for capping node volume count
For certain volume types (e.g. AWS EBS or GCE PD), a limitted
number of such volumes can be attached to a given node.  This commit
introduces a predicate with allows cluster admins to cap
the maximum number of volumes matching a particular type attached to a
given node.

The volume type is configurable by passing a pair of filter functions,
and the maximum number of such volumes is configurable to allow node
admins to reserve a certain number of volumes for system use.

By default, the predicate is exposed as MaxEBSVolumeCount and
MaxGCEPDVolumeCount (for AWS ElasticBlocKStore and GCE PersistentDisk
volumes, respectively), each of which can be configured using the
`KUBE_MAX_PD_VOLS` environment variable.

Fixes #7835
2016-02-02 16:21:42 -05:00
k8s-merge-robot feb4b4857c Merge pull request #19890 from vishh/0-nodes
Auto commit by PR queue bot
2016-02-01 14:09:06 -08:00
Hongchao Deng 8e1bfad490 insufficient resource error: details of failure in failedPredicateMap 2016-01-21 21:49:00 -08:00
Alex Mohr 76f02d562a Merge pull request #19083 from resouer/allocatable
Use Allocatable to replace Capacity
2016-01-21 16:05:05 -08:00
Alex Mohr fd9310fa6e Merge pull request #18452 from xiang90/refactor_nodiskconflicts
scheduler: clean up NoDiskConflict code in predicates.go
2016-01-21 10:58:41 -08:00
Vishnu kannan 21748701f1 Avoid nodes that have `0` cpu and memory capacity.
Signed-off-by: Vishnu kannan <vishnuk@google.com>
2016-01-20 15:34:58 -08:00
Harry Zhang 0202a206b8 Integration test to verify alloc works
Add integration test to verify allocatable can works
2016-01-20 15:36:19 +08:00
harry e64fe82245 Use Allocatable to replace Capacity
Use allocate instead in priorities
2016-01-18 15:26:40 +08:00
k8s-merge-robot 98b190acf4 Merge pull request #19527 from hongchaodeng/pred
Auto commit by PR queue bot
2016-01-17 03:52:16 -08:00
Hongchao Deng 111b603c95 Remove FailedResourceType and return custom error 2016-01-12 08:41:30 -08:00
Saad Ali 9b415f0300 Revert "Remove FailedResourceType and return custom error" 2016-01-11 11:27:50 -08:00
Hongchao Deng 91fa5f8c88 PodFitsHostPorts: small refactor and speedup 2016-01-09 20:03:52 -08:00
Hongchao Deng 40e5e688cc Remove FailedResourceType and return custom error 2016-01-07 13:47:23 -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
Xiang Li a0e6d68026 scheduler: fast check when there is no conflicts 2015-12-22 15:39:17 -08:00
mqliang e58eae313e move filter logic to list&watch client 2015-12-22 19:32:18 +08:00
Xiang Li d8c6e6dc4e scheduler: clean up PodFitsResources 2015-12-09 13:24:54 -08:00
Xiang Li d2dfb4906f scheduler: clean up NoDiskConflict code in predicates.go 2015-12-09 11:19:57 -08:00
jiangyaoguo f4c5d00b0c Implement a cachedNodeInfo in predicates 2015-11-27 21:49:14 +08:00
k8s-merge-robot 986dd3ea49 Merge pull request #15956 from rootfs/no-disk-conflict
Auto commit by PR queue bot
2015-11-12 01:27:39 -08:00
Huamin Chen bcbdd44267 rbd NoDiskConflict predicate: review feedback
Signed-off-by: Huamin Chen <hchen@redhat.com>
2015-11-02 10:18:39 -05:00
Huamin Chen 1ec9829ddf replace variable manifest to podSpec to make names unconfusing; update NoDiskConflicts comments
Signed-off-by: Huamin Chen <hchen@redhat.com>
2015-10-22 15:39:40 -04:00
Huamin Chen bd10664851 rbd: support NoDiskConflicts scheduler predicates
Signed-off-by: Huamin Chen <hchen@redhat.com>
2015-10-20 14:33:45 -04:00
Daniel Smith 7372e18e02 NO BIG MESSAGES IN N^2 LOGGING 2015-10-19 15:00:41 -07:00
David Oppenheimer b9cfab87e3 Merge pull request #14724 from HaiyangDING/PodFitsHostPorts
Replace PodFitsPorts with PodFitsHostPorts
2015-10-03 12:45:35 -07:00
HaiyangDING 6e11cd6028 Replace PodFitsPorts with PodFitsHostPorts 2015-09-30 15:14:59 +08:00
Piotr Szczesniak 659de4d7d0 Improved logging in scheduler 2015-09-29 15:46:22 +02:00
Wojciech Tyczynski 53ae56f205 Replace "minion" with "node" in bunch of places. 2015-09-14 11:07:11 +02:00
Kris Rousey ae6c64d9bb Moving everyone to unversioned client 2015-08-18 10:23:03 -07:00
dingh 472a66aee1 Update comments.
Change limit to request in the comments for CheckPodsExceedingFreeResources()
2015-08-12 17:30:09 +08:00
Marek Grabowski e034712456 Merge pull request #11788 from HaiyangDING/ImproveClarityResource
Improve clarity around PodFitsResource(issue#11453)
2015-08-10 09:56:32 +02:00
Satnam Singh bee48f4ce5 Merge pull request #12035 from AnanyaKumar/requests
Add support for request
2015-08-07 14:27:34 -07:00
dinghaiyang dab7280ae4 Improve clarity around PodFitsResource by showing pods limits in `kubectl describe node` 2015-08-07 16:58:11 +08:00
Ananya Kumar ef1e576810 Add support for request 2015-08-05 19:00:19 -07:00
Mike Danese 8e33cbfa28 rewrite go imports 2015-08-05 17:30:03 -07:00
Kenjiro Nakayama 78a8d287e9 Comment update 2015-07-10 21:11:15 +09:00
gmarek b25c97bca4 Add more logging to scheduler predicates to help debugging max_pods e2e test flakyness 2015-07-08 10:48:50 +02:00
Brendan Burns 97634c7fbf Fix the scheduler to ignore terminated pods. 2015-06-10 14:38:08 -07:00
Jonathan Wills 882462ad87 Change isVolumeConflict so read-only gce persistent disks don't conflict with each other 2015-06-01 08:13:48 -04: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
David Oppenheimer 44b1e1ca0c Fix stylistic isues with #5547. Closes #4910. 2015-05-18 23:32:06 -07:00
gmarek 27d660d0ac Add a resource specifying number of Pods that are allowed to run on Kubelet. 2015-05-15 10:57:46 +02: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