# 管理解説書

## fs setserverprefs

目的

キャッシュ・マネージャーのファイル・サーバーまたは VL サーバー・マシンについての優先順位を設定します。

構文

    fs setserverprefs [-servers <fileserver names and ranks>+]
                      [-vlservers <VL server names and ranks>+]
                      [-file <input from named file>]  [-stdin]  [-help]

    fs sets [-se <fileserver names and ranks>+]  [-vl <VL server names and ranks>+]
            [-f <input from named file>]  [-st]  [-h]

    fs sp [-se <fileserver names and ranks>+]  [-vl <VL server names and ranks>+]
          [-f <input from named file>]  [-st]  [-h]

構文

fs setserverprefs コマンドは、ローカルのキャッシュ・マネージャーの優先順位を、1 つ以上のファイル・サーバー・マシン・インターフェースに設定します。-vlserver 引き数が使用された場合は、ボリューム・ロケーション (VL) サーバー・マシンに設定します。ファイル・サーバー・マシンでは、数値的ランクは、キャッシュ・マネージャーが接続を試みるボリュームを格納しているマシンのインターフェースの順序を決定します。VL サーバー・マシンでは、ランクはキャッシュ・マネージャーが VLDB 情報の要求時に接続を試みるセルの VL サーバーの順序を決定します。

キャッシュ・マネージャーがファイル・サーバー・マシンまたは VL サーバー・マシンへの接続時に、どのように優先順位を使用するかについては、fs getserverprefs 解説ページで説明しています。以下のパラグラフでは、キャッシュ・マネージャーがどのようにデフォルト・ランクを計算するのか、また、このコマンドをどのように使用してデフォルトを変更するのかを説明します。

デフォルトの優先順位の計算

キャッシュ・マネージャーは、優先順位を、対の IP アドレスおよび数値的ランクの形でカーネル・メモリーに格納しています。ファイル・サーバー・マシンがマルチホームの場合、キャッシュ・マネージャーは各マシンのアドレス (AFS リリース情報 で指定される、各マシンに VLDB が格納できるアドレスの数まで) に別個のランクを割り当てます。ランクが一度計算されると、マシンをブートするか、このコマンドを使用して変更するまで、ランクは残ります。

キャッシュ・マネージャーは、初期化時に VL サーバーのデフォルトの優先順位を設定します。これは、10,000 から 10,126 の範囲のランクを、 /usr/vice/etc/CellServDB ファイルにリストされているそれぞれのマシンに、無作為に割り当てます。別のセルに属するマシンは、同じランクを持つことができます。キャッシュ・マネージャーは、一度に 1 つのセルのランクしか調べないので、これには問題はありません。

キャッシュ・マネージャーは、VLDB からボリュームの位置情報を取り出すときときに、ファイル・サーバー・マシンにデフォルトの優先順位を設定します。キャッシュ・マネージャーは、まだランクを設定されていないファイル・サーバー・マシン・インターフェースを確認するたびに、それぞれのインターフェースにランクを割り当てます。ローカルのクライアント・マシンに IP アドレスが 1 つしかない場合には、キャッシュ・マネージャーは、これをサーバー・インターフェースの IP アドレスをローカル・マシンのものと比較して、次のアルゴリズムにしたがってランクを設定します。クライアント・マシンがマルチホームの場合には、キャッシュ・マネージャーはクライアント・マシンのアドレスのそれぞれにアルゴリズムを適用し、このアルゴリズムの結果生成される最低のランクをファイル・サーバー・マシン・インターフェースに割り当てます。

- ローカル・マシンがファイル・サーバー・マシンである場合、各インターフェースの基本ランクは、5,000 です。
- ファイル・サーバー・マシンのインターフェースがクライアント・インターフェースと同じサブネットワーク上にある場合、その基本ランクは 20,000 です。
- ファイル・サーバー・マシンのインターフェースがクライアント・インターフェースと同じネットワーク上にあるか、クライアント・インターフェースの 2 地点間リンクのリモート側の場合、その基本ランクは 30,000 です。
- ファイル・サーバー・マシンのインターフェースがクライアント・インターフェースと別のネットワーク上にあるか、キャッシュ・マネージャーがネットワークの情報を得られない場合、その基本ランクは 40,000 です。

