PowerStore:NVMe/TCPを使用するvSphere環境で、単一のPowerStoreノードが使用できない場合にI/Oタイムアウトが発生する

概要: vSphere 8.0U2およびNVMe/TCPを使用している場合、単一のPowerStoreノードが使用できないシナリオでI/Oタイムアウトが発生することがあります。(ユーザーが修正可能)

この記事は次に適用されます: この記事は次には適用されません: この記事は、特定の製品に関連付けられていません。 すべての製品パージョンがこの記事に記載されているわけではありません。

現象

vSphere 8.0U2およびNVMe/TCPをストレージ プロトコルとして使用すると、単一のPowerStoreノードが使用不可となるシナリオでI/Oタイムアウトが発生することがあります。

 

このようなシナリオの例:

  • PowerStore NDU
  • PowerStoreノードのシャットダウン
  • ノード パニックやネットワークの中断などの予期しない状況

 

この問題は、次の状況で発生する可能性があります。

  • ESXiバージョン8.0U2が使用されている
  • NVMe/TCPプロトコルが使用されます
  • 1つのPowerStoreノードが何らかの理由で使用不可になり、別のノードは使用可能なままです
  • I/Oタイムアウトは、ESXiによってホストされているVMで実行されているアプリケーション、またはVMにインストールされているオペレーティング システムによって観察されます
  • PowerStore I/Oメトリックに長時間実行されるI/Oが表示されない

 

この問題の影響を受けるのはNVMe/TCPのみです。NVMe/FC、iSCSI、FCプロトコルは影響を受けません。この問題はESXiホストにのみ影響し、他のタイプのホストはこの問題の影響を受けません。

この問題は、アプリケーション エラーとして、またはESXiホストによってホストされているVM内で実行されているアプリケーション サービスへの影響として現れる場合があります。また、ゲスト オペレーティング システム(ESXiホストで実行されているVMにインストールされているオペレーティング システム)でエラーが発生する可能性もあります。影響のレベルは、アプリケーション ソフトウェアがI/Oタイムアウトを処理する方法に起因します。

この問題は断続的に発生します。複数のホストが接続されている場合、一部のホストのみが問題を経験する可能性があります。

この問題は、vVolデータストアと非vVolデータストアの両方に影響します。

 

原因

これは、ESXi 8.0U2の問題が原因です。あるPowerStoreノードのNVMe/TCPコントローラーが何らかの理由で使用できなくなったが、別のノードが使用可能でI/Oを処理できる場合、パスのフェールオーバー プロセスに遅延が発生します。この遅延により、I/Oタイムアウトが発生する場合があります。

 

解決方法

NVMe/TCPをご利用のお客様には、ESXi 8.0U2を使用しないことをお勧めします。

 

メモ:

  • パッチ2より古いESXi 8.0U1では、同じシナリオで別の問題が発生するため、回避する必要があります。VMware KB記事 https://kb.vmware.com/s/article/94106 へのリンクこのハイパーリンクをクリックすると、デル・テクノロジーズ以外のWebサイトにアクセスします。
  • ESXiのバージョンのみが重要です。バージョンに互換性がある限り、ESXi 8.0Uoneパッチ2またはその他の構成でvCenter 8.0U2を使用できます。

 

この修正は、今後のESXi 8.0U3に含まれる予定です。

 

VMFSおよびNFSデータストアの回避策

従来の(非vVol)データストアを使用しているお客様は、回避策を利用できます。回避策は、NVMe/TCP I/Oコントローラーの作成時に、より低いキープアライブ タイムアウトを適用することです。
すでに存在するコントローラーのタイムアウトを変更することはできません。コントローラーがすでに作成されている場合は、それらを削除し、タイムアウト値を短縮して再作成することができます。
デフォルトのタイムアウト値は 30 秒です。必要なI/Oフェールオーバー時間がN秒の場合、短縮されるタイムアウト値はN/2 - 10秒を超えないようにする必要があります。たとえば、目的のフェールオーバー時間が60秒の場合は、20秒を使用する必要があります(60/2 - 10 = 20)。

