Wie man unter Proxmox ein USV verwenden – einen Proxmox NUT Client einrichten kann, erfahren Sie in diesem Beitrag. Network UPS Tools (NUT) ist ein Client / Server-Überwachungssystem. Es ermöglicht Rechnern die gemeinsame Nutzung einer USV / UPS. Der NUT Client greift über den Server auf die Hardware zu und wird bei Änderungen des Energiestatus benachrichtigt.
1. nut Paket installieren
Installieren Sie mit folgendem Befehl das NUT Paket.
apt install nut -y
2. Proxmox NUT Client einrichten
nano /etc/nut/nut.conf
Editieren Sie die NUT Konfiguration, indem Sie folgende Zeile eintragen.
MODE=netclient
nano /etc/nut/upsmon.conf
Editieren Sie nun /etc/nut/upsmon.conf.
Eine Konfiguration könnte wie folgt aussehen.
MONITOR ups@192.168.10.220 1 user password slave
Erklärung der NUT Client MONITOR Konfiguration.
MONITOR <system> <powervalue> <username> <password> ("primary"/"secondary")
system ist UPSName@NUTServer.
povervalue ist die Anzahl USV’s welche den Proxmox mit Strom versorgen.
Den username und das password entspricht den Login Daten des NUT Servers.
master bedeutet, dass das System erst am Schluss heruntergefahren wird, wenn alle anderen mit dem NUT Server verbundenen Geräte heruntergefahren sind.
slave bedeutet, dass der Proxmox Server sofort herunterfährt, wenn das USV einen kritischen Power Status erreicht hat.
Mehr Informationen über upsmon finden Sie hier.
3. UPSMON Starten
Geben Sie den folgenden Befehl ein um den UPSMON zu starten.
upsmon start
4. UPSMON Status prüfen
Verwenden Sie folgenden Befehl um den Status zu überprüfen.
upsc <SYSTEM>
Beispiel des Befehls.
upsc ups@192.168.10.220
Wenn der Output dem auf dem Bild ähnelt, ist die Konfiguration korrekt und Sie wissen nun wie man einen Proxmox NUT Client einrichten kann.
Hallo zusammen,
eine Frage zur Installation, wo soll ich «NUT Packet» installieren?
Auf dem Proxmox Server oder auf einer VM/CT?
Gruß Jürgen
Guten Tag
Das NUT Packet installierst du am besten auf dem Proxmox Server 😉
Gruss ramhee
Hinweis: master/slave (in der upsmon.conf) wurden durch primary/secondary ersetzt.
Herzlichen Dank für den Hinweis!
Lieber Gruss Ramon
Ich versuche nut mit meiner Synology DS zu verbinden, jedoch finde ich nirgends folgende Angaben:
– systemname (auch ups?)
– user
– password
Welchen Benutzer & welches Passwort verwendet Synology für nut?
Vielen Dank!
Hallo
Sorry, dass ich mich erst jetzt melde.
UPS Name war in meinem Fall ebenfalls «nut» ja.
Ich empfehle einen Benutzer für nut auf dem Synology Nas einzurichten und diesen dann unter Proxmox zu verwenden.
LG Ramon
Hallo und danke sehr!
Ich habe auf meinem Proxmoxsystem Ihrer Anleitung folgend nur diese 4 Zeilen eingegeben
(und natürlich die beiden .conf entsprechend in je einer Zeile anpassen müssen):
History-Auszug:
211 apt install nut
212 nano /etc/nut/nut.conf
213 nano /etc/nut/upsmon.conf
214 upsc ups@192.168.20.40
und meine «entfernte» USV wurde sofort erkannt.
Natürlich muss das entfernte System entsprechend vorbereitet sein / werden.
Erfolg…:
root@Proxmox-VE:~# upsc ups@192.168.20.40
Init SSL without certificate database
battery.charge: 100
battery.charge.low: 20
battery.runtime: 1560
battery.type: PbAc
device.mfr: EATON
…. (gekürzt)
Ich bedanke mich bei Ihnen!
Freundliche Grüße.
Danke.
Lieber Gruss Ramon
Hallo,
wenn ich den nut-client auf dem proxmox server so umsetze werden die Container / VMs dann automatisch runtergefahren wenn via nut dann die Meldung kommt das die USV «angesprungen» ist oder muss dass nicht manuell gemacht werden via script etc.?
Hallo Tom,
wenn du den NUT-Client (Network UPS Tools) auf deinem Proxmox-Server konfiguriert hast, ist es wichtig zu verstehen, dass der Client zunächst nur Statusinformationen der USV (Unterbrechungsfreie Stromversorgung) erhält. Um deine virtuellen Maschinen (VMs) und Container automatisch herunterzufahren, wenn die USV aktiviert wird, musst du ein entsprechendes Skript einrichten, das auf die Signale des NUT-Clients reagiert.
Proxmox selbst bietet keine eingebaute Automatik für das Herunterfahren von VMs und Containern in Verbindung mit NUT. Du musst also ein Skript erstellen, das den Befehl zum Herunterfahren der VMs und Container ausführt, wenn der NUT-Client eine kritische Meldung von der USV erhält, wie z.B. dass der Akku bald leer ist oder die Stromversorgung unterbrochen wurde.
In deinem Skript solltest du die notwendigen Schritte definieren, um einen sicheren Shutdown-Prozess zu gewährleisten. Proxmox bietet hierfür das `qm` Kommando für VMs und `pct` für Container, mit denen du jeweils einen geordneten Shutdown initiieren kannst. Ein Beispiel für ein solches Skript könnte folgendermassen aussehen:
#!/bin/bash
# NUT Shutdown Script für Proxmox
# Shutdown aller laufenden VMs
for vmid in $(qm list | awk '{if(NR>1) print $1}'); do
echo "Shutting down VM $vmid"
qm shutdown $vmid --timeout 300
done
# Warte auf das Herunterfahren aller VMs
sleep 30
# Shutdown aller laufenden Container
for ctid in $(pct list | awk '{if(NR>1) print $1}'); do
echo "Shutting down Container $ctid"
pct shutdown $ctid --timeout 300
done
# Warte bis alle Prozesse beendet sind
sleep 30
# Jetzt den Host herunterfahren
echo "Shutting down the host"
shutdown -h now
Dieses Skript müsstest du im Rahmen der NUT-Konfiguration als Shutdown-Skript einbinden. Die genaue Integration hängt von deiner NUT-Konfiguration ab. Normalerweise wird das Skript in der `upsmon.conf` eingetragen.
Stelle sicher, dass du das Skript vor der tatsächlichen Verwendung testest, um sicherzugehen, dass es wie gewünscht funktioniert und keine unerwarteten Probleme auftreten. Es ist auch ratsam, regelmässige Backups deiner VMs und Container zu machen, um Datenverlust im Falle eines plötzlichen Stromausfalls zu verhindern.
Ich hoffe, das hilft dir weiter!
LG Ramon
Hallo
Die Versionen für Linux sind auf dem GitHub verfügbar als .tar.gz
LG Ramon