Commit Graph

666 Commits (733faf5280e334df018c7a09ec9df12265c91656)

Author SHA1 Message Date
Mike Metral 2da0dbd6fd fix typo 2016-03-12 14:06:41 +00:00
Matt Liggett 547c3b449f Guarantee we finish writing to the test log before the test exits.
Should fix #22614
2016-03-09 13:27:27 -08:00
gmarek 2c52e62622 Change scheduler logic from random to round-robin 2016-03-07 13:47:56 +01:00
Piotr Szczesniak 33cc3c7653 Fixed logging in scheduler 2016-03-05 10:53:06 +01:00
k8s-merge-robot d81d823ca5 Merge pull request #22393 from eparis/blunderbuss
Auto commit by PR queue bot
2016-03-02 18:51:56 -08:00
Eric Paris 5e5a823294 Move blunderbuss assignees into tree 2016-03-02 20:46:32 -05: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
k8s-merge-robot e7d0f06c4a Merge pull request #21736 from resouer/check-register
Auto commit by PR queue bot
2016-03-01 02:21:56 -08: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
Harry Zhang 636e982ecd Implement checking in predicates 2016-02-25 21:25:36 +08:00
harry b90550de25 Implement check for priority 2016-02-23 11:59:32 +08:00
k8s-merge-robot 807344da0b Merge pull request #21235 from davidopp/affinity-docs
Auto commit by PR queue bot
2016-02-20 11:15:02 -08:00
k8s-merge-robot 3639e43df2 Merge pull request #21016 from hongchaodeng/cache
Auto commit by PR queue bot
2016-02-20 02:47:53 -08:00
k8s-merge-robot 057b8352ec Merge pull request #21182 from vishh/repoTagsRename
Auto commit by PR queue bot
2016-02-19 08:56:09 -08:00
David Oppenheimer 053f1c6008 Update user guide and scheduler documentation to describe node affinity.
Register image priority locality function, which the original PR that introduced
it forgot to do. Change zone and region labels to beta.
2016-02-18 17:09:41 -08:00
laushinka 7ef585be22 Spelling fixes inspired by github.com/client9/misspell 2016-02-18 06:58:05 +07:00
Vishnu kannan 2623fdde17 Improve the naming of fields in ContainerImage struct used in NodeStatus.
Signed-off-by: Vishnu kannan <vishnuk@google.com>
2016-02-16 15:45:22 -08:00
Hongchao Deng 5c3d303ba9 scheduler cache: API and implementation 2016-02-16 08:10:20 -08:00
k8s-merge-robot 8a815b919d Merge pull request #21074 from mqliang/scheduler-ReplicaSet
Auto commit by PR queue bot
2016-02-16 01:48:33 -08:00
mqliang 0aab44a00d add ReplicaSet support in scheduler 2016-02-16 14:34:46 +08:00
derekwaynecarr a03361bd84 Make default format right for nil values 2016-02-15 13:55:33 -05:00
David Oppenheimer 66368efad5 Comment out NodeAffinity.RequiredDuringSchedulingRequiredDuringExecution
because it is not yet implemented.
2016-02-14 17:46:13 -08:00
Hongchao Deng 1cf4540b5d priorities: move getNonzeroRequests() into util/ package 2016-02-10 08:35:00 -08:00
Hongchao Deng 9236e4a0b4 scheduler: change fit predicates and priority func as needed for optimization 2016-02-09 09:38:28 -08:00
Oleg Shaldybin 3a36dfb306 Minor selectHost optimization in scheduler
Instead of sorting hosts by score, find max score and choose one of
the hosts with max score directly. Saves a little time on sorting and
avoids extra copying of HostPriorityList entries.

Test had to be updated as one of the test cases relied on having a
stable order from pre-sorting.
2016-02-08 12:37:37 -05:00
Jan Chaloupka 4389b3f0d6 Rewritte util.* -> wait.* wherever reasonable 2016-02-07 12:02:20 +01:00
k8s-merge-robot d001f4afea Merge pull request #20254 from hongchaodeng/plugin
Auto commit by PR queue bot
2016-02-06 13:23:43 -08:00
k8s-merge-robot 8e56494ec5 Merge pull request #20140 from resouer/scheduler
Auto commit by PR queue bot
2016-02-05 20:08:31 -08:00
k8s-merge-robot 175d0c57f2 Merge pull request #19880 from DirectXMan12/feature/limit-ebs-scheduler-predicate
Auto commit by PR queue bot
2016-02-05 09:26:42 -08:00
Kevin c8c82c1d8f implement Node affinity and NodeSelector 2016-02-04 01:53:14 +00:00
harry 233a601130 Caculate priorities based on image locality
Add test for image score

Update generated docs
2016-02-03 21:01:26 +08:00
Jeff Lowdermilk caa9433234 Merge pull request #20433 from lavalamp/fix-bad-rv
Add timeout, fix potential startup hang
2016-02-02 17:27:23 -08: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 32ab64ce5b Merge pull request #19778 from resouer/runtime
Auto commit by PR queue bot
2016-02-01 21:05:05 -08:00
Daniel Smith 4a7d70aef1 extend fake clock 2016-02-01 15:36:15 -08: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
harry 1032067ff9 Replace runtime reference by pkg 2016-02-01 21:06:44 +08:00
k8s-merge-robot 3e04a45a95 Merge pull request #19910 from hongchaodeng/res
Auto commit by PR queue bot
2016-02-01 00:08:28 -08:00
Hongchao Deng 70408d2cbd PluginFactoryArgs: Expose explicit fields
None of the embedded fields are used for inheritance methods. Expose
them for better code analysis.
2016-01-27 18:59:12 -08:00
Clayton Coleman 38c7eded99 Prepare for content-type negotiation
Combine the fields that will be used for content transformation
(content-type, codec, and group version) into a single struct in client,
and then pass that struct into the rest client and request. Set the
content-type when sending requests to the server, and accept the content
type as primary.

