m1093782566
458f5bd7f2
improve pod log output format
...
Change-Id: I415dd97f14b507ebb8340eb853f935e1e90b7a53
2016-08-16 17:59:58 +08:00
Kubernetes Submit Queue
69419a145a
Merge pull request #29802 from jfrazelle/fix-go-vet-errors
...
Automatic merge from submit-queue
fix go vet errors
<!--
Checklist for submitting a Pull Request
Please remove this comment block before submitting.
1. Please read our [contributor guidelines](https://github.com/kubernetes/kubernetes/blob/master/CONTRIBUTING.md ).
2. See our [developer guide](https://github.com/kubernetes/kubernetes/blob/master/docs/devel/development.md ).
3. If you want this PR to automatically close an issue when it is merged,
add `fixes #<issue number>` or `fixes #<issue number>, fixes #<issue number>`
to close multiple issues (see: https://github.com/blog/1506-closing-issues-via-pull-requests ).
4. Follow the instructions for [labeling and writing a release note for this PR](https://github.com/kubernetes/kubernetes/blob/master/docs/devel/pull-requests.md#release-notes ) in the block below.
-->
```release-note
```
This fixes the `go vet` errors brought about by go 1.7 testing re (#28742 ).
The are all pretty trivial and mostly related to literal composites.
also related to #16086
2016-08-15 13:10:08 -07:00
m1093782566
8f607394ee
remove duplicated nodeinfo.pods assignment
...
Change-Id: I8b15624e1cf146ab1693938bbd6ab1c6be030724
2016-08-14 16:43:45 +08:00
Daniel Smith
f1fd638962
fix register.go files up + add test import
2016-08-11 17:06:54 -07:00
Jess Frazelle
7e9d82129e
fix go vet errors
...
Signed-off-by: Jess Frazelle <jessfraz@google.com>
fix composites
Signed-off-by: Jess Frazelle <me@jessfraz.com>
2016-08-10 16:45:41 -07:00
mksalawa
2749ec7555
Create PredicateFailureReason, modify scheduler predicate interface.
2016-08-09 14:01:46 +02:00
Kubernetes Submit Queue
faffbe4e18
Merge pull request #29622 from rootfs/rbd-ro
...
Automatic merge from submit-queue
allow a read-only rbd image mounted by multiple pods
allow pod to run read-only rbd volume
fix #27725
2016-08-07 17:03:39 -07:00
Kubernetes Submit Queue
e19ea41a5e
Merge pull request #30136 from m1093782566/master
...
Automatic merge from submit-queue
remove useless value copy
Copy something to values in parameters won't change them in go. So, remove it to avoid making people confused.
2016-08-07 16:06:23 -07:00
Huamin Chen
730db45eab
allow a read-only rbd image mounted by multiple pods
...
Signed-off-by: Huamin Chen <hchen@redhat.com>
2016-08-07 10:32:26 -04:00
Kubernetes Submit Queue
711b63e78b
Merge pull request #28104 from ping035627/ping035627-patch-4
...
Automatic merge from submit-queue
SchedulerExtender: add failedPredicateMap in Filter() returns
Fix #25797 . modify extender.Filter for adding extenders information to “failedPredicateMap” in findNodesThatFit.
When all the filtered nodes that passed "predicateFuncs" don’t pass the extenders filter, the failedPredicateMap hasn’t the extenders information, should add it, I think. So when the length of the “filteredNodes.Items” is 0, we can know the integral information. (The length of the “filteredNodes.Items” is 0, may be because the extenders filter failed.)
2016-08-06 20:50:33 -07:00
m1093782566
91f6b7bc2b
remove ineffective copy
2016-08-05 20:43:40 +08:00
Kubernetes Submit Queue
2ff8280123
Merge pull request #29915 from wojtek-t/prepare_for_controller_ref_in_scheduler
...
Automatic merge from submit-queue
Prepare for using "ControllerRef" in scheduler
This is part of a PR that I already have to avoid a bunch of rebases in the future (controller ref probably won't happen in 1.4 release).
@davidopp
2016-08-04 02:23:31 -07:00
PingWang
4106eb70b0
modify extends.Filter
...
Signed-off-by: PingWang <wang.ping5@zte.com.cn>
Add docs
Signed-off-by: PingWang <wang.ping5@zte.com.cn>
add docs for ExtenderFilterResult.FailedNodes in types.go
Signed-off-by: PingWang <wang.ping5@zte.com.cn>
Modify the extender.Filter test.
Signed-off-by: PingWang <wang.ping5@zte.com.cn>
Update extender_test.go
Signed-off-by: PingWang <wang.ping5@zte.com.cn>
modify the comments
Signed-off-by: PingWang <wang.ping5@zte.com.cn>
gofmt -s scheduler_interface.go
Signed-off-by: PingWang <wang.ping5@zte.com.cn>
update the comments
Signed-off-by: PingWang <wang.ping5@zte.com.cn>
2016-08-04 14:03:32 +08:00
Wojciech Tyczynski
c092e15edf
SelectorSpreading using controllerRef.
2016-08-02 16:24:48 +02:00
Wojciech Tyczynski
022719b323
Enable PodAffinity by default in scheduler
2016-08-02 15:06:45 +02:00
Wojciech Tyczynski
4bc410e47a
Speedup pod affintiy predicate function
2016-08-02 08:01:04 +02:00
k8s-merge-robot
821ff657f9
Merge pull request #27199 from derekwaynecarr/disk_eviction
...
Automatic merge from submit-queue
Initial support for pod eviction based on disk
This PR adds the following:
1. node reports disk pressure condition based on configured thresholds
1. scheduler does not place pods on nodes reporting disk pressure
1. kubelet will not admit any pod when it reports disk pressure
1. kubelet ranks pods for eviction when low on disk
1. kubelet evicts greediest pod
Follow-on PRs will need to handle:
1. integrate with new image gc PR (https://github.com/kubernetes/kubernetes/pull/27199 )
1. container gc policy should always run (will not be launched from eviction, tbd who does that)
1. this means kill pod is fine for all eviction code paths since container gc will remove dead container
1. min reclaim support will just poll summary provider (derek will do follow-on)
1. need to know if imagefs is same device as rootfs from summary (derek follow-on)
/cc @vishh @kubernetes/sig-node
2016-07-28 20:18:54 -07:00
derekwaynecarr
0de1e62b30
modify fsStats to fsStatsType to avoid confusion with cadvisor types
2016-07-28 16:01:38 -04:00
derekwaynecarr
9604b47c13
Scheduler does not place pods on nodes that have disk pressure
2016-07-28 16:01:38 -04:00
Wojciech Tyczynski
d3b9d583a2
Optimize PodAffinity priority function.
2016-07-28 16:57:28 +02:00
Wojciech Tyczynski
898a6444e3
Return pointer for Affinity in api helper
2016-07-28 16:57:28 +02:00
Wojciech Tyczynski
a63cccfafc
Cache pods with pod (anti)affinity constraints
2016-07-27 17:31:53 +02:00
Wojciech Tyczynski
fad876b6f9
PodAffinity code refinements
2016-07-22 08:49:28 +02:00
Wojciech Tyczynski
fc6d38baa2
Avoid locking when computing predicates.
2016-07-21 08:21:07 +02:00
Wojciech Tyczynski
cab7db3a64
Use []*api.Node instead of NodeLister in priority functions.
2016-07-21 08:21:07 +02:00
mksalawa
fea8d0aebf
Fix generic scheduler test
2016-07-20 14:47:44 +02:00
Davanum Srinivas
ee8507a5ae
Use Infof/Warningf when appropriate
...
When we use a format string, we should use Infof/Warningf instead
of Info/Warning
2016-07-19 12:10:53 -04:00
k8s-merge-robot
9a7507c4db
Merge pull request #29186 from wojtek-t/cleanup_resource_request
...
Automatic merge from submit-queue
Reuse existing Resource struct instead of new resourceRequest
@davidopp
2016-07-19 07:31:19 -07:00
k8s-merge-robot
b0bcb8f7b2
Merge pull request #29100 from wojtek-t/pods_can_never_be_scheduled_again
...
Automatic merge from submit-queue
Fix disappearing pods in scheduler
Fix #29098
2016-07-19 03:26:16 -07:00
Wojciech Tyczynski
dcb5a6d1a6
Reuse existing Resource struct instead of new resourceRequest
2016-07-19 12:21:09 +02:00
Wojciech Tyczynski
66009877bc
Fix disappearing pods in scheduler
2016-07-19 08:18:04 +02:00
k8s-merge-robot
a049a97820
Merge pull request #28803 from lukaszo/ds
...
Automatic merge from submit-queue
Make Daemonset use GeneralPredicates
fixes : #21454 #22205
2016-07-18 22:12:14 -07:00
k8s-merge-robot
fa174bcdaf
Merge pull request #29042 from dims/fixup-imports
...
Automatic merge from submit-queue
Use Go canonical import paths
Add canonical imports only in existing doc.go files.
https://golang.org/doc/go1.4#canonicalimports
Fixes #29014
2016-07-18 07:23:38 -07:00
Wojciech Tyczynski
78101ac55e
Fix crashes in schedulercache
2016-07-18 10:04:36 +02:00
Davanum Srinivas
2b0ed014b7
Use Go canonical import paths
...
Add canonical imports only in existing doc.go files.
https://golang.org/doc/go1.4#canonicalimports
Fixes #29014
2016-07-16 13:48:21 -04:00
k8s-merge-robot
4374b090c3
Merge pull request #28958 from wojtek-t/optimize_priorities_5
...
Automatic merge from submit-queue
Few more optimizations of priority functions in scheduler
Ref #28590
@davidopp
2016-07-15 09:32:04 -07:00
k8s-merge-robot
8b2d994153
Merge pull request #28952 from wojtek-t/optimize_pod_affinity
...
Automatic merge from submit-queue
First step of optimizing PodAffinity priority function
Ref #26144
This is obviously only a first step - I will continue working on this code. However, this is changing the general scheme of computations to what is described in: https://github.com/kubernetes/kubernetes/issues/26144#issuecomment-232612384
2016-07-15 08:59:17 -07:00
Wojciech Tyczynski
a538045d7b
Cleanup and prepare for optimizing PodAffinity priority function.
2016-07-15 10:06:36 +02:00
Wojciech Tyczynski
a23f7bd556
Few more optimizations of priority functions in scheduler
2016-07-14 15:32:56 +02:00
k8s-merge-robot
6bb0995c89
Merge pull request #28886 from wojtek-t/fix_schedulercache_bug
...
Automatic merge from submit-queue
Add ForgetPod to SchedulerCache
Fix #28883
@gmarek @davidopp @xiang90
2016-07-14 05:30:23 -07:00
k8s-merge-robot
74c5b4e4be
Merge pull request #28459 from ping035627/ping035627-patch-0704
...
Automatic merge from submit-queue
Optimise the process of the CalculateSpreadPriority in selector_spreading.go
It had better inspect if the nodeLister is normal first in the CalculateSpreadPriority in selector_spreading.go. If the nodeLister.List return error, the function return directly, not need deal the serviceLister and controllerLister and replicaSetLister.
2016-07-14 04:54:32 -07:00
k8s-merge-robot
ae990defcf
Merge pull request #26956 from joe2far/fix-typos
...
Automatic merge from submit-queue
Fixed several typos
2016-07-14 04:13:15 -07:00
k8s-merge-robot
06939c57aa
Merge pull request #20699 from jiangyaoguo/add-AvoidPreviousNode
...
Automatic merge from submit-queue
Implement alpha version of PreferAvoidPods
This is part of #18853
<!-- Reviewable:start -->
---
This change is [<img src="http://reviewable.k8s.io/review_button.svg " height="35" align="absmiddle" alt="Reviewable"/>](http://reviewable.k8s.io/reviews/kubernetes/kubernetes/20699 )
<!-- Reviewable:end -->
2016-07-14 03:30:25 -07:00
PingWang
e4ab32cde2
Modify CalculateAntiAffinityPriority function
...
Signed-off-by: PingWang <wang.ping5@zte.com.cn>
2016-07-14 09:10:50 +08:00
PingWang
437e133b34
Optimise the process of the CalculateSpreadPriority in selector_spreading.go
...
Signed-off-by: PingWang <wang.ping5@zte.com.cn>
2016-07-14 09:09:05 +08:00
Wojciech Tyczynski
9745878778
Add ForgetPod to SchedulerCache
2016-07-13 16:30:05 +02:00
joe2far
5ead89b5bb
Fixed several typos
2016-07-13 15:06:24 +01:00
Łukasz Oleś
528bf7af3a
Make Daemonset use GeneralPredicates
...
fixes #21454 , fixes #22205
2016-07-13 14:50:29 +02:00
Wojciech Tyczynski
c929d95884
Cache Allocatable Resources
2016-07-13 12:57:18 +02:00
Wojciech Tyczynski
58c201834c
Unify resources
2016-07-13 12:57:07 +02:00
jiangyaoguo
4e91166bc6
Use PreferAvoidPods annotation to avoid pods being scheduled to specific node.
...
1. define PreferAvoidPods annotation
2. add PreferAvoidPodsPriority
3. validate AvoidPods in node annotations
2016-07-13 17:07:46 +08:00
Wojciech Tyczynski
ea1d797f98
Avoid computing ports multiple times
2016-07-13 11:02:26 +02:00
Wojciech Tyczynski
ae6b66207a
Optimize selector spreading
2016-07-13 11:02:26 +02:00
Wojciech Tyczynski
b9d13c5dbd
Avoid computing pod resources multiple times
2016-07-13 11:01:53 +02:00
kevin-wangzefeng
ff6280fa5b
update inter-pod affinity predicates, check PodAntiAffinity even when pod has no AntiAffinity constraints
2016-07-13 03:55:01 +00:00
k8s-merge-robot
5894dc4615
Merge pull request #28829 from gmarek/hooks
...
Automatic merge from submit-queue
Add hooks for cluster health detection
Separate a function that decides if zone is healthy. First real commit for preventing massive pod eviction.
Ref. #28832
cc @davidopp
2016-07-12 08:12:04 -07:00
k8s-merge-robot
98030ded05
Merge pull request #28781 from wojtek-t/optimize_priorities_2
...
Automatic merge from submit-queue
Change storeToNodeConditionLister to return []*api.Node instead of api.NodeList for performance
Currently copies that are made while copying/creating api.NodeList are significant part of scheduler profile, and a bunch of them are made in places, that are not-parallelizable.
Ref #28590
2016-07-12 06:18:15 -07:00
gmarek
fd600ab65c
Add hooks for cluster health detection
2016-07-12 15:10:58 +02:00
k8s-merge-robot
9b5827691a
Merge pull request #28669 from lixiaobing10051267/masterTestPodFitsResources
...
Automatic merge from submit-queue
Add test case to TestPodFitsResources() of scheduler algorithm
File "plugin\pkg\scheduler\algorithm\predicates", function "TestPodFitsResources()", line 199, only provide test case "one resource cpu fits but memory not", it should add test case "one resource memory fits but cpu not".
2016-07-11 22:46:09 -07:00
Wojciech Tyczynski
d14fe0f269
Change storeToNodeConditionLister to return []*api.Node instead of api.NodeList for performance
2016-07-11 21:02:33 +02:00
k8s-merge-robot
5067af159e
Merge pull request #28715 from euank/kubelet-trim-dead-code
...
Automatic merge from submit-queue
kubelete: delete a few bits of dead code
Less is more.
2016-07-11 11:40:47 -07:00
k8s-merge-robot
9b74e24fa3
Merge pull request #28769 from wojtek-t/optimize_priorities
...
Automatic merge from submit-queue
Optimize priorities in scheduler
Ref #28590
It's probably easier to review it commit by commit, since those changes are kind of independent from each other.
@davidopp - FYI
2016-07-11 07:49:23 -07:00
Wojciech Tyczynski
d02e8d2885
Avoid unnecessary conversions
2016-07-11 15:41:27 +02:00
Wojciech Tyczynski
dcb2ca54ad
Avoid unnecessary copies
2016-07-11 15:41:27 +02:00
Wojciech Tyczynski
989202c384
Cache AllowedPodNumber to avoid conversions.
2016-07-11 15:41:26 +02:00
Wojciech Tyczynski
4eed5e07a5
Precompute pod resources
2016-07-11 15:41:26 +02:00
Wojciech Tyczynski
e8e8e2d086
Remove unneeded factories
2016-07-11 15:41:26 +02:00
lixiaobing10051267
ce83c04251
Error info "scheduler" modify
2016-07-11 15:17:43 +08:00
PingWang
4fde2ff3a5
Update CheckServiceAffinity in predicates.go
...
Signed-off-by: PingWang <wang.ping5@zte.com.cn>
gofmt -s -w
Signed-off-by: PingWang <wang.ping5@zte.com.cn>
2016-07-11 09:57:57 +08:00
k8s-merge-robot
a261776f3e
Merge pull request #28670 from wojtek-t/scheduler_metadata
...
Automatic merge from submit-queue
Add meta field to predicate signature to avoid computing the same things multiple times
This PR only uses it to avoid computing QOS of a pod for every node from scratch.
Ref #28590
2016-07-09 22:28:14 -07:00
Euan Kemp
26e0f50504
kubelet: delete unused code
2016-07-08 15:15:43 -07:00
Wojciech Tyczynski
49934c05c0
Avoid creating NodeInfoMap from scratch on every scheduling.
2016-07-08 18:09:49 +02:00
Wojciech Tyczynski
0e6dc8a932
Avoid unnecessary copies
2016-07-08 13:54:06 +02:00
Wojciech Tyczynski
b1d53895a4
Check only predicate functions in test
2016-07-08 13:01:41 +02:00
Wojciech Tyczynski
b92eadfd1a
Avoid computing QOS multiple times
2016-07-08 12:57:40 +02:00
Wojciech Tyczynski
6890868823
Add meta field to predicates signature
2016-07-08 12:25:48 +02:00
lixiaobing10051267
b4c106426e
Add test case to TestPodFitsResources()
2016-07-08 15:43:03 +08:00
Wojciech Tyczynski
31538db145
Avoid growing slices
2016-07-07 15:54:39 +02:00
Wojciech Tyczynski
6c77c01f24
Avoid copying nodes in priority functions
2016-07-07 14:38:09 +02:00
Wojciech Tyczynski
7219802ac7
Pass pointer to node in NodCondition
2016-07-07 14:10:17 +02:00
Wojciech Tyczynski
58c95c136f
Quick returns in predicates
2016-07-07 12:34:54 +02:00
Hongchao Deng
7127915a66
selector: make sure value of GT and LT is integer
2016-07-04 20:18:17 -07:00
k8s-merge-robot
61a9358dbd
Merge pull request #26774 from xiangpengzhao/fix_predicatesnil
...
Automatic merge from submit-queue
Check nil pointer in predicates.go
Should check if the pointer is nil in func filterVolumes as is done in [func predicate](https://github.com/kubernetes/kubernetes/blob/master/plugin/pkg/scheduler/algorithm/predicates/predicates.go#L279 ).
2016-06-30 01:45:26 -07:00
David McMahon
ef0c9f0c5b
Remove "All rights reserved" from all the headers.
2016-06-29 17:47:36 -07:00
k8s-merge-robot
e7f7a49bac
Merge pull request #26016 from hongchaodeng/phantom
...
Automatic merge from submit-queue
scheduler: change phantom pod test from integration into unit test
This is an effort for #24440 .
Why this PR?
- Integration test is hard to debug. We could model the test as a unit test similar to [TestSchedulerForgetAssumedPodAfterDelete()](132ebb091a/plugin/pkg/scheduler/scheduler_test.go (L173)
). Currently the test is testing expiring case, we can change that to delete.
- Add a test similar to TestSchedulerForgetAssumedPodAfterDelete() to test phantom pod.
- refactor scheduler tests to share the code between TestSchedulerNoPhantomPodAfterExpire() and TestSchedulerNoPhantomPodAfterDelete()
- Decouple scheduler tests from scheduler events: not to use events
2016-06-29 12:09:49 -07:00
xiangpengzhao
5b69688b4b
Check nil for pointer
2016-06-27 22:55:20 -04:00
Buddha Prakash
4acb64f8bd
Make Qos naming consistent across the codebase
2016-06-26 16:19:47 -07:00
k8s-merge-robot
d64333419c
Merge pull request #27749 from dubstack/dubstack-refactor-qos
...
Automatic merge from submit-queue
[Refactor] QOS to have QOS Class type for QoS classes
This PR adds a QOSClass type and initializes QOSclass constants for the three QoS classes.
It would be good to use this in all future QOS related features.
This would be good to have for the (Pod level cgroups isolation proposal)[https://github.com/kubernetes/kubernetes/pull/26751 ] that i am working on aswell.
@vishh PTAL
Signed-off-by: Buddha Prakash <buddhap@google.com>
2016-06-26 06:23:23 -07:00
k8s-merge-robot
4e6e4ee1f9
Merge pull request #25934 from ping035627/ping035627-patch-3
...
Automatic merge from submit-queue
Fix #25606 : Add the length detection of the "predicateFuncs" in generic_scheduler.go
Fix #25606
The PR add the length detection of the "predicateFuncs" for "findNodesThatFit" function of generic_scheduler.go.
In “findNodesThatFit” function, if the length of the "predicateFuncs" parameter is 0, it can set filtered equals nodes.Items, and needn't to traverse the nodes.Items.
2016-06-25 03:04:44 -07:00
Hongchao Deng
8cd55e8e52
refactor scheduler test and include phantom test
2016-06-24 16:11:59 -07:00
Buddha Prakash
c3551ae6cd
Refactor qos package
...
Signed-off-by: Buddha Prakash <buddhap@google.com>
2016-06-24 15:36:04 -07:00
k8s-merge-robot
a405df4391
Merge pull request #25710 from xiangpengzhao/fix_predicate
...
Automatic merge from submit-queue
No need to log empty string in predicates.go
If `pvcName` is empty, we don't need to log it.
2016-06-24 13:56:26 -07:00
Jan Safranek
c9a60e2d2c
Rephrase 'pv not found in cache' warnings.
...
When kubelet starts a pod that refers to non-existing PV, PVC or Node, it
should clearly show that the requested element does not exist.
Previous "PersistentVolumeClaim 'default/ceph-claim-wm' is not in cache"
looks like random kubelet hiccup, while "PersistentVolumeClaim
'default/ceph-claim-wm' not found" suggests that the object may not exist at
all and it might be an user error.
Fixes #27523
2016-06-21 14:56:11 +02:00
k8s-merge-robot
090e6ff660
Merge pull request #27625 from goltermann/spell2
...
Automatic merge from submit-queue
Fix several spelling errors in comments
What the title says
2016-06-18 23:08:28 -07:00
k8s-merge-robot
8b7d842203
Merge pull request #27227 from abhgupta/issue_27198
...
Automatic merge from submit-queue
Counting pod volume towards PV limit even if PV/PVC is missing
Fixes #27198
Implements option 3 from https://github.com/kubernetes/kubernetes/issues/27198#issuecomment-225298492
/cc @smarterclayton @markturansky @childsb
2016-06-17 12:40:51 -07:00
goltermann
218645b346
Fix several spelling errors in comments.
2016-06-17 10:41:18 -07:00
k8s-merge-robot
f830a2ceec
Merge pull request #27237 from xiangpengzhao/fix_priorityscoreinfo
...
Automatic merge from submit-queue
Make priority score info clearer
When I trace the scheduler workflow, the log info makes me a bit confused:
Taint Toleration Priority Score info is lacking.
The values of Absolute and Requested resources are in the reverse order.
The values of resources have no type and unit.
This PR tries to make the log info clearer.
before:
```
I0609 15:18:17.978739 32560 node_affinity.go:92] mongo -> vm: NodeAffinityPriority, Score: (0)
I0609 15:18:17.978756 32560 priorities.go:69] mongo -> vm: Least Requested Priority, Absolute/Requested: (100, 209715200) / (4000, 8372678656) Score: (9, 9)
I0609 15:18:17.978896 32560 priorities.go:262] mongo -> vm: Balanced Resource Allocation, Absolute/Requested: (100, 209715200) / (4000, 8372678656) Score: (9)
I0609 15:18:17.978971 32560 selector_spreading.go:233] mongo -> vm: SelectorSpreadPriority, Score: (10)
I0609 15:18:17.979043 32560 generic_scheduler.go:301] Host vm Score 38
```
after:
```
I0611 06:58:23.132306 28814 taint_toleration.go:108] mongo -> vm: Taint Toleration Priority, Score: (10)
I0611 06:58:23.132326 28814 priorities.go:69] mongo -> vm: Least Requested Priority, Absolute/Requested(CPU:millicores, memory:bytes): (4000, 8372678656) / (100, 209715200) Score: (9, 9)
I0611 06:58:23.132367 28814 node_affinity.go:92] mongo -> vm: NodeAffinityPriority, Score: (0)
I0611 06:58:23.132400 28814 priorities.go:262] mongo -> vm: Balanced Resource Allocation, Absolute/Requested(CPU:millicores, memory:bytes): (4000, 8372678656) / (100, 209715200) Score: (9)
I0611 06:58:23.132544 28814 selector_spreading.go:233] mongo -> vm: SelectorSpreadPriority, Score: (10)
I0611 06:58:23.132567 28814 generic_scheduler.go:301] Host vm Score 38
```
2016-06-17 00:56:55 -07:00
Wojciech Tyczynski
5d702a32c1
Fix race in informer
2016-06-14 16:40:12 +02:00
Abhishek Gupta
20ce8b71ab
Improving error messages and naming to be clear
2016-06-13 15:23:17 -07:00
Abhishek Gupta
07bc06ba50
Counting pod volume towards PV limit even if PV/PVC is missing
2016-06-13 15:17:42 -07:00
xiangpengzhao
f1d98ba961
Make priority score info more clear
2016-06-12 02:31:41 -04:00
Abhishek Gupta
bc9c461402
Adding test case for scheduler NodeConditionPredicate
2016-06-08 14:41:38 -07:00
Abhishek Gupta
623e7dfa39
Considering all nodes for the scheduler cache to allow lookups
2016-06-08 14:41:18 -07:00
k8s-merge-robot
2253f3d824
Merge pull request #26021 from hongchaodeng/random
...
Automatic merge from submit-queue
scheduler: remove unused random generator
The way scheduler selecting host has been changed to round-robin.
Clean up leftover.
2016-05-29 12:35:00 -07:00
k8s-merge-robot
577cdf937d
Merge pull request #26415 from wojtek-t/network_not_ready
...
Automatic merge from submit-queue
Add a NodeCondition "NetworkUnavaiable" to prevent scheduling onto a node until the routes have been created
This is new version of #26267 (based on top of that one).
The new workflow is:
- we have an "NetworkNotReady" condition
- Kubelet when it creates a node, it sets it to "true"
- RouteController will set it to "false" when the route is created
- Scheduler is scheduling only on nodes that doesn't have "NetworkNotReady ==true" condition
@gmarek @bgrant0607 @zmerlynn @cjcullen @derekwaynecarr @danwinship @dcbw @lavalamp @vishh
2016-05-29 03:06:59 -07:00
k8s-merge-robot
9ef7693c0b
Merge pull request #26496 from hongchaodeng/fix
...
Automatic merge from submit-queue
scheduler cache: print err if AssumePod fail
ref:
* https://github.com/kubernetes/kubernetes/issues/19681#issuecomment-222337964
* #26043
Print error to help debug flake.
2016-05-28 23:46:16 -07:00
Hongchao Deng
54acae1281
scheduler cache: print err if AssumePod fail
2016-05-28 18:47:12 -07:00
k8s-merge-robot
e543bd6452
Merge pull request #26007 from smarterclayton/watch_opt
...
Automatic merge from submit-queue
Additional optimizations to the encode/decode paths
Builds on top of #25983 with a number of other optimizations.
2016-05-28 06:27:00 -07:00
Wojciech Tyczynski
be1b57100d
Change to NotReadyNetworking and use in scheduler
2016-05-27 19:32:49 +02:00
Hongchao Deng
e2704c9168
scheduler: remove unused random generator
2016-05-24 20:12:21 -07:00
Filip Grzadkowski
55a1c826bb
Refactor scheduler to expose predicates to cluster autoscaler
2016-05-24 09:04:31 +02:00
k8s-merge-robot
180ab70df0
Merge pull request #25560 from ping035627/ping035627-patch-3
...
Automatic merge from submit-queue
A optimization for “RegisterCustomFitPredicate” function, avoiding redundancy
2016-05-22 19:37:23 -07:00
PingWang
e2af16b1d5
Update generic_scheduler.go
2016-05-23 09:18:15 +08:00
PingWang
36740719d9
exec gofmt -s
2016-05-23 09:17:17 +08:00
k8s-merge-robot
fe1588ebb2
Merge pull request #26024 from dims/fix-issue-25950
...
Automatic merge from submit-queue
Fix useless error message in scheduler log
Print the Namespace and Name instead of Kind/ApiVersion.
fixes #25950
2016-05-21 23:33:42 -07:00
k8s-merge-robot
529135dd01
Merge pull request #25863 from ping035627/ping035627-patch-2
...
Automatic merge from submit-queue
Fix the bug of the "removePod" function in node_info.go
2016-05-21 21:34:28 -07:00
Clayton Coleman
c6961d6fd6
Remove runtime.Typer, reduce to ObjectKinds(1) (3)
...
Remove the unnecessary variants, which avoids allocations in several
core paths.
2016-05-21 23:55:42 -04:00
k8s-merge-robot
c17465be03
Merge pull request #25531 from ingvagabund/introduce-memory-pressure-to-scheduler
...
Automatic merge from submit-queue
Introduce node memory pressure condition to scheduler
Following the work done by @derekwaynecarr at https://github.com/kubernetes/kubernetes/pull/21274 , introducing memory pressure predicate for scheduler.
Missing:
* write down unit-test
* test the implementation
At the moment this is a heads up for further discussion how the new node's memory pressure condition should be handled in the generic scheduler.
**Additional info**
* Based on [1], only best effort pods are subject to filtering.
* Based on [2], best effort pods are those pods "iff requests & limits are not specified for any resource across all containers".
[1] 542668cc79/docs/proposals/kubelet-eviction.md (scheduler)
[2] https://github.com/kubernetes/kubernetes/pull/14943
2016-05-21 19:37:15 -07:00
Jan Chaloupka
b95b30bbd7
Scheduler: introduce CheckNodeMemoryPressurePredicate, don't schedule pods for nodes that reports memory pressury.
...
Introduce unit-test for CheckNodeMemoryPressurePredicate
Following work done in #14943
2016-05-22 00:40:28 +02:00
Davanum Srinivas
57f6321788
Fix useless error message in scheduler log
...
Print the Namespace and Name instead of Kind/ApiVersion.
fixes #25950
2016-05-21 16:02:36 -04:00
Filip Grzadkowski
ab10484330
Merge pull request #25741 from fgrzadkowski/unschedulable_pod
...
Stop setting Message when updating PodScheduled condition
2016-05-20 10:02:13 +02:00
PingWang
901011f242
Update node_info.go
2016-05-20 09:07:43 +08:00
PingWang
b973670344
Add the length detection of the "predicateFuncs" in generic_scheduler.go
...
The PR add the length detection of the "predicateFuncs" for "findNodesThatFit" function of generic_scheduler.go.
In “findNodesThatFit” function, if the length of the "predicateFuncs" parameter is 0, it can set filtered equals nodes.Items, and needn't to traverse the nodes.Items.
2016-05-20 08:49:53 +08:00
PingWang
85f1e0ea6a
Fix the bug of the "removePod" function in node_info.go
...
It should reduce the resource data after finding the pod in the pods, because perhaps no corresponding pod in the pods of the node, at this time it shouldn't reduce the resource data of the node.
2016-05-19 17:19:54 +08:00
Kevin
52fb89ff73
implement taints and tolerations
2016-05-18 15:06:23 +00:00
k8s-merge-robot
e4e6e46197
Merge pull request #24799 from thockin/validation_pt8-2
...
Automatic merge from submit-queue
Make IsValidLabelValue return error strings
Part of the larger validation PR, broken out for easier review and merge. Builds on previous PRs in the series.
2016-05-18 04:08:15 -07:00
Tim Hockin
66d0d87829
Make IsValidLabelValue return error strings
2016-05-17 21:36:10 -07:00
root
74901ae150
No need to log empty string
2016-05-17 10:01:37 -04:00
Filip Grzadkowski
9cba3fc5ae
Stop setting Message when updating PodScheduled condition
2016-05-17 15:27:43 +02:00
Clayton Coleman
1b6591312d
Update the scheduler to handle init containers
2016-05-17 00:29:54 -04:00
k8s-merge-robot
c20dcfc406
Merge pull request #25641 from ping035627/master
...
Automatic merge from submit-queue
Improve fatal error description in plugins.go of scheduler
The PR add more information for the fatal error in plugins.go of scheduler.
2016-05-16 01:45:58 -07:00
PingWang
cefaa06a43
Improve fatal error description in plugins.go of scheduler
...
The PR add more information to fatal error in plugins.go of scheduler.
2016-05-16 10:58:07 +08:00
k8s-merge-robot
4ac32179bf
Merge pull request #24798 from thockin/validation_pt8-1
...
Automatic merge from submit-queue
Make IsQualifiedName return error strings
Part of the larger validation PR, broken out for easier review and merge.
@lavalamp FYI, but I know you're swamped, too.
2016-05-14 22:14:17 -07:00
PingWang
82009eb5db
A optimization for “RegisterCustomFitPredicate” function, avoiding redundancy
...
In RegisterCustomFitPredicate, when policy.Argument is nil and fitPredicateMap has the policy.Name, it can return the policy.Name directly. Subsequent operations are redundant.
2016-05-13 12:40:13 +08:00
k8s-merge-robot
08440b5dcc
Merge pull request #24836 from Clarifai/gpu-impl
...
Automatic merge from submit-queue
WIP v0 NVIDIA GPU support
```release-note
* Alpha support for scheduling pods on machines with NVIDIA GPUs whose kubelets use the `--experimental-nvidia-gpus` flag, using the alpha.kubernetes.io/nvidia-gpu resource
```
Implements part of #24071 for #23587
I am not familiar with the scheduler enough to know what to do with the scores. Mostly punting for now.
Missing items from the implementation plan: limitranger, rkt support, kubectl
support and docs
cc @erictune @davidopp @dchen1107 @vishh @Hui-Zhi @gopinatht
2016-05-12 14:04:15 -07:00
k8s-merge-robot
132ebb091a
Merge pull request #24459 from fgrzadkowski/unschedulable_pod
...
Automatic merge from submit-queue
Add pod condition PodScheduled to detect situation when scheduler tried to schedule a Pod, but failed
Set `PodSchedule` condition to `ConditionFalse` in `scheduleOne()` if scheduling failed and to `ConditionTrue` in `/bind` subresource.
Ref #24404
@mml (as it seems to be related to "why pending" effort)
<!-- Reviewable:start -->
---
This change is [<img src="http://reviewable.k8s.io/review_button.svg " height="35" align="absmiddle" alt="Reviewable"/>](http://reviewable.k8s.io/reviews/kubernetes/kubernetes/24459 )
<!-- Reviewable:end -->
2016-05-12 05:54:06 -07:00
Filip Grzadkowski
a80b1798c4
Add pod condition PodScheduled to detect situation
...
when scheduler tried to schedule a Pod, but failed.
Ref #24404
2016-05-12 10:21:21 +02:00
Tim Hockin
72955770f3
Make IsQualifiedName return error strings
2016-05-10 11:23:23 -07:00
Rudi Chiarito
362c763fca
WIP v0 NVIDIA GPU support
...
Implements part of #24071
I am not familiar with the scheduler enough to know what to do with the scores. Punting for now.
Missing items from the implementation plan: limitranger, rkt support, kubectl
support and user docs
2016-05-09 19:20:05 -04:00
k8s-merge-robot
5988080396
Merge pull request #23795 from mqliang/rc-ns-index
...
Automatic merge from submit-queue
add namespace index for cache
@wojtek-t
Implement in this approach make the change of lister.go small, but we should replace all `NewInformer()` to `NewIndexInformer()`, even when someone not want to filter by namespace(eg. gc_controller and scheduler). Any suggestion?
2016-05-08 12:09:01 -07:00
David Oppenheimer
b0bd3ff167
Move inter-pod affinity predicate and priority functions from default to
...
non-default due to negative performance effects even when not using
the feature.
2016-05-07 16:57:07 -07:00
Wojciech Tyczynski
a51f266ebf
Remove nodeName from predicate signature.
2016-05-06 11:23:37 +02:00
mqliang
9011207f18
add namespace index to rc and pod
2016-05-06 17:12:36 +08:00
Kevin
82ba4f077e
implement inter pod topological affinity and anti-affinity
2016-05-06 06:46:23 +00:00
Clayton Coleman
fdb110c859
Fix the rest of the code
2016-04-29 17:12:10 -04:00
k8s-merge-robot
00308f7a9f
Merge pull request #24598 from wojtek-t/improve_scheduler_predicates
...
Automatic merge from submit-queue
Store node information in NodeInfo
This is significantly improving scheduler throughput.
On 1000-node cluster:
- empty cluster: ~70pods/s
- full cluster: ~45pods/s
Drop in throughput is mostly related to priority functions, which I will be looking into next (I already have some PR #24095 , but we need for more things before).
This is roughly ~40% increase.
However, we still need better understanding of predicate function, because in my opinion it should be even faster as it is now. I'm going to look into it next week.
@gmarek @hongchaodeng @xiang90
2016-04-28 02:17:59 -07:00
k8s-merge-robot
d0b887e4e0
Merge pull request #24595 from zhouhaibing089/httpserverclose
...
Automatic merge from submit-queue
Uncomment the code that caused by #19254
Fix https://github.com/kubernetes/kubernetes/issues/24546 .
@lavalamp
2016-04-28 01:41:16 -07:00
k8s-merge-robot
c7d1637a0b
Merge pull request #24525 from wojtek-t/scheduler_traces
...
Automatic merge from submit-queue
Add traces to scheduler
This will simplify performance debugging of scheduler.
@davidopp @hongchaodeng @xiang90
2016-04-27 07:16:07 -07:00
zhouhaibing089
bf1a3f99c0
Uncomment the code that cause by #19254
2016-04-25 23:21:31 +08:00
Wojciech Tyczynski
1835c8528d
Store node information in NodeInfo
2016-04-25 10:08:05 +02:00
k8s-merge-robot
733832c15a
Merge pull request #24377 from hongchaodeng/sched
...
Automatic merge from submit-queue
schedulercache: remove bind() from AssumePod
Due to #24197 , we make bind() asynchronous and don't need it anymore.
Submit this PR to clean it up.
2016-04-23 02:19:48 -07:00
gmarek
e0712f7e57
Fix MaxPods feature in scheduler
2016-04-22 22:49:50 +02:00
Wojciech Tyczynski
80901a5542
Add traces to scheduler
2016-04-20 15:19:19 +02:00
Wojciech Tyczynski
a4b3f47347
Add RC and container pors to scheduler benchmark
2016-04-20 15:10:57 +02:00
HaiyangDING
a5efb009c5
change predicate error format.
2016-04-17 08:48:03 +08:00
k8s-merge-robot
7664509c73
Merge pull request #24248 from wojtek-t/parallel_predicates
...
Automatic merge from submit-queue
Parallelize computing predicates in scheduler
@davidopp
2016-04-16 09:51:45 -07:00
Hongchao Deng
1eb331e009
schedulercache: remove bind() from AssumePod
2016-04-16 20:30:28 +08:00
Wojciech Tyczynski
5a73a9d235
Parallelize computing predicates
2016-04-14 16:32:52 +02:00
Wojciech Tyczynski
545bf184ef
Simplify FailedPredicateMap
2016-04-14 10:58:35 +02:00
Wojciech Tyczynski
254b05761f
Asynchronous bindings
2016-04-14 09:52:25 +02:00
goltermann
a3104ba96c
Final vet fixes; enabling vet checks in verify scripts.
2016-04-13 13:51:51 -07:00
HaiyangDING
41ed85479a
move predicates into library (address #12744 )
...
DONE:
1. refactor all predicates: predicates return fitOrNot(bool) and error(Error) in which the latter is of type
PredicateFailureError or InsufficientResourceError. (For violation of either MaxEBSVolumeCount or
MaxGCEPDVolumeCount, returns one same error type as ErrMaxVolumeCountExceeded)
2. GeneralPredicates() is a predicate function, which includes serveral other predicate functions (PodFitsResource,
PodFitsHost, PodFitsHostPort). It is registered as one of the predicates in DefaultAlgorithmProvider, and
is also called in canAdmitPod() in Kubelet and should be called by other components (like rescheduler, etc)
if necessary. See discussion in issue #12744
3. remove podNumber check from GeneralPredicates
4. HostName is now verified in Kubelet's canAdminPod(). add TestHostNameConflicts in kubelet_test.go
5. add getNodeAnyWay() method in Kubelet to get node information in standaloneMode
TODO:
1. determine which predicates should be included in GeneralPredicates()
2. separate GeneralPredicates() into:
a. GeneralPredicatesEvictPod() and
b. GeneralPredicatesNotEvictPod()
3. DaemonSet should use GeneralPredicates()
2016-04-11 00:57:03 +08:00
k8s-merge-robot
1ad3049ed6
Merge pull request #23288 from smarterclayton/refactor_codec
...
Auto commit by PR queue bot
2016-03-26 10:47:58 -07:00
goltermann
32d569d6c7
Fixing all the "composite literal uses unkeyed fields" Vet errors.
2016-03-25 15:25:09 -07:00
Wojciech Tyczynski
1471a5b96b
Fix scheduler_test race
2016-03-24 12:31:57 +01:00
Clayton Coleman
54eaa56b92
Add a streaming and "raw" abstraction to codec factory
2016-03-23 17:25:20 -04:00
Wojciech Tyczynski
ebcc8f737c
Parallelize computing selector spreading priority in scheduler.
2016-03-22 14:09:58 +01:00
harry
b0900bf0d4
Refactor diff into sub pkg
2016-03-21 20:21:39 +08:00
deads2k
ab03317d96
support CIDRs in NO_PROXY
2016-03-16 16:22:54 -04:00
Phillip Wittrock
8a952748a1
Merge pull request #22942 from jsafrane/devel/aws-more-devices
...
Allow up to 39 PVs attached to AWS node
2016-03-15 12:41:15 -07:00
Jan Safranek
f270cb1b9b
Allow 39 atached EBS devices.
...
AWS has soft support limit for 40 attached EBS devices. Assuming there is just
one root device, use the rest for persistent volumes.
The devices will have name /dev/xvdba - /dev/xvdcm, leaving /dev/sda - /dev/sdz
to the system.
Also, add better error handling and propagate error
"Too many EBS volumes attached to node XYZ" to a pod.
2016-03-15 17:28:59 +01:00
Hongchao Deng
ae88f08af0
Scheduler: replace system modeler with scheduler cache
2016-03-14 09:03:41 -07:00
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