USV im ioBroker überwachen (inkl. Anbindung an NAS von QNAP und Synology)

Wer (einigermaßen ernsthaft) einen Homeserver betreibt, kommt früher oder später am Thema USV natürlich nicht vorbei. Damit wird die Technik vor Spannungsveränderungen (nach oben und unten!) sowie Stromausfällen geschützt. Es ist ja bekanntlich für einen Server nicht sonderlich gut, wenn er im laufenden Betrieb einfach abgeschaltet wird, ohne alle Dienste und Speichermedien vorher runter zu fahren.

Ich habe mir hierzu passend für den Netzwerkschrank als 19″-Modell die PowerWalker VI 500 R1U von der Firma Bluewalker☆ angeschafft. Die Leistung von 500VA / 300W klingt auf den ersten Blick wenig, ich habe jedoch eine Auslastung von gerade mal 20-25% mit Homeserver, Switch, Router und so weiter…, also noch genug Reserve nach oben. Bei vollem Akku kann ich ca. eine Zeit von 25-30 Minuten überbrücken! Wer seine USV nicht in einem Netzwerkschrank verbauen möchte, kommt natürlich preiswerter weg, hier sind z.B. die Modelle der Firma APC für unter 100,- EUR☆ sehr beliebt.

Initial setze ich voraus, dass die USV einen USB-Port besitzt (tun die beiden oben verlinkten Modelle natürlich!) und auf einem Linux-System noch Ressourcen für diesen wirklich kleinen Dienst sind. Das kann locker auf jedem anderen Gerät mit ausgeführt werden. Wer mag, kann hierfür natürlich auch eine virtuelle Maschine auf seinem Server erstellen (USB-Port durchreichen nicht vergessen!). Bei meinem Beispiel handelt es sich um einen Raspberry Pi, welcher noch diese Zusatzaufgabe bekommt. USB-Port muss natürlich einer frei sein, mit diesem verbinden wir nun die USV.

Dann führen wir folgende Befehle auf dem System mit unserem normalen Login aus, welcher aber über sudo-Rechte verfügen muss. Zuerst wird die Software zur Kontrolle und Steuerung der USV sowie die Tools für die USB-Kommunikation installiert.

sudo apt-get install -y nut usbutils

Die Fehlermeldungen ignorieren, wir haben noch nichts konfiguriert! Er probiert jetzt eine USV mit den Standard-Einstellungen zu finden. Sollten keine Fehlermeldungen kommen: Glückwunsch! Grosser Zufall! Diese Meldungen werden uns im Verlauf öfter verfolgen. Einfach ignorieren und weiter machen… 😉

Nun bearbeiten wir die Datei /etc/nut/ups.conf (mit dem Befehl „sudo nano /etc/nut/ups.conf„) und fügen am Ende folgenden Inhalt hinzu

[meineusv]
driver = "usbhid-ups" 
port = "auto" 
desc = "Beschreibung meiner USV" 
pollinterval = 10

Der Teil in den eckigen Klammern ist der spätere Name der USV, mit welchem wir diese identifizieren und ansprechen werden. Dieser darf acht Zeichen lang sein und keine Leerzeichen enthalten! Solltet Ihr als Client später auch ein Synology-NAS anbinden wollen, muss der Name [ups] lauten, da Synology DSM keine anderen erkennt! Driver ist der Treiber für die Kommunikation zwischen dem Server und der USV. Dieser funktioniert bei quasi annähernd jeder USV mit USB-Port! Den Port wählt das System bei USB dann automatisch aus, eine Beschreibung können wir optional angeben, die wird bei manchen Anwendungen angezeigt. Als letztes wird definiert, wie oft die Daten ausgetauscht werden.

Jetzt werden die folgenden Befehle nacheinander ausgeführt:

sudo upsdrvctl start
sudo cp /lib/udev/rules.d/62-nut-usbups.rules /etc/udev/rules.d/
sudo reboot

Jetzt wird der Rechner neu gestartet. Einfach abwarten und wieder einloggen, dann geht es weiter:

sudo upsdrvctl start 

Jetzt öffnen wir die Datei /etc/nut/nut.conf und ändern am Ende die Zeile für den Modus wie folgt ab:

MODE=netserver

Nun starten wir den Dienst. Bei der zweiten Zeile drauf achten, dass wir den von uns in der Konfiguration gewählten Namen verwenden! Damit wird eine Verbindung mit dem USV-Dienst aufgebaut und wir bekommen alle relevanten Werte angezeigt. Sollten diese nicht kommen, ist was schief gelaufen…

sudo upsd
sudo upsc meineusv@localhost

Nun wird die Datei /etc/nut/upsd.conf noch angepasst. Wir suchen dort den Teil mit den LISTEN-Anweisungen und fügen diese beiden Zeilen hinzu:

LISTEN 127.0.0.1 3493
LISTEN 192.168.1.17 3493

Die erste Zeile bleibt bestehen, die zweite Zeile fügen wir selbst hinzu. Hier geben wir die Adresse des Systems selbst an (nicht die eines späteren Client!)

Zurück auf der Konsole setzen wir noch diese beiden Befehle ab um den Dienst nach der Änderung der Einstellungen zu beenden und wieder neu zu starten:

sudo upsd -c stop
sudo upsd

Zum Schluss definieren wir noch die Benutzer, welche auf die USV zugreifen dürfen. Ich habe hier einen Admin und einen Monitor-User angelegt. Hierzu wird die Datei /etc/nut/upsd.users geöffnet und am Ende folgendes hinzugefügt:

[admin]
password = passwortdesadmin
actions = SET
instcmds = ALL
upsmon master  

[upsmon]
password = passwortdesmon
upsmon slave 

#Nur für QNAP-User:
[admin]
password = 123456
actions = SET
instcmds = ALL
upsmon master

#Nur für Synology-User:
[monuser]
password = secret
upsmon slave

Bitte in dieser Datei die Passwörter/Benutzer entsprechend anpassen. Wer eine NAS von QNAP oder Synology anbinden möchte, muss hier wieder eine Besonderheit beachten: Bei QNAP muss der User admin wie oben stehend definiert werden. Bei Synology muss der User „monuser“ heißen, das Passwort muss „secret“ lauten! Wer keine NAS einbinden möchte, übernimmt die beiden letzten Absätze bitte NICHT in seine Konfiguration!

Der USV-Kontrollserver ist nun fertig installiert. Es sollte nun alles laufen. Jetzt müssen wir diesen nur noch über den ioBroker-Adapter „Network UPS Adapter“ hinzufügen. In den Einstellungen machen wir folgende Angaben:

IP / Port: sollte selbsterklärend sein
NUT Name: der von uns selbst definierte Name der USV
Username / Passwort: die in der letzten Datei definierten

In den ioBroker-Objekten erscheinen nun massenhaft neue Datenpunkte, hier kann man alle Infos der USV auslesen und einige Dinge steuern. Ich finde diese Lösung super, hier kann man dann über den ioBroker weitere Aktionen bei Stromausfall ausführen, bevor die Akkus leer sind und das System sich abschaltet…

7 Kommentare

  1. Danke für die Super Anleitung nur leider verbindet sich mein QNAP TS-451 nicht mit der USV. Ich habe auch eine VI 500. Per iobroker funktioniert es. Hier mal meine Einstellungen in der ups.users:

    [upsmaster]
    password = xxxxxxxxxxx
    actions = SET
    instcmds = ALL
    upsmon master

    [upsremote]
    password = xxxxxxxx
    upsmon slave

    #Nur für QNAP-User:
    [admin]
    password = 123456
    actions = SET
    instcmds = ALL
    upsmon master

    Hat sich am Verhalten etwas geändert?

    • Hallo Falk, als QNAP-User musst Du den letzten Absatz nutzen, da die User/Passwort-Einstellungen in der QNAP nicht änderbar sind. Ob das inzwischen anders ist, kann ich nicht sagen, da meine QNAP verkauft ist…

      Gruss Daniel

  2. Hört sich nicht schlecht an, ABER:
    ich denke, diese USV ist viel zu klein!
    Ich habe vor, den Proxmox, den Router, den 24-Port-Switch, OPNsense und die Video-Überwachung via PoE damit abzusichern.
    Ich habe mich da unsterblich in den Bluewalker PowerWalker PowerWalker VFI 1000 RM LCD samt dem BP A36RM-6x9Ah verguckt.Laut meiner Rechnung ist ein störungsfreier betrieb von 6 Stunden gewährleistet. Man muß ja genug Zeit haben, um bei Stromausfall reagieren zu können.
    Was bring es mir, wenn ich gerade in der Arbeit sitze und mein Alarmmelder fährt automatsch nach 30 Min ab?

    • ääähm… Ich weiss ja nicht, was Du vor hast… Aber eine USV ist ja eigentlich nicht dazu gedacht, damit 24/7 weiter arbeiten zu können, sondern nur um die Maschinen ordentlich runter zu fahren. Die meisten Stromausfälle in Deutschland sind ja eher im Bereich Sekunden bis wenige Minuten. Meine USV hat laut NUT eine Auslastung von 16% (48 Watt) und hält damit 38 Minuten. Nach 25 min ist eingestellt, dass alles runter gefahren wird. Und damit überbrückt das Ding schon deutlich länger, als es eigentlich gedacht ist… Aber das kann ja zum Glück jeder so dimensionieren wie er will. Bedenke aber dabei auch, dass die Telefonieanbieter auch nur mit USV arbeiten, die in der Regel 30-60 min abdecken. Heisst, geht der Stromausfall länger, stehst Du auch ohne Internet da (mobil oft deutlich kürzer)! Merken nur die meisten nicht, da sie ja zu der Zeit keinen Strom haben…

  3. Ich habe mal eine Frage zur Anlage der Benutzer.

    Würde für meinen Zugriff den Nutzer auch gerne Admin nennen.

    Kann man den Qnap-User dann auch Admin nennen?
    Eiger weiß das System dann, wann er welches Passwort für den User admin nimmt.
    Werde für meinen Admin ja nicht auch 123456 wie das qnap nehmen.

Antworten

Deine E-Mail-Adresse wird nicht veröffentlicht.


*


Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.