Will form the foundation for content-negotiation via the client.
2016-01-26 17:44:30 -05:00
k8s-merge-robot 2a83f5d5c7 Merge pull request #19906 from hongchaodeng/fiterror
Auto commit by PR queue bot
2016-01-26 13:36:37 -08:00
Clayton Coleman 33085c0cf2 Update tests to handle codec changes 2016-01-22 13:27:26 -05:00
Clayton Coleman c1d932e44a Switch API objects to not register per version codecs
Remove Codec from versionInterfaces in meta (RESTMapper is now agnostic
to codec and serialization). Register api/latest.Codecs as the codec
factory and use latest.Codecs.LegacyCodec(version) as an equvialent to
the previous codec.
2016-01-22 01:10:21 -05: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
Hongchao Deng 5331ffc82f FitError: return details of failure on each node 2016-01-20 22:38: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
k8s-merge-robot f2d273d481 Merge pull request #19128 from resouer/qps-limit
Auto commit by PR queue bot
2016-01-16 10:03:00 -08:00
harry 98222b4d8b Replace to tag
Use a testing pkg to replace testing util codes
2016-01-15 15:07:21 +08:00
Mike Danese f9f4b74a29 Merge pull request #19449 from hongchaodeng/fitport
PodFitsHostPorts: small refactor and speedup
2016-01-14 11:56:14 -08:00
harry 080cb60dab Fix duplicated rate limit in scheduler
Remove BindingRateLimiterSaturation metrics

Update generated doc
2016-01-13 20:51:55 +08:00
Hongchao Deng 252a956150 return error if got InsufficientResourceError and fit=true 2016-01-12 08:46:35 -08:00
Hongchao Deng 111b603c95 Remove FailedResourceType and return custom error 2016-01-12 08:41:30 -08:00
David Oppenheimer 8ac484793d Comment out calls to httptest.Server.Close() to work around
https://github.com/golang/go/issues/12262 . See #19254 for
more details. This change should be reverted when we upgrade
to Go 1.6.
2016-01-11 23:02:11 -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
Hongchao Deng 2744447dba scheduler metrics: change Summary to Histogram 2016-01-04 14:50:49 -08:00
Hongchao Deng 47a21aa285 scheduler metrics should only observe successful ops 2016-01-04 14:50:37 -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
Xiang Li a0e6d68026 scheduler: fast check when there is no conflicts 2015-12-22 15:39:17 -08:00
Xiang Li f3ced64a80 scheduler: a small refactor for generic scheduler 2015-12-22 15:36:41 -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 29754318ad Merge pull request #18413 from xiang90/p_schedule
Auto commit by PR queue bot
2015-12-21 11:32:53 -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
David Oppenheimer 7851d24d04 Merge pull request #18466 from xiang90/pod_fits
scheduler: clean up PodFitsResources
2015-12-18 22:11:05 -08:00
Xiang Li 7f4f754106 scheduler: calculate priority in parallel.
To improve the throughput of current scheduler, we can do
a simple optimization by calcluating priorities in parallel.

This doubles the throughput of density test, which has the default
config with 3 priority funcs (the spreading one does not actually
consume any computation time). It matches the expectation.
2015-12-18 19:13:54 -08:00
combk8s f697732a5d move parse or die logic to selector.go 2015-12-17 19:59:46 +08:00
Brendan Burns 0ee0e16bcd Don't recreate the same map 3 times 2015-12-16 20:39:28 -08:00
k8s-merge-robot ae9c61b943 Merge pull request #17915 from justinsb/multizone_spread_rcs
Auto commit by PR queue bot
2015-12-16 19:04:07 -08:00
k8s-merge-robot e309583ff1 Merge pull request #18473 from smarterclayton/change_runtime_object
Auto commit by PR queue bot
2015-12-16 04:24:22 -08:00
Clayton Coleman 8f203a28f1 Change runtime.Object signature 2015-12-15 13:36:25 -05:00
deads2k 6e33403abf update CodecFor for GroupVersion 2015-12-15 10:56:00 -05:00
Justin Santa Barbara cd433c974f Zone-scheduler: Fixes per code-review 2015-12-13 20:34:01 -05:00
Justin Santa Barbara 6aa16c744b When scheduling, spread between zones if labeled
We already spread across nodes; we modify this spreading preference to
spread across zones when nodes are labeled with zone information.
2015-12-13 20:34:01 -05: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
Hongchao Deng c4fdb7a2d0 Scheduler metrics: binding rate limiter saturation 2015-12-03 10:43:37 -08:00
Hongchao Deng ba80892cec Rate limiter: Add Saturation() method 2015-12-03 08:39:35 -08:00
jiangyaoguo f4c5d00b0c Implement a cachedNodeInfo in predicates 2015-11-27 21:49:14 +08:00
k8s-merge-robot 4eb010b1f7 Merge pull request #17694 from hongchaodeng/ratelimit
Auto commit by PR queue bot
2015-11-26 13:12:26 -08:00
k8s-merge-robot 3ffc680be6 Merge pull request #13580 from ravigadde/sched-ext
Auto commit by PR queue bot
2015-11-25 12:26:16 -08:00
deads2k ed95a6d77f update scheme to use GroupVersion 2015-11-25 12:15:48 -05:00
Ravi Gadde cadc24e9fd Scheduler extension 2015-11-25 08:19:27 -08:00
Wojciech Tyczynski a968f98dc2 Expose information about scheduling latency in scalability tests. 2015-11-25 08:31:46 +01:00
k8s-merge-robot a26a1ae5d5 Merge pull request #17438 from spiffxp/sched-v-levels
Auto commit by PR queue bot
2015-11-24 20:42:18 -08:00
k8s-merge-robot d42030170b Merge pull request #15999 from aveshagarwal/master-issue-15624
Auto commit by PR queue bot
2015-11-24 17:07:10 -08:00
Avesh Agarwal 3d5207fd73 This commit adds type information to events.
This addresses issue #15624.
2015-11-24 09:59:54 -05:00
Hongchao Deng 13d152a873 RateLimiter: change CanAccept() to TryAccept() 2015-11-23 16:42:53 -08:00
deads2k a87d927588 update client.Config to use GroupVersion 2015-11-21 08:29:26 -05:00
Aaron Crickenberger fad1968023 Adjust V level for scheduler messages
The "Combined requested resources" message becomes excessive as
the cluster fills up, drop it down to V(2)

