feat: add StorageClass definition in Helm charts

This commit is contained in:
Thanos Tryfonidis 2024-04-05 23:24:58 +03:00
parent 719b48c4da
commit 52b0190d9b
No known key found for this signature in database
GPG Key ID: 6A9A9AA187CDD5B4
5 changed files with 53 additions and 1 deletions

View File

@ -109,7 +109,7 @@ The following table lists the configurable parameters of the latest NFS CSI Driv
| `externalSnapshotter.resources.limits.memory` | snapshot-controller memory limits | 300Mi | | `externalSnapshotter.resources.limits.memory` | snapshot-controller memory limits | 300Mi |
| `externalSnapshotter.resources.requests.cpu` | snapshot-controller cpu requests limits | 10m | | `externalSnapshotter.resources.requests.cpu` | snapshot-controller cpu requests limits | 10m |
| `externalSnapshotter.resources.requests.memory` | snapshot-controller memory requests limits | 20Mi | | `externalSnapshotter.resources.requests.memory` | snapshot-controller memory requests limits | 20Mi |
| `storageClass.create` | create storageclass| `false` | |
## troubleshooting ## troubleshooting
- Add `--wait -v=5 --debug` in `helm install` command to get detailed error - Add `--wait -v=5 --debug` in `helm install` command to get detailed error

View File

@ -0,0 +1,19 @@
{{- if .Values.storageClass.create }}
---
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
name: {{ .Values.storageClass.name }}
{{ include "nfs.labels" . | indent 2 }}
provisioner: nfs.csi.k8s.io
{{- with .Values.storageClass.parameters }}
parameters:
{{ toYaml . | indent 2 }}
{{- end }}
reclaimPolicy: {{ .Values.storageClass.reclaimPolicy }}
volumeBindingMode: {{ .Values.storageClass.volumeBindingMode }}
{{- with .Values.storageClass.mountOptions }}
mountOptions:
{{ toYaml . }}
{{- end }}
{{- end }}

View File

@ -150,3 +150,20 @@ externalSnapshotter:
## ##
imagePullSecrets: [] imagePullSecrets: []
# - name: "image-pull-secret" # - name: "image-pull-secret"
## StorageClass resource example:
storageClass:
create: false
# name: nfs-csi
# parameters:
# server: nfs-server.default.svc.cluster.local
# share: /
# subDir:
# mountPermissions: "0"
# csi.storage.k8s.io/provisioner-secret is only needed for providing mountOptions in DeleteVolume
# csi.storage.k8s.io/provisioner-secret-name: "mount-options"
# csi.storage.k8s.io/provisioner-secret-namespace: "default"
# reclaimPolicy: Delete
# volumeBindingMode: Immediate
# mountOptions:
# - nfsvers=4.1

16
deploy/storageclass.yaml Normal file
View File

@ -0,0 +1,16 @@
---
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
name: nfs-csi
provisioner: nfs.csi.k8s.io
parameters:
server: nfs-server.default.svc.cluster.local
share: /
# csi.storage.k8s.io/provisioner-secret is only needed for providing mountOptions in DeleteVolume
# csi.storage.k8s.io/provisioner-secret-name: "mount-options"
# csi.storage.k8s.io/provisioner-secret-namespace: "default"
reclaimPolicy: Delete
volumeBindingMode: Immediate
mountOptions:
- nfsvers=4.1