2008年04月08日 11:41 by ELF 上鍵

はじめまして、mogと申します。
NFSに関してご相談がありまして、トピックを立てさせていただきました。

NFSv4を用いて、今までのNFS環境を刷新しようと思い、
まずはベンチを取ろうとしているのですが、
NFSの転送速度が思ったよりも出ない、という問題を抱えております。
NFSの使用目的としては、学術計算の入出力で、
入力出力ともに10G〜100G程度の大きさのバイナリデータです。

HPCテクノロジーズのレポート
(http://www.hpc-technologies.co.jp/benchmarks-storage/fileserver-basictest-bonding-test.html)
に、NFSv4とBondingで書き込み100MB/sオーバーが出るとあるのですが、
どうやっても50MB/s程度しかでません。

カーネルやNFSのチューニング、ネットワークの構築、
その他、注意点やアドバイスなどありましたら、
教えていただけませんでしょうか?


状況を説明します。

2台の後述する構成のサーバを用意し、
片方をNFSサーバ、片方をNFSクライアントとし、
後述する設定でサーバを立ち上げ、クライアントから/mnt/nfsにマウントします。

クライアント側で
dd if=/dev/zero of=/mnt/nfs/50G.img bs=1M count=50k
で50GBのファイルをNFSサーバ上に作成し、そのときのddからの申告値をNFSの書き込み速度とします。
さらに、クライアント側で
dd if=/mnt/nfs/50G.img of=/dev/null bs=1M
で50GBのファイルをNFSサーバ上から読み出し、そのときのddからの申告値をNFSの読み込み速度とします。
(このベンチの仕方は http://www.linux.or.jp/JF/JFdocs/NFS-HOWTO/performance.html を参考にしています)

ネットワーク設定は、Intel PRO/1000 PT DualPortをBonding(mode=0)して、
Cat6のケーブルでノード間を直結。


実験用ハードウェア構成
HP ML115
CPU Opteron1216 2.4GhzDualCore
Mem PC2-5300 ECC nonReg 8GB
OS用HDD SATA 80GB 7200rpm
ベンチ用HDD SATA 250G 7200rpm
MAXTOR 6L250S0*3のRAID0構成

NFSサーバ設定
NFSv4実験時
/nfsroot 192.168.1.0/24(rw,async,fsid=0,no_subtree_check,no_root_squash)
NFSv3実験時
/nfsroot 192.168.1.0/24(rw,async,no_subtree_check,no_root_squash)

NFSクライアント設定
NFSv4実験時
192.168.1.1:/ /mnt/nfs nfs4 rw,rsize=32768,wsize=32768,hard,intr,bg 0 0
NFSv3実験時
192.168.1.1:/nfsroot /mnt/nfs nfs rw,rsize=32768,wsize=32768,hard,intr,bg 0 0


NFSサーバノードのローカルディスク性能
書き込み:160MB/s
(dd if=/dev/zero of=/nfsroot/50G.img bs=1M count=50k による)
読み込み:190MB/s
(dd if=/nfsroot/50G.img of=/dev/null bs=1M による)


OS
Centos5.1 x86_64
(2008年3/31での最新Update適用済み)


ノード間通信速度(netperf2.4.1にて計測)

bondingなし
940Mbps
bonding(mode=0)
1600Mbps

1: ショーイチ : 2008-04-08 11:54
50MB/sというあたりがなんかSATAのディスクI/Oがボトルネックに
なってますよって言ってるきがしますね
でもRAID0で速度が160とか190でてるんですよねー?
なんだろ、うちは普通に100近く(スイッチが100baseだったので97が限界)でましたけど
いちどtmpfsで実験してみては?それで速度出ればディスクI/Oまわりが遅い

話が思いっきりずれてたりしたらスンマセン
2: 口コミさん : 2008-04-08 12:07
う〜ん。。。nfsでマウントしてdd if/of で転送する方法より、rsync 転送のほうが早いと思ったんですが? nfs にしなければいけない理由ってあるんでしょうか
3: 口コミさん : 2008-04-08 12:54
早速のレスありがとうございます。

>ショーイチさん
最初、OS用としている80GBのHDDで読み書きしていたときは、
まさにここがボトルネックになっていたので、250GBのHDD3玉をRAID0構成で束ねて解決しました。
tmpfsというか、キャッシュに乗る程度の大きさのファイル(5GB程度)ならば
Bondingしなくても、読み書きともに120MB/sでていたりします。
問題は、対称的な構成でRAMの大きさが同じで、サーバ側のキャッシュに乗る大きさにすると、
クライアント側のキャッシュにものってしまうという。。。。

クライアントのRAMを削って実験すればいいのかな?(’’

>L0k!Xさん
その方法だとローカルのディスクに一時ファイルというか、いったん書き出す必要がありますよね。
計算ノードのHDDにそれほどの容量的余裕がないのです。

4: 口コミさん : 2008-04-08 13:55
swapが80GBの方に作成されている場合、そちらに引きずられそうな気がするのですけれど、その辺はどうなっているんでしょうか?
きっと試されているかと思いますが、noswapで起動した場合の速度はどうなります?
5: ショーイチ : 2008-04-08 22:16
学術計算だけにファイルサイズけたたましくでかかったんですねw (見落としてた
んー、僕の感覚では小さなこまごましたファイルの転送はおそく、大きなファイルの転送は早いというイメージでしたが、そこまで大きいとまた話が変わってくるんですね・・・

NFSのほうはチューニングされていて、ドライブ自体の書き込みも通常は早いとなると、やはりローカルのファイルシステムに引きずられてるか、もうメモリが足らないと考えたほうが良いかと思います。
あとチューニングするとなるとext3のブロックサイズかethのMTUくらいですかねー

なんともそんなに大きなファイルをあつかったことがないだけにあいまいなことを言ってしまってスミマセン
6: 口コミさん : 2008-04-09 07:00
確か、CentOS5.1 kernelのNFSパフォーマンスが悪いって話だったと思います。
Bug Tracker辺りを参照してみては如何でしょうか。
http://bugs.centos.org/view.php?id=2635
7: 口コミさん : 2008-04-09 07:06
お金があればの話ですが、interconnectをInfinityBandで接続しちゃうってのはどうでしょうか?

私の方はNFSだとパフォーマンスが良くないのでInfinityBand+Lustreファイルシステムにしています。


もっと金銭的に余裕があるのであれば、NFS捨てて、IBMのFAS+GFSとかHPのSFSとかも有りだと思います。

 
8: 口コミさん : 2008-04-10 04:23
皆さん、ありがとうございます。
いろいろと実験をしていたら遅くなってしまいました。

>来栖さん
noswapには考えがいたりませんでした!
ただ、freeで見てみる分には、ほぼswapは使われていないようです。

>ショーイチさん
NFSのチューニングは自信が無いのですが、
一応、マウントオプションとして、大きなrsize,wsizeをとるぐらいのことはしてみました。
ローカルのFSに引っ張られているのはあるかもしれません。50GBクラスになるとXFSのほうがいいのかな?
ethのMTUを弄る、というのはやってませんでした。

>Rayさん
なんと!ありがとうございます!

このスレッドで話題になっているのは、
2.6.18-53.1.4->2.6.18-53.1.6でNFSの挙動がおかしくなってるぜ!っていうことですよね?
スレッドの最後のcatselbowさんの書き込んでいる、
”そのパッチって現状どこにとりこまれてるの?”
に同感です(’’;
とりあえず、"hughesjr" kernelをつかって、実験してみます。

>ちほりん
InfinityBand!!!ぶ、ぶるじょあじー!
最近は10Gも普通にオプションに入ってきてますねー。Bondingすれば追いつくはず!w
L2SWはさっぱり見かけませんが。

Lusterはどうなんでしょう?GFSとともに非常に興味があるのですが。
あまり、資料を見かけないため、手を出せずいたりします。
なにか、良いチュートリアルなどありませんか?


>IBMのFAS+GFSとかHPのSFS
はあまり、そこにかけられるお金が潤沢ではないので。。。。;-(
9: 口コミさん : 2008-04-10 09:16
> ただ、freeで見てみる分には、ほぼswapは使われていないようです。
使用量よりは使用頻度が大事かと。
いや、まあ、思いつきですが。
10: 口コミさん : 2008-04-10 09:40
e1000ドライバ、rsize、wsize、ぢつはツボの値があったりします。大きくても、小さくても効率が悪くなったりします(^^;;。

NFSv4は、サーバー側の負荷が大きいですよね(^^;;。多数ノード構成だと、NFS鯖がヘヴィっす(T^T)。
infinibandは、PtoPならスイッチがいらないので、安く構築出来ますよ(^o^)。2ノード構成は、ぢつはかなりお勧めです(^o^)。

それから、Centまあ、Redhatでもそうなのですが、5.1は4.6より先にリリースされているので、ドライバ周り等の性能と安定性は4.6の方が良かったりします(^^;;。ものがIO周りなので、とってもありがちな気がします(^^;;。
11: 口コミさん : 2008-04-13 01:26
>来栖さん
なるほど。ちょっとnoswapつけて実験してきます!

>snowdogさん
ツボですか(’’
どの辺りがキクんでしょう?;-)

NFSv4のサーバ負荷は自分も気になっていました。
ふつうにloadが10とかになってしまって、あー、NFSサーバはほかの仕事させられないなーと。
一対一でそんな状況なので、多対一だと性能劣化が心配です。。。。。
やっぱり、クアッドコア*2とかが最低ラインなのでしょうか?(’’

infinibandって、一対一ならお安いのですか(’’
というか、infinibandのスイッチっていくらぐらいするのだろう。。。。
12: 口コミさん : 2008-04-13 01:46
ちょっと、実験が進んだので、ご報告を兼ねて相談させてください。

NFSv4サーバのあまりの負荷の大きさに、"これがボトルネック?"と思い、
サーバのスペックアップを行いました。

NFSv4サーバを
DELL PE1950III
CPU XeonL5310(1.6Ghz QuadCore) x2
Mem 32GB
HDD SATA 500GB 7200rpm *2 RAID0構成
Net Intel PRO/1000 PT DualPort
に変更したところ、(クライアントは変えず)

Write(without bonding) 70MB/s
Write(with bonding) 110MB/s

となりました。
これは非常に目標値に近い値です。
皆さんのおかげで到達できたことに感謝しております>w<


しかし、課題がもう一つ。
Readの速度が30MB/s程度で変わらないのです。

/etc/sysconfig/nfsのRPCNFSDCOUNTも16,32と増やしてみましたが、あまり劇的な変化は見られませんでした。

Diskからの直接読み込みは100MB/s程度でているので、Diskはボトルネックではないと思うのですが、
どうも、読み出すファイルの大きさを変えて実験をしていくと、
30GB以下の大きさのファイルならば、二度目の読み出しからは、100MB/s程度で読み出せているようなのです。

この現象は対象ファイルサイズが30GB→40GBでなくなるため、サーバ側のキャッシュの問題のような雰囲気です。

NFSの階層構造の中に、ディスクキャッシュ以外に、NFSのキャッシュみたいなものがあるのでしょうか?
また、そのNFSのキャッシュへの読み込みは低速なのでしょうか?

よろしく御願いいたします。
13: 口コミさん : 2008-04-13 01:56
今まで頂いたアドバイスに関して、12の結果がでるまでの実験を踏まえてのお返事を!

>ショーイチさん
クライアントが同スペックだったときは試しようの無かった問題が、
サーバのスペックアップで可能になりました。
tmpfsによる実験。ぜひやってみます。
MTUとかジャンボフレームとかもやっぱり効いてくるのかなー?

>L0k!Xさん
NFSサーバのあまりの負荷の大きさに、たしかに、ほかの手段を用いるべきか、、と悩み始めました。
プログラムからはローカルのFSと同じように扱えるのが非常に魅力的なのですが。。。

>来栖さん
noswap試してみます><

>Rayさん
"hughesjr" kernelsを導入してみたのですが、
あまり劇的な速度向上は認められませんでした。
ただ、Call数の変化に関しては、見落としていたため、また後で実験をしてみたいと思います。

>ちほりんさん
Lusterの情報をちょこちょこあさり始めました!
とりあえずNFSを片付けたらLusterとGFSのベンチをする予定です。
その際はまたよろしく御願いいたします><

>snowdogさん
Centos4.6の使用も考えたのですが、Centos5系でクラスタシステムの近代化を行うと、してしまったので、
ここは5.1で押していこうかと思います。
ご助言感謝します><

スレッド一覧

【求人】港区でのお仕事です【時給1700円以上】 【急募・東京】プログラマー&デザイナー Ubuntu11.10でバッファローNASLS-V2.0TLを使いたい crontabでcommandを5秒単位で指定する方法を教えてください メールサーバ、明日お昼まで受付。ご教示ください&疑問お答えします。sendmailをマスターしたい。 Linux Fedora Core4マニュアル USBメモリからブートする方法 MTA(ウィルス対策付き)のテスト方法について ICMP Destination host administratively 真剣に聞きたいのだが、Ubuntuの何が良いの? FMV-BIBLO LOOX P70でタッチパネル成功した方 OSのリストア syslog-ngってロストしますか? HDDから情報の救出。助けてください。 [Q] bdflushの設定値について 質問: egrepにおける正規表現の記述 inodeを増やす方法 セキュリティについて CDからの曲の取り込みとその管理、視聴 FedoraCoreファンの集い VMware Workstation v6.0の使い方 Ruby on Rails 現場ノウハウ講座(β) ネットをするための設定は?><) gcovとlcovについて。 教えてください。 RAIDが壊れたとき ffmpegをインストールしようとするとエラーが発生します。 無線Linux考 内部向けDNS設定 日本語がCUI画面で文字化けします。 「YouOS」というものについて Linuxが動くノートPCを教えてください HHKBの相性 情報源 サーバ構築時のソフトウェアインストール Ubuntuでネット How to? diffコマンドで,連続行の変更を1行ずつ取得する方法 ロシア、リナックス基盤に国産OS開発へ zenwalk linux 使っている人いますか? Linux Mint ネットブックで自宅サーバやってる方いませんか? 参加者を募集しています。 EeePC 4GのSDカードに linuxディストリビューションの種類・特徴・メリット・デメリットを教えてください アシスタント求人募集 fedoraネットワーク リモートデスクトップについて SLAX-6rc6の日本語化 シェルスクリプトを使ったsftp接続 中古のパソコンに入れるなら Mplayerのインストール ウィルス対策 vmwareにインストールしたCentOSをteratermで操作するやり方 ビジネスにおけるLinuxの未来をは・・・? Hackの内容、ご教授願いたい。 linuxっていろいろあるけど Windowsユーザーの初Linuxはどれが? NFS について パソコンの名前 Linux のための Google Earth はじめましてぇ〜! 「run-crons」について教えてください。 プリンター/スキャナー Linux でも動く mpeg4 H/Wキャプチャボックス はじめまして。 TUXくんグッズ デュアルモニター coLinux Linuxを使った便利システム XMMSって… Linuxデスクトップでウイルス HP のマルチユーザー PC LinuxWorld Expo/Tokyo 2004 Oracle Linux最強説 fedora 12にてインターフェースの設定 http://xx.xx/cgi-bin/x.prgでCGIプログラムを実行したい。 Couch DBの入門書 著者求む 【質問】 Ocsigen のインストール方法 画面に何も映らない。セーフモード Xenの管理OSでアプリケーションをの動かしてもいい? LPIC試験への道。 fedora7インストールについて Fedora8の設定について教えてください。 Quad Coreでのパフォーマンス 技術者を急募しています。 仕事。 Linuxで使うアプリは? 救ってください <質問>デスクトップでエラー ASUS M6R 740 NOTEBOOK に相応しいLINUX? linuxは重たい?>WinXP 初心者向け研修―Red Hat社のトレーニングってどうでしょう? パーティションを切る 今月のWindows系や自作DOS/V機系の雑誌にKNOPPIXのCDが付いてますね(^_^)。 自宅サーバが進入されました。 /dev/memって Xbox Linux fedoraがフリーズします for文について サーバエンジニア募集中! 新しいインターフェースが設定できない Slackware13.0のcifsでマウントしたファイルシステムの上でコンパイルしようとするとリンクに失敗する Linux の良さ おすすめ書籍を教えてください オープンソースの先駆けと対NDS宣戦布告 kernel hackに関する質問 #0x00 USBフラシュメモリーにLiveCDのLinuxを入れて持ち運ぶ rootからuserに戻る方法? Linux 標準バンドルされている 暗号化ライブラリを教えてください linuxとwindowsの狭間で 京都Linux友の会 linuxで1を変数01に変更して変数に格納する方法について。 モジュールとドライバの違いは? SSLの設定方法について Knoppixをインストールしたい。 漢字をかな変換するコマンド 【ノートPCで】タッチパッドが動かない!!HP 500 Notebook PC【LINUXを稼動♪】 usermodなどの使い方を教えてください。 ファイル特定の文字の出力方法に関して。 UbuntuでのWLI-U2-KG54使用について PlayStation Linux Users Group(PSLUG) のコミュニティを立ち上げました。 linux超初心者です。 time 複数コマンド 無線LAN環境は? おしえてください Linuxはじめてみようと思ってます。 一番、サーバーに向いているディストリってなんですかね? LINUX関連の本、サイト さしあげます パーミッション、所有者のバックアップ Linuxルータ オープニングパーティはいつですか? Kobo Touch と、その拡張性について質問 はじめまして 红旗 Linux 。。。???  会社や学校で使っている環境は? リスク管理 【求人】 Linuxサーバ・ネットワーク管理者急募! NFSで " No such file or directory"が発生する メモリー128MBのノートパソコンにでインターネットに接続したい。 どーすれば!? [Q]Canon LBP5100を使う WebSphere Application Server のインストール方法 複数台のNFSサーバーを自動的にマウントしてくれるソフトウェアってありますか? delegate 無線LAN(bcm43xx)使えたのに災難?ログの山 mysqlのインストールについて。 linuxをyahooBBでインターネットをするには? IDE Microsoft と Novell の提携 Fedora Core5 「コミュニティ利用で気をつけてほしいこと」を掲載しました 初歩的な事なのでしょうが apache LinuxとEMT64 スクリーンセーバ 自宅鯖に使えるUPS デュアル CPU の功罪 Open Source Conferlence 2004 SELinux勉強会(4/17・渋谷) Cloud話よろず Cron Jobが実行されない 初心者用のくだらない質問トピック #3 mozc(モズク)コミュ作成しました sk_buffのh.rawって何を表していますか? DNS 皆さんは日本語入力メソッドに何使っていますか? shell作成で悩み あるユーザだけ作成できても、SSH/FTP/SFTPできない。 vsftpd topについて apacheが起動しているか確認するコマンドについて sshをパスワードなしでログインする おすすめの本ってありますか? SUSEについて 初心者用のくだらない質問トピック WEBカメラを設定しWebで公開したい rootで入れないみたいです。。 Libretto L1にturbolinuxFUJIをインストしたい NFSサーバーでCommitted_ASが日に日に増えていく smtpfeedの設定 Linuxで無線LANを使いたい TIPS 大量のファイルを保存するNFSサーバーに最適なファイルシステム Linuxリモートインスト無償配布 Grubについて教えてください。 zxLinux 苦労人志向 インストール時の設定 gentoo powerPCG4へLinuxのインストールについて質問 Open sourceについて。。。。 HDDベンチマーク 輸入ノート売ってるような店 音ユースにグッドなLinux向けノートって? mountする方法 クールに冷えるCrusoe! なサーバー on Linux REVOLUTION OS Linux World C&D/Tokyo 2004 レポート 5/4 『Linux ユーザーグループ北陸 勉強会』のご案内 初心者用のくだらない質問トピック #4 Linux デスクトップの普及#2 LPIC CentOSでのVASPのビルドについての質問。 TurboLinux 11Server SVNのインストール TurboLinux 11 Server (Musasabi) で PostgreSQL 教えてください openssl remove.....復旧 暗号化DVDの作成方法 Linuxトラブル・・・ ブート時:TUX君の数? 課題投稿 オリジナルディストリの作り方をご存じの方ご教授願います ブートLinuxでVistaの修復の仕方は? 読まれている雑誌 Linuxを前提としたパソコン購入 アナログビデオが一杯 愛用のLinuxは? 質問です。 Active Sync Linux Ubuntuのフリーズについて PC版i386vineをインストールしてサーバ運用したいです。 グラフィックボードが合わない件について ネットワークについて 教えてください UW-IMAPの情報・・ XglとAIGLXって凄そう!試した? Linuxを使う理由 アドレスにアンダーバーがあるとsendmailがメールを送れない? WinXPとのデュアルブート tarの脆弱性 Linuxをwebサーバとして利用する際のハードのスペック 【質問】 デュアルブート環境下で同時起動 kernel-2.6.13.X でのリブート LW2005 Virtual PC 2004上でFedora Core 3は動くの?? UNIXとの違いって? 初めまして NFS Mountの設定ヘルプ - Fedora 16 Pidginのプラグイン作成方法について (TωT)パソコンの選び方?? TeraTermでデータベースをみる方法 インストールについてです おすすめのセミナー 初心者用のくだらない質問トピック #2 B フレッツ インターネットの接続方法がわかりません slewモード LinuxとFOMA a2502k… Linuxのすばらしさ Linuxを何に使ってますか? 【質問】FlowScan をインストールしたい You tube downloder for Ubuntu NFSのチューニングについて USBフラッシュメモリ usb接続HDを2つ接続したときのデバイスファイルの固定について netscapeを使えるようにしたい。 OS選択の悩み:Windowsは必要か? マルチコアCPUに最適化されたLinuxはありますか? 統合開発環境ってありますか? LPICレベル1最新書籍情報について lsコマンドでワイルドカードが効きません。 一番軽いGUI環境 Novell xgl Linuxが使えるネットワークエンジニアとは? Linux 派国会議員 x-windowログ 私がお勧めするLinux便利機能! Windows用無線LANカード Linuxを使いはじめた時”すげー”と思ったところ nfsrootでpam失敗? Linux始めるなら もっとも安価で電気代の安いサーバ Yellow Dog Linux 【愛知、常駐プログラマ募集】 [Q]GPLの解釈について(ソース開示の必要性) Linux デスクトップはこんな感じです! gvでpdfを表示する方法 日本でVPS (英語 - English) ロードアベレージ CPUの可能性 ご教示下さい DellからLinuxプレインストールマシン発売 fedora9日本語入力メソッドのインストールに悪戦苦闘中です。 おすすめを問います。 samba共有ファイルの更新日時について LPIC試験勉強に最適なディストリビューションを教えてください。 CPUの増設方法 PDFファイル上で動画再生 Linuxのコマンドで 監視ツールの導入・運用 MacintoshにLinuxを入れたい SATAの対応は? Linus Torvalds、Macにスイッチ! GNOME vs KDE 皮を剥いで見る?!。 タブレットの設定変更について ☆教えて☆Linuxをマスターしたい Linux/Unixの経験を活かして海外で働きませんか? 急成長中のベンチャー企業で働いてみたいとおもいませんか?! 探してます Linux デスクトップの普及 ■お仕事(=転職)案件のご相談です■ 問題集につきまして Linuxのあるべき姿と今後の未来像 SSH鍵認証 Lpicレベル1の講習 教えてください git Turbolinux Fuji install 弐萬圓PC堂? Powered by Linux ファイルシステムについて 転職希望者の方!! suidについて MXレコードの解決ができず、メールが外部から送受信できません。。 CentOS5.2+openssh5.0pでchrootできる?? sendmailのaliasについて Linus さんち eth0、eth1の呼び方 教えてください。 Squidで/etc/hostsの定義で自分自身を指定した場合 教えてくださいFlashplayerのPlug-inの方法を くだらない質問かもしれませんが… ez-ipupdate-3.0.11b7のインストールがうまくいきません maildropの入門書 kernel panic でサーバが止まってます。 f77 ご教授お願いします。 CentOS vs Fedora Core 初めまして 外付けHDD 質問 rpm パッケージの分解 Hadoopのクラスタ化について Hadoopについて pidからstatusを得るAPIって有りますか? ●格安IT塾開校★講師は東大卒! オープンソースOSのTorrentサイトを公開しました。

サイト内検索