Put an explicit V(2) on the only other scheduler Infof call that didn't
have V specified already.
2015-11-19 15:12:13 -05:00
David Oppenheimer a45c98299a Revert "Avoid full sort when selecting host with highest priority."
This reverts commit c64048d73e.

Address #17332.
2015-11-16 15:16:00 -08:00
k8s-merge-robot f8db8f12fd Merge pull request #16647 from abursavich/tophost
Auto commit by PR queue bot
2015-11-16 08:36:32 -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
Andrew M Bursavich c64048d73e Avoid full sort when selecting host with highest priority. 2015-10-31 22:33:02 -07: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
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
eulerzgy f8f9afb874 alias local packagename for pkg/util/errors 2015-10-18 09:37:46 +08:00
Derek Carr 87fe1f4af8 Merge pull request #13939 from pmorie/pod-sc-minimal
Add PodSecurityContext and backward compatibility tests
2015-10-07 09:56:58 -04:00
Jordan Liggitt 6762978470 Correct compatibility test to include kind/apiVersion for scheduler json 2015-10-05 22:57:07 -04:00
Paul Morie 227dd82119 Add PodSecurityContext and backward compatibility tests 2015-10-05 21:05:27 -04:00
David Oppenheimer b9cfab87e3 Merge pull request #14724 from HaiyangDING/PodFitsHostPorts
Replace PodFitsPorts with PodFitsHostPorts
2015-10-03 12:45:35 -07:00
Wojciech Tyczynski 7f9df8c062 Merge pull request #14721 from zhengguoyong/err_value
add log err value
2015-10-01 09:37:36 +02:00
Brendan Burns 2a6c7a1e79 Merge pull request #14715 from zhengguoyong/capital
set capital in some glog files
2015-09-30 11:28:05 -07:00
HaiyangDING 6e11cd6028 Replace PodFitsPorts with PodFitsHostPorts 2015-09-30 15:14:59 +08:00
eulerzgy 71b96422f4 set capital in some files 2015-09-30 14:46:20 +08:00
Piotr Szczesniak 659de4d7d0 Improved logging in scheduler 2015-09-29 15:46:22 +02:00
eulerzgy b1be6bc8ea add log err value 2015-09-29 17:09:25 +08:00
Brendan Burns 40247acb0f Fix a race in pod backoff. 2015-09-24 15:43:33 -07:00
Kris f4ad00d9ae Moving Status object to a common package 2015-09-17 14:09:53 -07:00
k8s-merge-robot 22f698f5b0 Merge pull request #13953 from liguangbo/change_iff_to_if_and_only_if
Auto commit by PR queue bot
2015-09-16 08:35:20 -07:00
liguangbo 4df68f03a3 change iff to if and only if to improve annotation readability 2015-09-16 08:29:36 +00:00
k8s-merge-robot bf641078eb Merge pull request #13785 from wojtek-t/minion_to_node_2
Auto commit by PR queue bot
2015-09-14 23:23:06 -07:00
Wojciech Tyczynski 53ae56f205 Replace "minion" with "node" in bunch of places. 2015-09-14 11:07:11 +02:00
Chao Xu ca803fc504 address lavalamp's comment on using testapi instead of latest, and adding comments for public method. 2015-09-12 15:48:44 -07:00
Chao Xu dd6c121d7f massive changes 2015-09-11 17:31:47 -07: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
Chao Xu 9fc79e9d99 refactor testapi and test scripts to prepare for multiple API groups. 2015-09-04 18:01:32 -07:00
Clayton Coleman 02dbb95447 Add TerminationGracePeriodSeconds to API
Set defaulting for pod spec
2015-08-20 11:03:38 -04:00
Robert Bailey 08e6a43c1d Revert "Merge pull request #9165 from smarterclayton/graceful"
This reverts commit 4f856b595d, reversing
changes made to d78525a83b.

Conflicts:
	pkg/kubelet/status_manager.go
