Ceci est une ancienne révision du document !


Tuning de performance NFS

Je n'ai pas la prétention d'être exhaustif, je vais juste détailler les solutions que j'ai validé.

Options de montage coté client

  • Ajouter les options noatime et nodiratime pour ne pas que le serveur n'ait à modifier (donc écrire) les dates d’accès respectivement aux fichier/répertoires pour chaque accès en lecture effectué.
  • Modifier les tailles de rsize et wsize qui spécifient le nombre d'octets de données que le client et le serveur s'échangent pour les requêtes de lecture/écriture. Ces valeurs doivent être multiples de 1024 et la valeur optimale dépendra de votre utilisation. Je suis passé de 8192 a 32768.

Les options de montage coté client sont donc maintenant (montage NFSv3):

rw,hard,intr,nodev,exec,nosuid,rsize=32768,wsize=32768,noatime,nodiratime,vers=3
certains auront remarqué l'utilisation de intr qui est obsolète sur les noyaux supérieurs au 2.6.25

Augmentation de la MTU

Ayant la chance d'avoir un réseau séparé pour ces transferts NFS j'ai pu augmenter la MTU : passage de la valeur par défaut 1500 a 7200. Pourquoi 7200 ? et bien juste parce que c'est la valeur maximale permise par l'une des cartes réseau sous linux :'(

Pour modifier la MTU temporairement, en remplaçant bien sur eth0 par le nom de votre carte :

ifconfig eth0 mtu 7200

Pour que cette modification persiste au redémarrage, ajouter une ligne “mtu 7200” dans le fichier /etc/network/interfaces dans la section de votre carte, comme dans l'exemple ci dessous :

[...]
auto eth3
iface eth3 inet static
        address         192.168.2.1
        netmask         255.255.255.0
        network         192.168.2.0
        broadcast       192.168.2.255
        mtu             7200
[...]
  • Il faudra que la MTU de chacune des machines d'un même réseau soit la même : il faut donc la changer sur chacune des machines ou sur aucune
  • Il faut que le switch du réseau soit capable de gérer des MTU supérieures a 1500 ( “jumbo frames” ) : les switchs recents supportent souvent jusqu'a 9000</note>
sysadmin/tuning_nfs.1395663251.txt.gz · Dernière modification: 2014/03/24 13:14 par james
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0