手順1:NVMe/TCPコントローラーを削除します(すでに存在する場合)

vSphere UI

  1. vSphere UIでホストを選択します
  2. [Configure → Storage Adapters]に移動します
  3. NVMe/TCPアダプターの選択
  4. アダプター リストの下にある [Controllers ]タブに移動します
  5. コントローラーを選択し、[削除]をクリックします

コントローラーを取り外す前に、コントローラーがI/Oに使用されていないことを確認してください。そうしないと、コントローラーを通過するI/Oが中断される可能性があります。
コントローラーがI/Oに使用されていないことを確認します

 

CLI
「」を使用してコントローラーを一覧表示します。esxcli nvme controller list' を使用して切断します。esxcli nvme fabrics disconnect'.

[root@hoABCDEF:~] esxcli nvme controller list
Name                                                                                   Controller Number  Adapter  Transport Type  Is Online  Is VVOL
-------------------------------------------------------------------------------------  -----------------  -------  --------------  ---------  -------
nqn.xxx-11.com.xxxx:powerstore:00:042d0bc302a61CBF6EA0#vmhba67#xx.xxx.x.xxx:4420                    4435  vmhba67  TCP                  true    false
nqn.xxx-11.com.xxxx:powerstore:00:042d0bc302a61CBF6EA0#vmhba67#xx.xxx.x.xxx:4420                    4436  vmhba67  TCP                  true    false
nqn.xxx-08.org.xxxxyyy.discovery#vvol#vmhba67#xx.xxx.x.xxx:8009                                  4488  vmhba67  TCP                  true     true
nqn.xxx-11.com.xxxx:powerstore:00:042d0bc302a61CBF6EA0#vvol#vmhba67#xx.xxx.x.xxx               4490  vmhba67  TCP                  true     true
nqn.xxx-11.com.xxxx:powerstore:00:042d0bc302a61CBF6EA0#vvol#vmhba67#xx.xxx.x.xxx               4489  vmhba67  TCP                  true     true
nqn.xxx-08.org.xxxxyyy.discovery#vvol#xx.xxx.x.xxx:8009                                  4491  vmhba67  TCP                  true     true
 
[root@hop051108:~] esxcli nvme fabrics disconnect -a vmhba67 -n 4435

 

手順2:タイムアウト値を小さくしてコントローラーを再作成します。

コントローラーを作成するには、次のパラメーターが必要です。

  • PowerStoreクラスターNQN
  • PowerStoreストレージIPアドレス

 

これらの値は、コントローラーを削除する前にvSphere UIまたはesxcli nvme controller listの出力からコピーするか、PowerStore Managerから取得できます。

NQNを取得するには、[Settings]→[Properties]の順に移動し、[NVMe Qualified Name]の値をコピーします。
NVMe修飾名の値のコピー

ストレージIPは、 Settings → Network IPs→Select storage network → Modifyで使用できます。
ストレージIPは、Selectストレージ ネットワークで使用できます

これらの値を取得したら、次のようにコントローラーを作成できます。

 

vSphere UI
ホストを選択して →→ストレージ アダプターを構成し→アダプターを選択して→コントローラー →を手動で追加します。

タイムアウト値は、[Keepalive Timeout]フィールドにコピーする必要があります。
[キープアライブ タイムアウト(Keepalive Timeout)] フィールド

 

CLI
使う esxcli nvme fabrics connect -i <storage ip> -p 4420 -a <adapter id> -s <powerstore's NQN> -t <timeout>

[root@hoABCDEF:~] esxcli nvme fabrics connect -i 10.xxx.x.xx -p 4420 -a vmhba67 -s

 

対象製品

PowerStore
文書のプロパティ
文書番号: 000223711
文書の種類: Solution
最終更新: 14 6月 2025
バージョン:  4
質問に対する他のDellユーザーからの回答を見つける
サポート サービス
お使いのデバイスがサポート サービスの対象かどうかを確認してください。