ファイル・サーバー・マシンのインターフェースに基本ランクを割り当てた後、キャッシュ・マネージャーはそれに 0 (ゼロ) から 14 の中から無作為に選択された数をそれに追加します。たとえば、ローカル・マシンと同じサブネットワークにあるファイル・サーバー・マシンのインターフェースは、 20,000 の基本ランクを受け取りますが、キャッシュ・マネージャーは実際のランクを 20,000 から 20,014 の間の整数で記録します。このプロセスは、まったく同じランクを持つインターフェースの数を削減します。VL サーバー・マシンのランクでは、外部セルからのファイル・サーバー・マシン・インターフェースがローカル・セルのインターフェースと同じランクを持つことができますが、これには問題はありません。与えられたボリュームを格納するインターフェースの相対ランクのみに関係があり、また、AFS は一度に 1 つのセルのボリュームのストーレッジのみをサポートします。

デフォルト以外の優先順位の設定

既存の優先順位をリセットするには、 fs setserverprefs コマンドを使用するか、キャッシュ・マネージャーがランクを持たないファイル・サーバー・マシン・インターフェースまたは VL サーバー・マシンの初期ランクを設定します。ローカル・マシンのリブー ト後もランクを残しておくには、マシンの AFS 初期化ファイルに適切な fs setserverprefs コマンドを配置します。

各優先順位を、1 つ以上のスペースで区切られた対の値で指定します。

- 最初の対のメンバーは、完全修飾されたホスト名 (たとえば、fs1.example.com) か、ファイル・サーバー・マシン・インターフェースまたは VL サーバー・マシンの小数点付き 10 進数形式の IP アドレスとなります。
- 対の 2 番目のメンバーは、整数です。可能なランクの範囲は、1 から 65535 です。

デフォルト・ランクと同様に、キャッシュ・マネージャーはこのコマンドが指定したランクに、無作為に選択した整数を追加します。ファイル・サーバー・マシン・インターフェースの場合は、0 (ゼロ) から 14 の整数、 VL サーバー・マシンの場合は、0 (ゼロ) から 126 までの整数です。たとえば、管理者がファイル・サーバー・マシン・インターフェースに 15,000 のランクを割り当てた場合、キャッシュ・マネージャーは 15,000 から 15,014 の間の整数を格納します。

ファイル・サーバー・マシンのインターフェース (VL サーバー・マシンではなく) のランクを提供する方法はいくつかあります。

- コマンド行で、-servers 引き数に従います。
- -file 引き数が指定したファイルで、それぞれの対をファイルの該当する行に配置します。fs コマンドの出力をファイルに送信すると、自動的に正しい形式のファイルが生成されます。
- -stdin フラグを付けて標準入力を経由します。このメソッドで、発行者は、優先順位を生成するプログラムまたはスクリプトから、適切なアルゴリズムを使用して、直接ローカル・セルに値を送り込むことができます。 AFS 配布には、このようなプログラムまたはスクリプトは組み込まれません。

ファイル・サーバー・マシンの優先順位を設定する場合には、 1 つのコマンド行で -servers、-file、および -stdin オプションを組み合わせることができます。異なるオプションが同じインターフェースに異なるランクを指定した場合、キャッシュ・マネージャーは -servers 引き数で割り当てたランクを格納して使用します。

VL サーバー・マシンのランクを割り当てるには、-vlservers 引き数を使うしか方法はありません。 -servers、-file、および -stdin オプションを組み合わせることはできますが、キャッシュ・マネージャーはこれらのオプションで指定された値を、ファイル・サーバー・マシンのランクにのみ適用します。

fs コマンドのインタープリターは、ホスト名または IP アドレスを検査しないので、優先順位を無効なマシン名またはアドレスに割り当てます。キャッシュ・マネージャーは、そのようなランクを、 VLDB に同様の誤った情報がない限り、決して使用しません。

オプション

-servers
  1 つ以上のファイル・サーバー・マシンの優先順位を指定します。各ランクは、ファイル・サーバー・マシンのインターフェースの完全修飾されたホスト名または IP アドレス (ドット付き 10 進数形式で) と整数ランクを対にし、1 つ以上のスペースで区切ります。各対もまた、1 つ以上のスペースで区切られます。ランクの許容値の範囲は、1 から 65521 です。より低い値が、より高い優先度を示します。この範囲外のランクを提供すると、予測不能の結果が生じる可能性があります。 65521 より小さい値を提供すると、最大のランダム係数 (14) が追加されていても、ランクが最大の可能値 65,535 を超えないようにします。

  この引き数は、-file 引き数、-stdin フラグ、またはその両方と組み合わせることができます。複数の引き数が同じインターフェースのランクを設定する場合、この引き数が設定するランクが優先します。これはまた、-vlservers 引き数とも組み合わせることができますが、対話はありません。

