David Zhu
92cb06a2e7
Refactor CSI Translation Library into a struct that is injected into various components to simplify unit testing in future
2019-09-27 12:59:53 -07:00
Kubernetes Prow Robot
11ce7da888
Merge pull request #82740 from hwdef/del-unuse-var1
...
del unuse var in pkg/controller
2019-09-19 11:05:15 -07:00
Shintaro Murakami
ad333ac421
Return error when failed to get storage class
2019-09-18 15:59:34 +09:00
hwdef
851eac6a97
del unuse var in pkg/controller
2019-09-16 15:05:24 +08:00
Kubernetes Prow Robot
cedffee93e
Merge pull request #82239 from sttts/sttts-persistentvolume-controller-data-race
...
persistentvolume-controller: fix data race of non-deepcopied objects in fake client
2019-09-03 14:35:12 -07:00
Dr. Stefan Schimanski
7816ad7991
persistentvolume-controller: fix data race of non-deepcopied objects in fake client
2019-09-02 15:23:55 +02:00
Han Kang
59db3ac27e
migrate controller-manager metrics to stability framework
2019-08-28 12:26:57 -07:00
Kubernetes Prow Robot
927f45191e
Merge pull request #81527 from yastij/move-controller-util
...
move WaitForCacheSync to the sharedInformer package
2019-08-27 00:52:54 -07:00
Yassine TIJANI
7e4c3096fe
move WaitForCacheSync to the sharedInformer package
...
Signed-off-by: Yassine TIJANI <ytijani@vmware.com>
2019-08-22 16:13:41 +01:00
Sadlil Rhythom
7a8eaf4561
controller:volume fix static check failures
2019-08-21 09:37:42 +02:00
czm
cdcf1c0ea2
fix some typos in recycle_test.go
2019-08-15 11:34:46 +08:00
AllenZMC
d266b79a39
fix some typos in testing.go
2019-08-14 20:53:24 +08:00
Travis Rhoden
4574473753
Rename mount.NewOsExec to mount.NewOSExec
2019-08-09 12:30:56 -06:00
Yi Tang
8c13f9dea3
fix pv controller not find pv for pvc provisioning
2019-07-26 16:24:30 +08:00
AllenZMC
852040c036
fix typos in pv_controller.go
...
make code kinda more readable
2019-07-25 11:28:19 +08:00
Shintaro Murakami
7c0b33e012
Add check to reduce orphaned volume
2019-07-11 16:31:56 +09:00
Ted Yu
a18633427b
Drop unnecessary claim parameter from PersistentVolumeController#updateBindVolumeToClaim
2019-07-01 13:30:11 +08:00
xiangqian
38a884aa04
using storage class provisioner instead of annotation of a pv for external provisioner
...
minor updates
2019-05-30 10:19:36 -07:00
xiangqian
9688511595
record provision and deletion latency metric
...
instead of using provisioner from storage class directly, uses plugin name firstly
2019-05-29 14:15:30 -07:00
Andrew Kim
c919139245
update import of generic featuregate code from k8s.io/apiserver/pkg/util/feature -> k8s.io/component-base/featuregate
2019-05-08 10:01:50 -04:00
Kubernetes Prow Robot
43284ecbfc
Merge pull request #77442 from cofyc/fix77084
...
Fix go lint failures in volume scheduling packages
2019-05-07 00:24:07 -07:00
Kubernetes Prow Robot
86a0a3d883
Merge pull request #77443 from cofyc/fix77085
...
Remove private copies and update the code to use shared annotations
2019-05-06 22:53:52 -07:00
Yecheng Fu
3315474f55
Fix go lint failures in a few packages
...
- pkg/controller/volume/persistentvolume/testing
- pkg/controller/volume/scheduling
2019-05-05 09:45:25 +08:00
Yecheng Fu
2d0d226371
Move all private annotations to shared package and update code
2019-05-05 09:43:43 +08:00
Yecheng Fu
87ca3bd1d6
Create OWNERS in volume scheduling package
2019-05-04 16:46:12 +08:00
Yecheng Fu
842fed658c
Refactor PV scheduling library into separate package
2019-05-02 14:45:52 +08:00
Yecheng Fu
0b6c028c8a
Extract testing VolumeReactor into a separate package
2019-05-02 14:45:52 +08:00
Kubernetes Prow Robot
22c67bb113
Merge pull request #76333 from cwdsuzhou/clean_up_scheduler_binder
...
Rename some varibles and clean up codes in scheduler_binder.go
2019-04-19 17:18:03 -07:00
Davanum Srinivas
7b8c9acc09
remove unused code
...
Change-Id: If821920ec8872e326b7d85437ad8d2620807799d
2019-04-19 08:36:31 -04:00
caiweidong
1c5efe7eae
Rename some varible and clean up codes in scheduler_binder.go
2019-04-19 11:06:17 +08:00
Kubernetes Prow Robot
8ef336c05a
Merge pull request #74568 from hex108/pv
...
Remove redundant checker whether pod has claims in func FindPodVolumes
2019-03-21 22:50:31 -07:00
Kubernetes Prow Robot
4499275cb9
Merge pull request #72800 from stewart-yu/stewart-component-base
...
Move config local to every controller in KCM
2019-03-21 19:26:19 -07:00
Kubernetes Prow Robot
d31427637b
Merge pull request #74926 from ddebroy/csiprov2
...
Add new CSI translation APIs required by CSI sidecars and unit tests
2019-03-05 14:54:21 -08:00
Xing Yang
6265f4f78c
CSINodeInfo/CSIDriver controller changes
...
This is the 2nd PR to move CSINodeInfo/CSIDriver APIs to
v1beta1 core storage APIs. It includes controller side changes.
It depends on the PR with API changes:
https://github.com/kubernetes/kubernetes/pull/73883
2019-03-04 16:41:58 -08:00
Deep Debroy
1da91ad39a
Add GetIntreeNameFromCSIName and SupersedesInTreePlugin APIs and unit tests
...
Signed-off-by: Deep Debroy <ddebroy@docker.com>
2019-03-04 16:36:45 -08:00
stewart-yu
ecbd5427e7
auto-generated file
2019-03-02 12:55:26 +08:00
stewart-yu
e01ff1641c
move config local to every controllers in kube-controller-manager
2019-03-02 12:54:33 +08:00
Kubernetes Prow Robot
36787041cb
Merge pull request #73653 from ddebroy/migprov1
...
Support dynamic provisioning for CSI migration scenarios
2019-02-28 01:52:55 -08:00
Travis Rhoden
2c4d748bed
Refactor subpath out of pkg/util/mount
...
This patch moves subpath functionality out of pkg/util/mount and into a
new package pkg/volume/util/subpath. NSEnter funtionality is maintained.
2019-02-26 19:59:53 -07:00
Deep Debroy
23478f104f
PV Controller changes to support provisioning in CSI Migration scenarios
...
Signed-off-by: Deep Debroy <ddebroy@docker.com>
2019-02-26 08:39:54 -08:00
Jun Gong
a916f1b28c
Remove redundant checker whether pod has claims in func FindPodVolumes
2019-02-26 13:06:52 +08:00
Andrew Kim
ca6a051b00
remove cloud provider dependencies to pkg/volume
...
Co-authored-by: Weibin Lin <linweibin1@huawei.com>
2019-02-09 01:16:55 -05:00
Kubernetes Prow Robot
b50c643be0
Merge pull request #73540 from rlenferink/patch-5
...
Updated OWNERS files to include link to docs
2019-02-08 09:05:56 -08:00
Kubernetes Prow Robot
a1539d8e52
Merge pull request #73159 from cofyc/fix72329
...
Better way to share common utilities between PV controller and Volume Binder
2019-02-05 22:36:13 -08:00
Yecheng Fu
8b79fe3ebe
Do not call methods on PersistentVolumeController
2019-02-06 12:04:05 +08:00
Roy Lenferink
b43c04452f
Updated OWNERS files to include link to docs
2019-02-04 22:33:12 +01:00
Ted Yu
c8f1826185
Use read lock for scheduler_binder_cache GetDecisions
2019-01-26 13:06:23 -08:00
Kubernetes Prow Robot
0b62ad23c2
Merge pull request #72959 from cofyc/fix72954
...
Fix flaky test TestBindAPIUpdate
2019-01-22 11:12:59 -08:00
David Zhu
d8c9dc5bb5
Add IsMigratableToCSI to volume plugin interface
2019-01-17 14:43:52 -08:00
Yecheng Fu
f406c6bde7
Fix flaky test TestBindAPIUpdate
2019-01-17 11:25:18 +08:00
Yecheng Fu
dbd80460de
Clear cache instead of saving nils if no claims to bind or provision
2019-01-16 21:21:36 +08:00
Yecheng Fu
c2d25e08d7
Skip if pod does not have claims.
2019-01-16 21:02:08 +08:00
Yecheng Fu
7fe97886a8
Merge UpdateProvisionedPVCs with UpdateBindings.
...
This simplifies code and saves a lock.
2019-01-16 21:02:08 +08:00
Kubernetes Prow Robot
ccb1e1f26d
Merge pull request #72045 from cofyc/fix71928
...
Make volume binder resilient to races
2019-01-11 17:42:32 -08:00
Yecheng Fu
1a62f53d3f
If provisioning PVC's PV is not found, check next time.
2019-01-09 10:50:07 +08:00
Yecheng Fu
8b94b9625b
Make volume binder resilient to races: unit tests
2019-01-09 10:50:07 +08:00
Kubernetes Prow Robot
8cb5bc49b6
Merge pull request #72636 from mesaugat/patch-1
...
Aesthetic changes and fix typo
2019-01-08 16:43:36 -08:00
Yecheng Fu
13d87fbff8
Make volume binder resilient to races
...
- FindPodVolumes do not error if PVC is assumed with selected node
- BindPodVolumes check against API objects
2019-01-08 02:14:13 +08:00
Saugat Acharya
926cabfc3a
Remove multiple spaces after a full stop
2019-01-07 17:04:46 +05:45
Saugat Acharya
956a21cd31
Aesthetic changes
...
* Remove multiple spaces after full stop
* Include a single space after a comment
* Fixed a typo
```diff
- eixst
+ exist
```
* Make comment and function name the same
2019-01-07 16:49:12 +05:45
Fabio Bertinatto
bb4fcddd1b
Check PV requirements before scheduling pod
2019-01-04 12:33:18 +01:00
Jordan Liggitt
73dcfe12da
Stop checking VolumeScheduling feature gate
2018-12-27 17:45:45 -05:00
k8s-ci-robot
79e5cb2cb7
Merge pull request #71302 from liggitt/verify-unit-test-feature-gates
...
Split mutable and read-only access to feature gates, limit tests to readonly access
2018-11-29 21:45:12 -08:00
k8s-ci-robot
3faeb7ba6f
Merge pull request #70360 from houjun41544/20181029-1
...
Fix an error in comment
2018-11-28 23:31:40 -08:00
Jordan Liggitt
2498ca7606
drop VerifyFeatureGatesUnchanged
2018-11-21 11:51:33 -05:00
Jordan Liggitt
70ad4dff48
Fix unit tests calling SetFeatureGateDuringTest incorrectly
2018-11-21 11:51:33 -05:00
Michelle Au
18453b01e6
Tolerate apiserver being older than controller-manager
2018-11-16 16:31:27 -08:00
Matthew Wong
dd517c9ff2
Update all tests to account for BlockVolume enabled by default
2018-11-16 13:38:59 -05:00
Jordan Liggitt
248d661327
Add tests to ensure storage feature gate changes don't escape packages
2018-11-16 10:52:53 -05:00
Michelle Au
fd64c08240
Fix storage feature gate test setting
2018-11-16 10:49:40 -05:00
Tomas Smetana
f9c9ef6ec0
PV Controller: fix recycling
...
In the situation when a PVC is deleted and a new one with the same name
bound to a different PV the "old" PV may fail to recycle since it's
associaded with a PVC that is detected as being in use. This may cause
the recycler processes to hang.
2018-11-15 16:38:25 +01:00
Davanum Srinivas
954996e231
Move from glog to klog
...
- Move from the old github.com/golang/glog to k8s.io/klog
- klog as explicit InitFlags() so we add them as necessary
- we update the other repositories that we vendor that made a similar
change from glog to klog
* github.com/kubernetes/repo-infra
* k8s.io/gengo/
* k8s.io/kube-openapi/
* github.com/google/cadvisor
- Entirely remove all references to glog
- Fix some tests by explicit InitFlags in their init() methods
Change-Id: I92db545ff36fcec83afe98f550c9e630098b3135
2018-11-10 07:50:31 -05:00
k8s-ci-robot
3c10143967
Merge pull request #60195 from humblec/glusterfs-pvspec-3
...
Refactor GlusterFS PV spec.
2018-11-08 00:24:39 -08:00
Humble Chirammal
bdb051c72d
Refactor GlusterFS PV spec.
...
This patch introduces glusterfsPersistentVolumeSource addition
to glusterfsVolumeSource. All fields remains same as glusterfsVolumeSource
with an addition of a new field
called `EndpointsNamespace` to define namespace of endpoint in the
spec.
Signed-off-by: Humble Chirammal <hchiramm@redhat.com>
2018-11-06 15:51:01 +05:30
k8s-ci-robot
faabfd9455
Merge pull request #70575 from houjun41544/20181102
...
Replace getPVCName() with a variable
2018-11-02 21:28:41 -07:00
k8s-ci-robot
69f5f5eff2
Merge pull request #67978 from WanLinghao/token_controller_improve
...
remove idle tokens in kubelet token manager
2018-11-02 12:28:47 -07:00
houjun
fc5dc1ffd8
Replace getPVCName() with a variable
2018-11-02 17:23:18 +08:00
houjun
1373936b17
Fix an error in comment
2018-10-30 10:37:23 +08:00
houjun
caf3c25616
Fix an error in log info
2018-10-30 09:02:06 +08:00
wackxu
d5edcd3dc3
Add metrics to volume scheduling operations
2018-10-23 20:59:12 +08:00
WanLinghao
7df1078d6f
Currently, kubelet token mamanger only clean tokens who are expired. For tokens with long expiration, if the pod who creates them got killed or evicted, those tokens may stay in kubelet's memory until they are expired. It's bad for kubelet and node itself. After this patch, each time a pod was deleted, token manager would clean related tokens.
2018-10-22 09:32:59 +08:00
k8s-ci-robot
0f17e9ade6
Merge pull request #69386 from cblecker/go-1.11
...
Update to go1.11.1
2018-10-05 17:35:51 -07:00
Christoph Blecker
97b2992dc1
Update gofmt for go1.11
2018-10-05 12:59:38 -07:00
Walter Fender
f3f46d5f5a
Moving the cloudprovider interface to staging.
...
Individual implementations are not yet being moved.
Fixed all dependencies which call the interface.
Fixed golint exceptions to reflect the move.
Added project info as per @dims and
https://github.com/kubernetes/kubernetes-template-project .
Added dims to the security contacts.
Fixed minor issues.
Added missing template files.
Copied ControllerClientBuilder interface to cp.
This allows us to break the only dependency on K8s/K8s.
Added TODO to ControllerClientBuilder.
Fixed GoDeps.
Factored in feedback from JustinSB.
2018-10-04 14:41:20 -07:00
Yecheng Fu
1e27a28dca
Ignore non-avaiable volumes in findMatchingVolume: update tests
...
- Use VolumeAvaiable instead of empty or pending phase in tests
- Add a test case to verify findMatchingVolume will not choose
non-avaiable PVs if it's not pre-bind
- Add a test case to verify syncClaim will not choose non-avaibalbe PVs
if it's not pre-bind
2018-09-19 13:13:31 +08:00
Yecheng Fu
b3cb1bdc4a
Ignore non-available volumes in findMatchingVolume to reduce chance of
...
unnecessary binding failures.
2018-09-14 20:27:44 +08:00
Michelle Au
8fcbcafc11
Use rwlock for caches
2018-09-04 16:47:43 -07:00
Michelle Au
37d46a1e3f
Volume scheduling library changes:
...
* FindPodVolumes
* Prebound PVCs are treated like unbound immediate PVCs and will error
* Always check for fully bound PVCs and cache bindings for not fully
bound PVCs
* BindPodVolumes
* Retry API updates for not fully bound PVCs even if the assume cache
already marked it
* Wait for PVCs to be fully bound after making the API updates
* Error when detecting binding/provisioning failure conditions
2018-09-04 16:30:14 -07:00
Jan Safranek
7d673cb8f0
Pass new CSI API Client and informer to Volume Plugins
2018-08-31 12:25:59 -07:00
lichuqiang
4c43d626f2
related test update
2018-08-29 10:30:16 +08:00
lichuqiang
b4a57f6855
combine feature gate VolumeScheduling and DynamicProvisioningScheduling into one
2018-08-29 10:30:08 +08:00
Yecheng Fu
493502d0ae
Double check PVC if not found in syncVolume.
...
If PV is bound by external PV binder (e.g. kube-scheduler), it's
possible on heavy load that corresponding PVC is not synced to
controller local cache yet.
2018-08-16 10:33:28 +08:00
Kubernetes Submit Queue
f4d8220df5
Merge pull request #65616 from cofyc/fix56163
...
Automatic merge from submit-queue (batch tested with PRs 65570, 65616). If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md ">here</a>.
Retry scheduling on StorageClass events
**What this PR does / why we need it**:
**Which issue(s) this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close the issue(s) when PR gets merged)*:
Fixes #56163
**Special notes for your reviewer**:
I have taken over #60006 .
It's hard to test in e2e, because we cannot know reschedule of pod is triggered by which event (periodically service/node events will move pods to active queue too). ~~I'll add integration tests for this functionality after [this PR](https://github.com/kubernetes/kubernetes/pull/65296 ) get merged.~~ (already added)
**Release note**:
```release-note
NONE
```
2018-07-31 19:18:00 -07:00
Yecheng Fu
8f0373792f
Retry scheduling on various events.
2018-07-20 09:54:34 +08:00
Fabio Bertinatto
a15cc29442
Add extra metrics for PV Controller
...
Specifically:
* Total provision time
* Total PV deletion time
* Number of times PV provisioning failed
* Number of times PV deletion failed
2018-07-19 15:36:37 +02:00
Fabio Bertinatto
97e63985dc
Return error in provisionClaimOperation
2018-07-19 15:27:40 +02:00
Jonathan Pentecost
b4cab1be0e
persistentvolume: fix spelling of storageClasseName
...
Fixed spelling of error in 'pv_controller', was 'storageClasseName', is
now 'storageClassName'.
2018-07-17 14:34:51 +01:00
Tim Allclair
b1012b2543
Remove unused io util writer & volume host GetWriter()
2018-07-09 14:09:48 -07:00
Kubernetes Submit Queue
8d73473ce8
Merge pull request #65774 from lichuqiang/add_reviewer
...
Automatic merge from submit-queue. If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md ">here</a>.
Add lichuqiang as reviewer of persistentvolume controller (for volume scheduling)
Now that I've been working on the storage topology-aware feature for quite a time. Really hope that I can help do some review.
```release-note
NONE
```
/assign @msau42
2018-07-03 11:31:12 -07:00
lichuqiang
67380c63aa
Add lichuqiang as reviewer of persistentvolume controller (for volume scheduling)
2018-07-04 00:35:54 +08:00