Langsames NFS bei Diskless-Client

  • Ich hatte bis vor kurzem ein Problem mit meinem Diskless vdr-client.
    Das Schreiben in der Root-Partition war grotten-schlecht.
    Beispiel:

    Code
    bodega1 ~ # dd if=/dev/zero of=yy.out bs=256k count=256
    256+0 records in
    256+0 records out
    67108864 bytes (67 MB) copied, 96.6173 s, 695 kB/s


    Im Video-Verzeichnis sieht es schon besser aus:

    Code
    bodega1 net_data # dd if=/dev/zero of=yy.out bs=256k count=256
    256+0 records in
    256+0 records out
    67108864 bytes (67 MB) copied, 2.68432 s, 25.0 MB/s


    Die Ursache war wohl, das der Client im Root-NFS nur NFS-V2 gemacht hat. Gesehen habe ich das mit "nfsstat". Wenn da also irgentwelche Angaben in der Rubrik V2 sind, gibt es ein Problem.

    Code
    Client nfs v2:
    null       getattr    setattr    root       lookup     readlink
    0       0% 0       0% 0       0% 0       0% 0       0% 0       0%
    read       wrcache    write      create     remove     rename
    0       0% 0       0% 0       0% 0       0% 0       0% 0       0%
    link       symlink    mkdir      rmdir      readdir    fsstat
    0       0% 0       0% 0       0% 0       0% 0       0% 0       0%


    Behoben hab ich das mit der Ergänzung v3 in der Entsprechenden pxelinux.cfg/xy Datei des clients:

    Code
    nfsroot=server.ip.add.res:/netboot/netroot/client.ip.add.res,v3


    Stefan Lucke

  • ...und dann empfehlen sich noch die Optionen

    Code
    rsize=8192,wsize=8192

    .
    Und je nach darunterliegender Hardware (RAID, LVM) kann man mit den entsprechenden mke2fs-optionen beim Bauen des Dateisystems noch einiges rausholen.

    Glotze: yaVDR (ASRock Q1900M, 4GB RAM, DD Cine S2 V6.5, ZOTAC GT630 (Rev. 2)
    Server: HP ProLiant MicroServer G8, VMware ESXi 5.5 :P

  • Zitat

    Original von knebb
    ...und dann empfehlen sich noch die Optionen

    Code
    rsize=8192,wsize=8192

    .
    Und je nach darunterliegender Hardware (RAID, LVM) kann man mit den entsprechenden mke2fs-optionen beim Bauen des Dateisystems noch einiges rausholen.


    Geht das auch im Kernel-Command-Line-Parameter "nfsroot= .. " ?
    Video ist zumindest auch mit rsize,wsize gemounted.
    Nach der NFS-V3 Änderung war rootfs dd bei ca. 13MB/s hab aber aktuell keine genauen Zahlen zur Hand.
    Server-Filesystem ist Reiser on LVM.


    Stefan

  • Zitat

    Original von stl
    Die Ursache war wohl, das der Client im Root-NFS nur NFS-V2 gemacht hat.


    mich hat es jetzt auch interessiert, da ich seit kurzem auf diskless umgestellt habe. Bei mir ist auf Server- und Clientseite laut 'nfsstat' nur V2 aktiv. Das '/-Filesystem' mounte ich mit


    Code
    defaults,hard,intr,rsize=65536,wsize=65536


    Die Performance scheint bei mir nur durch das Netzwerk begrenzt zu werden:


    Code
    2634 root@senita[/tmp] > dd if=/dev/zero of=yy.out bs=256k count=256
    256+0 records in
    256+0 records out
    67108864 bytes transferred in 5.898803 seconds (11376692 bytes/sec)


    seltsamerweise kann ich an den 'rsize=,wsize=' Parametern drehen, ohne dass sich an der Performance was gross aendert. Vielleicht muessten wir mal unsere '.config' vergleichen, ob es an irgendwelchen Kernel-Optionen liegt. Z.B. an so Dingen wie 'CONFIG_HZ_1000='.


    Zitat

    Geht das auch im Kernel-Command-Line-Parameter "nfsroot= .. " ?


    wichtiger ist aber, einen entsprechenden Eintrag in der '/etc/fstab' zu haben. Die Performance bis zum 'pivot_root' ist ja nicht so entscheidend.


    [EDIT]ich habe mal zum Vergleich meine aktuelle '.config' attached. Sie wird von Server und Client gleichermassen verwendet. Initrd benutze ich nicht. [/EDIT]

  • Zitat

    Original von stl
    Behoben hab ich das mit der Ergänzung v3 in der Entsprechenden pxelinux.cfg/xy Datei des clients:

    Code
    nfsroot=server.ip.add.res:/netboot/netroot/client.ip.add.res,v3


    Danke, guter Tip. Ich habe ihn mal in das "[HOWTO] VDR Client via Netz per NFS booten" aufgenommen.


    Zitat

    seltsamerweise kann ich an den 'rsize=,wsize=' Parametern drehen, ohne dass sich an der Performance was gross aendert.


    Bei den letzten Tests (mit 2.6.20) konnte ich dies auch feststellen. Ansonsten ist die Performance
    bei Dir doch ok, da Du, wie schon selbst bemerkt, durch das 100MBit Netzwerk "gebremst" wirst.


    Hier mal das Ergebnis des letzten Tests:

  • Zitat

    Original von kilroy
    bei Dir doch ok, da Du, wie schon selbst bemerkt, durch das 100MBit Netzwerk "gebremst" wirst.


    ja klar, ich bin mit meinem Setup + Performance ganz zufrieden. Mir ging es eigentlich mehr darum festzustellen, dass die fehlende V3 NFS Option offenbar nicht (alleine) Ursache fuer die niedrige Performance bei stl ist. Sonst muesste ich ja die gleichen Probleme haben. Da spielt noch irgendwas anderes mit rein.

  • Yup, Gründe für langsames NFS gibt es wohl einige. Optimizing NFS Performance ist zwar
    schon etwas älter, beschreibt aber einige Schrauben, an denen man drehen kann.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!