Skip to content

Commit 65d56b2

Browse files
committed
doc: support 'nodeExpandSecretRef' to nodeExpandVolume
Signed-off-by: zhucan <[email protected]>
1 parent 28e6461 commit 65d56b2

File tree

1 file changed

+8
-4
lines changed
  • keps/sig-storage/556-csi-volume-resizing

1 file changed

+8
-4
lines changed

keps/sig-storage/556-csi-volume-resizing/README.md

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -105,7 +105,7 @@ If `NodeExpandVolume` failed:
105105

106106
#### Supporting per-PVC secret refs
107107

108-
To support per-PVC secrets for volume resizing, similar to CSI attach and detach - this proposal expands `CSIPersistentVolumeSource` object to contain `ControllerExpandSecretRef`. This API change will be gated by `ExpandCSIVolumes` feature gate currently in Alpha:
108+
To support per-PVC secrets for volume resizing, similar to CSI attach and detach - this proposal expands `CSIPersistentVolumeSource` object to contain `ControllerExpandSecretRef` and `NodeExpandSecretRef`. This API change will be gated by `ExpandCSIVolumes` feature gate currently in Beta:
109109

110110
```
111111
type CSIPersistentVolumeSource struct {
@@ -117,17 +117,20 @@ type CSIPersistentVolumeSource struct {
117117
// ControllerExpandSecretRef is a reference to secret object containing sensitive
118118
// information to pass to the CSI driver to complete CSI controller expansion
119119
ControllerExpandSecretRef *SecretReference
120+
121+
// NodeExpandSecretRef is a reference to secret object containing sensitive
122+
// information to pass to the CSI driver to complete CSI node expansion
123+
NodeExpandSecretRef *SecretReference
120124
}
121125
```
122126

123-
Secrets will be fetched from StorageClass with parameters `csi.storage.k8s.io/controller-expand-secret-name` and `csi.storage.k8s.io/controller-expand-secret-namespace`. Resizing secrets will support same templating rules as attach and detach as documented - https://kubernetes-csi.github.io/docs/secrets-and-credentials.html#controller-publishunpublish-secret .
127+
Secrets will be fetched from StorageClass with parameters `csi.storage.k8s.io/controller-expand-secret-name` and `csi.storage.k8s.io/controller-expand-secret-namespace`, `csi.storage.k8s.io/node-expand-secret-name` and `csi.storage.k8s.io/node-expand-secret-namespace`. Resizing secrets will support same templating rules as attach and detach as documented - https://kubernetes-csi.github.io/docs/secrets-and-credentials.html#controller-publishunpublish-secret .
124128

125129
Starting from 1.15 it is expected that all CSI volumes that require secrets for expansion will have `ControllerExpandSecretRef` field set. If not set
126130
`ControllerExpandVolume` CSI RPC call will be made without secret. Existing validation of `PersistentVolume` object will be relaxed to allow
127131
setting of `ControllerExpandSecretRef` for the first time so as CSI volume expansion can be supported for existing PVs.
128132

129-
A similar field for `NodeExpandVolume` RPC call is not required because CSI `NodeExpandVolume` does not accepts secrets. It is also expected that
130-
Kubelet will not require access to `ControllerExpandSecretRef` field.
133+
Starting from 1.23 it is expected that all CSI volumes that require secrets for online expansion will have `NodeExpandSecretRef` field set. If not set `NodeExpandVolume` CSI RPC call will be made without secret. Existing validation of `PersistentVolume` object will be relaxed to allow setting of `NodeExpandSecretRef` for the first time so as CSI volume expansion can be supported for existing PVs.
131134

132135
### Risks and Mitigations
133136

@@ -164,3 +167,4 @@ Hopefully the content previously contained in [umbrella issues][] will be tracke
164167
- 1.11 Move in-tree volume expansion to beta.
165168
- 1.11 Implement online resizing feature for in-tree volume plugins as an alpha feature.
166169
- 1.8 Implement in-tree volume expansion an an alpha feature.
170+
- 1.23 Implement online resizing with secret for csi volume plugins as an beta feature.

0 commit comments

Comments
 (0)