Skip to content

Commit 753eeca

Browse files
committed
Add review comments from Tuesday meeting and PRR file
1 parent 77caf1d commit 753eeca

File tree

2 files changed

+23
-8
lines changed

2 files changed

+23
-8
lines changed
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
kep-number: 1495
2+
beta:
3+
approver: "@deads2k"

keps/sig-storage/1495-volume-populators/README.md

Lines changed: 20 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -265,8 +265,8 @@ for this purpose. We would expect such a PVC to be ignored by existing
265265
dynamic provisioners.
266266

267267
To test the data-source-validator, we need to check the following cases:
268-
- Creation of a PVC with no datasource causes no events
269-
- Creation of a PVC with a VolumeSnapshot or PVC datasource causes no events
268+
- Creation of a PVC with no datasource causes no events.
269+
- Creation of a PVC with a VolumeSnapshot or PVC datasource causes no events.
270270
- Creation of a PVC with a CRD datasource that's not registered by any
271271
volume populator causes UnrecognizedDataSourceKind events.
272272
- Creation of a PVC with a CRD datasource that's registered by a
@@ -321,12 +321,13 @@ _This section must be completed when targeting alpha to a release._
321321
- [X] Feature gate (also fill in values in `kep.yaml`)
322322
- Feature gate name: AnyVolumeDataSource
323323
- Components depending on the feature gate: kube-apiserver
324-
- [ ] Other
325-
- Describe the mechanism:
324+
- [X] Other
325+
- Describe the mechanism: Also install the data-source-validator controller
326+
and its associated VolumePopulator CRD.
326327
- Will enabling / disabling the feature require downtime of the control
327-
plane?
328+
plane? no
328329
- Will enabling / disabling the feature require downtime or reprovisioning
329-
of a node? (Do not assume `Dynamic Kubelet Config` feature is enabled).
330+
of a node? no
330331

331332
* **Does enabling the feature change any default behavior?**
332333
Before this feature, kube API server would silently drop any PVC data source
@@ -337,8 +338,16 @@ _This section must be completed when targeting alpha to a release._
337338

338339
* **Can the feature be disabled once it has been enabled (i.e. can we roll back
339340
the enablement)?**
340-
Turning off the feature gate should drop all the data sources that were not
341-
already valid and restore the old behavior.
341+
Turning off the feature gate should causes the API server to go back to dropping
342+
data sources for new PVCs. An admin would also want to remove any data populator
343+
controllers, and the data-source-validator controller, and the VolumePopulator
344+
CRD. Lastly, and unbound PVCs with data sources should be deleted, as they
345+
will never bind.
346+
347+
Alternatively, just disable the feature gate and remove the populator controllers,
348+
but leave the data-source-validator controller and the VolumePopulator CRD,
349+
and it will generate events on any PVCs which need to be deleted. Then it
350+
could be left up to end users to delete their own PVCs which will never bind.
342351

343352
* **What happens if we reenable the feature if it was previously rolled back?**
344353
PVC which previously had data sources that were invalided by the rollback
@@ -396,6 +405,9 @@ the health of the service?**
396405
of this feature?**
397406
Describe the metrics themselves and the reasons why they weren't added (e.g., cost,
398407
implementation difficulties, etc.).
408+
* Counter for number of PVCs with no data sources
409+
* Counter for number of PVCs with valid data sources
410+
* Counter for number of PVCs with invalid data sources
399411

400412
### Dependencies
401413

0 commit comments

Comments
 (0)