web-dev-qa-db-ja.com

ApacheでNFSを使用することの長所と短所

フロントエンドのApacheサーバーと同じネットワーク上にあるサーバーに保存されているPHPスクリプトと静的Webコンテンツにアクセスするために、NFSを使用している環境に入っています。フロントは1つだけです。エンドApacheサーバーはNFSを介してこれらのファイルにアクセスしているため、フロントエンドのApacheボックスの負荷を分散している状況ではありません。

現在、ApacheサーバーとNFSサーバーを仮想化しています。この状況でもNFSを使用するのが理にかなっているのか、それともすべてのWebコンテンツをWebサーバーと同じマシンにローカルに保存するのが理にかなっているのかについては意見が分かれています。みなさんはどう思いますか?

ご入力いただきありがとうございます。

3
Ted S

NFSが必要になるのは、ファイルシステムレベルで複数クライアントアクセスが必要な場合のみです。複数のクライアントからのアクセスは必要ないので、NFSを最良の選択としてはお勧めしません。

あなたdoが複数のApacheサーバーを持っていても、私はまだは持っていませんマシン間でコードを共有する手段としてNFSを使用することをお勧めします。自動展開ツールを使用すると、コードを必要な数の場所にほぼ同時に簡単に配布できます。 NFSmightはユーザー提供のアセットに最適ですが、それでも最初に表示されるほどカットアンドドライではありません(これに関する私の意見トピックは この他の回答 )で利用できます。

3
womble

あなたが提示した状況では、このシナリオでNFSを使用してもほとんどメリットがないように思われます。

シングルソース、マルチサーバータイプのセットアップから最大のメリットを得ることができます(ただし、それに対処できる方法は他にもあります)。静的ページの場合、特にミックスにキャッシュが含まれている場合、パフォーマンスは大きな問題にはなりません。多くのマシンがPHPスクリプトを実行すると、パフォーマンスに影響が出る可能性があります。ただし、環境によって異なります。

ただし、それがどのように有益であるかを理解するために、Netappファイラーがあります。Netappファイラーは、ボリュームをWindowsクライアント(マーケティング担当者)にCIFSとして、ApacheサーバーにNFSとして二重に提示し、4つのサーバー間で負荷分散されます。すべてのApacheサーバーは読み取り専用でマウントされており、マーケティングでは、Dreamweaverまたはその他の使用するものから直接必要な変更を加えて、Windows共有に直接保存できます。

この設定は、1回限りのマーケティングイニシアチブにのみ使用されることに注意してください。私たちのメインサイトはCMSで適切に管理されており、適切なワークフローを経ています。

2
Alex

現在、NetApp FAS2050でNFS共有からデータを提供するnginxとApacheを実行していますが、パフォーマンスの問題はありません。 NFSの欠点は、比較的大きなディレクトリ(> 200ファイル)のディレクトリルックアップが非常に遅いことです。SA​​Nへのパフォーマンスへの影響を最小限に抑えるために、そのApacheサーバーからのキャッシュとしてnginxを配置することをお勧めします。

2
petertonoli

NFSを使用することが理にかなっている場合がいくつかあります。 1つのケースは、ローカルディスクサブシステムのパフォーマンスが最適ではないが、NFSストレージが高性能ディスクアレイ上にある場合です。他のすべての場合では、ネットワークを障害点として追加するだけで、メリットはありません。

1
dtoubelis