Zum Inhalt springen
UPSmonitor 247-IT

247-IT Ratgeber

Hyper-V VMs bei Stromausfall automatisch herunterfahren

Hyper-V fährt VMs mit, wenn der Host herunterfährt. Doch bei einem Stromausfall fährt der Host nicht von allein herunter. Etwas muss die USV auswerten, den richtigen Zeitpunkt erkennen und die VMs in einer sinnvollen Reihenfolge stoppen, solange der Akku noch reicht. Wie das zuverlässig gelingt.

01 Bordmittel Was Hyper-V beim Herunterfahren des Hosts von sich aus mit den VMs macht.

Die automatische Stoppaktion: Speichern, Herunterfahren oder Ausschalten

Jede VM hat in Hyper-V eine automatische Stoppaktion (AutomaticStopAction). Sie legt fest, was mit der VM passiert, wenn der Host-Server heruntergefahren wird. Es gibt drei Möglichkeiten, und die Voreinstellung ist Speichern:

Automatische Stoppaktion in Hyper-V
Einstellung Was passiert Geeignet für
SpeichernSave · Voreinstellung Der Arbeitsspeicher der VM wird auf die Festplatte geschrieben, beim nächsten Start läuft die VM an derselben Stelle weiter. VMs mit wenig RAM auf schnellem Speicher. Braucht freien Plattenplatz in Höhe des zugewiesenen RAM und dauert bei großen VMs entsprechend lange.
HerunterfahrenShutDown Hyper-V fährt das Gastbetriebssystem über den Integrationsdienst „Herunterfahren“ sauber herunter. Die meisten Server-VMs. Setzt voraus, dass der Integrationsdienst aktiv ist und das Gastsystem darauf reagiert.
AusschaltenTurnOff Wie Stecker ziehen: Die VM wird sofort ausgeschaltet. Nur zustandslose VMs, die ein hartes Ausschalten sicher verkraften.

Welche Einstellung Ihre VMs haben, zeigt und ändert PowerShell auf dem Host:

Get-VM | Select-Object Name, State, AutomaticStopAction
Set-VM -Name "SQL01" -AutomaticStopAction ShutDown

Wichtig: Die Stoppaktion greift erst, wenn der Host heruntergefahren wird. Sie ist eine sinnvolle Rückfallebene, aber kein Schutz vor Stromausfall. Ohne einen Auslöser läuft der Host weiter, bis der Akku der USV leer ist, und dann gehen Host und VMs gleichzeitig hart aus.

02 Die Lücken Woran eine reine Bordmittel-Lösung im Ernstfall scheitert.

Warum die Stoppaktion allein nicht reicht

  1. Es fehlt der Auslöser
    Der Host weiß nichts von der USV. Irgendetwas muss den Batteriebetrieb erkennen, die Restlaufzeit bewerten und das Herunterfahren anstoßen, per USB-Kabel an einem einzelnen Server oder per Netzwerk über SNMP oder NUT.
  2. Die Zeit ist begrenzt
    Beim Herunterfahren wartet Windows auf die Stoppaktionen aller VMs. Wie lange das dauert, hängt von Anzahl, Arbeitsspeicher und Plattengeschwindigkeit ab. Wird zu spät ausgelöst, ist der Akku leer, bevor alle VMs gespeichert oder heruntergefahren sind.
  3. Keine Reihenfolge
    Die Stoppaktion läuft für alle VMs eines Hosts ungefähr gleichzeitig. Abhängigkeiten wie „Anwendungsserver vor der Datenbank, Domain Controller zuletzt“ lassen sich damit nicht abbilden, über mehrere Hosts hinweg schon gar nicht.
  4. Mehrere Hosts, eine USV
    Hängen mehrere Hyper-V-Hosts an einer USV, braucht jeder einen Auslöser. Eine Software pro Host arbeitet unabhängig: Jeder Host entscheidet für sich, niemand koordiniert.
  5. Der Strom kommt zurück
    Kurze Ausfälle sind häufiger als lange. Wer beim ersten Batterie-Signal sofort alles abschaltet, fährt die Umgebung auch bei einem Aussetzer von zwanzig Sekunden herunter. Sinnvoll sind Schwellwerte, mehrere Bestätigungen und ein Abbruchfenster.
03 Reihenfolge Von außen nach innen herunterfahren, von innen nach außen wieder starten.

In welcher Reihenfolge VMs heruntergefahren werden sollten

