Commit Graph

975 Commits

Author SHA1 Message Date
Kubernetes Prow Robot
f6152d1521 Merge pull request #97086 from xing-yang/check_datasource
Only CSI plugin can have a DataSource
2021-03-01 06:53:26 -08:00
wzshiming
67e4ba0797 Speed up pkg/controller/volume/scheduling unit tests 2021-03-01 11:53:45 +08:00
Benjamin Elder
56e092e382 hack/update-bazel.sh 2021-02-28 15:17:29 -08:00
Kubernetes Prow Robot
c200a8f9b7 Merge pull request #98433 from damemi/remove-helper-from-volume-zone
Move GetPersistentVolumeClaimClass to component-helpers
2021-02-26 12:38:15 -08:00
xing-yang
676a3a7012 Only CSI plugin can have a DataSource 2021-02-25 15:27:26 +00:00
Kubernetes Prow Robot
8feec9bf94 Merge pull request #99351 from CaoDonghui123/fixissues3
Remove deadcode
2021-02-24 15:29:34 -08:00
caodonghui
f435e24403 Remove deadcode 2021-02-23 17:58:47 +08:00
Marek Siarkowicz
7b1f3584f5 Fix usage of klog.InfoS 2021-02-20 19:22:16 +01:00
Jiawei Wang
3d61b56bcd update bazel 2021-02-12 17:50:40 -08:00
Jiawei Wang
6a7222cf4e Add migrated field to storage_operation_duration_seconds metric 2021-02-12 17:35:01 -08:00
Kubernetes Prow Robot
18605d8814 Merge pull request #98792 from wzshiming/ut/speed-up-persistentvolume
Speed up pkg/controller/volume/persistentvolume unit tests
2021-02-10 01:06:59 -08:00
wzshiming
fb518af0fc Speed up pkg/controller/volume/persistentvolume unit tests 2021-02-05 15:09:36 +08:00
wangkai1994
7edf9e0155 change to kref and kobj 2021-02-03 17:45:38 +08:00
wangkai1994
ab11816570 migrate pkg/controller/volume/pvcprotection.go to structured logs 2021-02-02 17:42:20 +08:00
Mike Dame
ba72411aa2 Move GetPersistentVolumeClaimClass to component-helpers
The goal of this move is related to issue 89930, to break the dependence
of scheduling plugins on internal helpers. This function can easily move to
component-helpers where it will be used by other components as well.
2021-02-01 10:48:38 -05:00
JunYang
f241036d2b fix mistake about [avaliable] for index_test.go
Signed-off-by: JunYang <yang.jun22@zte.com.cn>
2021-01-20 08:37:50 +08:00
Kubernetes Prow Robot
8bf42039e6 Merge pull request #96552 from pandaamanda/klog_fmt
use klog.Info and klog.Warning when had no format
2021-01-15 17:57:43 -08:00
Kubernetes Prow Robot
8f09066809 Merge pull request #97788 from heqg/expect-scheduler_binder
fix typo of [expect] in pkg/controller/../scheduler_binder.go
2021-01-13 18:43:03 -08:00
he.qingguo
b72da953be fix typo of [expect] in pkg/controller/../scheduler_binder.go
Signed-off-by: he.qingguo <he.qingguo@zte.com.cn>
2021-01-07 12:23:14 +08:00
Kubernetes Prow Robot
07bd985724 Merge pull request #96561 from ialidzhikov/cleanup/csi-node-info
Remove CSINodeInfo feature gate
2021-01-05 11:46:00 -08:00
Jayasekhar Konduru
9b2b73600d Recover CSI volumes from dangling attachments
Change-Id: I72105d67d8a4069ab19bfa4638a7ac365cf4194c
2020-12-11 18:31:53 -08:00
ialidzhikov
bc432124a2 Remove CSINodeInfo feature gate
Signed-off-by: ialidzhikov <i.alidjikov@gmail.com>
2020-12-10 09:58:22 +02:00
Kubernetes Prow Robot
ce7ac8442e Merge pull request #94599 from verult/adc-op-asw-race
Fixes Attach Detach Controller reconciler race reading ActualStateOfWorld and operation pending states
2020-12-08 16:28:53 -08:00
xiongzhongliang
90f4aeeea4 use klog.Info and klog.Warning when had no format 2020-11-14 00:55:06 +08:00
Shihang Zhang
d2859cd89b plumb service account token down to csi driver 2020-11-12 09:26:43 -08:00
Kubernetes Prow Robot
423f8731ef Merge pull request #95719 from tsmetana/add-pv_collector-provisioner-metric
PV Controller: Add plugin name and volume mode to PV metrics
2020-11-11 01:49:49 -08:00
Tim Hockin
819ff9b087 Use topology labels instead of old beta names (#96033)
* Rename const for topology.../zone

* Rename const for topology.../region

* Rename const for failure-domain.../zone

* Rename const for failure-domain.../region

* Restore old names for compat
2020-11-05 20:26:50 -08:00
Yecheng Fu
0961891a7a report UnschedulableAndUnresolvable status instead of an error when PVCs can't find bound
persistent volumes

This is an user error. We should't report an error.
2020-11-05 10:28:40 +08:00
Kubernetes Prow Robot
096819c963 Merge pull request #95909 from pohly/pv-controller-delete-pv-fix
PV controller: don't delete PVs when PVC is not known yet
2020-11-02 02:00:52 -08:00
zouyu
7dd4622c84 Some comments' typos
Signed-off-by: zouyu <zouy.fnst@cn.fujitsu.com>
2020-11-02 15:05:23 +08:00
Cheng Xing
d9a629fe3a IsVolumeAttachedToNode() renamed to GetAttachState(), and returns 3 states instead of combining "uncertain" and "detached" into "false" 2020-10-29 13:24:51 -07:00
Patrick Ohly
24f5764787 pv controller test: more test cases
The main goal was to cover retrieval of a PVC from the apiserver when
it isn't known yet. This is achieved by adding PVCs and (for the sake
of completeness) PVs to the reactor, but not the controller, when a
special annotation is set. The approach with a special annotation was
chosen because it doesn't affect other tests.

