adrianstephens
Cadet
- Joined
- Oct 28, 2022
- Messages
- 1
I see this question was asked 5 years ago, without a positive outcome.
I have TrueNas Scale (latest). I have a pool on spinning rust, which is mounted by a bunch of nfs clients.
I needed to improve performance, so I added some NVME memory, create a new faster pool from these and moved my
critical dataset to this pool.
BUT ...
Because the NFS export includes the pool name, I now have to go and edit files on multiple clients.
Oh, and I just up/downed some docker containers on a different server and discovered yet more references to the pool name.
My experience in software engineering tells me that requiring the NFS clients to know the name of the pool (embedded in the exported mount point)
is a bad idea, because it creates a dependency that should not exist.
I'd be prepared to put some effort into resolving this, such as creating mount points under /mnt and "mount --bind" the zfs mount directory to this directory.
I think NFS would be totally cool with this. It would probably also be cool with just a symbolic link.
BUT ...
The NFS share middleware restricts the shared directory to be a zfs mount point. It goes out of its way to prevent me doing what is entirely reasonable
in order to avoid the problem I've described.
I might get "it's all NFS's fault", "it's meant to work like this", "everybody else has no problem with this, so why should you" responses.
But this restriction is IMHO unreasonable and has been complained about with no fix, and those are non-reasons, IMHO.
I have TrueNas Scale (latest). I have a pool on spinning rust, which is mounted by a bunch of nfs clients.
I needed to improve performance, so I added some NVME memory, create a new faster pool from these and moved my
critical dataset to this pool.
BUT ...
Because the NFS export includes the pool name, I now have to go and edit files on multiple clients.
Oh, and I just up/downed some docker containers on a different server and discovered yet more references to the pool name.
My experience in software engineering tells me that requiring the NFS clients to know the name of the pool (embedded in the exported mount point)
is a bad idea, because it creates a dependency that should not exist.
I'd be prepared to put some effort into resolving this, such as creating mount points under /mnt and "mount --bind" the zfs mount directory to this directory.
I think NFS would be totally cool with this. It would probably also be cool with just a symbolic link.
BUT ...
The NFS share middleware restricts the shared directory to be a zfs mount point. It goes out of its way to prevent me doing what is entirely reasonable
in order to avoid the problem I've described.
I might get "it's all NFS's fault", "it's meant to work like this", "everybody else has no problem with this, so why should you" responses.
But this restriction is IMHO unreasonable and has been complained about with no fix, and those are non-reasons, IMHO.