この製品のドキュメントセットは、偏向のない言語を使用するように配慮されています。このドキュメントセットでの偏向のない言語とは、年齢、障害、性別、人種的アイデンティティ、民族的アイデンティティ、性的指向、社会経済的地位、およびインターセクショナリティに基づく差別を意味しない言語として定義されています。製品ソフトウェアのユーザインターフェイスにハードコードされている言語、RFP のドキュメントに基づいて使用されている言語、または参照されているサードパーティ製品で使用されている言語によりドキュメントに例外が存在する場合があります。シスコのインクルーシブ ランゲージの取り組みの詳細は、こちらをご覧ください。
シスコは世界中のユーザにそれぞれの言語でサポート コンテンツを提供するために、機械と人による翻訳を組み合わせて、本ドキュメントを翻訳しています。ただし、最高度の機械翻訳であっても、専門家による翻訳のような正確性は確保されません。シスコは、これら翻訳の正確性について法的責任を負いません。原典である英語版(リンクからアクセス可能)もあわせて参照することを推奨します。
このドキュメントでは、ネイティブファイバチャネルネットワークインターフェイスカード(nfnic)ドライバ上で最大キュー深さ(Queue Depth)と未処理の入出力(I/O)を設定するプロセスについて説明します。VMware ESXi 6.7ハイパーバイザでは、ファイバチャネルネットワークインターフェイスカード(fnic)ドライバがすべてのシスコアダプタのnfnicドライバに置き換えられました。
nfnicドライバのデフォルトのキュー項目数は32に設定されており、nfnicドライバのすべての初期リリースでは、nfnicキュー項目数を調整する方法はありません。これにより、すべての最大デバイスキュー深度とディスクスケジュール番号要求が32に制限されます。推奨キュー項目数が128であるため、vSphere仮想ボリュームの使用中に問題が発生します。この制限の影響は、一般的に高い作業負荷が必要なVMでも発生します。
著者:Michael Baba、Josh Good、Alejandro MarinoCisco TACエンジニア
キュー項目数パラメータを設定する機能を追加するための機能拡張:https://bst.cloudapps.cisco.com/bugsearch/bug/CSCvo09082
nfnicドライバのバージョン4.0.0.35以降では、ESXiコマンドラインインターフェイス(CLI)を使用して「lun_queue_depth_per_path」を調整できます。 このドライババージョンは、ESXiホストに手動でインストールできます(まだインストールされていない場合)。
nfnicドライバ4.0.0.35は、UCSブレードファームウェアバンドル4.0.4に含まれており、VMwareとは別にダウンロードすることもできます。ご使用のハードウェアとソフトウェアの組み合わせに適した最新の推奨ドライバを入手するには、「UCSハードウェアとソフトウェアの互換性」ページを参照してください。
現在インストールされているバージョンのnfnicドライバを確認するには、次のコマンドを実行します。
esxcli software vib list | grep nfnic
次のように表示されます。
[root@localhost:~] esxcli software vib list | grep nfnic nfnic 4.0.0.14-1OEM.670.1.28.10302608 Cisco VMwareCertified 2019-08-24 [root@localhost:~]
出力が表示されない場合は、現在nfnicドライバがインストールされていません。ご使用の構成でnfnicドライバまたはfnicドライバを使用する必要があるかどうかを確認するには、「UCSハードウェアとソフトウェアの互換性」ページを参照してください。
最新のドライバをインストールする詳細な手順は、このガイドの範囲外です。ドライバをアップグレードする手順については、『共通オペレーティングシステム用のUCSドライバのインストール』またはVMwareのマニュアルを参照してください。ドライバをアップグレードしたら、上記と同じコマンドを使用してバージョンを確認できます。
正しいドライバがインストールされたら、次のコマンドでモジュールパラメータを設定できることを確認できます。
esxcli system module parameters list -m nfnic
この出力では、デフォルト値が32に設定されていることがわかります。ただし、1 ~ 1024の任意の値を設定できます。vSphere仮想ボリュームを使用する場合は、この値を128に設定することをお勧めします。他の具体的な推奨事項については、VMwareおよびストレージベンダーにお問い合わせください。
出力例:
[root@localhost:~] esxcli system module parameters list -m nfnic Name Type Value Description ------------------------ ----- ----- -------------------------------------------------------------- lun_queue_depth_per_path ulong nfnic lun queue depth per path: Default = 32. Range [1 - 1024] [root@localhost:~]
Queue Depthパラメータを変更するには、次のコマンドを使用します。次の例では、128に変更していますが、環境によって値が異なる場合があります。
esxcli system module parameters set -m nfnic -p lun_queue_depth_per_path=128
上記と同じコマンドを使用して、変更が行われたことを設定できます。
[root@localhost:~] esxcli system module parameters list -m nfnic Name Type Value Description ------------------------ ----- ----- -------------------------------------------------------------- lun_queue_depth_per_path ulong 128 nfnic lun queue depth per path: Default = 32. Range [1 - 1024] [root@localhost:~]
これで、プロトコルエンドポイントの未処理のIOを上記のキュー項目数(この例では128)に一致するように設定し、両方の値が128に変更されたことを確認できます。
注:この設定変更を行う前に、ホストをリブートする必要があります。
特定のデバイスのキュー項目数を変更するには、次の手順に従います。
esxcli storage core device set -O 128 -d naa.xxxxxxxxx
デバイスIDを検索するには、次のコマンドを使用します。
esxcli storage core device list
特定のデバイスの変更を確認するには、次の手順に従います。
esxcli storage core device list -d naa.xxxxxxxxxx
出力例を示します。「Device Max Queue Depth:」と「No of outstanding IOs with competitive world:」はどちらも32であることがわかります。
[root@localhost:~] esxcli storage core device list -d naa.600a09803830462d803f4c6e68664e2d naa.600a09803830462d803f4c6e68664e2d Display Name: VMWare_SAS_STG_01 Has Settable Display Name: true Size: 2097152 Device Type: Direct-Access Multipath Plugin: NMP Devfs Path: /vmfs/devices/disks/naa.600a09803830462d803f4c6e68664e2d Vendor: NETAPP ...snip for length... Is Boot Device: false Device Max Queue Depth: 32 No of outstanding IOs with competing worlds: 32 Drive Type: unknown RAID Level: unknown Number of Physical Drives: unknown Protection Enabled: false PI Activated: false PI Type: 0 PI Protection Mask: NO PROTECTION Supported Guard Types: NO GUARD SUPPORT DIX Enabled: false DIX Guard Type: NO GUARD SUPPORT Emulated DIX/DIF Enabled: false
次に、このデバイスの128に変更します
esxcli storage core device set -O 128 -d naa.600a09803830462d803f4c6e68664e2d
同じ出力をチェックすると、「Device Max Queue Depth:」と「No of outstanding IOs with competitive world:」がどちらも128になっています。変更がすぐに反映されない場合は、ESXiホストの再起動が必要になる可能性があります。
[root@localhost:~] esxcli storage core device list -d naa.600a09803830462d803f4c6e68664e2d naa.600a09803830462d803f4c6e68664e2d Display Name: VMWare_SAS_STG_01 Has Settable Display Name: true Size: 2097152 Device Type: Direct-Access Multipath Plugin: NMP Devfs Path: /vmfs/devices/disks/naa.600a09803830462d803f4c6e68664e2d Vendor: NETAPP ...snip for length... Is Boot Device: false Device Max Queue Depth: 128 No of outstanding IOs with competing worlds: 128 Drive Type: unknown RAID Level: unknown Number of Physical Drives: unknown Protection Enabled: false PI Activated: false PI Type: 0 PI Protection Mask: NO PROTECTION Supported Guard Types: NO GUARD SUPPORT DIX Enabled: false DIX Guard Type: NO GUARD SUPPORT Emulated DIX/DIF Enabled: false