@@ -1245,6 +1245,17 @@ enhancement:
1245
1245
CRI or CNI may require updating that component before the kubelet.
1246
1246
-->
1247
1247
1248
+ If the `external-snapshot-metadata` sidecar is added to an older CSI driver that
1249
+ doesn't implement the CBT feature, the sidecar returns a gRPC `UNIMPLEMENTED`
1250
+ [status code][3] (HTTP 501) to the backup application.
1251
+
1252
+ The snapshot metadata components support the v1 snapshot objects (VolumeSnapshot,
1253
+ VolumeSnapshotContent, VolumeSnapshotClass etc.), starting with snapshot
1254
+ controller v7.0. There are no plans to support earlier beta and alpha versions of
1255
+ the snapshot objects.
1256
+
1257
+ This enhancement focuses only on the control plane with no effects on the kubelet.
1258
+
1248
1259
# # Production Readiness Review Questionnaire
1249
1260
1250
1261
<!--
@@ -1509,6 +1520,20 @@ Focusing mostly on:
1509
1520
heartbeats, leader election, etc.)
1510
1521
-->
1511
1522
1523
+ - API call type (e.g. PATCH pods) :
1524
+ - GET VolumeSnapshot, VolumeSnapshotContent, VolumeSnapshotClass, SnapshotMetadataService
1525
+ - CREATE TokenRequest, TokenReview, SubjectAccessReview, SnapshotMetadataService
1526
+ - estimated throughput : one object of each kind, per request
1527
+ - originating component(s) (e.g. Kubelet, Feature-X-controller) :
1528
+ - user's backup application
1529
+ - snapshot metadata sidecar
1530
+ - components listing and/or watching resources they didn't before : N/A
1531
+ - API calls that may be triggered by changes of some Kubernetes resources
1532
+ (e.g. update of object X triggers new updates of object Y) : N/A. All API calls
1533
+ are initiated by the user's backup application
1534
+ - periodic API calls to reconcile state (e.g. periodic fetching state,
1535
+ heartbeats, leader election, etc.) : N/A
1536
+
1512
1537
# ##### Will enabling / using this feature result in introducing new API types?
1513
1538
1514
1539
<!--
@@ -1518,6 +1543,11 @@ Describe them, providing:
1518
1543
- Supported number of objects per namespace (for namespace-scoped objects)
1519
1544
-->
1520
1545
1546
+ - API type : SnapshotMetadataService
1547
+ - Supported number of objects per cluster : One object for every CSI driver that
1548
+ supports CBT
1549
+ - Supported number of objects per namespace (for namespace-scoped objects) : N/A
1550
+
1521
1551
# ##### Will enabling / using this feature result in any new calls to the cloud provider?
1522
1552
1523
1553
<!--
@@ -1526,6 +1556,9 @@ Describe them, providing:
1526
1556
- Estimated increase :
1527
1557
-->
1528
1558
1559
+ The CSI driver plugin will call the cloud provider's CBT API to retrieve the CBT
1560
+ snapshot metadata.
1561
+
1529
1562
# ##### Will enabling / using this feature result in increasing size or count of the existing API objects?
1530
1563
1531
1564
<!--
@@ -1535,6 +1568,8 @@ Describe them, providing:
1535
1568
- Estimated amount of new objects : (e.g., new Object X for every existing Pod)
1536
1569
-->
1537
1570
1571
+ Existing API objects will not be affected.
1572
+
1538
1573
# ##### Will enabling / using this feature result in increasing time taken by any operations covered by existing SLIs/SLOs?
1539
1574
1540
1575
<!--
@@ -1654,3 +1689,4 @@ SIG to get the process for these resources started right away.
1654
1689
[0] : https://github.com/kubernetes/enhancements/pull/3367
1655
1690
[1] : https://github.com/kubernetes/enhancements/pull/3367#pullrequestreview-1133441329
1656
1691
[2] : https://github.com/PrasadG193/external-snapshot-metadata/blob/c8da6e4ed6a206bcc68c55a1592c8f321f21cae4/cmd/client/main.go
1692
+ [3] : https://github.com/googleapis/googleapis/blob/254e61ae3eb7ce8660c7cd3f15c8d30f1f46bfd3/google/rpc/code.proto#L162
0 commit comments