日本語は機械翻訳による参考訳です。内容に矛盾や不一致があった場合には、英語の内容が優先されます。

NFS での FPolicy の first-read および first-write フィルタの動作

寄稿者

外部 FPolicy サーバを使用して FPolicy が有効になっていて、読み取り / 書き込み処理が監視対象イベントの場合、読み取り / 書き込み要求のトラフィックが多いと NFS クライアントで応答時間が長くなります。NFS クライアントの場合、 FPolicy で first-read フィルタと first-write フィルタを使用すると、 FPolicy 通知の数が減り、パフォーマンスが向上します。

NFS では、クライアントはファイルに対して I/O を実行する際に、ファイルのハンドルを取得します。このハンドルは、サーバとクライアントのリブート後も有効なままになる場合があります。このため、クライアントはハンドルを自由にキャッシュし、ハンドルを再取得しなくてもハンドルに対する要求を送信できます。通常のセッションでは、大量の読み取り / 書き込み要求がファイルサーバに送信されます。これらのすべての要求について通知が生成されると、次の問題が発生する可能性があります。

  • 追加の通知処理により負荷が増大し、応答時間が長くなります。

  • サーバに影響のない通知も含め、多数の通知が FPolicy サーバに送信される。

クライアントから特定のファイルに対する最初の読み取り / 書き込み要求を受信すると、キャッシュエントリが作成され、読み取り / 書き込みの数が増分されます。この要求は初回読み取り / 書き込み処理とマークされ、 FPolicy イベントが生成されます。NFS クライアント用の FPolicy フィルタを計画して作成する前に、 FPolicy フィルタの基本的な仕組みを理解しておく必要があります。

  • first-read :初回読み取りのクライアント要求をフィルタリングします。

    このフィルタが NFS イベントに使用される場合、「 -file-session-io-grouping-count 」および「 -file-session-io-grouping-duration 」設定によって、 FPolicy が処理される初回読み取り要求が決まります。

  • first-write :初回書き込みのクライアント要求をフィルタリングします。

    このフィルタが NFS イベントに使用される場合、「 -file-session-io-grouping-count 」および「 -file-session-io-grouping-duration 」設定によって、 FPolicy が処理された初回書き込み要求が決まります。

NFS サーバのデータベースには、次のオプションが追加されます。

file-session-io-grouping-count: Number of I/O Ops on a File to Be Clubbed and Considered as One Session
for Event Generation
file-session-io-grouping-duration: Duration for Which I/O Ops on a File to Be Clubbed and Considered as
One Session for Event Generation