vSphere 6.x および 7.x での永続的なデバイスの損失 (PDL) と全パス ダウン (APD)
search cancel

vSphere 6.x および 7.x での永続的なデバイスの損失 (PDL) と全パス ダウン (APD)

book

Article ID: 322025

calendar_today

Updated On:

Products

VMware vCenter Server VMware vSphere ESXi

Issue/Introduction

この記事では、ESXi 6.x/7.x での永続的なデバイスの損失 (PDL) および全パス ダウン (APD) について説明し、これらの各シナリオでの対処方法に関する情報を提供します。

Symptoms:

免責事項: これは英文の記事 「Permanent Device Loss (PDL) and All-Paths-Down (APD) in vSphere 5.x (2004684)」の日本語訳です。記事はベストエフォートで翻訳を進めているため、ローカライズ化コンテンツは最新情報ではない可能性があります。最新情報は英語版の記事で参照してください。


永続的なデバイスの損失 (PDL)

  • [ストレージ] ビューで、データストアが使用不可として表示される
  • ストレージ アダプタにより、そのデバイスの動作状態が [通信切断] として示される
  • デバイスへのすべてのパスが [Dead] としてマークされる
  • /var/log/vmkernel.log ファイルに次のようなエントリが表示される。
    cpu2:853571)VMW_SATP_ALUA: satp_alua_issueCommandOnPath:661: Path "vmhba4:C0:T0:L0" (PERM LOSS) command 0xa3 failed with status Device is permanently unavailable. H:0x0 D:0x2 P:0x0 Valid sense data: 0x5 0x25 0x0.
    cpu2:853571)WARNING: vmw_psp_rr: psp_rrSelectPathToActivate:972:Could not select path for device "naa.60a98000572d54724a34642d71325763".
    cpu2:853571)WARNING: ScsiDevice: 1223: Device :naa.60a98000572d54724a34642d71325763 has been removed or is permanently inaccessible.
    cpu3:2132)ScsiDeviceIO: 2288: Cmd(0x4124403c1fc0) 0x9e, CmdSN 0xec86 to dev "naa.60a98000572d54724a34642d71325763" failed H:0x8 D:0x0 P:0x0
    cpu3:2132)WARNING: NMP: nmp_DeviceStartLoop:721:NMP Device "naa.60a98000572d54724a34642d71325763" is blocked. Not starting I/O from device.
    cpu2:2127)ScsiDeviceIO: 2316: Cmd(0x4124403c1fc0) 0x25, CmdSN 0xecab to dev "naa.60a98000572d54724a34642d71325763" failed H:0x1 D:0x0 P:0x0 Possible sense data: 0x5 0x25 0x0.
    cpu2:854568)WARNING: ScsiDeviceIO: 7330: READ CAPACITY on device "naa.60a98000572d54724a34642d71325763" from Plugin "NMP" failed. I/O error
    cpu2:854568)ScsiDevice: 1238: Permanently inaccessible device :naa.60a98000572d54724a34642d71325763 has no more open connections. It is now safe to unmount datastores (if any) and delete the device.


全パス ダウン (APD)

  • [ストレージ] ビューで、データストアが使用不可として表示される
  • ストレージ アダプタにより、そのデバイスの動作状態が [Dead] または [Error] として示される
  • デバイスへのすべてのパスが [Dead] としてマークされる
  • vSphere Client を使用して ESXi ホストに直接接続することができない
  • ESXi ホストが vCenter Server で切断状態として示される
  • /var/log/vmkernel.log ファイルに次のようなエントリが表示される。

    cpu1:2049)WARNING: NMP: nmp_IssueCommandToDevice:2954:I/O could not be issued to device "naa.60a98000572d54724a34642d71325763" due to Not found
    cpu1:2049)WARNING: NMP: nmp_DeviceRetryCommand:133:Device "naa.60a98000572d54724a34642d71325763": awaiting fast path state update for failover with I/O blocked. No prior reservation exists on the device.
    cpu1:2049)WARNING: NMP: nmp_DeviceStartLoop:721:NMP Device "naa.60a98000572d54724a34642d71325763" is blocked. Not starting I/O from device.
    cpu1:2642)WARNING: NMP: nmpDeviceAttemptFailover:599:Retry world failover device "naa.60a98000572d54724a34642d71325763" - issuing command 0x4124007ba7c0
    cpu1:2642)WARNING: NMP: nmpDeviceAttemptFailover:658:Retry world failover device "naa.60a98000572d54724a34642d71325763" - failed to issue command due to Not found (APD), try again...
    cpu1:2642)WARNING: NMP: nmpDeviceAttemptFailover:708:Logical device "naa.60a98000572d54724a34642d71325763": awaiting fast path state update...
     
  • 管理エージェントの再起動で、次のようなエラーが表示されることがある。

    Not all VMFS volumes were updated; the error encountered was 'No connection'.
    Errors:
    Rescan complete, however some dead paths were not removed because they were in use by the system. Please use the 'storage core device world list' command to see the VMkernel worlds still using these paths.
    Error while scanning interfaces, unable to continue. Error was Not all VMFS volumes were updated; the error encountered was 'No connection'.
     
  • デバイスがリストに表示されなくなることもある。

    cpu17:10107)WARNING: Vol3: 1717: Failed to refresh FS 4beb089b-68037158-2ecc-00215eda1af6 descriptor: Device is permanently unavailable
    cpu17:10107)ScsiDeviceIO: 2316: Cmd(0x412442939bc0) 0x28, CmdSN 0x367bb6 from world 10107 to dev "eui.00173800084f0005" failed H:0x1 D:0x0 P:0x0 Possible sense data: 0x0 0x0 0x0.
    cpu17:10107)Vol3: 1767: Error refreshing PB resMeta: Device is permanently unavailable


