NFSv4 zugriff seeeehr langsam

10/01/2013 - 02:28 von Alexander Blinne | Report spam
Hallo zusammen,

ich google jetzt schon seit Stunden und weiß nicht mehr weiter. Ich habe
einen neuen NFS-Server aufgesetzt. Archlinux installiert, mdadm-raid und
lvm eingerichtet, Dateisystem ist xfs.
Probleme treten beim Schreiben oder lesen großer Dateien über NFS auf
(hier in der Regel getestet mit Dateien über 2 GB).
Lokales schreiben mit > 120 MB/s, per FTP gehen über das Gigabit-LAN
knapp 90 MB/s also ist grundsàtzlich wohl alles in Ordnung.
NFS geht aber ziemlich in den Keller. Die Übertragungsrate schwankt
immer sehr stark, geht hoch auf über 100MB/s für ein paar Sekunden, dann
bleibt der Transfer wieder fast stehen. Im Schnitt bleiben 30 MB/s
übrig, manchmal geht aber auch gar nix mehr, dann geht die Rate immer
weiter runter bis nur noch wenige kB/s übrig sind, machmal pegelt es
sich auch im Bereich von 10MB/s ein.
Weder irgendwelche Festplatten, noch irgendwelche CPUs noch die NICs
sind dabei ausgelastet, trotzdem geht es nicht schneller.
Bricht man eine Übertragung ab, dauert es noch eine ganze Weile bis alle
Operationen auch wirklich fertig sind (Minuten) bevor umount ausgeführt
werden kann.

Ich habe mit rsize/wsize experimentiert noch und nöcher und habe sonst
aber nicht viel gefunden, was das Problem sein könnte. Das meiste passt
einfach nicht auf meinen Fall, ich habe z.B. (bisher) nur einen Client
und greife nur auf eine einzige Datei zu. Autonegotiation wird auch als
möglicher Auslöser genannt, ethtool sagt aber durchgàngig
1000mbit/Fullduplex sowohl am server als auch am client. Daran liegts
aber wohl sicher nicht, denn ftp klappt ja.

Server: Archlinux, alle Pakete aktuell, nfs-utils 1.2.6-3
Client: Kubuntu 12.04.1 LTS, nfs-common 1.2.5-3ubuntu3.1

Eine seltsame Beobachtung gibt es noch, für die ich keine Erklàrung
finden konnte: Die hohe Zahl im Feld "authrefrsh" von nfsstat:

<02:17:35> alex@firefly:/$ nfsstat
Server rpc stats:
calls badcalls badclnt badauth xdrcall
0 0 0 0 0

Client rpc stats:
calls retrans authrefrsh
2337498 0 2337519

Client nfs v4:
null read write commit open open_conf
0 0% 359125 15% 1975013 84% 440 0% 73 0% 55 0%
open_noat open_dgrd close setattr fsinfo renew
0 0% 0 0% 57 0% 45 0% 232 0% 48 0%
setclntid confirm lock lockt locku access
29 0% 29 0% 0 0% 0 0% 0 0% 225 0%
getattr lookup lookup_root remove rename link
737 0% 326 0% 119 0% 16 0% 2 0% 0 0%
symlink create pathconf statfs readlink readdir
0 0% 0 0% 130 0% 130 0% 0 0% 38 0%
server_cap delegretur getacl setacl fs_locatio rel_lkowner
510 0% 1 0% 0 0% 0 0% 0 0% 0 0%
secinfo exchange_i create_ses destroy_se sequence get_lease_t
0 0% 0 0% 0 0% 0 0% 0 0% 0 0%
reclaim_co layoutget getdevinfo layoutcomm layoutretu getdevlist
0 0% 0 0% 0 0% 0 0% 0 0% 0 0%
(null)
0 0%

(Manche Schlüsselwörter leicht gekürzt um das Tabellenlayout
wiederherzustellen)

Ich hoffe auf ein Licht am Ende des Tunnels :)

Grüße
Alexander Blinne
 

Lesen sie die antworten

#1 Marcel Müller
11/01/2013 - 19:33 | Warnen spam
Hallo,

On 10.01.13 02.28, Alexander Blinne wrote:
Lokales schreiben mit> 120 MB/s, per FTP gehen über das Gigabit-LAN
knapp 90 MB/s also ist grundsàtzlich wohl alles in Ordnung.
NFS geht aber ziemlich in den Keller. Die Übertragungsrate schwankt
immer sehr stark, geht hoch auf über 100MB/s für ein paar Sekunden, dann
bleibt der Transfer wieder fast stehen. Im Schnitt bleiben 30 MB/s
übrig, manchmal geht aber auch gar nix mehr, dann geht die Rate immer
weiter runter bis nur noch wenige kB/s übrig sind, machmal pegelt es
sich auch im Bereich von 10MB/s ein.



Wie geht es denn deinem Netzwerk. Paketverluste oder Retries unter Last?

Weder irgendwelche Festplatten, noch irgendwelche CPUs noch die NICs
sind dabei ausgelastet, trotzdem geht es nicht schneller.



Wie gemessen, vor allem bei den Platten?

Bricht man eine Übertragung ab, dauert es noch eine ganze Weile bis alle
Operationen auch wirklich fertig sind (Minuten) bevor umount ausgeführt
werden kann.



Worauf bezieht sich das umount? xfs oder nfs4?

Eine seltsame Beobachtung gibt es noch, für die ich keine Erklàrung
finden konnte: Die hohe Zahl im Feld "authrefrsh" von nfsstat:



Das ist in der tat relevant. Google mal danach. Da lacht mich gleich ein
Bug an.


Marcel

Ähnliche fragen