Warum erreicht das USV-Abschaltsignal den Host, aber nicht seine virtuellen Maschinen?

Eva Wong ist die Technische Redakteurin und und leidenschaftliche Tüftlerin bei ZimaSpace. Eine lebenslange Geek mit einer Leidenschaft für Homelabs und Open-Source-Software, sie spezialisiert sich darauf, komplexe technische Konzepte in zugängliche, praktische Anleitungenzu übersetzen. Eva ist der Meinung, dass Self-Hosting Spaß machen und nicht einschüchternd sein sollte. Durch ihre Tutorials befähigt sie die Community, Hardware-Setups zu entmystifizieren, vom Bau ihres ersten NAS bis hin zur Beherrschung von Docker-Containern.

Ein UPS-Abschaltsignal kann den Virtualisierungshost erreichen, ohne seine VMs zu erreichen, da die Stromerkennung und die Orchestrierung des Herunterfahrens der Gastsysteme getrennte Schritte sind.

Stellen Sie zunächst fest, ob der Host das UPS-Ereignis empfängt, und testen Sie anschließend, ob jede wichtige VM auf ein normales Herunterfahren durch den Hypervisor reagiert. Überprüfen Sie die Aktion bei niedrigem Batteriestand, das Verhalten des Gastagenten oder von ACPI, die Reihenfolge beim Stoppen sowie die Laufzeitreserve. Der sichere Endzustand ist: Zuerst werden die Gastsysteme heruntergefahren, zuletzt der Host – mit ausreichend verbleibender Batteriekapazität für Verzögerungen.

Feststellen, welche Komponente das UPS-Ereignis empfängt

Lösen Sie einen unterstützten Test aus oder prüfen Sie die Protokolle eines kürzlich erfolgten Batteriewechsels. Halten Sie fest, ob NUT, apcupsd, die SNMP-Überwachung oder ein anderer Dienst auf dem Host das Ereignis erkennt.

Ein praxisnaher Proxmox-UPS-Abschaltvorgang trennt die UPS-Erkennung auf einem Proxmox-Host von den später erforderlichen Aktionen zum Stoppen der Workloads und Ausschalten des Rechners.

Wenn der Host das Ereignis nie empfängt, konzentrieren Sie sich weiterhin auf die UPS-Kommunikation. Wenn er es empfängt, dürfen Sie nicht davon ausgehen, dass die Gastsysteme automatisch heruntergefahren werden; prüfen Sie den nächsten Orchestrierungsschritt.

Das Herunterfahren der Gastsysteme ohne UPS testen

Fordern Sie über den Hypervisor ein normales, ordnungsgemäßes Herunterfahren jeder kritischen VM an und messen Sie, wie lange es dauert. Prüfen Sie den Status des Gastagenten, das ACPI-Verhalten und Anwendungen, die das Herunterfahren verzögern.

Eine NUT-Bereitstellung mit Proxmox zeigt, warum NUT zwar als Ereignisquelle dienen kann, Proxmox aber weiterhin einen definierten Reaktionsweg für die von ihm gehosteten virtualisierten Workloads benötigt.

Beheben Sie zunächst Probleme mit Gastsystemen, die ein normales Herunterfahren durch den Hypervisor ignorieren, bevor Sie Batterie-Notfälle testen. Eine UPS-Automatisierung kann ein nicht reagierendes Gastsystem nicht plötzlich sauber herunterfahren.

Die UPS-Aktion mit der Virtualisierungsebene verknüpfen

Überprüfen Sie das Skript oder den Dienst, der den niedrigen Batteriestand verarbeitet. Ein direktes Ausschalten des Hosts kann die normale Reihenfolge beim Stoppen der VMs umgehen, wenn der Prozess nicht das Herunterfahren der Gastsysteme über den Hypervisor aufruft.

Eine weitere Proxmox-orientierte NUT-Orchestrierung mit Proxmox zeigt, wie wichtig es ist, den NUT-Status mit bewusst festgelegten Systemaktionen zu verknüpfen, anstatt den UPS-Dienst selbst als Gastmanager zu betrachten.

