Reorganized for new stable/waypoint versioning design.
This commit is contained in:
49
snapshot-controller/versions/v8/README.md
Normal file
49
snapshot-controller/versions/v8/README.md
Normal file
@@ -0,0 +1,49 @@
|
||||
# Snapshot Controller
|
||||
|
||||
The snapshot controller is a Kubernetes component that manages the lifecycle of volume snapshots. It works in conjunction with CSI drivers to enable backup and restore functionality for persistent volumes.
|
||||
|
||||
## Architecture
|
||||
|
||||
The snapshot functionality in Kubernetes is split into two components:
|
||||
- **Snapshot Controller** (this service): Cluster-wide controller that manages VolumeSnapshot resources
|
||||
- **CSI Snapshotter Sidecar**: Deployed with each CSI driver (e.g., Longhorn) to perform actual snapshot operations
|
||||
|
||||
## Installation
|
||||
|
||||
This service is installed automatically by Wild Cloud when setting up cluster services. It deploys:
|
||||
- The snapshot-controller deployment (2 replicas with leader election)
|
||||
- Required RBAC permissions
|
||||
- VolumeSnapshot CRDs (if not already present)
|
||||
|
||||
## Dependencies
|
||||
|
||||
- Requires a CSI driver with snapshot support (e.g., Longhorn)
|
||||
- Requires VolumeSnapshot CRDs (included with this service)
|
||||
|
||||
## Verification
|
||||
|
||||
After installation, verify the controller is running:
|
||||
```bash
|
||||
kubectl get pods -n kube-system | grep snapshot-controller
|
||||
kubectl api-resources | grep snapshot
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
Once installed, you can create VolumeSnapshots for any PVC managed by a CSI driver:
|
||||
```yaml
|
||||
apiVersion: snapshot.storage.k8s.io/v1
|
||||
kind: VolumeSnapshot
|
||||
metadata:
|
||||
name: my-snapshot
|
||||
namespace: default
|
||||
spec:
|
||||
volumeSnapshotClassName: longhorn-snapshot-class
|
||||
source:
|
||||
persistentVolumeClaimName: my-pvc
|
||||
```
|
||||
|
||||
## References
|
||||
|
||||
- [Kubernetes CSI Snapshot Documentation](https://kubernetes-csi.github.io/docs/snapshot-restore-feature.html)
|
||||
- [External Snapshotter GitHub](https://github.com/kubernetes-csi/external-snapshotter)
|
||||
Reference in New Issue
Block a user