cat-hyper-v

How-To: Eine Hyper-V Virtual Machine “abschiessen”

HYPER-V

Es kann durchaus mal vorkommen, dass sich eine Virtual Machine so aufgehängt hat, dass sich diese nicht mehr mittels Management Console nicht mehr stoppen lässt. In einem solchen Fall kann der einzelne Virtual Machine Worker Prozess (vmwp.exe) abgeschossen werden, damit nicht der ganze Server neu gestartet werden muss.

Als Hilfsmittel dient der Windows Task Manager, oder die erweiterte Form der Sysinternals Process Explorer, ebenfalls aus dem Hause Microsoft.

  1. Utility Process Explorer mit “Run as Administrator” starten und die EULA akzeptieren, zuvor natürlich auch lesen.
  2. Die Ansicht in der Menu Bar mit “View ⇒ Select Columns…” anpassen damit die Spalte “Command line” im Hauptfenster angezeigt wird.
  3. Aus der hinzugefügten Spalte kann nun die eindeutige Kennung einer Virtual Machine ausgelesen werden. Der Inhalt wird wie folgt dargestellt: "C:\Windows\System32\vmwp.exe" E314B8Fe-FB75-48B8-914F-E9B2362D9E0B
    How-To: Eine Hyper-V Virtual Machine “abschiessen”
  4. Die Zahlenfolge “E314B8Fe-FB75-48B8-914F-E9B2362D9E0B” definiert in diesem Beispiel die GUID der Virtual Machine namens “MyCrashedVM”.
  5. Um den Prozess einer Virtual Machine zuweisen zu können, muss die GUID einer Virtual Machine bekannt sein. Dieser kann beim entsprechenden Verzeichnis ausgelesen werden, der Default Path lautet: C:\ProgramData\Microsoft\Windows\Hyper-V\Virtual Machines\
  6. Im Sub-Folder “Virtual Machines” existiert jeweils ein XML-Document welches die eindeutige Kennung repräsentiert. In diesem Beispiel mit Cluster Shared Volume (CSV) sieht der Path wie folgt aus: C:\ClusterStorage\Volume1\MyCrashedVM\Virtual Machines\E314B8Fe-FB75-48B8-914F-E9B2362D9E0B.xml
  7. Wenn die Virtual Machine GUID dem entsprechende Virtual Machine Worker Prozess zugewiesen werden konnte, kann mit einem Rechtsklick auf den entsprechenden Prozess die Funktion “Kill process” aufgerufen und der Prozess “abgeschossen” werden.
  8. Die Meldung “Are you sure you want to kill vmwp.exe” muss noch mit “Yes” bestätigt werden. Dies beendet die problematische Virtual Machine ohne die anderen Instanzen zu beeinträchtigen.
  9. Nun kann die Virtual Machine mit der Hyper-V Management Console wieder gestartet werden.

Der beschriebene Vorgang kann praktisch 1: 1 auch mit dem Windows Task Manager durchgeführt werden. Mit dem Process Explorer wird einfach die Information besser dargestellt. Wichtig, beide Tools müssen bei aktivem User Account Control (UAC) explizit als Administrator ausgeführt werden.

Alternative kann dies auch mittels PowerShell durchgeführt werden. Um die aktuelle Auslatung auslesen zu können, kann eine Zeile PowerShell Code ausgeführt werden: (Get-WmiObject -q "SELECT * FROM Msvm_ComputerSystem WHERE ElementName = 'MyCrashedVM'" -n root\virtualization).ProcessID

Mit einem weiteren Befehl kann auch direkt der Prozess (z.B. mit der ID 4060) gestoppt werden: Stop-Process -Id 4060

Ach ja, für alle Hyper-V Kritiker, einen vergleichbaren Artikel gab es auch schon für VMware ESX: How-To: Eine VMware ESX Virtual Machine “abschiessen”

Hyper-V

, , , ,

About the Author

Michel Luescher is a solution architect in the worldwide Datacenter & Cloud Infrastructure Center of Excellence (CoE) at Microsoft Corporation based out of Zurich, Switzerland. Primarily, Michel is focused on hybrid cloud solutions (Hyper-V, System Center and Microsoft Azure). In addition Michel is speaker, blogger and author of several books.

Comments (3)

  • Nasir says:

    Guten Tag, Besten Dank für die Anleitung.
    Leider aber ist der Prozess im neuen Server 2012 R2 Std. nicht mehr vorhanden.

    Gruss

     
  • Fehler says:

    Hallo. Was mache ich wenn die Meldung im Process Explorer auftaucht: Error terminating process: Access is denied.

    Den Process Explorer hab ich als Admin gestartet.

     
  • Roman Spörk says:

    Hallo,
    hatte das Problem schon sehr oft bei Hyper-V Windows 2012 R2 Std und 2016 Standard, den Prozess konnte ich nicht beenden, Taskmanager und procexp als Admin ausgeführt…
    Nur ein Server Neustart hilft.
    Sehr schwach von Microsoft, schon langsam glaube ich VMWare ESX ist die bessere Lösung…

    MfG.

     

Leave a Reply.

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Hyper-V Management Pack released Sysinternals “Process Explorer”