Environment

VMware vCenter Server 7.0.x
VMware vSphere ESXi 8.0.0
VMware vSphere ESXi 6.7
VMware vCenter Server 6.7.x
VMware vCenter Server 8.0.0
VMware vSphere ESXi 7.0.0
VMware vSphere ESXi 6.5
VMware vCenter Server 6.5.x

Resolution

全パス ダウン (APD)

デバイスへのすべてのパスが停止すると、全パス ダウン (APD) 状況が発生します。 これが永続的なデバイスの損失か、または一時的なものなのかを判別できないため、ESXi ホストは接続の再確立を試行し続けます。 APD スタイルの状況は、一般に、ESXi/ESX ホストから LUN が誤って提供解除されるときに発生します。 ESXi/ESX ホストは、デバイスは使用可能という認識を持ち続け、すべての SCSI コマンドを無期限に再試行します。 これは、デバイスが再びアクセス可能になるまで管理エージェントのコマンドに対する応答がなくなるため、管理エージェントに影響があります。 このため ESXi/ESX ホストは、vCenter Server でアクセス不能になるか、応答しなくなります。
 
PDL SCSI 認識コードがデバイスから戻されない場合(ストレージ アレイに接続できない場合、またはサポートされる PDL SCSI コードを戻さないストレージ アレイの場合)、そのデバイスは全パス ダウン (APD) 状態にあり、ESXi ホストは応答を受信するまで I/O 要求を送信し続けます。

ESXi ホストは、デバイスの損失が永続的 (PDL) か一時的 (APD) かを判別できないため、次の I/O を含む SCSI I/O を無期限に再試行します。
  • ユーザーワールド I/O(hostd 管理エージェント)
  • 仮想マシンのゲスト I/O
  •  I/O 要求がゲストから発行される場合は、オペレーティング システムがタイムアウトし、I/O を中止します。
  • APD 状況はその性質のため、完全に回復する方法はありません。
  • APD 状況は、ストレージ アレイ/ファブリック レイヤーで解決して、ホストへの接続を復元する必要があります。
  • 影響を受けるすべての ESXi ホストでは、再起動して、影響を受ける APD 状態のデバイスに対する残存参照すべてを取り除く必要があります。
  • 影響を受けない仮想マシンの vMotion 移行を実行することはできません。これは、管理エージェントが APD 状態の影響を受けている可能性があり、ESXi ホストが管理対象外になっている可能性があるためです。 その結果、影響を受けた ESXi ホストを再起動すると、そのホスト上の影響を受けていないすべての仮想マシンが強制的に停止されます。
  • vSphere 6.0 以降には、vSphere HA の一部として VM Component Protection (VMCP) と呼ばれるパワフルな新機能があります。 VMCP は仮想マシンを、ストレージ関連のイベント、具体的には永続的なデバイスの損失 (PDL) および全パス ダウン (APD) のインシデントから保護します。 詳細については、『vSphere Availability Guide』の「VM Component Protection」セクションを参照してください。
永続的なデバイス損失(PDL)
永続的に失われるデバイス (PDL) と、不明な理由ですべてのパスが停止する (APD) 一時的な問題が明確に区別されていました。

たとえば、VMkernel のログにおいて、H:0x0 D:0x2 P:0x0 Valid sense data: 0x5 0x25 0x0 または Logical Unit Not Supported のSCSI 認識コードのログがストレージ デバイスによって ESXi 5.x/6.0 ホストに記録される場合、デバイスが ESXi ホストに永続的にアクセス不能であるか、永続的なデバイスの損失 (PDL) 状態にあることを示します。 ESXi ホストは、デバイスへの接続の再確立、またはコマンドの発行を試行しなくなっています。

回復不可能なハードウェア エラーが発生したデバイスは、永続的なデバイスの損失 (PDL) 状態にあるデバイスとしても認識されます。

