30 lines
1.2 KiB
YAML
30 lines
1.2 KiB
YAML
# longhorn-wffc — Longhorn StorageClass with WaitForFirstConsumer binding.
|
|
#
|
|
# The chart's default `longhorn` SC uses Immediate binding: the PV binds before
|
|
# the pod is scheduled, so on this single-storage-node topology (only talos-cp-1
|
|
# runs Longhorn) the scheduler often places the pod on cp-2/cp-3 where the volume
|
|
# can't attach ("CSINode does not contain driver driver.longhorn.io").
|
|
#
|
|
# WaitForFirstConsumer defers binding until the pod is scheduled, so the volume
|
|
# is provisioned on the node the pod lands on — and with a single Longhorn node
|
|
# that co-locates pod + volume on cp-1 automatically. This is the new default;
|
|
# the chart's `longhorn` SC is demoted (see longhorn-values default-class=false).
|
|
#
|
|
# volumeBindingMode is immutable, so this is a distinct SC (not an edit of the
|
|
# chart's). Existing volumes stay on `longhorn`; new PVCs use this.
|
|
apiVersion: storage.k8s.io/v1
|
|
kind: StorageClass
|
|
metadata:
|
|
name: longhorn-wffc
|
|
annotations:
|
|
storageclass.kubernetes.io/is-default-class: "true"
|
|
provisioner: driver.longhorn.io
|
|
allowVolumeExpansion: true
|
|
reclaimPolicy: Delete
|
|
volumeBindingMode: WaitForFirstConsumer
|
|
parameters:
|
|
numberOfReplicas: "1"
|
|
staleReplicaTimeout: "30"
|
|
fromBackup: ""
|
|
dataLocality: "best-effort"
|