- PR -

負荷分散システムでのNFSの利用について

投稿者投稿内容
kaz
ぬし
会議室デビュー日: 2003/11/06
投稿数: 5403
投稿日時: 2005-03-05 22:18
引用:

水無月 遊々さんの書き込み (2005-03-05 19:19) より:
引用:

読むたびに file が転送されているのであれば,
それなりに通信負荷も生じるでしょうけど,
その場合 NFS server 側と NFS client と,
どちらが負担になるのでしょう?



 実際にディスクのIOアクセスが発生する分だけ、基本的にはサーバ側が重くなると思います。ただ、最近のマシンパワーならネットワークの帯域の方が問題になりそうな気がしますけど…どうかなぁ。


最近知ったのですが,
※GFS のことを調べていて知ったのですが...
NFS は通信の際に data を 8KB とか 4KB に細切れにしてやり取りするそうですね.
とすると,I/O も十分にボトルネックになりそうな気がしてます.
とくに複数の NFS client から同時に喋ってきたら,
通信より I/O のほうがキツいんじゃなかろうかという素人考えがあったりします.
ぽんす
ぬし
会議室デビュー日: 2003/05/21
投稿数: 1023
投稿日時: 2005-03-05 23:50
引用:

kazさんの書き込み (2005-03-05 17:12) より:
read only でもやはりボトルネックになるものなのでしょうか?


純粋に読み出しだけ、というのをやったことはありませんが...
Maildir形式のIMAPサーバなんかだと、大部分は読み出しですが、
それでもNFSサーバはボトルネックになり得ます。
・・・というか、これは単純な話で、NFSクライアントn台に
対してNFSサーバ1台の構成でnを増やしていけばいつかは必ず
サーバがボトルネックになるのは当然の話ですよね。

引用:

読むたびに file が転送されているのであれば,


キャッシュはあります。

引用:

その場合 NFS server 側と NFS client と,
どちらが負担になるのでしょう?


サーバ側です。
クライアントのほうが数が多いですし。

引用:

水無月 遊々さんの書き込み (2005-03-05 19:19) より:
ただ、最近のマシンパワーならネットワークの帯域の方が問題になりそうな気がしますけど…どうかなぁ。


そーでもにゃいです。
1Gbpsで結んでるところで、NFSサーバをあっぷあっぷさせるのは
わりと簡単です。

引用:

kazさんの書き込み (2005-03-05 22:18) より:
とくに複数の NFS client から同時に喋ってきたら,
通信より I/O のほうがキツいんじゃなかろうかという素人考えがあったりします.


両方だと思いまふ。そんなによく知ってるわけじゃないですが。
amata
会議室デビュー日: 2005/02/04
投稿数: 7
投稿日時: 2005-03-06 00:04
皆さんの議論の中でNFSでやるのはパフォーマンス上(ネットワーク、IO)
問題あるのはわかりましたが、GFSなら解決する問題でしょうか。

ぽんすさんがおっしゃったように参照するクライアントを顧客の増加に伴い
増やす必要がある場合、GFSでも問題が出てくるのではないでしょうか。
(特にネットワーク)

このような場合はやはりクラスターファイルシステムなどを導入すべきでしょうか。
それとも一元化などせずに各WWWサーバやAPサーバがローカルに保持すべきでしょうか。

[ メッセージ編集済み 編集者: amata 編集日時 2005-03-06 00:24 ]
ぽんす
ぬし
会議室デビュー日: 2003/05/21
投稿数: 1023
投稿日時: 2005-03-06 00:40
引用:

amataさんの書き込み (2005-03-06 00:04) より:
皆さんの議論の中でNFSでやるのはパフォーマンス上(ネットワーク、IO)
問題あるのはわかりましたが、GFSなら解決する問題でしょうか。


えーと、べつにNFSはマズイと言ってるわけじゃないです、念のため。
ボトルネックになりやすいので必要な性能を出せるのかどうか
気をつけたほうがいい、というだけのことで。

