Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected]>
35 lines
1.3 KiB
YAML
35 lines
1.3 KiB
YAML
---
|
|
# Default replicated StorageClass — 3 replicas (ADR-0003). The durable home for app/config state
|
|
# and KubeVirt VM disks. Replica count is an overlay knob (R-ENV-02).
|
|
apiVersion: storage.k8s.io/v1
|
|
kind: StorageClass
|
|
metadata:
|
|
name: longhorn
|
|
annotations:
|
|
storageclass.kubernetes.io/is-default-class: "true"
|
|
provisioner: driver.longhorn.io
|
|
allowVolumeExpansion: true
|
|
reclaimPolicy: Delete
|
|
volumeBindingMode: Immediate
|
|
parameters:
|
|
numberOfReplicas: "${LONGHORN_DEFAULT_REPLICA_COUNT}" # from cluster-vars (default 3)
|
|
staleReplicaTimeout: "30"
|
|
fsType: "ext4"
|
|
---
|
|
# Bulk media tier — large, NON-replicated data (Plex library, download staging). ADR-0003 / docs/04.
|
|
# NOTE: backing store (NAS/NFS vs dedicated large disk) is OQ-2, unresolved — this is a STUB.
|
|
# Plex's metadata DB stays on the 3-replica `longhorn` class regardless (ADR-0003).
|
|
apiVersion: storage.k8s.io/v1
|
|
kind: StorageClass
|
|
metadata:
|
|
name: bulk
|
|
provisioner: driver.longhorn.io # TODO(WS-STORAGE): may become an NFS provisioner per OQ-2
|
|
allowVolumeExpansion: true
|
|
reclaimPolicy: Retain
|
|
volumeBindingMode: Immediate
|
|
parameters:
|
|
numberOfReplicas: "1" # non-replicated bulk tier (capacity, not durability)
|
|
staleReplicaTimeout: "30"
|
|
fsType: "ext4"
|
|
# TODO(WS-STORAGE): finalize once OQ-2 (bulk backing) is answered by the human operator.
|