# NAS PersistentVolume — Synology 425+ at 192.168.40.96 # NFS share mounted cluster-wide — any pod can claim storage from it via PVC # ReadWriteMany — multiple pods on different nodes can mount simultaneously # # Prerequisites on every K3s worker VM: # apt install nfs-common # # Deploy (once, cluster-scoped — no namespace): # kubectl apply -f nas-pv.yaml # # Then any service can claim NAS storage with a PVC like: # storageClassName: nas-nfs # accessModes: [ReadWriteMany] # # Replace /volume1/k3s with your actual NAS share path. # Create subdirectories on the NAS per service to keep data organised: # /volume1/k3s/monerod # /volume1/k3s/vaultwarden # etc. --- apiVersion: v1 kind: PersistentVolume metadata: name: nas-pv spec: capacity: storage: 40Ti accessModes: - ReadWriteMany persistentVolumeReclaimPolicy: Retain storageClassName: nas-nfs mountOptions: - hard - nfsvers=4.1 nfs: server: 192.168.40.96 path: /volume1/k3s --- apiVersion: storage.k8s.io/v1 kind: StorageClass metadata: name: nas-nfs provisioner: kubernetes.io/no-provisioner volumeBindingMode: Immediate reclaimPolicy: Retain