[samba-jp:20257] Re: NFSマウントしたところをSambaで共有して使うと非常に遅くなりました。

Kenichi Okuyama okuyamak @ dd.iij4u.or.jp
2008年 7月 5日 (土) 03:12:15 JST


奥山です。

>>>>> "k" == kondo  <nobuaki3.kondo @ toshiba.co.jp> writes:
k> SANSERVER側の/etc/exportsのオプションは、rw,no_root_squash,syncです。
k> SERVER001側でのNFSマウントは、以下のようにしました。
k> mount -t nfs -o nosuid,rsize=8192,wsize=8192 SANSERVERのIP:マウント元 マウント先
k> ※rsize=16384,wsize=16384でも症状は同じ。

えー、最低でも -o に tcp は入れましょう。

あと、rsize, wsizeが8192でOKなのは大昔の話。
tcpにしたら、両方とも 65536 とかにしてしまいましょう。
さらに倍でもOK。もっとも意味は無いと思いますが。


CIFS/NFS chain をやるとIOが遅くなる理由の1つに、CIFSが64kで書き込んで
いるデータを、8192byte でNFSに書き込んでいるから、と言うのがあります。
1つのCIFSリクエストを8個のNFS requestに分割したら…そりゃ遅いよね?

あと、SAN側のRAIDは何でしょうか?
RAID5とかだと、1ストライプの大きさは8192byteより大きくありませんか?
そこに8192byteづつ書き込んだら、そりゃ遅いですよね?Dataはともかく、
パリティは毎回書くんだから。同じストライプに2回書いたらパリティは2回
diskIOする事になるよ?!

でもCIFSだと 64kbyteです。これぐらいなら、1ストライプ以上になってい
ませんか??であれば、NFSもあわせなくちゃ。
# NetAppが早い理由の1つはこの辺がちゃんとしているから。
## あ、一応EMCの製品もしていなくもなくもなくもなくもなくもなく……
### 高いDMX4をbackendに使ってください。DMX4-SSDなんかお勧め :p
### そうすると、バッテリーバックアップキャッシュが効いて早くなります。


小田切さんの言うとおり、基本的に CIFS/NFSチェーンは鬼門です。
でもどうしてもやりたい、と言うのであれば、最低限上記のようなポイント
はおさえておきましょう。

#つーか、諦めるにしても、一通り遊んで見ると、後々役に立ちます。
---- 
奥山 健一[煤背会:No.0x00000001]
#URL http://www.dd.iij4u.or.jp/~okuyamak/
#    http://developer.osdl.org/dev/doubt/
#今日のお言葉『酸化チタン』:確か光で水を分解できたよね…
#空気中の湿度を分解して水と酸素にしてくれないかなぁ(T.T)。



samba-jp メーリングリストの案内