Verwenden Sie die vom System unterstützte Orchestrierung des Herunterfahrens oder einen eng begrenzten Hook, der zuerst das Stoppen der Gastsysteme anfordert. Vermeiden Sie eigene Kill-Befehle, die das Herunterfahren von Anwendungen innerhalb der VM umgehen.

Zeit für langsame Gastsysteme und den Host einplanen

Messen Sie die gesamte Zeit zum Stoppen der Gastsysteme, die Zeit zum Herunterfahren des Hosts, die UPS-Laufzeit unter Last und den Schwellenwert für niedrigen Batteriestand. Lassen Sie eine Reserve für den Fall, dass ein Gastsystem länger als gewöhnlich benötigt.

Ein speziell entwickelter Proxmox-UPS-Abschaltdienst existiert, weil ein geordnetes Herunterfahren von Proxmox Richtlinien und eine Zeitplanung erfordert – nicht nur den Nachweis, dass ein SNMP- oder USB-Signal den Host erreicht hat.

Legen Sie begrenzte Zeitüberschreitungen für Gastsysteme und eine Eskalationsreihenfolge fest, damit eine festhängende, unkritische VM die Batterie nicht vollständig aufbraucht. Kritische Speicher- oder Datenbank-Gastsysteme sollten möglicherweise früher heruntergefahren werden.

Einen kontrollierten End-to-End-Stromausfalltest durchführen

Simulieren oder lösen Sie während eines Wartungsfensters den unterstützten UPS-Zustand aus, beobachten Sie die Reihenfolge beim Herunterfahren der Gastsysteme, bestätigen Sie, dass der Host zuletzt ausgeschaltet wird, und stellen Sie anschließend die Netzversorgung wieder her, um saubere Starts zu überprüfen.

Hinweise zur Widerstandsfähigkeit eines Homelabs bei Stromausfällen unterstreichen, dass Ausfallsicherheit davon abhängt, die gesamte Ausfallsequenz zu testen, statt nur UPS-Telemetrie zu sammeln. Der zugehörige ZimaSpace-Leitfaden zur Bereitschaft von VM-Backups ergänzt die Grenzen von Wiederherstellung und Backup.

Der Workflow ist erst dann vollständig, wenn jede erforderliche VM vor dem Host sauber heruntergefahren wird, die Batterie eine Sicherheitsreserve behält und dieselbe Sequenz auch nach Konfigurationsänderungen erneut funktioniert.

Häufig gestellte Fragen

Benötigen VMs einen eigenen NUT-Client, wenn der Host bereits über einen verfügt?

Nicht immer. Der Host kann das Herunterfahren der Gastsysteme über den Hypervisor orchestrieren. Dieser Schritt zum Stoppen der Gastsysteme muss jedoch konfiguriert und getestet werden und ausreichend Zeit vor dem Ausschalten des Hosts erhalten.

Was passiert, wenn sich eine VM nicht herunterfahren lässt?

Verwenden Sie eine begrenzte Zeitüberschreitung und eine Eskalationsrichtlinie. Ein festhängendes Gastsystem sollte nicht die gesamte UPS-Batterie aufbrauchen, bis der Host abrupt die Stromversorgung verliert.

Wie kann ich das Herunterfahren über die UPS sicher testen?

Verwenden Sie ein Wartungsfenster, intakte Backups, einen kontrollierten Zustand bei niedrigem Batteriestand oder ein unterstütztes simuliertes Ereignis und überprüfen Sie die Reihenfolge beim Stoppen der Gastsysteme, das Herunterfahren des Hosts sowie die saubere Wiederherstellung nach Rückkehr der Stromversorgung.

Support & Tipps

Mehr zum Lesen

Get More Builds Like This

Stay in the Loop

Get updates from Zima - new products, exclusive deals, and real builds from the community.

Stay in the Loop preferences

We respect your inbox. Unsubscribe anytime.