web-dev-qa-db-ja.com

ギガビットLANでNFSのパフォーマンスを向上させるにはどうすればよいですか?

ギガビットLAN上にMacOSXクライアントを備えたSolaris10サーバーがあります。 SolarisサーバーはRAID-ZでバックアップされたNFS共有をエクスポートし、すべてのクライアントがそれに接続します。ただし、ファイルの転送は私が思っているよりも遅いです。ジャンボフレームを有効にすると、最大スループットが18MB /秒から30MB /秒に増加しましたが、それでも思ったよりも遅いです。現在のボトルネックは私のスイッチだと思います。これは、私のマシンが送信できる1秒あたりのパケット数を切り替えることができないようです。また、両方のマシンは転送に約30〜40%のCPUを使用します。

予定しているスイッチの交換以外に、CPU使用率を下げてスループットを上げるにはどうすればよいですか?

2
Amok

いくつかのこと:

  • スイッチに問題があるかどうかを判断するには、スイッチを方程式から外してテストします。マシンを背中合わせに接続して、もう一度テストします。 GigEカードは自動的に相互接続します。特別なケーブルは必要ありません。

  • その後、NFSチューニングは少しブラックアートになります。私が見たところ、それはNFSサーバーと時にはNFSクライアントに非常に固有である傾向があります。幸いなことに、グーグルはこの主題に関する多くの論文を持っているようです。たくさん読んでください。

3
kbyrd

いくつかのヒント:

  • sMB/CIFSを介してサーバーをマウントし、どのようなパフォーマンスが得られるかを確認してください
  • ttcpまたはiperfを使用してテストを実行し、クライアントからサーバーまでのネットワーク帯域幅がどのようなものかを確認してください

OS X NFSは、私たちの経験では素晴らしいものではありません(OS Xクライアント、Linuxサーバー)。 sambaを使用することでパフォーマンスが向上します。 YMMV!

2
James