From e0488d5d7b6fd8d49f23eb37e63400cef1b0cb75 Mon Sep 17 00:00:00 2001 From: Roger Sikorski Date: Fri, 31 Oct 2025 09:33:25 +0100 Subject: [PATCH] feature/csi-driver-nfs --- .../csi-driver-nfs/HelmRelease.yaml | 62 +++++++++++++++++++ .../csi-driver-nfs/HelmRepository.yaml | 9 +++ .../StorageClass/k8s-nfs-hdd.yaml | 13 ++++ .../StorageClass/k8s-nfs-ssd.yaml | 13 ++++ 4 files changed, 97 insertions(+) create mode 100644 cluster/infrastructure/intel-quick-sync-support/kube-system/csi-driver-nfs/HelmRelease.yaml create mode 100644 cluster/infrastructure/intel-quick-sync-support/kube-system/csi-driver-nfs/HelmRepository.yaml create mode 100644 cluster/infrastructure/intel-quick-sync-support/kube-system/csi-driver-nfs/StorageClass/k8s-nfs-hdd.yaml create mode 100644 cluster/infrastructure/intel-quick-sync-support/kube-system/csi-driver-nfs/StorageClass/k8s-nfs-ssd.yaml diff --git a/cluster/infrastructure/intel-quick-sync-support/kube-system/csi-driver-nfs/HelmRelease.yaml b/cluster/infrastructure/intel-quick-sync-support/kube-system/csi-driver-nfs/HelmRelease.yaml new file mode 100644 index 0000000..9967aba --- /dev/null +++ b/cluster/infrastructure/intel-quick-sync-support/kube-system/csi-driver-nfs/HelmRelease.yaml @@ -0,0 +1,62 @@ +--- +apiVersion: helm.toolkit.fluxcd.io/v2 +kind: HelmRelease +metadata: + name: csi-driver-nfs + namespace: kube-system + labels: + app: csi-driver-nfs +spec: + chart: + spec: + # https://artifacthub.io/packages/helm/csi-driver-nfs/csi-driver-nfs/4.12.1 + chart: csi-driver-nfs + reconcileStrategy: ChartVersion + sourceRef: + kind: HelmRepository + name: csi-driver-nfs + namespace: kube-system + version: '4.12.1' # fixed version because storage is important + interval: 24h + timeout: 10m + suspend: false + values: + # https://github.com/kubernetes-csi/csi-driver-nfs/tree/master/charts#latest-chart-configuration + # https://github.com/kubernetes-csi/csi-driver-nfs/blob/v4.12.1/charts/v4.12.1/csi-driver-nfs/values.yaml + + controller: + resources: + csiProvisioner: + limits: + memory: 1Gi + requests: + cpu: 10m + memory: 20Mi + + csiResizer: + limits: + memory: 1Gi + requests: + cpu: 10m + memory: 20Mi + + csiSnapshotter: + limits: + memory: 1Gi + requests: + cpu: 10m + memory: 200Mi + + livenessProbe: + limits: + memory: 1Gi + requests: + cpu: 10m + memory: 20Mi + + nfs: + limits: + memory: 1Gi + requests: + cpu: 10m + memory: 20Mi diff --git a/cluster/infrastructure/intel-quick-sync-support/kube-system/csi-driver-nfs/HelmRepository.yaml b/cluster/infrastructure/intel-quick-sync-support/kube-system/csi-driver-nfs/HelmRepository.yaml new file mode 100644 index 0000000..cc2878c --- /dev/null +++ b/cluster/infrastructure/intel-quick-sync-support/kube-system/csi-driver-nfs/HelmRepository.yaml @@ -0,0 +1,9 @@ +--- +apiVersion: source.toolkit.fluxcd.io/v1 +kind: HelmRepository +metadata: + name: csi-driver-nfs + namespace: kube-system +spec: + interval: 24h + url: https://raw.githubusercontent.com/kubernetes-csi/csi-driver-nfs/master/charts diff --git a/cluster/infrastructure/intel-quick-sync-support/kube-system/csi-driver-nfs/StorageClass/k8s-nfs-hdd.yaml b/cluster/infrastructure/intel-quick-sync-support/kube-system/csi-driver-nfs/StorageClass/k8s-nfs-hdd.yaml new file mode 100644 index 0000000..7d27834 --- /dev/null +++ b/cluster/infrastructure/intel-quick-sync-support/kube-system/csi-driver-nfs/StorageClass/k8s-nfs-hdd.yaml @@ -0,0 +1,13 @@ +--- +apiVersion: storage.k8s.io/v1 +kind: StorageClass +metadata: + name: k8s-nfs-hdd +provisioner: nfs.csi.k8s.io +parameters: + server: unraid.example.internal + share: /mnt/user/k8s-nfs-hdd/ + subDir: ${pvc.metadata.namespace}/${pvc.metadata.name}/ +reclaimPolicy: Delete +volumeBindingMode: Immediate +allowVolumeExpansion: true diff --git a/cluster/infrastructure/intel-quick-sync-support/kube-system/csi-driver-nfs/StorageClass/k8s-nfs-ssd.yaml b/cluster/infrastructure/intel-quick-sync-support/kube-system/csi-driver-nfs/StorageClass/k8s-nfs-ssd.yaml new file mode 100644 index 0000000..0683d6f --- /dev/null +++ b/cluster/infrastructure/intel-quick-sync-support/kube-system/csi-driver-nfs/StorageClass/k8s-nfs-ssd.yaml @@ -0,0 +1,13 @@ +--- +apiVersion: storage.k8s.io/v1 +kind: StorageClass +metadata: + name: k8s-nfs-ssd +provisioner: nfs.csi.k8s.io +parameters: + server: unraid.example.internal + share: /mnt/user/k8s-nfs-ssd/ + subDir: ${pvc.metadata.namespace}/${pvc.metadata.name}/ +reclaimPolicy: Delete +volumeBindingMode: Immediate +allowVolumeExpansion: true -- 2.49.1