ナビゲーションリンクをスキップ | |
印刷ビューの終了 | |
![]() |
Sun Storage Archive Manager 5.3 構成および管理ガイド Sun QFS and Sun Storage Archive Manager 5.3 Information Library (日本語) |
4. ネットワーク接続自動ライブラリのパラメータファイルの作成
アーカイバプロセスとステージャープロセスは、どちらもメディアのロードとアンロードをリクエストできます。メディアのロードに利用できるドライブ数より要求数の方が多い場合、超過分の要求はプレビュー待ち行列に送られます。
プレビュー待ち行列に含めることのできるエントリの数は、defaults.conf ファイルの previews= 指示によって決まります。この指示の値の変更については、『Sun QFS and Sun Storage Archive Manager 5.3 Reference Manual』の「defaults.conf(4)」 を参照してください。
デフォルトでは、プレビュー要求は先入れ先出し (FIFO) 順で処理されます。
プレビューリクエストの総合優先順位は、静的な係数と動的な係数を組み合わせることによって決定されます。数字が大きい場合には、優先順位が高いことを意味します。静的優先係数は、要求が生成されたときに設定されます。要求が生成されて処理待ち状態にあるとき、静的優先係数の効果によって総合優先順位が変更されることはありません。動的優先係数により、要求が処理待ち状態にあるときに、要求の総合優先順位を変更できます。
/etc/opt/SUNWsamfs/preview.cmd コマンドファイルに指示を入力することにより、デフォルト値である FIFO をオーバーライドできます。
sam-amld デーモンは、起動時に preview.cmd ファイルを読み取ります。このファイルは、リクエストが書き込み対象とアーカイブ対象のどちらであるのかに従って、プレビュー待ち行列内のリクエストの順序を決定します。特定の VSN の優先順位を上げたり、特定のファイルシステムのプレビューリクエストの優先順位を制御したりできます。
preview.cmd ファイルには次の規則が適用されます。
1 行に 1 つの指示を配置します。
sam-amld デーモンの実行中にこのファイルを変更した場合は、変更を有効にするためにデーモンを再起動します。
コメント行の先頭にはハッシュ記号 (#) を付けます。
このファイルの詳細は、『Sun QFS and Sun Storage Archive Manager 5.3 Reference Manual』の「preview.cmd(4)」 を参照してください。
preview.cmd では、次の種類の指示が使用されます。
すべてのファイルシステムに適用されるグローバル指示
個々のファイルシステムに固有のファイルシステム指示
グローバル指示はファイルの先頭に置かれ、それらの設定値はすべてのファイルシステムに適用されます。
ファイルシステム指示は、それ以降のすべての指示の適用先となるファイルシステムを指定する fs = 指示で始まります。複数のファイル指示を 1 つのファイルに定義できる。ファイルシステム指示は、次の fs = 行またはファイルの終わりに到達するまで有効です。
特定のファイルシステムを対象とした指示が複数存在する場合、そのファイルシステムに固有の指示がグローバル指示より優先されます。
次のセクションでは、preview.cmd ファイルを編集してプレビュー待ち行列を制御する方法について説明します。
![]() | 注意 - VSN および経過時間の優先指示は、グローバル指示であるため、preview.cmd ファイルではファイルシステム固有指示の前に置きます。 |
vsn_priority = value
この指示は、高い優先順位のボリュームがあるときに、その総合優先順位を上げる値を示す静的優先係数です。デフォルト値は 1000.0 です。この優先係数を使用するには、ボリュームをプレビューリクエストとしてスケジュールする前に、そのボリュームに優先フラグが設定されている必要があります。優先フラグを設定するには、p オプションを指定して -chmed(1M) コマンドを実行します (たとえば chmed +p lt.AAA123)。
age_priority = factor
この指示は、効果は動的ですが、静的優先係数です。この係数には、リクエストがプレビューリクエストである秒数が乗算されます。この乗算結果が、要求の総合優先順位に追加されます。リクエストの待ち時間が長いほど、優先順位は高くなります。この係数を設定すると、より高いほかの優先係数を持つ新しいリクエストによって古いリクエストが無期限に先を越されることがなくなります。
この係数を 1.0 より大きい値に設定すると、総合優先順位を計算するときの時間係数の重要度が増大し、1.0 未満に設定すると、時間係数の重要度が低下します。この係数を 0.0 に設定すると、総合優先順位計算から時間係数が除外されます。
優先フラグが設定されていないボリュームは、待ち行列の中にとどまる時間に基づいて優先順位が上昇します。その優先順位は、そのあと待ち行列に入ってくる、優先フラグがすでに設定されている VSN より高くなる可能性があります。
lwm_priority + lhwm_priority + hlwm_priority + hwm_priority = 境界値優先順位
4 種類の境界値設定値は、ファイルシステムがどれだけ埋まってきているかを示すパーセンテージ、および HWM と LWM の設定レベルが包含された、動的優先係数を作成します。プレビュー要求に割り当てられる値は、係数がグローバルであるかどうか、特定のファイルシステムに固有であるか、あるいは設定されていないか、によって決まります。
境界値優先順位は、アーカイブのリクエストの計算にのみ使用されます。書き込みのメディア要求の計算には使用されません。境界値優先係数が正の数である場合、総合優先順位が計算された結果、書き込みリクエストよりアーカイブリクエストが優先されます。これに対し、境界値優先係数が負の数である場合は、アーカイブ要求の総合優先順位は低くなり、この結果、アーカイブ要求より書き込み要求の方が優先されるようになります。0.0 という境界値優先係数 (または指示の指定なし) は、特別な操作が行われないことを示します。
詳細は、「例 1 - 書き込みリクエストを適用するためのスキーム」を参照してください。
境界値指示の形式は次のとおりです。
wmtype_priority = value
|
ファイルシステムが 1 つの状態から別の状態に移ったときは、そのファイルシステムに関連付けられている各ボリュームの優先順位が適切な境界値優先順位の設定値に基づいて再計算されます (chmed コマンドの -p オプションを使用する場合と使用しない場合があります)。
次の例は、十分なディスク領域を解放して、ファイルシステムが LWM レベルを下回るようにしています。
lhwm_priority = -200.0 hlwm_priority = 100.0
プレビューリクエストの総合優先順位は、すべての優先係数の和です。
総合優先順位 = vsn_priority + wm_priority + (age_priority * time_in_sec_as_preview_request)
デフォルトの FIFO スキームは、次のような理由がある場合にのみ変更します。
書き込み要求がアーカイブ要求の前に処理されるようにする。
ファイルシステムがいっぱいになりそうなために、アーカイブ要求にもっとも高い優先順位が与えられるようにする。
特定のメディアグループを使用する要求を、プレビュー要求リストの一番上にプッシュする。
次の例は、これら 3 つの状況に対応する preview.cmd ファイルを示しています。
例 15-6 preview.cmd ファイルの例
# condition 1 lwm_priority = -200.0 lhwm_priority = -200.0 hlwm_priority = -200.0 # condition 2 hwm_priority = 500.0 # condition 3 age_priority = 1.0
ユーザーによるデータアクセスがもっとも重要である環境や、VSN ドライブの数に制限がある環境や、ファイルのアーカイブがバックグラウンドの機能として実行される環境では、ストレージシステムリソースによる書き込みリクエストの処理方法を preview.cmd ファイルを使って制御します。preview.cmd ファイルの設定をカスタマイズすれば、これまでのシナリオに対応し、構成済みの SAM-QFS 環境を制御できます。
このファイルの設定値はデータに影響しないので、各プレビュー要求の優先順位と照合したときに、アーカイブ要求と書き込み要求が適切なバランスになるように、さまざまな指示の設定を試して調整してみることをお勧めします。
例 15-7 書き込みリクエストを適用するためのスキーム
次の例の計算は、wm_priority に負の値を使用して、必ず書き込みリクエストがアーカイブリクエストに優先するようにする方法を示しています。この例では、次のように仮定しています。
いくつかの要求が、待ち行列に 100 秒間入っていること。
デフォルトの vsn_priority が 1000 であること。
次の表は、リクエストの総合優先順位がどのように計算されるかを示しています。
|
例 15-8 アーカイブリクエストを適用するためのスキーム
ユーザーのためにファイルを書き込むことの重要度とメディアにアーカイブされた新しいファイルを取得することの重要度の間で環境内のバランスが取られている場合、最大の懸念は HWM レベルを超えることです。この状況で、アーカイブ要件を満たしているファイルが十分にないために、いっぱいになっているファイルシステムの利用率を下げることができない場合、ファイルシステムが限界に達しないようにする最良の方法は、保留中のアーカイブリクエストに応じることです。
この状況では、preview.cmd ファイルは次の例のように単純なものとなります。
hwm_priority = 500.0
例 15-9 メディアタイプでリクエストをランク付けするためのスキーム
あるサイトに、ユーザーが特定のボリュームを使用するファイルのグループを操作しており、それらのユーザーがほかのユーザーから分離されている環境があると仮定します。この環境では、特定のプロジェクトが特定の時間帯にもっとも高い優先順位となる可能性があり、そのために、より高い優先順位がなければシステムストレージリソースを利用できなくなります。次の例は、ユーザーとそのメディアに適切な優先順位を与えています。
vsn_priority = 5000.0
次に、優先ユーザーのグループ内のすべてのボリュームについて、次の情報を入力します。
# chmed +p lt. VSN
これで、指定された VSN を必要とするすべてのリクエストは、プレビュー待ち行列内のほかの保留中のマウントリクエストより先に配置されます。
例 15-10 複雑な優先順位のスキーム
次の要件を持つ 2 つのファイルシステムがあると仮定します。
どのリクエストも、待ち行列に長時間放置してはいけない (age_priority)。
ファイルシステムの 1 つが LWM レベル未満であるときは、書き込みリクエストが優先される。
ファイルシステムの 1 つが LWM レベルより高く HWM レベルより低いときは、リクエストに優先順位を付けない。
次の例は、影響を受ける指示を示しています。
lwm_priority = -200.0 lhwm_priority = 0.0 hlwm_priority = 0.0
ファイルシステムの 1 つが HWM レベルを超えたときは、アーカイブリクエストが優先されます。
どちらのファイルシステムも HWM レベルを超えているが、2 つ目のファイルシステム (samfs2) が制限に達しないようにする必要があると仮定します。次の例は、これらの要件に従ってリクエストに優先順位を付ける preview.cmd ファイルを示しています。
age_priority = 100.0 vsn_priority = 20000.0 lhwm_priority = -200.0 hlwm_priority = -200.0 fs = samfs1 hwm_priority = 1000.0 fs = samfs2 hwm_priority = 5000.0