-vlservers
  VL サーバーの優先順位を 1 つ以上指定します。各ランクは、VL サーバー・マシンの完全修飾されたホスト名または IP アドレス (小数点付き 10 進数形式で) と整数ランクを対にし、1 つ以上のスペースで区切ります。各対もまた、1 つ以上のスペースで区切られます。ランクの許容値の範囲は、1 から 65521 です。より低い値が、より高い優先度を示します。この範囲外のランクを提供すると、予測不能の結果が生じる可能性があります。 65521 より小さい値を提供すると、最大のランダム係数 (14) が追加されていても、ランクが最大の可能値 65,535 を超えないようにします。

  この引き数は、-servers 引き数、-file 引き数、-stdin フラグ、またはこの 3 つの間のどの組み合わせでも使用することができますが、対話はありません。これらはファイル・サーバー・マシンのランクにのみ適用されます。

-file
  ファイル・サーバー・マシン・インターフェースとそのランクの対の読み取り先のファイルの完全パス名を指定します。このとき、値の表記と範囲は -servers 引き数と同じにします。ファイルでは、各対をその該当行に配置し、それぞれの対を 1 つ以上のスペースで 2 つの部分に分けます。

  この引き数は、-servers 引き数、-stdin フラグ、またはその両方と組み合わせることができます。複数の引き数が同じインターフェースのランクを設定する場合、-server 引き数が設定するランクが優先します。これはまた、-vlservers 引き数とも組み合わせることができますが、対話はありません。

-stdin
  ファイル・サーバー・マシン・インターフェースと整数ランクの対を標準入力ストリームから読み取ります。この使用目的は、適切な形式でランクを生成するユーザー定義のプログラムからパイプ接続された入力を受け入れることですが、シェルにタイプされた入力も受け入れます。インターフェースおよびランクの対を、 -file 引き数に形式設定します。シェルにタイプする場合は、最終改行後に <Ctrl-d> とタイプして、入力を完了します。

  この引き数は、-servers 引き数、-file 引き数、またはその両方と組み合わせることができます。複数の引き数が同じインターフェースのランクを設定する場合、-server 引き数が設定するランクが優先します。これはまた、-vlservers 引き数とも組み合わせることができますが、対話はありません。

-help
  このコマンドのオンライン・ヘルプを出力します。これ以外の有効なオプションはすべて無視されます。

例

次のコマンドは、ファイル・サーバー・マシン fs3.example.com および fs4.example.com に対するキャッシュ・マネージャーの優先順位を設定します。後者のマシンは、IP アドレス、192.12.105.100 で指定されています。これらのマシンは、ローカル・マシンのネットワークの別のサブネットワークに常駐するため、デフォルトの基本ランクは 3,000 になります。これらのマシンに対するキャッシュ・マネージャーの優先順位を上げるためには、発行者はランク 25000 を割り当て、キャッシュ・マネージャーはそれに 0 から 15 の範囲の整数を追加します。

       # fs setserverprefs -servers fs3.example.com 25000 192.12.105.100 25000

次のコマンドは、同じ 2 つのファイル・サーバー・マシンに対するキャッシュ・マネージャーの優先順位を設定するために -servers 引き数を使用します。また、ローカル・ファイル /etc/fs.prefs に常駐するファイルにある優先順位のコレクションを読み取るために、 -file 引き数も使用します。

       # fs setserverprefs -servers fs3.example.com 25000 192.12.105.100 25000  \
                           -file /etc/fs.prefs

/etc/fs.prefs ファイルは、次のような内容と形式を持っています。

       192.12.108.214        7500
       192.12.108.212        7500
       138.255.33.41         39000
       138.255.33.34         39000
       128.0.45.36           41000
       128.0.45.37           41000

以下のコマンドは、-stdin フラグを使用して、標準入力ストリームから優先順位を読み取ります。ランクは、プログラム calc_prefs からこのコマンドにパイプ接続されます。このプログラムは、発行者がローカル・セルにとって重要な値を基本にして計算するために作成されたものです。

       # calc_prefs | fs setserverprefs -stdin

以下のコマンドは、-vlservers 引き数を使用して、 fs1.example.com、fs3.example.com、および fs4.example.com という VL サーバー・マシンに対するキャッシュ・マネージャーの優先順位を設定します。基本ランクはそれぞれ、1,11000 および 65521 です。

       # fs setserverprefs -vlservers fs1.example.com 1 fs3.example.com 11000  \
                           fs4.example.com 65521

必要となる特権

コマンドの発行者は、ローカル・スーパーユーザー root としてログインする必要があります。

関連情報

fs getserverprefs

[ ページのトップ | 前ページ | 次ページ | 目次 | 索引 ]

(C) IBM Corporation 2000. All Rights Reserved