snapshot-controller¶
Purpose¶
kubernetes/apps/kube-system/snapshot-controller runs the CSI external-snapshotter controller
that backs VolumeSnapshot and VolumeSnapshotClass resources for the cluster's storage.
CRD lifecycle¶
The chart ships its CRDs under crds/. The root Kustomization
(kubernetes/flux/cluster/ks.yaml) patches every HelmRelease with install.crds: CreateReplace
and upgrade.crds: CreateReplace, so helm-controller server-side applies this chart's crds/ on
every install and upgrade, keeping the CRDs current without a manual step.
This chart replaced an older one that templated its CRDs, guarded by a postRenderer stamping
helm.sh/resource-policy: keep onto them. Shipping CRDs in crds/ instead of templating them
removed the need for that workaround.
A manual apply is only the break-glass path for a HelmRelease that wedges before completing its CRD pass. See KB-029 for that recovery procedure, pinned to the deployed chart version, and the CRD-deletion incident it covers.