Text-only cleanup after the upgrade campaign. Updates stale version strings, prose, and comments to the verified current facts; no Kubernetes behavior or version pins changed except the kubectl toolchain bump (below). Verified facts applied: k3s v1.36.4+k3s1, Debian 13 trixie, Cilium 1.20.1 / Gateway API v1.6.1, Longhorn 1.12.1, node RAM 24 GiB, dedicated virtio2 SSD etcd disk per node, Velero chart 12.x / v1.18, Grafana 13.2.0. - Version strings across infra/ and platform/ READMEs + comments - kubectl toolchain 1.31.4 -> 1.36.4 (devcontainer/ci/conformance versions.env; 1.31 vs a 1.36 cluster exceeded the +-1 skew) - Retired-single-apps-Kustomization refs -> apps-wave-0/1/2 + apps-vms with per-wave SOPS decryption (flux/clusters docs + bootstrap.sh) - COMPLETED/historical banners on the three executed plan docs - Resolved TODO(WS-SEC) markers -> Renovate-maintained ranges - Appended dated DECISIONS-LOG entry (2026-08-30) superseding the 2026-08-26 LIVE STATE line Left as revalidation items (not blind-edited): external-snapshotter v8.2.0 vs 1.36, Cilium ext_authz/forward-auth relevance under 1.20.1, conformance ImageVolume feature-gate assertions under 1.36. Co-Authored-By: Claude Opus 4.8 <[email protected]>
33 lines
1.7 KiB
Markdown
33 lines
1.7 KiB
Markdown
# external-snapshotter (CSI snapshot control plane)
|
|
|
|
Installs the cluster-singleton [kubernetes-csi/external-snapshotter](https://github.com/kubernetes-csi/external-snapshotter):
|
|
|
|
- the `snapshot.storage.k8s.io` CRDs — `VolumeSnapshot`, `VolumeSnapshotContent`,
|
|
`VolumeSnapshotClass` (v1, GA);
|
|
- the **snapshot-controller** Deployment (into `kube-system`, the upstream default) that
|
|
reconciles those objects against any CSI driver's `CreateSnapshot`/`DeleteSnapshot`.
|
|
|
|
Neither k3s nor the Longhorn chart ships this. It is a prerequisite for:
|
|
|
|
1. **`VolumeSnapshotClass` (driver.longhorn.io)** — see
|
|
`../longhorn/volumesnapshotclass.yaml` (applied by `platform-config`).
|
|
2. **CDI snapshot smart-clone** — the CDI `StorageProfile`s set `cloneStrategy: snapshot`
|
|
(see `../kubevirt/cdi-storageprofiles.yaml`); CDI clones VM disks by taking a CSI
|
|
`VolumeSnapshot` instead of a slow host-assisted byte copy.
|
|
3. Clearing the **`CDIDefaultStorageClassDegraded`** alert — a default virtualization
|
|
StorageClass must support *both* smart-clone *and* ReadWriteMany.
|
|
|
|
## Wiring
|
|
|
|
- **Pass:** `platform` (controllers). Registers the CRDs.
|
|
- The `VolumeSnapshotClass` / `StorageProfile` CRs that consume the CRDs live in the
|
|
`platform-config` pass (`dependsOn: platform`), per the controllers/configs split.
|
|
|
|
## Version
|
|
|
|
Pinned to **v8.2.0** (Renovate-maintained). The v8.x line aligned to Kubernetes 1.31 at
|
|
v8.1.0; this cluster is now k3s v1.36.4, so the pin should be **re-checked for 1.36** (a newer
|
|
external-snapshotter line may be the version-matched choice) — do not treat v8.2.0 as verified
|
|
against 1.36 yet. The snapshot-controller image is re-pinned to the same tag via the kustomization
|
|
`images` transformer (the upstream setup manifest lags on the image tag).
|