The other test cases were added while checking the existing tests
because (at least at first glance) the situations seemed to be not
covered.
2020-10-28 10:52:11 +01:00
Patrick Ohly
22f81e9e0b pv controller test: use sub tests
This makes it possible to run individual tests.
2020-10-28 10:39:59 +01:00
Patrick Ohly
06f934ea1f pv controller test: enable klog output
This makes it possible to run tests with -v=5 and thus actually get
some output.
2020-10-28 10:39:10 +01:00
Cheng Xing
a61743b125 Fixes Attach Detach Controller reconciler race reading ActualStateOfWorld and operation pending states; fixes reconciler_test mock detach to account for multiple attaches on a node 2020-10-27 23:51:55 -07:00
Patrick Ohly
5686664a1d PV controller: don't delete PVs when PVC is not known yet
Normally, the PV controller knows about the PVC that triggers the
creation of a PV before it sees the PV, because the PV controller must
set the volume.beta.kubernetes.io/storage-provisioner annotation that
tells an external provisioner to create the PV.

When restarting, the PV controller first syncs its caches, so that
case is also covered.

However, the creator of a PVC might decided to set that annotation
itself to speed up volume creation. While unusual, it's not forbidden
and thus part of the external Kubernetes API. Whether it makes sense
depends on the intentions of the user.

When that is done and there is heavy load, an external provisioner
might see the PVC and create a PV before the PV controller sees the
PVC. If the PV controller then encounters the PV before the PVC, it
incorrectly concludes that the PV needs to be deleted instead of being
bound.

The same issue occurred earlier for external binding and the existing
code for looking up a PVC in the cache or in the apiserver solves the
issue also for volume provisioning, it just needs to be enabled also
for PVs without the pv.kubernetes.io/bound-by-controller annotation.
2020-10-27 11:26:58 +01:00
Tomas Smetana
0c4e05a245 PV Controller: PV plugin and mode metrics 2020-10-23 14:35:35 +02:00
Kubernetes Prow Robot
3175b59ac2 Merge pull request #94489 from ialidzhikov/fix/volume-expand
Do not assume storageclass is still in-tree after csi migration
2020-10-19 15:08:07 -07:00
Kubernetes Prow Robot
dd466bccde Merge pull request #94527 from brahmaroutu/mount-utils-2
Change code to use  staging/k8s.io/mount-utils
2020-09-21 17:46:47 -07:00
ialidzhikov
3bc560225e Do not assume storageclass is still in-tree after csi migration
Signed-off-by: ialidzhikov <i.alidjikov@gmail.com>
2020-09-19 17:33:19 +03:00
Matthew Cary
f2e23afcf1 Adds filtering of hosts to DialContexts.
The provided DialContext wraps existing clients' DialContext in an attempt to
preserve any existing timeout configuration. In some cases, we may replace
infinite timeouts with golang defaults.

- scaleio: tcp connect/keepalive values changed from 0/15 to 30/30
- storageos: no change
2020-09-18 00:07:32 +00:00
Srini Brahmaroutu
fbe5daed73 Change code to use staging/k8s.io/mount-utils 2020-09-16 21:51:24 -07:00
Kubernetes Prow Robot
965137a992 Merge pull request #94692 from alculquicondor/wrap_errors_min
Wrap errors from VolumeBinding and DefaultBinder plugins
2020-09-15 18:27:34 -07:00
knight42
e89e72b637 test: ensure WaitForCacheSync is called after starting sharedInformerFacotry
Signed-off-by: knight42 <anonymousknight96@gmail.com>
2020-09-15 16:02:35 +08:00
Kubernetes Prow Robot
c7d6f796fe Merge pull request #94144 from gnufied/prevent-stale-pv-read
Reduce offline volume expansion flake
2020-09-10 14:22:31 -07:00
Aldo Culquicondor
7fb40fc03c Wrap errors on VolumeBinding plugin
Signed-off-by: Aldo Culquicondor <acondor@google.com>
Change-Id: I23053528ac6857124fddd7f9fa26e122202ff4bd
Signed-off-by: Aldo Culquicondor <acondor@google.com>
2020-09-10 16:22:16 -04:00
Hemant Kumar
bad8a51b9a Read PV object from apiserver to prevent flake 2020-09-10 10:03:08 -04:00
Kubernetes Prow Robot
e23d83eead Merge pull request #93710 from Jiawei0227/attachable2non
Detect volume attach-ability in the middle of attaching
2020-08-31 17:39:50 -07:00
Kubernetes Prow Robot
5ce93a2ab5 Merge pull request #93673 from zhouya0/pv_controller_test_add_time_out
Cleanup wait forever loops in pv_controller_test.go
2020-08-28 08:04:17 -07:00
Kubernetes Prow Robot
24ec90d23c Merge pull request #93015 from gnufied/remove-resize-map
Remove resize map code - unused code
2020-08-28 00:46:53 -07:00