Die Grundregel: Zuerst die VMs, von denen nichts anderes abhängt, zuletzt die, die andere brauchen. Eine bewährte Reihenfolge für typische Windows-Umgebungen:

  1. Terminal- und Anwendungsserver — Remotedesktop, Warenwirtschaft, Webserver. Sie schreiben in Datenbanken und Dateifreigaben und sollten ihre Verbindungen sauber schließen, solange die Gegenstellen noch laufen.
  2. Datenbank- und Mailserver — SQL Server, Exchange. Beide sind absturzsicher, fahren aber schneller wieder hoch, wenn sie sauber beendet wurden. Details im Ratgeber SQL Server & Exchange auf Hyper-V.
  3. Datei- und Druckserver
  4. Domain Controller zuletzt — damit Anmeldung und DNS für die übrigen VMs bis zum Schluss funktionieren. Warum ein hart abgeschalteter DC trotzdem meist kein Drama ist, steht im Ratgeber Active Directory & USV-Ausfall.
  5. Zum Schluss der Host selbst — erst wenn alle VMs aus oder gespeichert sind.

Beim Wiederanlauf gilt die umgekehrte Reihenfolge. Hyper-V bietet dafür die automatische Startaktion mit einer Verzögerung in Sekunden: Der Domain Controller startet sofort, alle anderen VMs ein paar Minuten später.

Wichtig ist der Wert Start. Der Standardwert StartIfRunning („Automatisch starten, wenn sie beim Beenden des Dienstes ausgeführt wurde“) startet nur VMs, die noch liefen, als der Host herunterfuhr. Fährt ein Werkzeug die VMs vorher einzeln herunter, bleiben sie danach aus.

Set-VM -Name "DC01"  -AutomaticStartAction Start -AutomaticStartDelay 0
Set-VM -Name "SQL01" -AutomaticStartAction Start -AutomaticStartDelay 120
Set-VM -Name "APP01" -AutomaticStartAction Start -AutomaticStartDelay 240

Bei Failover-Clustern kommen Quorum und Cluster Shared Volumes dazu, siehe Hyper-V Failover-Cluster bei Stromausfall.

04 Zeitbudget Rückwärts rechnen: Wie viel Restlaufzeit muss beim Auslösen noch übrig sein?

Den richtigen Zeitpunkt berechnen

Der Schwellwert für das Auslösen muss die komplette Abschaltung abdecken, plus Reserve. Rechnen Sie rückwärts, mit gemessenen statt geschätzten Zeiten:

Beispielrechnung: zwei Hosts, drei VM-Gruppen nacheinander
Schritt Dauer
ErkennungAbfrage alle 30 s, 3 Bestätigungen1,5 min
VM-Gruppe 1: Anwendungsserverparallel, langsamste VM zählt2 min
VM-Gruppe 2: SQL Server, Exchange3 min
VM-Gruppe 3: Domain Controller1 min
Host herunterfahren2 min
Zwischensumme9,5 min
Reserve 50 %Batteriealter, Last, Temperatur≈ 5 min
Schwellwert Restlaufzeit≈ 15 min

Die Reserve ist kein Luxus: Die Restlaufzeit, die eine USV meldet, ist eine Schätzung ihrer Firmware und wird mit alternder Batterie zunehmend optimistisch. Deshalb lohnt es sich, zusätzlich einen Mindestwert für die Akkuladung festzulegen, und beide Werte gelten: Was zuerst unterschritten wird, löst aus. Warum Datenblatt und Anzeige oft danebenliegen, erklärt der Ratgeber USV-Laufzeit richtig berechnen.

05 Umsetzung So löst der UPS Hyper-V Shutdown Monitor die fünf Lücken aus Abschnitt 02.

Automatisch, geordnet, ohne Agenten auf den Hosts

Der UPS Hyper-V Shutdown Monitor läuft als Windows-Dienst auf einem Rechner im Netz, fragt die USV per SNMP oder NUT ab und steuert die Hyper-V-Hosts per WinRM, ohne zusätzliche Software auf den Hosts:

  1. Auslöser mit Schwellwerten — Akkuladung und Restlaufzeit, Voreinstellung 20 % bzw. 300 Sekunden, frei einstellbar. Ausgelöst wird erst nach drei aufeinanderfolgenden Bestätigungen (anpassbar), damit ein kurzer Aussetzer nichts abschaltet.
  2. Reihenfolge über Hosts und VMs — Hosts und VMs bekommen eine Reihenfolge. VMs mit derselben Stufe fahren parallel herunter, die nächste Stufe beginnt erst, wenn die vorige fertig ist.
  3. Herunterfahren oder Speichern je VM — pro VM wählbar: sauber herunterfahren (Stop-VM) oder den Zustand speichern (Save-VM). Reagiert eine VM nicht innerhalb des Zeitlimits (Voreinstellung 120 Sekunden je Host), wird sie ausgeschaltet, damit der Host sicher herunterfahren kann.
  4. Ein Rechner koordiniert alle Hosts — auch zusätzliche physische Server ohne Hyper-V und auf Wunsch der eigene Rechner zum Schluss.
  5. Abbruchfenster — kommt der Strom kurz nach dem Auslösen zurück, wird die Abschaltung abgebrochen (Voreinstellung 15 Sekunden).
  6. Vorher testen — Bereitschaftsprüfung, Probelauf mit geschätzter Gesamtdauer und ein Testmodus, der den kompletten Ablauf protokolliert, ohne etwas abzuschalten.

