Some users have inquired about using NFS as the storage backend for Minio in on-prem deployments of Konvoy 1.8. To accomplish this, we can utilize the nfs-subdir-external provisioner provisioner to establish a storage class capable of dynamically creating persistent volumes for Minio's use.
The initial step involves installing the NFS provisioner Helm chart by executing the following commands:
helm repo add nfs-subdir-external-provisioner \
https://kubernetes-sigs.github.io/nfs-subdir-external-provisioner
helm install nfs-subdir-external-provisioner \
nfs-subdir-external-provisioner/nfs-subdir-external-provisioner \
--set nfs.server=<IP_ADDRESS> --set nfs.path=</PATH> \
--set storageClass.onDelete=true
Please note that the IP ADDRESS and /PATH must be defined for the parameters nfs.server and nfs.path respectively.
The creation of the storageclass object can be confirmed with the following command:
kubectl get storageclass nfs-client -oyaml
Then, in the velero section of the cluster.yaml, please define the storageclass in the following way:
- name: velero
enabled: true
values: |-
minio:
persistence:
storageClass: nfs-client
If minio was configured previously with a different storage backend, we recommend disabling velero (enabled: false, and then ./konvoy deploy addons), changing the addon configuration in the cluster.yaml and re-enabling the addon (enabled: true, and then ./konvoy deploy addons).