CacheFS ファイルシステムは、サーバーとネットワークの負荷を軽減して NFS サーバーのパフォーマンスとスケーラビリティーを改善する汎用ファイルシステムキャッシュメカニズムです。CacheFS ファイルシステムは、階層化ファイルシステムとして設計されており、あるファイルシステムを別のファイルシステムのキャッシュに書き込む機能を持っています。NFS 環境では、CacheFS ファイルシステムはサーバーあたりのクライアント比率を高め、サーバーとネットワークの負荷を軽減し、ポイントツーポイントプロトコル (PPP) などの低速リンク上のクライアントのパフォーマンスを向上させます。
CacheFS ファイルシステムをクライアントシステム上に作成すると、キャッシュに書き込んだファイルシステムをクライアントがネットワークを経由しなくても、ローカルにアクセスできます。次の図は、CacheFS ファイルシステムの使用に関連する構成要素の関係を示しています。
キャッシュ内にマウントするように指定するファイルシステムを「バック」ファイルシステムと呼びます。バックファイルシステムは、NFS と HSFS (High Sierra File System) のどちらかになります。ユーザーがバックファイルシステムの一部であるファイルにアクセスしようとすると、そのファイルはキャッシュに書き込まれます。「フロント」ファイルシステムとは、キャッシュにマウントされ、ローカルのマウントポイントからアクセスされるファイルシステムです。フロントファイルシステムのタイプは、UFS でなければなりません。
CacheFS ファイルシステム内のファイルにはじめてアクセスするときは、要求の処理速度が遅く感じられる可能性があります。しかし、2 回目以降は、もっと短い時間で処理できます。
各キャッシュには、キャッシュの構造とその動作を決定する 1 組のパラメータが付いています。各パラメータは、次の表に示すデフォルト値に設定されています。デフォルト値は、フロントファイルシステム全体をキャッシュに使用するように指定しますが、これはファイルシステムをキャッシュに書き込む場合の推奨方法です。
表 19–1 CacheFS ファイルシステムのパラメータとそのデフォルト値
CacheFS ファイルシステムのパラメータ |
デフォルト値 |
定義 |
---|---|---|
maxblocks |
90 % |
CacheFS ファイルシステムがフロントファイルシステム内で要求できる最大ブロック数を設定します。 |
minblocks |
0 % |
CacheFS ファイルシステムがフロントファイルシステム内で要求できる最小ブロック数を設定します。 |
threshblocks |
85 % |
CacheFS ファイルシステムが minblocks で指定したより多数のブロックを要求する前に、フロントファイルシステム内で使用可能でなければならないブロック数を設定します。 |
maxfiles |
90 % |
CacheFS ファイルシステムがフロントファイルシステム内で要求できる使用可能な i ノードの最大数 (ファイル数) を設定します。 |
minfiles |
0 % |
CacheFS ファイルシステムがフロントファイルシステム内で要求できる使用可能な i ノードの最小数を設定します。 |
threshfiles |
85 % |
CacheFS ファイルシステムが minfiles で指定したより多くのファイルを要求する前に、フロントファイルシステム内で使用可能でなければならない i ノード数を設定します。 |
通常、これらのパラメータ値を変更する必要はありません。最適のキャッシュ動作が得られるデフォルト値に設定されています。ただし、キャッシュに使用されないフロントファイルシステム内に空き空間があり、それをほかのファイルシステムに使用する場合は、maxblocks と maxfiles の値を変更することをお勧めします。この変更を行うには、cfsadmin コマンドを使用します。次に例を示します。
$ cfsadmin -o maxblocks=60 |