ESXi ホストで仮想マシンをパワーオフできない
search cancel

ESXi ホストで仮想マシンをパワーオフできない

book

Article ID: 331552

calendar_today

Updated On:

Products

VMware vSphere ESXi

Issue/Introduction

この記事では、ESXi 環境で仮想マシンを停止する方法について説明します。

:この記事は、ESXi にのみ適用され、ESX には適用されません。ESX ホストの場合は、「Powering off an unresponsive virtual machine on an ESX host (1004340)」を参照してください。

:応答しない仮想マシンの原因のトラブルシューティングを試みる場合、通常は、パフォーマンス メトリックを収集してから、仮想マシンをサスペンドまたはクラッシュして追加のトラブルシューティング情報を収集することをお勧めします。

詳細については、次を参照してください。



Symptoms:
免責事項:これは英文の記事「Unable to power off the virtual machine in an ESXi host (1014165)」の日本語訳です。記事はベストエフォートで翻訳を進めているため、ローカライズ化コンテンツは最新情報ではない可能性があります。最新情報は英語版の記事で参照してください。

  • ESXi ホストで仮想マシンをパワーオフできない。
  • 仮想マシンが応答せず、停止あるいは強制終了を実行できない。


Environment

VMware ESXi 4.0.x Embedded
VMware ESXi 3.5.x Embedded
VMware ESXi 4.1.x Installable
VMware ESXi 3.5.x Installable
VMware vSphere ESXi 5.5
VMware vSphere ESXi 6.0
VMware vSphere ESXi 5.1
VMware ESXi 4.1.x Embedded
VMware vSphere ESXi 5.0
VMware ESXi 4.0.x Installable

Resolution

警告:この記事のセクションおよび手順を順序どおりに実行してください。それぞれの手順が仮想マシンに影響を与える可能性があるため、セクションや手順を省略しないでください。

vSphere Client/vSphere Web Client を使用した仮想マシンのパワーオフ

クライアントを使用して仮想マシンの安全なパワーオフを試みます。

  1. vSphere Client または vSphere Web Client を VMware vCenter Server または VirtualCenter Server に接続します。
  2. 仮想マシンを右クリックし、[パワーオフ] をクリックします。「別のタスクがすでに進行中です」と表示されて電源操作が失敗する場合は、タスクが完了するまで待機するか、「Powering off a virtual machine fails with the error: Cannot power Off: Another task is already in progress (1027040)」または「vCenter operation times out with the error: Operation failed since another task is in progress (1004790)」を参照してください。
  3. 仮想マシンがまだ実行中の場合は、ホストから同じ操作を直接実行してみます。
  4. 仮想マシンを実行している ESXi ホストに vSphere Client または VMware Host Client を直接接続します。
  5. 仮想マシンを右クリックし、[パワーオフ] を選択します。
:vSphere 6.5 から、仮想マシンの暗号化を有効にして、仮想マシンとそのファイルを保護することができます。
暗号化が仮想マシン上で有効になっている場合は、一連の暗号化処理の権限が必要です。それがないと、仮想マシンをパワーオフできません。

権限の詳細については、『ESXi and vCenter Server 6.5 Documentation』の「暗号化タスクの前提条件と必要な権限」セクションを参照してください。
クライアントを使用して仮想マシンを正常にパワーオフできない場合は、いずれかのコマンドライン オプションを使用します。

vSphere Command-Line Interface ツールのインストール

vSphere Command-Line Interface (vCLI) は、この記事のいくつかの手順で使用します。続行する前に、このインターフェイスがインストールされていることを確認してください。 :リモート コマンドライン インターフェイスは、ESXi 4.x、ESXi 5.x、および ESXi 6.0 用の vSphere Management Assistant (vMA) からもアクセスできます。このツールを使用する場合は、『vSphere Command-Line Interface Installation and Reference Guide』の「vMA のインストールと vMA からのコマンドの実行」を参照してください。

仮想マシンの場所の特定

仮想マシンを実行しているホストを特定します。この情報は、VI Client の仮想マシンの [サマリ] タブで確認できます。以降のコマンドは、仮想マシンが実行されている ESXi ホスト上で実行されるか、リモートで参照されます。

ESXi esxcli コマンドを使用して仮想マシンをパワーオフする

esxcli コマンドは、ESXi 5.x 以降で実行されている仮想マシンをローカルあるいはリモートでパワーオフするために使用できます。詳細については、『vSphere Command-Line Interface Reference』の「esxcli vm コマンド」セクションを参照してください。

  1. ESXi Shell、vSphere Management Assistant (vMA) 、または vSphere Command-Line Interface (vCLI) がインストールされている場所で、esxcli ツールを使用できるコンソール セッションを開きます。
  2. 次のコマンドを実行して、ワールド ID、UUID、表示名、.vmx 構成ファイルへのパスで識別される、実行中の仮想マシンのリストを取得します。

    esxcli vm process list

  3. 次のコマンドを実行して、リストから仮想マシンをパワーオフします。

    esxcli vm process kill --type= [soft,hard,force] --world-id= WorldNumber


    • 3 つのパワーオフ方法があります。ソフトが最も安全なパワーオフ方法です。ハードは即時シャットダウンを実行します。強制は、最後の手段として使用してください。
    • 別のパワーオフ コマンド構文は、次のとおりです:esxcli vm process kill -t [soft,hard,force] -w WorldNumber

  4. 手順 2 を繰り返し、仮想マシンが実行されていないことを確認します。

