0

nfsを使用してマウントするgentooディスクレスクライアントがありますが、nfsのスループットが遅いようです。iperfは770Mb/ sをプッシュできるネットワークを示し、hdparmは90 Mb / sでサーバー上のsataディスクを示しますが、ネットワーク全体でddを実行すると、10 Mb / sとしてのみ表示されます(同じテストがサーバー上で3番目のマシンに対して実行されます)。

奇妙なことに、pxebootはnfsver2をマウントします。これが問題であるかどうかはわかりませんが、ブートマウント後にnfsver3として他のマウントが行われます。本当にどこかでnfsの設定の問題のようですが、違いを生むものは何も見つかりませんでした。rsize = 8k、wsize = 8k、noatime、asyncを実行します。誰かが探すためのヒントがありますか、それともこの10 Mb / sは本当にディスクレスクライアントに期待すべきスループットですか?

4

2 に答える 2

0

これは私たちが話しているギガビットネットワークだと思います。100Mビットネットワークの最大容量は1秒あたり約10メガバイトです。

NFSはいくつかの点であまり効率的ではありませんが、それでもバルク転送はワイヤの速度で実行できるはずです。同じネットワーク上で、たとえばftpやhttpを介してファイルを転送する速度はどれくらいですか?

スイッチの速度が遅くなっている可能性がありますが、ケーブルを使用してボックスを直接相互に接続してみましたか?

于 2009-08-07T06:48:12.227 に答える
0

修正が何であったか興味深い。pxelinux nfsルートをマウントするときは、(fstabではなく)pxelinux.cfgファイルでnfsパラメーターを設定する必要があります。nfsルートパーティションをnfsver3に設定すると、tcpでパフォーマンスが向上しました。ただし、実際に違いが生じたのは、pxelinux構成ファイルとfstabの両方でrsizeパラメーターとwsizeパラメーターを削除し、nfsにブロックサイズを認識させることでした。これにより、nfsの読み取り/書き込みが期待どおりに実行されます。これが私の設定と、他の誰かに役立つ場合のいくつかのメトリックです。


one ~ # nfsstat -m
/ from /dev/root
 Flags: rw,vers=3,rsize=4096,wsize=4096,namlen=255,hard,nointr,nolock,proto=tcp,
timeo=600,retrans=2,sec=sys,addr=192.168.0.5

/store/tv from 192.168.99.99:/store/tv
 Flags: rw,noatime,vers=3,rsize=524288,wsize=524288,namlen=255,hard,nointr,noloc
k,proto=tcp,timeo=600,retrans=2,sec=sys,mountaddr=192.168.99.99,mountvers=3,mountp
roto=tcp,addr=192.168.99.99

one ~ # time dd if=/dev/null of=/store/tv/test bs=16k count=10000
10000+0 records in
10000+0 records out
163840000 bytes (164 MB) copied, 2.79913 s, 58.5 MB/s

real    0m3.048s
user    0m0.033s
sys     0m1.983s

one pxelinux.cfg # time dd if=/store/tv/test of=/dev/null bs=16k
154614+1 records in
154614+1 records out
2533208064 bytes (2.5 GB) copied, 56.4591 s, 44.9 MB/s

real    0m56.509s
user    0m0.163s
sys     0m26.802s
于 2009-08-07T16:31:55.650 に答える