要求ルールでは、特定のストレージ デバイスへのパスを所有するマルチパス モジュールが決定されます。また、デバイスにホストが提供するマルチパス サポートの種類が定義されます。
マルチパス モジュールの詳細については、マルチパスの概念と略語を参照してください。
要求ルールはホストの /etc/vmware/esx.conf ファイルに一覧表示されます。
- コア要求ルール:これらの要求ルールでは、どのマルチパス モジュール(NMP、HPP、またはサードパーティ製のマルチパス モジュール)が特定のデバイスを要求するのかが決定されます。
- SATP 要求ルール:デバイスのタイプによっては、これらのルールにより、ベンダー固有のマルチパスの管理を提供する特定の SATP サブモジュールがデバイスに割り当てられます。
esxcli コマンドを使用して、コアおよび SATP 要求ルールを追加または変更できます。通常、サードパーティ製の MPP をロードするか、ホストに LUN を非表示にする要求ルールを追加します。特定のデバイスのデフォルト設定が不十分な場合に、要求ルールの変更が必要となる場合があります。
PSA 要求ルールの管理に使用できるコマンドの詳細については、『ESXCLI スタート ガイド』を参照してください。
ストレージ アレイのリストと対応する SATP および PSP については、『vSphere Compatibility Guide』の「Storage/SAN」セクションを参照してください。
マルチパスの考慮事項
ストレージ マルチパス プラグインと要求ルールを管理するとき、特定の考慮事項が適用されます。
次の考慮事項がマルチパスに役立ちます。
- 要求ルールによってデバイスに割り当てられる SATP が存在しない場合、iSCSI デバイスまたは FC デバイスのデフォルト SATP は VMW_SATP_DEFAULT_AA になります。デフォルト PSP は VMW_PSP_FIXED です。
- システムが SATP ルールを検索して、あるデバイスの SATP を見つけ出す場合、最初にドライバ ルールを検索します。マッチしなければベンダー ルールまたはモデル ルールを検索し、最後にトランスポート ルールを検索します。マッチしなければ、NMP はそのデバイスのデフォルトの SATP を選択します。
- VMW_SATP_ALUA が特定のストレージ デバイスに割り当てられていて、そのデバイスが ALUA 対応ではない場合、このデバイスにマッチする要求ルールはありません。そのデバイスは、デバイスのトランスポート タイプに基づき、デフォルト SATP が要求します。
- VMW_SATP_ALUA が要求するすべてのデバイスのデフォルト PSP は VMW_PSP_MRU です。VMW_PSP_MRU は、VMW_SATP_ALUA が報告する有効/最適化状態のパス、または有効/最適化状態のパスがない場合は、有効/非最適化状態のパスを選択します。これよりも状態の良いパスが見つかるまで、このパスが使用されます (MRU)。たとえば現在 VMW_PSP_MRU が有効/非最適化状態のパスを使用していて、有効/最適化状態のパスが使用可能になったとすると、VMW_PSP_MRU は現在のパスを有効/最適化状態のパスにスイッチします。
- デフォルトでは通常、ALUA アレイに VMW_PSP_MRU が選択されていますが、特定の ALUA ストレージ アレイでは VMW_PSP_FIXED を使用する必要があります。使用しているストレージ アレイで VMW_PSP_FIXED が必要かどうかを確認するには、『VMware 互換性ガイド』を参照するか、ストレージ ベンダーにお問い合わせください。ALUA アレイで VMW_PSP_FIXED を使用するときは、優先パスを明示的に指定する場合を除き、ESXi ホストで機能している最適なパスを選択してそのパスをデフォルトの優先パスに設定します。ホストで選択したパスが使用できなくなると、ホストは使用可能な代替パスを選択します。ただし、優先パスを明示的に設定すると、ステータスにかかわらず優先パスが使用されます。
- デフォルトでは、PSA 要求ルール 101 は、Dell アレイ擬似デバイスをマスクします。このデバイスのマスクを解除する場合以外は、このルールを削除しないでください。
ホストのマルチパスの要求ルールの一覧表示
esxcli コマンドを使用して、使用可能なマルチパスの要求ルールをリスト表示します。
要求ルールは、NMP、HPP、またはサードパーティ製マルチパス モジュールが特定の物理パスを管理するかどうかを指定します。各要求ルールでは、次のパラメータに基づいてパスのセットを識別します。
- ベンダーまたはモデルの文字列
- SATA、IDE、ファイバ チャネルなどのトランスポート
- アダプタ、ターゲット、または LUN の場所
- デバイス ドライバ (たとえば Mega-RAID)
手順
- ♦ esxcli storage core claimrule list --claimrule-class=MP コマンドを実行して、マルチパスの要求ルールを一覧表示します。
claimrule-class オプションを使用しないは、MP ルール クラスが使用されます。
例: esxcli storage core claimrule list コマンドのサンプル出力
Rule Class Rule Class Type Plugin Matches MP 10 runtime vendor HPP vendor=NVMe model=* MP 10 file vendor HPP vendor=NVMe model=* MP 50 runtime transport NMP transport=usb MP 51 runtime transport NMP transport=sata MP 52 runtime transport NMP transport=ide MP 53 runtime transport NMP transport=block MP 54 runtime transport NMP transport=unknown MP 101 runtime vendor MASK_PATH vendor=DELL model=Universal Xport MP 101 file vendor MASK_PATH vendor=DELL model=Universal Xport MP 200 runtime vendor MPP_1 vendor=NewVend model=* MP 200 file vendor MPP_1 vendor=NewVend model=* MP 201 runtime location MPP_2 adapter=vmhba41 channel=* target=* lun=* MP 201 file location MPP_2 adapter=vmhba41 channel=* target=* lun=* MP 202 runtime driver MPP_3 driver=megaraid MP 202 file driver MPP_3 driver=megaraid MP 65535 runtime vendor NMP vendor=* model=*
- NMP は、USB、SATA、IDE、およびブロック SCSI トランスポートを使用するストレージ デバイスに接続されているすべてのパスを要求します。
- HPP、MPP_1、MPP_2、および MPP_3 のルールが追加されたため、モジュールは指定したデバイスを要求できるようになりました。たとえば、HPP はベンダー NVMe のすべてのデバイスを要求します。インボックス nvme ドライバで処理されるすべてのデバイスが、実際のベンダーに関係なく、要求されます。MPP_1 モジュールは、NewVend ストレージ アレイの任意のモデルに接続されているすべてのパスを要求します。
- MASK_PATH モジュールを使用して、使用されていないデバイスをホストから隠します。デフォルトで、PSA 要求ルール 101 は、DELL のベンダー文字列と Universal Xport のモデル文字列で Dell アレイ擬似デバイスをマスクします。
- 出力の Rule Class 列は、要求ルールのカテゴリを示します。カテゴリは、MP (マルチパス プラグイン)、Filter (フィルタ)、または VAAI のいずれかです。
- Class 列は、定義されているルールとロードされているルールを示します。Class 列の file パラメータは、ルールが定義されていることを表します。runtime パラメータは、ルールがシステムにロードされたことを表します。ユーザー定義の要求ルールを有効にするには、同じルール番号の行が 2 つ存在しなければなりません。1 つは file パラメータの行で、もう 1 つは runtime の行です。いくつかのデフォルトのシステム定義要求ルールには、Class が runtime となっている行が 1 つのみあります。これらのルールは変更できません。
- デフォルト ルール 65535 は、 要求を受けていないすべてのパスを NMP に割り当てます。このルールを削除しないでください。
マルチパスの要求ルールの追加
esxcli コマンドを使用して、マルチパス PSA 要求ルールをシステムの要求ルール セットに追加します。新規の要求ルールを有効にするには、まずルールを定義してから、使用しているシステムにロードします。
- 新規のサードパーティ製マルチパス モジュールをロードしており、このモジュールが要求するパスを定義する必要がある。
- ネイティブの HPP を有効にする必要がある。
前提条件
ESXCLI をインストールします。ESXCLI スタート ガイドを参照してください。トラブルシューティングするには、ESXi Shellで esxcli コマンドを実行します。
手順
例: マルチパスの要求ルールの定義
次の例では、ルール番号 500 を追加してロードします。このルールは、モデル文字列に NewMod およびベンダー文字列に NewVend を持つすべてのパスを NMP プラグインに要求します。
# esxcli storage core claimrule add -r 500 -t vendor -V NewVend -M NewMod -P NMP
# esxcli storage core claimrule load
esxcli storage core claimrule list コマンドを実行すると、リストに新規の要求ルールが表示されます。
Rule Class Rule Class Type Plugin Matches ... ... ... ... ... ... MP 500 runtime vendor NMP vendor=NewVend model=NewMod MP 500 file vendor NMP vendor=NewVend model=NewMod
マルチパスの要求ルールの削除
esxcli コマンドを使用して、マルチパス PSA 要求ルールをシステムの要求ルール セットから削除します。
前提条件
ESXCLI をインストールします。ESXCLI スタート ガイドを参照してください。トラブルシューティングするには、ESXi Shellで esxcli コマンドを実行します。
手順
パスのマスク
ホストがストレージ デバイスや LUN にアクセスできないよう、または LUN への個々のパスを使用できないように設定できます。esxcli コマンドを使用して、パスをマスクします。パスをマスクする場合、指定したパスに MASK_PATH プラグインを割り当てる要求ルールを作成します。
前提条件
ESXCLI をインストールします。ESXCLI スタート ガイドを参照してください。トラブルシューティングするには、ESXi Shellで esxcli コマンドを実行します。
手順
結果
例: LUN のマスキング
この例では、ストレージ アダプタ vmhba2 および vmhba3 を介してアクセスされるターゲット T1 および T2 の LUN 20 をマスクします。
-
#esxcli storage core claimrule list
-
#esxcli storage core claimrule add -P MASK_PATH -r 109 -t location -A vmhba2 -C 0 -T 1 -L 20 #esxcli storage core claimrule add -P MASK_PATH -r 110 -t location -A vmhba3 -C 0 -T 1 -L 20 #esxcli storage core claimrule add -P MASK_PATH -r 111 -t location -A vmhba2 -C 0 -T 2 -L 20 #esxcli storage core claimrule add -P MASK_PATH -r 112 -t location -A vmhba3 -C 0 -T 2 -L 20
-
#esxcli storage core claimrule load
-
#esxcli storage core claimrule list
-
#esxcli storage core claiming unclaim -t location -A vmhba2 #esxcli storage core claiming unclaim -t location -A vmhba3
-
#esxcli storage core claimrule run
パスのマスク解除
ホストがマスクされたストレージ デバイスにアクセスする必要がある場合、そのデバイスのパスのマスクを解除します。
前提条件
ESXCLI をインストールします。ESXCLI スタート ガイドを参照してください。トラブルシューティングするには、ESXi Shellで esxcli コマンドを実行します。
手順
結果
NMP SATP ルールの定義
NMP SATP 要求ルールでは、ストレージ デバイスをどの SATP で管理するのかを定義します。通常は、ストレージ デバイスに指定されたデフォルトの SATP を使用しても問題ありません。デフォルト設定では不十分な場合は、esxcli コマンドを使用して特定のデバイスの SATP を変更します。
前提条件
ESXCLI をインストールします。ESXCLI スタート ガイドを参照してください。トラブルシューティングするには、ESXi Shellで esxcli コマンドを実行します。
手順
例: NMP SATP ルールの定義
次のサンプル コマンドでは、VMW_SATP_INV プラグインを割り当て、ベンダー文字列に NewVend およびモデル文字列に NewMod を持つストレージ アレイを管理します。
# esxcli storage nmp satp rule add -V NewVend -M NewMod -s VMW_SATP_INV
esxcli storage nmp satp list -s VMW_SATP_INV コマンドを実行すると、VMW_SATP_INV ルールのリストに新しいルールが表示されます。