Pouziti parametru noac u nfs

Dan Ohnesorg Dan na feld.cvut.cz
Pátek Leden 13 11:37:22 CET 2006


Zdravim,

resime s kolegy problem, se kterym si nevime dvakrat rady, kolega to pekne
zformuloval, takze ten jen prepastuju:

Řešíme tu výkon NFS a jsme ve fázi, kdy při mountování s parametrem noac
dosahujeme na gigovém ethernetu pouze 10 MB/s. Podle nfsstat má getattr u
serveru 98 % a u klienta 44 % (zbytek téměř celý připadá na write). Vypnutím
noac se situace dramaticky zlepší.

Otázka ovšem zní, jestli noac lze nebo nelze bezpečně vypnout? Známe totiž
jeden starší případ z praxe, kdy docházelo na NFS k docela podivným věcem -
konkrétně k smíchání obsahu dvou souborů, případně k jejich zkracování na
nulovou délku. Bohužel se tehdy nepodařilo s jistotou zjistit, kde je
příčina (navíc to delší dobu fungovalo dobře a najednou se to takhle zvrtlo)
a nepovedlo se to ani nijak "laboratorně" nasimulovat, ale je jisté, že
přidání noac to vyřešilo beze zbytku.

V tomto konkrétním případě by na jeden export měl jeden NFS klient zapisovat
a druhý z něj pouze číst. Rychlost je pro nás důležitá, ale spolehlivost
ještě více. Server je komerční diskové pole, na němž coby firmware běží v
této chvíli Linux s jádrem 2.4.

jeste bych doplnil, ze to diskove pole je po demontazi v zasade bezne PC s
12 portovym SATA radicem 3ware, bezi na nem jadro 2.4.25, pouziva se tam HW
raid radice, ne soft raid jadra.

Druhy system, kde se nicily soubory bylo uplne bezne PC s jadrem asi 2.4.19
(v te dobe aktualnim) a SCSI diskem. Nidky jsme nezaznamenali problemy se
stabilitou (ze by byla vadna pamet, prehrival se procesor nebo tak neco), k
poskozeni souboru doslo za plneho behu bez zaznamu v dmesg nebo jinych
negativnich projevu.

Vim ze na gigovem ethernetu se nesmi pouzivat nfs pres udp, ale toto ten
pripad neni, navic starsi system na gigove siti nebyl nikdy a novejsi mel
problemy i v dobe, kdy se pouzival 100M switch. Systemy krome problemu
nemely nic spolecneho, bezely na ruznych hostingovych centrech s uplne
jinymi aplikacemi.


zdravim
dan


Další informace o konferenci Linux