2015-08-18 17:34:49 -07:00
Kris Rousey ae6c64d9bb Moving everyone to unversioned client 2015-08-18 10:23:03 -07:00
Clayton Coleman b842a7dd15 Revert "Revert "Gracefully delete pods from the Kubelet""
This reverts commit 98115facfd.
2015-08-18 08:57:02 -04:00
Robert Bailey 5d58c2ca77 Merge pull request #12718 from HaiyangDING/ChangeLimitToRequest
Use request to deal with resource requirement in priority functions.
2015-08-17 13:52:28 -07:00
Karl Isenberg 61c9dd876e Improve readability of scheduling failure logs 2015-08-17 12:17:48 +02:00
Brendan Burns 8bd9592b7f Merge pull request #12544 from liggitt/ServiceSpreadingPriority
Auto commit by PR queue bot
2015-08-14 17:09:43 -07:00
dinghaiyang 43c2bd72cb Use resource request instead of resource limit to deal with resource
requirement in priority functions.
2015-08-14 17:25:48 +08:00
jiangyaoguo 5d3522dc7a Keep event reason consistant in scheduler and controller 2015-08-13 11:33:32 +08:00
Jordan Liggitt cf7a2cdfff Re-add ServiceSpreadingPriority priority algorithm 2015-08-12 08:39:04 -04:00
dingh 472a66aee1 Update comments.
Change limit to request in the comments for CheckPodsExceedingFreeResources()
2015-08-12 17:30:09 +08:00
Kris Rousey 565189f5b8 Correcting all go vet errors 2015-08-11 13:55:37 -07:00
Marek Grabowski 5f9cefc1d8 Merge pull request #12441 from vlajos/typofixes-vlajos-20150807
typofix - https://github.com/vlajos/misspell_fixer
2015-08-10 16:33:52 +02: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
Veres Lajos 9f77e49109 typofix - https://github.com/vlajos/misspell_fixer 2015-08-08 22:31:48 +01:00
Satnam Singh bee48f4ce5 Merge pull request #12035 from AnanyaKumar/requests
Add support for request
2015-08-07 14:27:34 -07:00
Jerzy Szczepkowski d6dab28b96 Revert "Move prioritizer function EqualPriority to package priorities" 2015-08-07 15:51:26 +02:00
dinghaiyang dab7280ae4 Improve clarity around PodFitsResource by showing pods limits in `kubectl describe node` 2015-08-07 16:58:11 +08:00
dinghaiyang ebbcd4a3ba Move prioritizer function EqualPriority to package priorities 2015-08-07 09:56:54 +08:00
Ananya Kumar ef1e576810 Add support for request 2015-08-05 19:00:19 -07:00
Mike Danese 17defc7383 run gofmt on everything we touched 2015-08-05 17:52:56 -07:00
Mike Danese 8e33cbfa28 rewrite go imports 2015-08-05 17:30:03 -07:00
Alex Mohr 1311b9dce1 Merge pull request #11886 from gmarek/ratelimit
Auto commit by PR queue bot
2015-08-04 11:39:53 -07:00
Mike Danese ba87868577 changed unused fmt statement to be a log statement 2015-08-03 15:12:44 -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
Mike Danese ae1c8e55ef Merge pull request #11737 from thockin/cleanup-remove-v1beta3
Remove v1beta3
2015-07-24 10:25:56 -07:00
Vish Kannan c60238921f Merge pull request #11051 from nak3/AWSElasticBlockStore
Update comment about NoDiskConflict predicate
2015-07-23 17:49:37 -07:00
Tim Hockin 1c3233a1d4 Remove v1beta3 2015-07-23 17:21:27 -07:00
Wojciech Tyczynski d30704af87 Merge pull request #11682 from nak3/priorities-fix
Remove unused argument from fractionOfCapacity()
2015-07-23 12:57:22 +02:00
Kenjiro Nakayama a176001aa1 Fix calculation comment for LeastRequestedPriority 2015-07-22 17:18:19 +09:00
Kenjiro Nakayama 5d3958ff64 Remove unused argument from fractionOfCapacity() 2015-07-22 15:43:50 +09:00
Prashanth Balasubramanian 0728c08a1e Fix scheduler race 2015-07-12 23:14:24 -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
David Oppenheimer bdf22e3121 Increase zero-limit pod RAM for spreading to 200 MB to match cluster
addon pods and represent less trivial fraction of typical machine RAM
(e.g. n1-standard-1).
2015-07-07 13:48:57 -07:00
Zach Loafman 8278928b66 Merge pull request #10661 from davidopp/somebranch
When scheduling, treat zero limit-pods as having nonzero limit when calculating priorities
2015-07-06 13:18:54 -07:00
Yu-Ju Hong ea16e52f9b Merge pull request #10642 from davidopp/clean
Clarify and make less verbose event message for infeasible pods.
2015-07-06 12:55:00 -07:00
David Oppenheimer 2e3f2ea20b gofmt 2015-07-05 21:31:54 -07:00
David Oppenheimer 9fbccb4ff7 Respond to review comments. 2015-07-05 15:41:52 -07:00
David Oppenheimer 4ea8b8a66d Get rid of separate DumbSpreading function and just treat zero-limit
pods as having a constant non-zero memory and CPU limit.
2015-07-05 11:39:35 -07:00
hyeongkyu.lee 55f1f241e6 Fixed typo 2015-07-03 18:03:45 +09:00
David Oppenheimer 44ed229069 Foo. 2015-07-03 01:40:00 -07:00
David Oppenheimer 53518e37a6 Add a test for DumbSpreadingPriority. 2015-07-03 01:34:07 -07:00
David Oppenheimer cb9d515004 Add DumbSpreadingPriority, which tries to spread pods across nodes. 2015-07-03 00:45:54 -07:00
David Oppenheimer 950ab8f219 Clarify and make less verbose event message for infeasible pods. 2015-07-01 19:22:48 -07:00
Chao Xu a309d3e652 Update pkg/api/testapi because namespace is always in the path since we remove v1beta1/2 2015-06-16 14:12:03 -07:00
Abhi Shah 2c93add90b Merge pull request #9613 from brendandburns/scheduler
Fix the scheduler to ignore terminated pods.
2015-06-12 10:05:09 -07:00
Brendan Burns 97634c7fbf Fix the scheduler to ignore terminated pods. 2015-06-10 14:38:08 -07:00
James DeFelice 7d66559725 added comments at the top of native k8s files which, if changed, might affect some of the k8sm code 2015-06-10 20:31:22 +00:00
Prashanth Balasubramanian 4bb3efaaad Scheduler doesn't send all fit predicate failures as events 2015-06-05 18:52:55 -07:00
Daniel Smith 32caedd882 Demote log spam
These messages are only useful if you want to debug a particular
scheduler assigment, and they are extremely verbose-- they each print
out a line per host per assignment. Let's try to keep our log messages
linear in the number of assigments.
2015-06-04 14:08:11 -07:00
Filip Grzadkowski 98115facfd Revert "Gracefully delete pods from the Kubelet" 2015-06-02 23:40:05 +02:00
Brian Grant 808932c079 Merge pull request #9056 from runningwild/master
Change isVolumeConflict so read-only gce persistent disks don't confl…
2015-06-02 13:14:13 -07:00
Clayton Coleman 72ee028cab Gracefully delete pods from the Kubelet
This commit wires together the graceful delete option for pods
on the Kubelet.  When a pod is deleted on the API server, a
grace period is calculated that is based on the
Pod.Spec.TerminationGracePeriodInSeconds, the user's provided grace
period, or a default.  The grace period can only shrink once set.
The value provided by the user (or the default) is set onto metadata
as DeletionGracePeriod.

