Bonjour à tous,
J’ai un gros soucis de débit extrêmement faible avec NFS.
Pour les tests, le serveur et le client sont sur le même réseau local et tous les deux utilisent NFSv4 sous debian 10 buster.
Un test hors NFS en utilisant netcat me donne un débit de 98,8MiB/s (soit environ 828,8 Mbps/s) :
- sur le serveur :
$ nc -l -p 1234 > test.data
- sur le client :
$ pv image.iso | nc serveur 1234 -w10
1,11GiO 0:00:11 [98,8MiB/s] [=======================================>] 100%
Maintenant, en utilisant NFS par l’intermédiaire d’une redirection de sortie standard, le débit tombe à 5,60MiB/s et encore en forcant le buffer de données à 16 MB !!! Sans forcer le buffer, je tombe encore plus bas à 1,65MiB/s.
- Sur le client :
pv -B 64M image.iso > /mnt/data.test
1,11GiO 0:03:23 [5,60MiB/s] [========================================>] 100%
Dans le premier cas, le transfert des 1,2 GO s’effectue en 11 secondes !!!
Dans le deuxième cas, le transfert prend plus de 3 minutes !!!
Voici ma configuration sur le serveur :
/etc/default/nfs-common
NEED_STATD="no"
STATDOPTS=
NEED_IDMAPD="yes"
NEED_GSSD="no"
/etc/default/nfs-kernel-server
NEED_STATD="no"
NEED_IDMAPD="yes"
NEED_GSSD="no"
RPCNFSDCOUNT=4
RPCNFSDPRIORITY=0
RPCNFSDOPTS="-N 2 -N 3"
RPCMOUNTDOPTS="--manage-gids -N2 -N3"
NEED_SVCGSSD="no"
RPCSVCGSSDOPTS=""
/etc/exports
/data CLIENT(rw,sync,no_root_squash,no_subtree_check)
Voici ma configuration sur le client :
/etc/fstab
[...]
SERVEUR:/data /mnt nfs4 noauto,user,sync,tcp 0 0
et le montage du partage NFS sur le client :
$ mount -vvvv /mnt
mount.nfs4: timeout set for Mon Aug 17 18:23:26 2020
mount.nfs4: trying text-based options 'tcp,vers=4.2,addr=192.168.0.1,clientaddr=192.168.0.6'
Savez-vous comment on peut optimiser le débit NFS ?
Merci à vous.