2026-07-23 19:07:02 -07:00
|
|
|
# StorageClasses — Applied after Longhorn installation
|
|
|
|
|
# The default 'longhorn' SC is created by Helm chart
|
|
|
|
|
# These are additional specialized classes
|
|
|
|
|
---
|
2026-08-18 15:08:03 -07:00
|
|
|
# CNPG-specific StorageClass for PostgreSQL volumes
|
|
|
|
|
# CNPG handles filesystem ownership via securityContext.fsGroup (UID/GID 26)
|
|
|
|
|
# Separate from default 'longhorn' to allow CNPG-specific tuning
|
2026-07-23 19:07:02 -07:00
|
|
|
apiVersion: storage.k8s.io/v1
|
|
|
|
|
kind: StorageClass
|
|
|
|
|
metadata:
|
|
|
|
|
name: longhorn-cnpg
|
|
|
|
|
annotations:
|
|
|
|
|
storageclass.kubernetes.io/is-default-class: "false"
|
|
|
|
|
argocd.argoproj.io/sync-options: Prune=false # Allow ArgoCD adoption
|
|
|
|
|
provisioner: driver.longhorn.io
|
|
|
|
|
allowVolumeExpansion: true
|
|
|
|
|
parameters:
|
|
|
|
|
numberOfReplicas: "3"
|
|
|
|
|
staleReplicaTimeout: "30"
|
|
|
|
|
fromBackup: ""
|
|
|
|
|
dataLocality: "best-effort"
|
|
|
|
|
fsType: "ext4"
|
2026-08-18 15:08:03 -07:00
|
|
|
# mountOptions removed - uid/gid are NOT valid for ext4 (only for FAT/VFAT)
|
|
|
|
|
# CNPG handles ownership via securityContext.fsGroup automatically
|
2026-07-23 19:07:02 -07:00
|
|
|
reclaimPolicy: Delete
|
|
|
|
|
volumeBindingMode: Immediate
|