引用:

このような場合はやはりクラスターファイルシステムなどを導入すべきでしょうか。


クラスタファイルシステムについては知りませんが...
そこまでやる必要があるのかどうか、という話ですよね。

引用:

それとも一元化などせずに各WWWサーバやAPサーバがローカルに保持すべきでしょうか。


ケースバイケースでしょうね。
管理/運用が複雑化するとか、バグを作りこみやすくなるとか、
ありそうですので。
kaz
ぬし
会議室デビュー日: 2003/11/06
投稿数: 5403
投稿日時: 2005-03-06 01:03
引用:

amataさんの書き込み (2005-03-06 00:04) より:

皆さんの議論の中でNFSでやるのはパフォーマンス上(ネットワーク、IO)
問題あるのはわかりましたが、GFSなら解決する問題でしょうか。

ぽんすさんがおっしゃったように参照するクライアントを顧客の増加に伴い
増やす必要がある場合、GFSでも問題が出てくるのではないでしょうか。
(特にネットワーク)


すでにお二方が指摘されていますが,
通信であれ I/O であれ,front end の負荷にともなって
back end も負荷が増大するのは自明ですね.
で,より「どちらが良いか?」という比較論の前に,
まず「どこまでの性能が必要か?」というお話がまず先に来るべきでしょう.
というのが,既にぽんす様のご指摘にありますので,
GFS をもう少し.

性能を考慮するなら,
或いは FibreChannel を利用するとかしたほうがよろしいのでは?
そこで Cluster File System を用いるなどすれば,
抜群の性能は引き出せるでしょうけど,如何せん費用がかかります.
次善策としては iSCSI + GFS が考えられるでしょう.
iSCSI で SCSI -> Ethernet の負荷を考慮しても,
iSCSI 専用の HBA がありますから,
そこで「共有 file system」たる GFS を用いると,
NFS よりは幸せになれるでしょう.

ですが,これらの策を用いる場合,
概ね「I/O に負担の無い構造」が必要となるわけで,
NAS であれ SAN であれ,相応の storage を準備する必要に迫られるでしょう.
引用:

このような場合はやはりクラスターファイルシステムなどを導入すべきでしょうか。
それとも一元化などせずに各WWWサーバやAPサーバがローカルに保持すべきでしょうか。


なので,まず「予算はどのくらいで,要求性能はどのくらい」から算出すべきかと.
ぶらさがる client の数によって必要な性能は変わるでしょうし,
それにともなって「実施される処理」が storage/back end 側に
必要な処理性能も変わるでしょうし...

つまり,単純に「性能を上げる」のと,
「運用上必要な性能を得る」のとは微妙にズレがあるのではないかと思います.
そこのところはドウなんでしょう? -> amata様
それに,back end が application server なら
NFS や GFS といった話は無縁の内容となるでしょうし,
もう少し具体的な条件が挙がらないと
ある種の「宗教論争」になりかねないんじゃないかと思った次第です.

以上,愚見です.
amata
会議室デビュー日: 2005/02/04
投稿数: 7
投稿日時: 2005-03-07 12:05
現在、WWWサーバ2台、APサーバ2台で運用されていますが、ユーザ数の増加に伴い
必要なサーバを追加していくシステムです。
そのため現在の運用だと、アクセス数が何倍にも増えた場合、それぞれ何倍にも
増やされたサーバが相変わらず1台のNFSを参照しに行くようになります。
それだといくらNFSサーバを増強してもいずれ限界がくるようになると思います。

私が想定しているのはコンテンツを各サーバにデプロイしてくれるようなものがあれば
コンテンツの一元化とパフォーマンスの問題、運用のわずらわしさの全てから
開放されるのではないかなと思い、何かいい方法はないものかと伺った次第です。
シェル組むしかないですかね。

スキルアップ/キャリアアップ(JOB@IT)