I've got a server with several directories shared in exports. One of these exported directories holds home directories, others hold some random data. Is it possible somehow to prioritize i/o coming from network clients to "home" share over the i/o coming to other exports on the server? Now when there is heavy i/o on the "data" shares the "home" share becomes less responsive, and I want the "home" requests always have priority over all other NFS exported paths.
So, taken into account my further trouble shooting.
Upgrade to 10G ethernet, or Multiple 10G ethernet links, using Adapter teaming to get increased bandwidth between server and clients.
Install 1G adapters in NFS server, again team then together for increased bandwidth
Investigate Jumbo packet sizes and optimise NFS Maximum packet sizes.
collect performance information with nfsstat
Break server into two NFS servers (physical or virtual) (home and data) , Do Network QOS based on server ip address.
It has idea's to build a clusters for both load balancing and fault tolerance. It increase the complexity , but you'll be able to keep adding bandwidth as long as you've got the network backbone to cope :-)
I don't think there is a way to do any type of QOS based on NFS,