次の表に、デバイスが PDL 状態にあるかどうかを判別するための、考えられる SCSI 認識コードの概要を示します。
SCSI Sense CodeDescription
H:0x0 D:0x2 P:0x0 Valid sense data: 0x__ /0x25/0x0*LOGICAL UNIT NOT SUPPORTED
H:0x0 D:0x2 P:0x0 Valid sense data: 0x__/0x68/0x0*LOGICAL UNIT NOT CONFIGURED
H:0x0 D:0x2 P:0x0 Valid sense data: 0x4/0x4c/0x0HARDWARE ERROR/LOGICAL UNIT FAILED SELF-CONFIGURATION
H:0x0 D:0x2 P:0x0 Valid sense data: 0x4/0x3e/0x3HARDWARE ERROR/LOGICAL UNIT FAILED SELF-TEST
H:0x0 D:0x2 P:0x0 Valid sense data: 0x4/0x3e/0x1HARDWARE ERROR/LOGICAL UNIT FAILURE
H:0x0 D:0x2 P:0x0 Valid sense data: 0x2/0x4c/0x0NOT READY/LOGICAL UNIT FAILED SELF-CONFIGURATION
H:0x0 D:0x2 P:0x0 Valid sense data: 0x2/0x3e/0x3NOT READY/LOGICAL UNIT FAILED SELF-TEST
H:0x0 D:0x2 P:0x0 Valid sense data: 0x2/0x3e/0x1NOT READY/LOGICAL UNIT FAILURE


* ESXiはASC / ASCQのみをチェックし、0x25 / 0x0または0x68 / 0x0の場合、デバイスをPDLとしてマークします。

: 一部の iSCSI アレイでは、1 対 1 の関係として LUN をターゲットにマップします。 つまり、ターゲットごとに LUN が 1 つだけ存在することになります。 この場合、iSCSI アレイによって適切な SCSI 認識コードが戻されることはないため、これらのアレイ タイプで PDL を検出することはできません。 ただし、ESXi 5.1 では、機能強化が図られており、iSCSI イニシエータはセッションの終了後にターゲットへの再ログインを試みます。 デバイスがアクセス不能の場合、ストレージ システムはホストのストレージへのアクセスの試みを拒否します。 アレイからの応答に応じて、ホストはデバイスを PDL としてマークすることができます。
 

 

 


    計画 PDL と未計画 PDL

    計画 PDL は、ESXi ホストに対して提供されたデバイスを削除しようとした場合に発生します。 ストレージ アレイでストレージ デバイスを提供解除できるようにするため、まずデータストアをアンマウントし、それからデバイスを分離する必要があります。詳細については、ESXiホストからLUNをアンマウントまたはデータストアデバイスを接続解除する方法(2004605)」 を参照してください。

    未計画 PDL は、ESXi ホストでアンマウントと分離が実行されることなく、ストレージ デバイスが予期せずにストレージ アレイから提供解除される場合に発生します。
     
    未計画 PDL 時にデバイスを自動的に削除する自動削除と呼ばれる機能が用意されています。 詳細については、「Disabling PDL AutoRemove feature vSphere 6.x/7.x (2059622).」を参照してください。


    未計画 PDL をクリーンアップするには、次の手順を実行します。
    1. データストアからのすべての実行中の仮想マシンは、パワーオフして vCenter Server から登録解除する必要があります。
    2. vSphere Client で、ESXi ホストの [構成] タブに移動し、[ストレージ] をクリックします。
    3. 削除対象のデータストアを右クリックして、[アンマウント] をクリックします。[データストアのアンマウントの確認] ウィンドウが表示されます。
    4. 前提条件の基準を満たすと、[OK] ボタンが表示されます。

      LUN をアンマウントするときに次のエラーが表示される場合:

      Call datastore refresh for object <name_of_LUN> on vCenter server <name_of_vCenter> failed

      スナップショット LUN が見えている可能性があります。 この問題を解決するには、アレイ側でそのスナップショット LUN を削除します。
       
    5. LUN が見える可能性のあるすべての ESXi ホストで再スキャンを実行します。

      : デバイスまたは保留中の I/O に対するアクティブな参照がある場合は、再スキャンの後も ESXi ホストにデバイスのリストが表示されます。 仮想マシン、テンプレート、ISO イメージ、フロッピー イメージ、および Raw デバイス マッピングで、デバイスまたはデータストアに対するアクティブな参照が残っていないかどうかを調べてください。
       
    6. LUN がその後も使用され、再び使用可能になっている場合は、各ホストに移動し、その LUN を右クリックして、[マウント] をクリックします。

      : 未計画 PDL の原因の 1 つは、LUN がスペースを使用し尽くしてアクセス不能になることです。


    Additional Information