Show Table of Contents
4.5. 設定ファイルの devices セクション
multipath.conf 設定ファイルの devices セクションでストレージデバイスごとに設定できる属性を 表4.3「devices の属性」 に示します。そのデバイスを含むパスでは、multipath.conf ファイルの multipaths セクションに指定されている属性で上書きされない限り、この属性が使用されます。この属性は、multipath.conf ファイルの defaults セクションに設定されている属性より優先されます。
マルチパスに対応しているデバイスの多くは、デフォルトでマルチパス設定に含まれています。対応デバイスなど、デフォルトの設定値については、以下のいずれかのコマンドを実行して確認してください。
#multipathd show config#multipath -t
おそらく、こうしたデバイスの値を修正する必要はありませんが、必要が生じた場合は、設定ファイルにエントリーを追加すればデフォルト値を上書きすることができます。
multipathd show config コマンドが表示する、目的のデバイスのデフォルト値をコピーして、変更したい値に書き換えることができます。
設定ファイルのこのセクションに、デフォルトで自動的に設定されないデバイスを追加する場合は、
vendor と product のパラメーターを設定する必要があります。値は /sys/block/device_name/device/vendor と /sys/block/device_name>/device/model で検索できます。device_name は、マルチパス設定対象のデバイスです。以下に例を示します。
#cat /sys/block/sda/device/vendorWINSYS #cat /sys/block/sda/device/modelSF2372
追加で指定するパラメーターは、使用するデバイスによって異なります。デバイスが active/active なら通常、追加でパラメーターを設定する必要はありません。
path_grouping_policy を multibus に設定する必要が生じることがあるかもしれませんが、その他に設定が必要となる可能性があるパラメーターには、no_path_retry や rr_min_io があります。これらについては 表4.3「devices の属性」 で説明しています。
デバイスが active/passive であるにも関わらず、I/O を持つパスが自動的に passive パスに切り替えられる場合は、チェッカーの関数を、I/O をパスに送信しない関数に変更し、それが正しく動作するか検証する必要があります (これを行わないとデバイスはフェイルオーバーし続けます)。つまり、ほとんどの場合は、
path_checker を tur に設定するということになります。この設定は、Test Unit Ready コマンドに対応するすべての SCSI デバイスで機能します。Test Unit Ready コマンドは大半のデバイスで対応しています。
パスの切り替えに特殊なコマンドを必要とするデバイスにマルチパスを設定するには、ハードウェアハンドラーカーネルモジュールが必要になります。現在、利用可能なハードウェアハンドラーは
emc です。このハンドラーが目的のデバイスに使用できない場合、そのデバイスへのマルチパス設定はできない可能性があります。
表4.3 devices の属性
| 属性 | 説明 | ||||||||
|---|---|---|---|---|---|---|---|---|---|
vendor | device 属性が適用されるストレージデバイスのベンダー名 (例: COMPAQ) を指定します。 | ||||||||
product | device 属性が適用されるストレージデバイスの製品名 (例: HSV110 (C)COMPAQ) を指定します。 | ||||||||
revision | ストレージデバイスの製品リビジョン識別子を指定します。 | ||||||||
product_blacklist | 製品別にデバイスをブラックリスト指定するのに使用する正規表現を指定します。 | ||||||||
alias_prefix | デフォルトの "mpath" の代わりに、このデバイスタイプに使用する user_friendly_names 接頭辞。 | ||||||||
hardware_handler |
| ||||||||
path_grouping_policy |
| ||||||||
path_selector |
| ||||||||
path_checker |
| ||||||||
features |
| ||||||||
prio |
| ||||||||
failback |
| ||||||||
rr_weight | priorities に設定すると、次のパスを選択する path_selector を呼び出すまでに送信する要求数の決定に rr_min_io を使用しません。送信する要求数は、rr_min_io に、prio 関数で決定されるパスの優先度を掛けて決定します。uniform に設定すると、全てのパスの重みが等しくなります。 | ||||||||
no_path_retry |
| ||||||||
rr_min_io | 現在のパスグループで、次のパスに切り替えるまでにルーティングする I/O 要求数を指定します。この設定は、2.6.31 より前のカーネルを実行しているシステムにのみ適用されます。2.6.31 以降のシステムには、rr_min_io_rq を使用してください。デフォルト値は 1000 です。 | ||||||||
rr_min_io_rq | 現在のパスグループで、次のパスに切り替えるまでにルーティングする I/O 要求数を指定します。要求ベースの device-mapper-multipath を使用しています。現在のカーネルを実行しているシステムで使用してください。2.6.31 より前のバージョンのカーネルを実行しているシステムの場合は rr_min_io を使用してください。デフォルト値は 1 です。 | ||||||||
fast_io_fail_tmo | FC リモートポートで問題を検出してから、そのリモートポートでデバイスへの I/O が失敗するまでの scsi 層の待機時間 (秒) です。この値は dev_loss_tmo よりも小さくすることをお勧めします。これを off に設定すると、タイムアウトが無効になります。 | ||||||||
dev_loss_tmo | FC リモートポート上で問題を検出してから、システムから削除されるまでの scsi 層の待機時間 (秒) です。この値を無制限に設定するには 2147483647 秒または 68 年に設定します。 | ||||||||
flush_on_last_del | yes に設定すると、デバイスへの最後のパスが削除された時点で、multipathd デーモンがキュー待ちを無効にします。 | ||||||||
user_friendly_names | yes に設定すると、/etc/multipath/bindings ファイルを使った永続的で固有となるエイリアスが、mpathn の形式でマルチパスに割り当てられます。no に設定すると、 WWID がマルチパスのエイリアスに使用されます。ただし、設定ファイルの multipaths セクションで指定されるデバイス固有のエイリアスの方が、ここでの設定よりも優先されることになります。デフォルト値は no です。 | ||||||||
retain_attached_hw_handler | SCSI 層で、ハードウェアハンドラーがパスデバイスに接続されている状態で、このパラメーターを yes に設定した場合は、multipath.conf ファイルで指定している hardware_handler の使用をデバイスに強制しません。SCSI 層でハードウェアハンドラーの接続が行われていない場合は、通常通り、マルチパスで設定されているハードウェアハンドラーの使用が継続されます。デフォルト値は no です。 | ||||||||
detect_prio | yes に設定すると、デバイスで ALUA に対応しているかを最初にチェックします。対応している場合は、alua prioritizer をデバイスに割り当てます。デバイスが ALUA に対応していない場合は、通常通り prioritizer の特定を行います。 | ||||||||
uid_attribute | 固有のパス識別子を与えます。 | ||||||||
delay_watch_checks | (Red Hat Enterprise Linux Release 7.2 以降) 0 よりも大きい値に設定した場合、multipathd デーモンは、指定しているチェック回数の間、有効なパスを監視します。監視されているパスが再び失敗すると、パスが次に有効になったときに、delay_wait_checks で指定した連続的なチェック回数の間保持されるまで使用されません。これにより、信用できないパスがオンラインに戻ったときにすぐに使用されることを防ぐことができます。 | ||||||||
delay_wait_checks | (Red Hat Enterprise Linux Release 7.2 以降) 0 よりも大きい値に設定すると、オンラインに戻ったデバイスが、delay_watch_checks で指定されたチェック回数内に再び失敗し、次にオンラインに戻るときに、デバイスはマークされ、遅延が発生します。デバイスは、delay_wait_checks で指定されたチェック回数が経過するまで使用されません。 | ||||||||
deferred_remove | yes に設定すると、multipathd は最終パスデバイスが削除されるときに通常の削除ではなく遅延された削除を行います。これにより、通常の削除が行われ、削除に失敗したときに multipathed デバイスが使用中である場合、デバイスは最終ユーザーがデバイスを終了したときに自動的に削除されます。 | ||||||||
skip_kpartx | (Red Hat Enterprise Linux Release 7.3 以降) yes に設定すると、kpartx は自動的にデバイスにパーティションを作成しません。これにより、デバイスにパーティションテーブルがある場合でも、パーティションを作成せずにマルチパスデバイスを作成することができます。 | ||||||||
max_sectors_kb | (Red Hat Enterprise Linux Release 7.4 以降) マルチパスデバイスの初回アクティベートの前に、max_sectors_kb デバイスキューパラメーターを、マルチパスデバイスの基本的なすべてのパスで指定されている値に設定します。マルチパスデバイスの作成時には、デバイスは、パスデバイスから max_sectors_kb 値を継承します。手動で、この値をマルチパスデバイス向けに高くしたり、パスデバイス向けに低くすると、マルチパスデバイスは、パスデバイスが許可するよりも大きな I/O 操作を作成する場合があります。max_sectors_kb パラメーターを使用すると、パスデバイス上にマルチパスデバイスを作成する前に容易にこれらの値が設定でき、無効なサイズの I/O 操作が渡されることを回避できます。ユーザーがこのパラメーターを設定しないと、パスデバイスはデバイスドライバーにこれを設定させ、マルチパスデバイスがパスデバイスからこれを継承します。 | ||||||||
detect_path_checker | (Red Hat Enterprise Linux Release 7.4 以降) yes に設定すると、マルチパスにより、デバイスが ALUA に対応しているかどうかが確認されます。対応している場合は、tur パスチェッカーが自動的に使用されます。対応していない場合は、通常通りに path_checker が選択されます。 |
マルチパス設定ファイルの
device エントリーの例を以下に示します。
# }
# device {
# vendor "COMPAQ "
# product "MSA1000 "
# path_grouping_policy multibus
# path_checker tur
# rr_weight priorities
# }
#}
Where did the comment section go?
Red Hat's documentation publication system recently went through an upgrade to enable speedier, more mobile-friendly content. We decided to re-evaluate our commenting platform to ensure that it meets your expectations and serves as an optimal feedback mechanism. During this redesign, we invite your input on providing feedback on Red Hat documentation via the discussion platform.