Alle Punkte sind in jeder Edition enthalten. Mehrere USVs mit Host-Zuordnung und Live-Migration auf einen Host, der noch Strom hat, gibt es ab der Pro-Edition. Mehr in der Feature-Liste und der Einrichtungsanleitung.

06 Checkliste Werkzeugunabhängig — gilt für jede Hyper-V Umgebung.

Vor dem nächsten Stromausfall prüfen

  1. Integrationsdienst „Herunterfahren“ aktiv — Get-VMIntegrationService -VMName <Name> zeigt ihn je VM (englisch „Shutdown“). Linux-Gäste brauchen die Hyper-V-Integration (hv_utils), bei aktuellen Distributionen ist sie enthalten.
  2. Automatische Stoppaktion bewusst setzen — als Rückfallebene, falls der Host doch einmal ohne vorheriges Stoppen der VMs heruntergefahren wird. Bei „Speichern“ genug freien Plattenplatz einplanen.
  3. Reihenfolge dokumentieren — welche VM hängt von welcher ab, welcher Domain Controller fährt zuletzt herunter und startet zuerst?
  4. Zeiten messen statt schätzen — jede VM einmal im Wartungsfenster herunterfahren und die Dauer notieren. Daraus ergibt sich der Schwellwert (Abschnitt 04).
  5. Startverzögerung setzen — Domain Controller ohne, abhängige VMs mit Verzögerung starten lassen.
  6. Die Überwachung selbst absichern — der Rechner, der die USV überwacht und abschaltet, muss bis zum Schluss laufen: nicht als VM auf einem der Hosts, die er herunterfährt, oder zumindest als letzte Stufe.
  7. Einmal testen — im Testmodus oder in einem Wartungsfenster. Der erste echte Stromausfall sollte nicht der erste Test sein.
07 Fragen Kurze Antworten auf häufige Fragen.

Häufige Fragen

Fährt Hyper-V die VMs automatisch herunter, wenn der Host herunterfährt?

Ja, nach der automatischen Stoppaktion jeder VM. Voreingestellt ist „Speichern“: Hyper-V schreibt den Arbeitsspeicher auf die Platte. Alternativ „Herunterfahren“ über den Integrationsdienst oder „Ausschalten“. Das greift aber nur, wenn der Host tatsächlich heruntergefahren wird. Bei einem Stromausfall braucht es dafür einen Auslöser, der die USV überwacht.

Ist „Speichern“ oder „Herunterfahren“ bei Stromausfall besser?

Für die meisten Server-VMs „Herunterfahren“: Die Anwendungen beenden sich sauber, und nach dem Wiederanlauf gibt es keine veraltete Uhrzeit oder offene Verbindungen aus dem gespeicherten Zustand. „Speichern“ lohnt sich für VMs, die schwer herunterfahren, etwa wegen hängender Windows-Updates, und braucht Plattenplatz in Höhe des zugewiesenen Arbeitsspeichers.

Brauche ich auf jedem Hyper-V-Host eine eigene USV-Software?

Nicht zwingend. Eine Lösung, die die USV per Netzwerk (SNMP oder NUT) abfragt und die Hosts per WinRM steuert, kommt ohne Agenten auf den Hosts aus und kann die Reihenfolge über alle Hosts hinweg koordinieren. Das funktioniert auch mit Hyper-V Server und Server Core.

Was passiert, wenn der Strom während des Herunterfahrens zurückkommt?

Das hängt vom Zeitpunkt ab. Innerhalb eines Abbruchfensters direkt nach dem Auslösen lässt sich die Abschaltung stoppen. Sind VMs schon heruntergefahren, starten sie beim nächsten Hochfahren des Hosts nur, wenn ihre automatische Startaktion auf Start steht, am besten mit gestaffelter Verzögerung.

Geordnete Abschaltung selbst einrichten

30 Tage kostenlos, alle Funktionen inklusive. Mit Testmodus und Probelauf, damit der erste echte Stromausfall nicht der erste Test ist.