Do you need ReadWriteMany storage class and your cloud provider doesn’t offer it?

According to Wikipedia , Network File System (NFS) is a distributed file system protocol originally developed by Sun Microsystems (Sun) in 1984, allowing a user on a client computer to access files over a computer network much like local storage is accessed.

Even though this idea is 35 years old, it is still very useful in your Kubernetes cluster, specially if you need ReadWriteMany storage class. If you are interrested about this, you are probably wondering how to achieve this?

Well, just install NFS Server Provisioner Helm chart:

1
2
3
4
helm install stable/nfs-server-provisioner \
    --name nfs-server \
    --set persistence.enabled=true
    --set persistence.size=10Gi

After successful installation, your Kubernetes cluster will get one more storage class, namelly nfs. Now you can turn on persistance on any of your applications just by setting storage class to nfs and even better, you can set access mode to ReadWriteMany, not just ReadWriteOnce. This allows multiple pods to use the same volume or actually, this allows replicas of your application.