新しい会話を開始

未解決

この投稿は5年以上前のものです

13634

2017年6月20日 03:00

NFSのマウントオプションについて

以下の構成でUnityを利用しています。

・NFSサーバー

 Unity300(ソフトウェアバージョン:4.1.2.9257522)

 →NFSv4は無効にしているため、NFSのバージョンは3です。

・NFSクライアント(複数台)

 CentOS 7.2 64bit

Unityは、NFSサーバーとして稼働しており、

NFSクライアントとして、複数のLinuxサーバーがUnityの同じディレクトリにマウントし、同時に読み書きをしています。

要件としては、以下があります。

・複数のNFSクライアントが同時に同じディレクトリ、ファイルにアクセスした場合に、

 アクセスするクライアントによって、ファイルの見え方が異なってしまうことがないようにする必要がある。

そのため、以下のように、クライアント側では、NFSのキャッシュを保持しないように「/etc/fstab」にマウントオプションで、

「noac」と「lookupcache=none」を指定しています。

---

XX.XX.XX.XX:/share/share/unity-test /mnt/Unity nfs rw,rsize=8192,wsize=8192,hard,intr,noac,lookupcache=none 0 0

---

こちらのオプションについて、疑問点があるのですが、

「lookupcache=none」を指定するだけでも、NFSクライアント側は、キャッシュを保持しない形となるため、

上記の要件は満たすことができ、「noac」は指定する必要はないと考えているのですが、正しいでしょうか?

「noac」を指定すると、NFSサーバーへの書込みが「同期(sync)」となり、書込み動作が遅くなるため、

できれば、「noac」はつけたくないと考えています。

「noac」をつけないと、上記の要件は満たせないのか、分かりますでしょうか?

Moderator

 • 

6.7K メッセージ

2017年6月21日 02:00

Dell EMC の資料(特にUnity )にnoac lookupcache=noneに関する差異の記載等は無かったですが

Linux関連のサイトにあった記述を鑑みるとryonさんの認識の通りどちらでもいい、Noacは無くてもいい、

と考えて間違いないと思います。

以下参考情報

https://access.redhat.com/documentation/ja-JP/Red_Hat_Enterprise_Linux_OpenStack_Platform/5/html/Release_Notes/ch02s04.htmlより。。

BZ#1112634

コンピュートインスタンスのストレージに、NFS 共有ストレージを使用する場合、Red Hat は、NFS クライアントがファイルの属性をキャッシュしないように、noac または lookupcache=none オプションでこの共有をマウントすることを推奨します (詳細は NFS man ページを参照)

これにより、パフォーマンスが若干低下するものの、共有ストレージを使用するコンピュートホスト間でインスタンスを移行またはリサイズすることができます。

Red Hat Enterprise Linux OpenStack Platform の今後のバージョンでは、この要件は削除される可能性があります。

noac or lookupcache=none オプションを有効にせずに、コンピュートインスタンスストアに NFS 共有ストレージを安全に使用できるようになった時点で、このリリースノートは更新される予定です。

http://www.linux-cmd.com/nfs.htmlから。。

lookupcache=none を使うことで、この挙動を指定できる。ライアントがディレクトリエントリをキャッシュしない場合に必要となる追加の NFS リクエストは、性能上のペナルティを発生させる。ルックアップキャシュを無効にすることは、 noac を使うよりも性能上のペナルティは少なくなるはずであり、 NFS クライアントがどのようにファイルの属性をキャッシュするかに影響を与えない。

10 メッセージ

2017年6月21日 05:00

参考情報ありがとうございます。

大変、助かります。

「noac」オプションは削除する方向で検討したいと思います。

イベントは見つかりませんでした!

Top