-
Notifications
You must be signed in to change notification settings - Fork 276
Description
Hello,
I have the following problem using the csi-driver-nfs driver 4.11.
PVC provisioning with the CSI NFS driver succeeds and the pod can read/write under /data.
However, directories that are NFSv4 referral junctions under the exported root (e.g. /data/nfs1, /data/nfs2) cannot be entered from inside the pod and return: No such file or directory.
The same export mounted natively on a Linux host using mount -t nfs4 correctly follows the referrals (entering /mnt/nfs/nfs1 and /mnt/nfs/nfs2 redirects to the backend servers and works).
What you expected to happen
When a volume is mounted by the CSI NFS driver from an NFSv4 proxy export, referral junctions under that export should be traversable from inside the pod just like they are with a native mount.nfs4.
How to reproduce it
There is one NFS proxy server (Linux kernel NFS server) which exports /nfs as the NFSv4 root export.
This proxy does not store data itself, but instead uses NFSv4 referrals to redirect clients to two backend NFS servers.
• NFS Proxy export (Linux kernel NFS server):
/nfs *(rw,fsid=0,no_subtree_check,no_root_squash,sec=sys)
• Create referrals:
nfsref add /nfs/nfs1 10.164.0.14 /nfs1
nfsref add /nfs/nfs2 10.164.0.15 /nfs2
• Sanity check on a VM (works):
mount -t nfs4 10.164.0.16:/ /mnt/nfs
ls /mnt/nfs/nfs1 # OK, redirected to backend 1
ls /mnt/nfs/nfs2 # OK, redirected to backend 2
Environment
- CSI Driver version: 4.11
- Kubernetes version: v1.30.14
- OS: Ubuntu 24.04