Topic 3: StorageClasses And Dynamic Provisioning
Official baseline: (The Kubernetes Authors, 2026b, 2026a). My working version: StorageClass is a menu item. Dynamic provisioning turns a PVC into backend storage without manual PV pre-creation.
Mental Model
StorageClass is a menu item. Dynamic provisioning turns a PVC into backend storage without manual PV pre-creation.
Notes
- The default StorageClass quietly shapes every stateful workload.
- Expansion, binding mode, and reclaim policy should be understood before production use.
- The provisioner is another controller with its own failure modes.
Homelab Angle
Name storage classes after behavior, not vendor pride: fast-local, replicated, backup-required.
Verify It
- Read the object status before changing the manifest.
- Check events for the controller or node that is actually complaining.
- Confirm the official source linked below still matches the cluster version you run.
Common Failure Modes
- Treating the YAML object as the system, instead of one input to a reconciliation loop.
- Debugging from outside the cluster when the failure only exists inside cluster networking or node state.
- Forgetting that Kubernetes version, addon version, and runtime behavior are linked.
Sources
- Storage Classes - source path:
content/en/docs/concepts/storage/storage-classes.md, commit 8cc9e19b8eec8d5cf49eacd66f86a81648edb1a0. - Dynamic Volume Provisioning - source path:
content/en/docs/concepts/storage/dynamic-provisioning.md, commit 8cc9e19b8eec8d5cf49eacd66f86a81648edb1a0. - Kubernetes documentation is licensed under CC BY 4.0; these notes are original commentary and link back to the official source.
The Kubernetes Authors. (2026a). Dynamic Volume Provisioning. https://kubernetes.io/docs/concepts/storage/dynamic-provisioning/
The Kubernetes Authors. (2026b). Storage Classes. https://kubernetes.io/docs/concepts/storage/storage-classes/