When the Kubelet sees a pod with DeletionTimestamp set, it uses the
value of ObjectMeta.GracePeriodSeconds as the grace period
sent to Docker.  When updating status, if the pod has DeletionTimestamp
set and all containers are terminated, the Kubelet will update the
status one last time and then invoke Delete(pod, grace: 0) to
clean up the pod immediately.
2015-06-01 19:23:59 -04: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
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
Dawn Chen 40480d8504 Merge pull request #8532 from derekwaynecarr/improve_event_readability
Improve event readability for generic scheduler
2015-05-21 09:25:32 -07:00
Wojciech Tyczynski 5fbe58b2c8 Revert "Make scheduler optimistic about its bindings" 2015-05-19 14:27:28 -07:00
derekwaynecarr 8ee06a9983 Improve event readability 2015-05-19 17:26:24 -04:00
David Oppenheimer 44b1e1ca0c Fix stylistic isues with #5547. Closes #4910. 2015-05-18 23:32:06 -07:00
Victor Marmol 45874d5f76 Merge pull request #5547 from gmarek/client3
Add a resource specifying number of Pods that are allowed to run on Kubelet.
2015-05-18 11:11:43 -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
Prashanth B abd0d7b2cb Merge pull request #8261 from lavalamp/scheduler
Make scheduler optimistic about its bindings
2015-05-15 17:06:42 -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
Daniel Smith 3a7086fd8a Make scheduler optimistic about its bindings 2015-05-14 10:55:49 -07: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
nikhiljindal dcc368c781 Removing more references to v1beta1 from pkg/ 2015-04-24 00:45:17 -07:00
Brian Grant 740d2a5f8a Merge pull request #6967 from HaiyangDING/ListAlgos
Listing existing algorithm providers in scheduler
2015-04-22 07:04:05 -07:00
dingh 71b98840c8 Listing available algorithm providers in scheduler
List the available algorithm providers with 'kube-scheduler --help' under field `algorithm_provider`
2015-04-22 06:54:24 +08:00
Abhishek Gupta c203117e42 Including balanced resource allocation priority in the default set 2015-04-21 14:25:42 -07:00
Kris Rousey 81497f3ed2 Changing the scheduler package to use *api.Pod instead of api.Pod to
avoid unnecessary shallow copies. The change rippled through a lot of
code.
2015-04-17 13:34:31 -07: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
Prashanth Balasubramanian a7864aa230 Scheduler uses TTLStore for assumed pods 2015-04-08 15:01:04 -07: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
Daniel Smith 4a3b1a2b9d Merge pull request #6375 from abhgupta/abhgupta-dev
Validating against negative weights for priority functions
2015-04-02 13:22:55 -07:00
Brian Grant 414be101b6 Merge pull request #6352 from piosz/api
Removed PodStatus.Host
2015-04-02 13:16:24 -07:00
Abhishek Gupta 8deedf8e1f Validating against negative weights for priority functions 2015-04-02 12:30:22 -07:00
Filip Grzadkowski 25f95b0672 Add basic latency metrics to scheduler. 2015-04-02 19:24:55 +02: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
Abhishek Gupta 8a01aed83f Adding validations for scheduler Policy 2015-03-31 10:54:45 -07:00
saadali e0f71cb21f Make each new instance of kubelet generate a new event channel (instead of reusing existing). 2015-03-30 14:22:16 -07:00
Daniel Smith 10b4fe6f30 Merge pull request #6188 from abhgupta/abhgupta-dev
Minor fixes for scheduler priority configuration
2015-03-30 14:05:28 -07:00
Victor Marmol 05452f12ef Merge pull request #6110 from lavalamp/fix2
Remove pods from the assumed pod list when they are deleted
2015-03-30 13:49:52 -07:00
Abhishek Gupta 490dd1bb67 Fixing accidental hardcoding of priority function weight 2015-03-30 13:47:27 -07:00
Abhishek Gupta 08a0563933 Removing EqualPriority from the list of default priorities 2015-03-30 13:47:27 -07:00
Daniel Smith fd952862c3 Remove pods from the assumed pod list when they are deleted 2015-03-30 11:16:55 -07:00
Abhishek Gupta 142fd773b0 Updating priority function weight based on specified configuration 2015-03-27 17:56:40 -07:00
Robert Rati c2938b299d Only schedule to pods that are available. #5545 2015-03-26 08:42:14 -04:00
Brian Grant d75291dbe7 Merge pull request #5838 from nikhiljindal/clientTests
Updating unit tests so that they pass with v1beta3 api
2015-03-24 17:30:50 -07:00
Deyuan Deng ca68f4a9d1 Rename ConditionFull->ConditionTrue, ConditionNone->ConditionFalse 2015-03-24 17:28:59 -04:00
nikhiljindal 7e3b7f9673 Updating unit tests so that they pass with v1beta3 api 2015-03-24 12:13:53 -07:00
Wojciech Tyczynski f7191d626d Change "/ns" to "/namespaces" in few remaining places. 2015-03-24 13:05:32 +01:00
Brian Grant 11f9733599 Merge pull request #5587 from nikhiljindal/enable3
Updating integration tests to test both API versions - v1beta1 and 3
2015-03-18 16:14:20 -07:00
nikhiljindal 7e36bbab3c Updating integration tests to test both API versions - v1beta1 and 3 2015-03-18 15:24:11 -07:00
Salvatore Dario Minonne 31ddefc347 Finalize fields.Selector 2015-03-17 22:55:43 +01:00
Piotr Szczesniak 7aa6356625 Fill NodeInfo in CreateFromKey method in scheduler
NodeInfo was nil and it caused segfault