ESXi 4.1 の場合:

  1. 次のコマンドを実行して、ワールド ID、UUID、表示名、.vmx 構成ファイルへのパスで識別される、実行中の仮想マシンのリストを取得します。

    esxcli vms vm list

  2. 次のコマンドを実行して、リストから仮想マシンをパワーオフします。

    esxcli vms vm kill --type= [soft,hard,force] --world-id= WorldNumber

ESXi コマンドライン ユーティリティ vim-cmd を使用して仮想マシンをパワーオフする

  1. ESXi コンソールで Tech Support モードにして、root としてログインします。詳細については、「Tech Support Mode for Emergency Support (1003677)」を参照してください。
  2. 次のコマンドを実行して、VMID、表示名、.vmx 構成ファイルへのパスで識別される、登録されたすべての仮想マシンのリストを取得します。

    vim-cmd vmsvc/getallvms

  3. 次のコマンドを実行して、仮想マシンの現在の状態を取得します。

    vim-cmd vmsvc/power.getstate VMID

  4. 手順 2 で取得した VMID を使用して仮想マシンをシャットダウンし、次のコマンドを実行します。

    vim-cmd vmsvc/power.shutdown VMID

    :仮想マシンがシャットダウンに失敗した場合は、次のコマンドを実行します。

    vim-cmd vmsvc/power.off VMID

ESXi へ仮想マシンをパワーオフする信号を送信する

仮想マシンは、プロセスに信号を送信することでコマンドラインから停止できます。

警告:この手順は、ESXi ホストにとって危険な場合があります。適切なプロセス ID(PID)を特定せず、誤ったプロセスを強制終了すると、予期せぬ結果となる場合があります。これらの手順を実行したあとでも問題が解決されない場合は、VMware テクニカル サポートにサポート リクエストを提出し、このナレッジ ベースの記事 ID(1014165)を問題の説明の中に記入してください。詳細については、「How to Submit a Support Request」を参照してください。

ESXi 3.5 以降では、kill コマンドを使用して実行中の仮想マシン プロセスに信号を送信し、そのプロセスを停止することができます。
  1. ESXi コンソールで Tech Support モードにして、root としてログインします。詳細については、「Tech Support Mode for Emergency Support (1003677)」を参照してください。
  2. 次のコマンドを実行して、仮想マシン プロセスが ESXi ホスト上で実行しているかどうかを特定します。

    ps | grep vmx

    出力は次のようになります。

    7662 7662 vmx /bin/vmx
    7667 7662 vmx /bin/vmx
    7668 7662 mks:VirtualMachineName /bin/vmx
    7669 7662 vcpu-0:VirtualMachineName /bin/vmx


    vmx プロセスごとに 1 つずつ、いくつかの行が返されます。ターゲット仮想マシンの親 vmx プロセスを特定します。最初の列には PID が含まれており、2 つめの列には親 PID が含まれています。親プロセスのみを終了するようにしてください。各プロセスの親プロセス ID(PID)は、2 列目に一覧表示されており、この例では太字で示されています。次の手順のためにこの数字をメモしておきます。

    注意:修正を試みる仮想マシンのみに特有の行を特定していることを確認してください。問題となっている仮想マシン以外の仮想マシンでこのプロセスを続行すると、他の仮想マシンのダウンタイムの原因となります。

  3. vmx プロセスがリストに表示されている場合は、次のコマンドを実行してプロセスを終了します。

    kill ProcessID

  4. 30 秒待機してから手順 2 を繰り返し、プロセスを再度確認します。
  5. プロセスが終了していない場合は、次のコマンドを実行します。

    kill -9 ProcessID

  6. 30 秒待機し、プロセスを再度確認します。

ESXi 4.x 以降では、esxtop k コマンドを使用して実行中の仮想マシン プロセスに信号を送信し、そのプロセスを停止することができます。

  1. ESXi コンソールで Tech Support モードにして、root としてログインします。詳細については、「Tech Support Mode for Emergency Support (1003677)」を参照してください。
  2. 次のコマンドを実行して、esxtop ユーティリティを実行します。

    esxtop

  3. C キーを押して CPU リソース使用率画面に切り替えます。
  4. Shift + V キーを押して、ビューを仮想マシンに限定します。これにより、手順 7 でリーダー ワールド ID が見つけやすくなります。
  5. F キーを押してフィールドのリストを表示します。
  6. c を押してリーダー ワールド ID の列を追加します。
  7. 名前とリーダー ワールド ID (LWID) でターゲット仮想マシンを特定します。
  8. k を押します。
  9. World to kill プロンプトで、手順 6 のリーダー ワールド ID を入力し、Enter キーを押します。
  10. 30 秒待機し、プロセスがリストされていないことを確認します。
:上記の手順を実行しても問題が解決されず、ESX\ESXi ホストが応答する場合は、再起動して仮想マシンをパワーオフ状態にする必要がある可能性があります。



Additional Information

これらの方法のいずれを使用しても仮想マシンをパワーオフできない場合、それは通常、ESXi ホストやバッキング ハードウェアなどの基になるインフラストラクチャの問題を示しています。

問題で ESXi ホストが仮想マシンのシャットダウンを妨げていると疑われる場合は、影響しない仮想マシンをホストからすべて vMotion し、ホストを強制停止して紫色の診断画面を表示します。詳細については、「Using hardware NMI facilities to troubleshoot unresponsive hosts (1014767)」を参照してください。
Unable to power off the virtual machine in an ESXi host