Fixes #5503
2015-03-17 14:57:49 +01:00
Jeff Lowdermilk e37fd2a84d Merge pull request #5477 from dchen1107/clean
Convert RestartPolicy to string for v1beta3.
2015-03-16 10:23:52 -07:00
Dawn Chen 34e9c82c70 Convert RestartPolicy to string for v1beta3.
Fixed #3607 and spiritually support #5475
2015-03-13 18:38:07 -07:00
Daniel Smith 992d78a32e Add a system modeler to scheduler
So it can try to predict the effect its bindings will have.
2015-03-13 17:48:16 -07:00
Satnam Singh 52bf7af739 Merge pull request #5351 from lavalamp/fix2
remove evil global state shared by all schedulers
2015-03-13 10:15:27 -07:00
Ravi Sankar Penta f6ecec5880 Allow admin user to explicitly unschedule the node
Setting Unschedulable on the node will not touch any existing pods
on the node but will block scheduling of new pods on the node.
2015-03-12 14:27:27 -07:00
Wojciech Tyczynski 9f2f10d6db Make scheduler to watch PodSpec.Host instead Status.Host 2015-03-12 13:38:58 +01:00
Daniel Smith 3e83ffdd40 remove evil global state shared by all schedulers 2015-03-11 18:09:01 -07:00
Brian Grant 6062e14313 Merge pull request #5220 from nikhiljindal/camelCaseFieldSelectors
Changing v1beta3 field selectors to be camelCased
2015-03-10 09:35:03 -07:00
nikhiljindal 916ca9cc68 Changing v1beta3 field selectors to be camelCased 2015-03-09 18:01:01 -07:00
Clayton Coleman dfc19185f5 Add a subbindings resource as /pods/{name}/binding
Allows POST to create a binding as a child. Also refactors internal
and v1beta3 Binding to be more generic (so that other resources can
support Bindings).
2015-03-09 15:37:19 -04:00
Paul Morie 02b18edac6 Allow multiple sources to be used with record package 2015-03-05 13:54:29 -05:00
Derek Carr cb1e044a60 Merge pull request #4923 from lavalamp/fix4
Allow reflector to do full resync periodically
2015-03-04 09:58:03 -05:00
Daniel Smith c4822dc060 Revert "Revert "Adding converter functions to convert field label selectors to internal version before matching""
This reverts commit 5f35a67002.
2015-03-02 15:00:09 -08:00
Abhishek Gupta 5e096fed34 Fixing test case to remove dependency on algorithm provider 2015-03-02 10:00:20 -08:00
Abhishek Gupta a04e600f16 Added test cases 2015-03-02 10:00:20 -08:00
Abhishek Gupta e5d319d611 Fixing comment alignment 2015-03-02 10:00:20 -08:00
Abhishek Gupta 28fbde0f22 Removing affinity provider 2015-03-02 10:00:19 -08:00
Abhishek Gupta 3607a16293 Implementing PR feedback 2015-03-02 10:00:19 -08:00
Abhishek Gupta 548e0da567 Configuring scheduler via json configuration file 2015-03-02 10:00:19 -08:00
Zach Loafman 5f35a67002 Revert "Adding converter functions to convert field label selectors to internal version before matching" 2015-02-28 11:42:49 -08:00
Daniel Smith 554b1c847c add occasional polling to reflector 2015-02-27 16:59:14 -08:00
nikhiljindal 48e7945f65 Versioning the field selectors 2015-02-27 16:10:59 -08:00
Rohit Jnagal e455ee5d2e Merge pull request #4765 from brendandburns/scheduler
Log a better error with useful info on scheduling failures.
2015-02-26 12:01:04 -08:00
Mike Danese 5267127af1 api: rename conditionkind -> conditiontype 2015-02-23 22:13:21 -08:00
Brendan Burns 33f6576f61 Log a better error with useful info on scheduling failures. 2015-02-23 20:36:22 -08:00
Tim Hockin 5f021cfc3e move pkg/scheduler/server to cmd/kube-scheduler/app 2015-02-20 08:49:12 -08:00
Clayton Coleman 4859aa7cd8 Merge pull request #4453 from derekwaynecarr/make_quota_more_efficient
Make ListWatch work with a ListFunc and WatchFunc
2015-02-17 14:48:11 -05:00
Clayton Coleman 3e2e4714a2 Always set ?namespace in query if specified
Revise our code to only call Request.Namespace() if a namespace
*should* be present.  For root scoped resources, namespace should
be ignored.  For namespaced resources, it is an error to have
Namespace=="".
2015-02-16 00:23:38 -05:00
derekwaynecarr c0ce15c588 Make list watch take a ListFunc and WatchFunc, provide default funcs from client 2015-02-15 22:26:05 -05:00
derekwaynecarr 151be7773c Rename api.Namespace to api.NamespaceValue to avoid name collision 2015-02-10 09:44:29 -05:00
Yu-Ju Hong 4a72addaeb Factor out API defaulting from validation logic
Currently, the validation logic validates fields in an object and supply default
values wherever applies. This change factors out defaulting to a set of
defaulting callback functions for decoding (see #1502 for more discussion).

 * This change is based on pull request 2587.

 * Most defaulting has been migrated to defaults.go where the defaulting
   functions are added.

 * validation_test.go and converter_test.go have been adapted to not testing the
   default values.

 * Fixed all tests with that create invalid objects with the absence of
   defaulting logic.
2015-02-03 00:55:42 -08:00
Joe Beda b89454a48e Convert the scheduler binary to hyperkube. 2015-02-02 10:01:36 -08:00
Clayton Coleman 556e59b512 Merge pull request #3810 from ironcladlou/cache-namespacing
Support namespacing in cache.Store
2015-01-30 13:19:41 -05:00
Deyuan Deng c793c4f0ab Sync node status from node controller to master. 2015-01-29 23:17:15 -05:00
Dan Mace 5ee943d683 Support namespacing in cache.Store implementations
Support namespacing in cache.Store by framing the interface functions
around interface{} and providing a key function to each Store implementation.

Implementation of a fix for #2294.
2015-01-29 17:39:49 -05:00
Andrew Seidl 6dee1d7fa4 Fix typos in user-facing strings 2015-01-18 01:32:34 -06:00
davidopp a3e057d5d9 Merge pull request #3544 from mikedanese/provider-run-opt
Configure scheduler algorithm provider with cli option
2015-01-16 12:41:09 -08:00
Mike Danese 9f4c42e988 name and key are used interchangably in plugin/pkg/scheduler/factory/plugins.go. this standardizes on name. 2015-01-15 17:30:48 -08:00
Mike Danese 9dffd0c105 added algorithm name validation 2015-01-15 16:59:02 -08:00
Mike Danese e3da5e15bc added algorithm provider cli option to the kube-scheduler command and renamed default provider to follow naming convention 2015-01-15 16:27:25 -08:00
davidopp 2675cfa16b Merge pull request #2906 from abhgupta/abhgupta-dev
Enhancements to scheduler priority functions
2015-01-14 21:47:28 -08:00
saadali 90dfdcecd5 Remove CONDITION from event object completely
# *** ERROR: *** Some files have not been gofmt'd.  To fix these
# errors, run gofmt -s -w <file>, or cut and paste the following:
#   gofmt -s -w pkg/kubecfg/resource_printer.go pkg/proxy/config/config.go pkg/runtime/types.go
#
# Your commit will be aborted unless you override this warning. To
# commit in spite of these format errors, delete the following line:
#   COMMIT_BLOCKED_ON_GOFMT
2015-01-14 14:17:16 -08:00
Deyuan Deng 153dbd30a3 Filter out unhealthy node in scheduler 2015-01-13 17:09:07 -05:00
Abhishek Gupta 6fd0b181e3 Rebased onto the latest changes to the scheduler code 2015-01-13 09:41:25 -08:00
Abhishek Gupta 9e75a05df0 Implementing PR feedback 2015-01-13 09:34:45 -08:00
Abhishek Gupta 3f722a3d8e Adding service affinity predicate 2015-01-13 09:34:45 -08:00
Abhishek Gupta 9dd7d2a0a1 Adding label checker predicates and test cases 2015-01-13 09:34:45 -08:00
Abhishek Gupta 04db076e5f Enhancements to scheduler priority functions
- Modified the existing spreading priority to consider service pods explicitly
 - Added a new priority function to spread pods across zones
2015-01-13 09:34:42 -08:00
Clayton Coleman b38c25ebf4 Shorten scheduler/factory test by making backoff a struct var 2015-01-09 13:16:30 -05:00
Daniel Smith 963000715a Merge pull request #3294 from erictune/public_storetoers
Move Listers to pkg/client/cache.
2015-01-07 15:56:14 -08:00
Eric Tune ed74197fde Move Listers to pkg/client/cache.
I would like to use these in kubelet and kube-proxy.
This is the minimal change to get them moved.
I will follow up with changes to make interfaces consistent
and add Listers for other resources.
2015-01-07 15:33:17 -08:00
Clayton Coleman b03fbf90f8 Make RESTClient more generic to API version, simplify version handling
RESTClient is an abstraction on top of arbitrary HTTP endpoints that
follow the Kubernetes API conventions. Refactored RESTClientFor so that
assumptions that are Kube specific happen outside of that method (so
others can reuse the RESTClient). Added more validation to client.New
to ensure clients give good input. Exposed APIVersion on RESTClient
as a method so that wrapper code (code that adds typed / structured
methods over rest endpoints like client.Client) can more easily make
decisions about what APIVersion it is running under.
2015-01-07 18:03:34 -05:00
Tim Hockin d314862e46 Merge pull request #3285 from erictune/public_reflectors
Make Reflector helpers reusable.
2015-01-07 14:10:57 -08:00
Eric Tune 7d5ac856c5 Make Reflector helpers reusable.
Scheduler uses Reflector from pkg/client/cache.
It defines some helper classes.
I'd like to use those helpers with pkg/client/cache
in kube-proxy and kubelet too.
2015-01-07 13:49:37 -08:00
Rohit Jnagal 62ecd5f3ff Fix few vet errors.
There are quite a few 'composite literal uses unkeyed fields' errors that I have kept out of this patch.
And there's a couple where vet just seems confused. These are the easiest ones.
2015-01-07 08:40:16 +00:00
Daniel Smith 9c2cd55528 Merge pull request #3181 from smarterclayton/cleanup_http_items
Minor cleanups to request - fix initialism on HTTPClientFunc
2014-12-30 17:34:00 -08:00
Clayton Coleman 502204ad6d Do not set empty field or label selectors on requests
Default behavior for "" is already "everything"
2014-12-30 19:33:40 -05:00
Clayton Coleman e355f54eda Update references from Path() to the appropriate segment use 2014-12-29 15:38:52 -05:00
Clayton Coleman c9501128b6 Scheduler is printing the wrong value when no default algorithms available 2014-12-24 00:01:54 -05:00
Daniel Smith 36cfc02c6c Merge pull request #3066 from derekwaynecarr/client_update
Do not use namespace in url paths pre v1beta3 from client
2014-12-19 18:02:55 -08:00
derekwaynecarr abb6632d75 Do not use namespace in url paths pre v1beta3 from client 2014-12-19 16:32:42 -05:00
Brendan Burns 2e17193161 Add Host to PodSpec and add a predicate to make the scheduler work. 2014-12-18 20:12:29 -08:00
Daniel Smith 3ade280f89 Merge pull request #2813 from derekwaynecarr/ns_url
Move namespace from query param to path part
2014-12-18 13:31:45 -08:00
Mike Danese 4850bdbe63 refactor scheduler factory to use plugin architecture style like credentialprovider and cloudprovider for configuring priority functions and fit predicates 2014-12-17 14:55:28 -08:00
derekwaynecarr 7cf664439f Move namespace from query param to path part 2014-12-16 15:55:47 -05:00
Clayton Coleman 19379b5a38 Internal rename api.Minion -> api.Node 2014-12-10 12:08:18 -05:00
Abhishek Gupta d17cebcd2a Implementing PR feedback and adding test cases 2014-12-08 14:47:05 -08:00
Abhishek Gupta 5fa1dbc07b Implementing PR feedback
- Making ConfigFactory struct public
 - Added comments for predicate/priority functions and new methods
2014-12-08 14:47:05 -08:00
Abhishek Gupta 13831856c9 Combining scheduler priority functions using weighted averages 2014-12-08 14:47:05 -08:00
Abhishek Gupta 7f374030c1 Fixing gofmt errors 2014-12-08 14:47:05 -08:00
Abhishek Gupta 1eb28b0aa3 Scheduler changes to allow multiple priority functions 2014-12-08 14:47:05 -08:00
Abhishek Gupta 6b712cc700 Scheduler changes for extensibility 2014-12-08 14:47:05 -08:00
Eric Tune 3aa35e1941 Fix typo. 2014-11-21 09:02:14 -08:00
markturansky 8af4ccb111 v1beta3 Pod refactor 2014-11-18 09:25:42 -05:00
Paul Morie e2be1564a4 Rename client/cache Store.Contains to ContainedIDs 2014-11-11 11:48:15 -05:00
Brendan Burns 2c1221864d Make a standalone binary. 2014-11-10 13:34:11 -08:00
Daniel Smith 25bd151d86 Make fieldPath part of getting a reference rather than part of making an event. 2014-11-05 15:09:14 -08:00
markturansky 119f654a13 Refactor PodStatus to PodCondition in internal API for v1beta3 2014-11-05 17:26:47 -05:00
deads2k 48b26e2dfc fix pod scheduling retry logic 2014-11-04 08:04:48 -05:00
Deyuan Deng acf9d23b32 Stop httptest server. 2014-10-30 21:37:08 -04:00
Brendan Burns 83715dd7be Turn on node constraint scheduling. 2014-10-27 12:18:27 -07:00
Clayton Coleman 644eb70085 Refactor tests to split ObjectMeta from TypeMeta 2014-10-24 11:22:21 -04:00
Clayton Coleman 7550c146dc Replace struct initializers for TypeMeta with ObjectMeta 2014-10-24 11:22:21 -04:00
Clayton Coleman bb77a5d15f Rename ID -> Name 2014-10-22 15:00:26 -04:00
derekwaynecarr 085ca40291 Enforce unique constraint at namespace boundary in etcd, make client and server namespace aware 2014-10-16 13:02:52 -04:00
Eric Tune 6f577aa321 Merge pull request #1789 from lavalamp/eventing4
Add event creation library and implement in scheduler.
2014-10-15 15:55:26 -07:00
Daniel Smith d4c750a878 Fix vet-go.sh and some things it complained about 2014-10-15 11:56:19 -07:00
Daniel Smith 10214457b7 Make scheduler emit events 2014-10-15 11:42:05 -07:00
Brendan Burns 47c4b8fc98 Add a predicate for persistent disk scheduling. 2014-10-13 15:38:25 -07:00
Brendan Burns ddfda0521a Merge pull request #1763 from lavalamp/scheduler
Use cache for minion lookups, don't hammer apiserver
2014-10-13 15:33:29 -07:00
Daniel Smith d34914517f Shorten 'CodecForVersionOrDie' name, add 'ResourceVersioner' to testapi 2014-10-13 14:58:06 -07:00
Daniel Smith 0431f2430d Use cache for minion lookups, don't hammer apiserver 2014-10-13 14:46:31 -07:00
Dawn Chen 135d187942 Merge pull request #1736 from brendandburns/scheduler
Switch away from the static node info
2014-10-10 15:01:09 -07:00
Brendan Burns e6fa568ad4 Switch away from the static node info 2014-10-10 14:08:09 -07:00
Brendan Burns b5ec8a747b Switch on the resource requested prioritization. 2014-10-09 11:29:45 -07:00
Brendan Burns 4230a8ca61 Add a least-requested priority function 2014-10-08 15:31:38 -07:00
Clayton Coleman 82bcdd3b3b Make ResourceVersion a string internally instead of uint64
Allows us to define different watch versioning regimes in the future
as well as to encode information with the resource version.

This changes /watch/resources?resourceVersion=3 to start the watch at
4 instead of 3, which means clients can read a resource version and
then send it back to the server. Clients should no longer do math on
resource versions.
2014-10-07 19:00:26 -04:00
Daniel Smith cf203f1304 Fix build error in integration test 2014-10-07 13:10:58 -07:00
Brendan Burns fcdefb5d30 Merge pull request #1613 from ghodss/fix_infinite_scheduler_crash
Prevent scheduler from crashing infinitely if apiserver is unreachable
2014-10-07 12:46:42 -07:00
Clayton Coleman d3e51a0f24 Rename JSONBase -> TypeMeta in preparation for v1beta3
Will make subsequent refactor much easier
2014-10-07 11:12:16 -04:00
Sam Ghods 16641757ef Prevent scheduler from crashing infinitely if apiserver is unreachable 2014-10-06 19:28:23 -07:00
bgrant0607 fea58c9b88 Merge pull request #1561 from brendandburns/sleep
Add some backoff to the scheduler to prevent tight-looping.
2014-10-03 15:29:12 -07:00
Brendan Burns 1551b48347 Add a resource fit scheduler predicate. Set sensible defaults. 2014-10-03 15:09:59 -07:00
Brendan Burns 53304bd024 Add a backoff policy for failing pods. 2014-10-03 10:03:55 -07:00
Clayton Coleman ff2eca97d9 Refactor the client (again) to better support auth
* Allows consumers to provide their own transports for common cases.
* Supports KUBE_API_VERSION on test cases for controlling which
  api version they test against
* Provides a common flag registration method for CLIs that need
  to connect to an API server (to avoid duplicating flags)
* Ensures errors are properly returned by the server
* Add a Context field to client.Config
2014-10-01 15:23:37 -04:00
derekwaynecarr 02e1a2e79d Update unit tests to pass a context on client create 2014-09-30 14:27:56 -04:00
Tim Hockin a7a46f71aa Merge pull request #1449 from brendandburns/scheduler
Refactor scheduler, use generic scheduler everywhere, delete old code.
2014-09-26 12:18:52 -07:00
Brendan Burns 1bb962961c Refactor schedulers, remove schedulers, use generic scheduler. 2014-09-26 10:26:25 -07:00