APC USV am QNAP NAS betreiben und Statuswerte per Node-RED abgreifen

Loxone im Einsatz? Dann schau dir unseren LoxKurs an und profitiere von unserem Wissen!

Stromausf√§lle sind der Supergau f√ľr ein NAS, da dabei nicht nur einzelne Dateien verloren gehen k√∂nnen. Im schlimmsten Fall droht sogar der Totalausfall, wenn im Moment des Ausfalls kritische Daten nur unvollst√§ndig auf der Festplatte geschrieben werden konnten. Eine unterbrechungsfreie Stromversorgung (USV) bietet hier gl√ľcklicherweise erh√∂hten Schutz bei √ľberschaubaren Kosten.

Wie sich so eine USV von APC schnell und einfach mit einem QNAP-NAS verbinden lässt und wie deren Statuswerte dann sogar noch per Node-RED ausgelesen werden können, um im Fall eines Stromausfalls bspw. auch noch andere Systeme remote herunterfahren zu können, ist Inhalt des nachfolgenden Blogpost.

APC-USV mit dem QNAP-NAS verbinden

In Momenten wie diesen wird meine Entscheidung f√ľr die Anschaffung meines QNAP TVS-1282 (Affiliate-Link) immer nur wieder bekr√§ftigt: Eine per USB angeschlossene USV, wie das von mir genutzte Modell APC PRO 900G (Affiliate-Link), l√§sst sich mit nur wenigen Klicks einfach ins System einbinden.

Im QNAP Webinterface dazu einfach in der Men√ľleiste oben das „Lupen“-Symbol anklicken, nach „usv“ suchen und den Eintrag „USV Einstellungen“ w√§hlen.

Dort den Haken bei „USB-Verbindung“ setzen (sofern das nicht bereits eh automatisch beim Einstecken passiert ist) und die Einstellungen mit „√úbernehmen“ sichern.

Hier lässt sich auch gleich noch konfigurieren, dass sich das NAS nach einigen Minuten bei anhaltendem Stromausfall kontrolliert herunterfährt.

Kann es noch einfacher sein? Ich glaube wohl kaum.

Einige Daten des USV werden dann auch direkt unten auf dieser Statusseite mit angezeigt:

Neben dem Status „Normal“ wird die verbliebene „Akkukapazit√§t“ in Prozent ausgegeben und dann auch noch die „voraussichtliche Schutzzeit“ in Minuten. Diese h√§ngt dabei nat√ľrlich vom Stromverbrauch der angeschlossenen Ger√§te ab und man sollte im Realfall eher mit der H√§lfte rechnen. Denn auch wenn die Akkukapazit√§t mit 100% angegeben ist, verliert die im USV eingebaute Batterie (bzw. Akku) √ľber die Jahre einen Teil seines Speicherverm√∂gens. Au√üerdem sollte man den Akku im besten Fall auch nie komplett entladen, da er dann einfach l√§nger h√§lt bzw. auch mehr Kapazit√§t im Ernstfall zur Verf√ľgung steht.

Nichtsdestoweniger sollte man den Akku aber auch alle paar Jahre mal austauschen, da die kalendarische Alterung an der zur Verf√ľgung stehenden Kapazit√§t zehrt. F√ľr oben genanntes APC PRO 900G (Affiliate-Link) gibt es dann bspw. Ersatz in Form des sch√∂n kryptisch klingenden Akkus APC APCRBC110 (Affiliate-Link).

Auch sollte man die Funktion des USV von Zeit zu Zeit einmal testen, um im Ernstfall keine Überraschung zu erleben. Dazu am besten das NAS erstmal herunterfahren, an eine separate Wandsteckdose hängen und wieder booten. Statt des NAS dann einen Verbraucher mit ähnlichen Leistungswerten ans USV anschließen. Das USB-Kabel vom USV aber am NAS eingesteckt lassen. Danach einen Stromausfall auf Seiten des USV simulieren, indem die Stromversorgung zum USV einfach getrennt wird. Jetzt sieht man schon nach wenigen Minuten, ob der Akku durchhält und ob die USV-Statusinformationen vom NAS korrekt verarbeitet werden und entsprechend ein Shutdown nach der definierten Zeit ausgelöst wird.

USV-Statuswerte per Node-RED verarbeiten

In meinem Fall h√§ngt am USV nicht nur das QNAP-NAS, sondern auch noch andere Verbraucher, wie bspw. ein Intel NUC NUC8i3BEH (Affiliate-Link), welcher mithilfe von Proxmox alle meine virtuelle Maschinen (u.A. auch eine Node-RED-VM) beheimatet. W√§re also sinnvoll, dass dieser PC bei einem Stromausfall auch einen Shutdown einleitet, um das Risiko eines Datenverlusts zu minimieren.

Zu diesem Zweck l√§sst sich im oben genannten QNAP-Men√ľ ein Haken bei „Netzwerk-UPS-Support aktivieren“ setzen. In der darunter angezeigten Liste lassen sich dann mit dem Button „Hinzuf√ľgen“ die gew√ľnschten IP-Adressen der Clients eintragen, welche auf die USV-Informationen zugreifen d√ľrfen. In meinem Fall ist das die „192.168.3.30“ (ohne Anf√ľhrungszeichen), unter der mein Node-RED-System im Netzwerk anzutreffen ist. Abschlie√üend auf „√úbernehmen“ klicken und die Grundeinstellung ist damit erledigt:

Nun ins Node-RED-Interface, welches √ľber den Port 1880 erreichbar ist, in meiem Fall entsprechend http://192.168.3.30:1880.

Ganz oben rechts erstmal auf die „drei senkrechten Striche“ (Men√ľ) klicken und „Palette verwalten“ ausw√§hlen.

Im Reiter „Installieren“ dann nach „node-red-contrib-nut-ups“ suchen und den entsprechenden Eintrag „Installieren“. In nachfolgendem Screenshot bitte nicht falsch verstehen, hier steht eben „Installiert“, da ich die Node bereits nutze.

Jetzt links die „Lupe“ anklicken und nach „nut“ suchen und die angezeigte „nut ups“-Node rechts in den Flow ziehen. Die Node doppelt anklicken und im Feld „UPS“ Folgendes eintragen:

qnapups@192.168.3.9

Die IP nach dem @-Zeichen muss entsprechend der Netzwerkadresse des QNAP-NAS gesetzt werden, in meinem Fall ist das „192.168.3.9“ (ohne Anf√ľhrungszeichen).

Zum Abschluss √ľber den Button „Fertig“ speichern. Vorher kann nat√ľrlich auch noch ein sprechender „Name“ vergeben werden:

Der gerade erzeugten Node wird dann noch eine inject-Node vorangesetzt, welche so konfiguriert wird, dass sie alle 10 Sekunden einen Trigger setzt. Nachgestellt werden kann nun noch eine debug-Node, welche den Payload des Objekts anzeigt. Damit die √Ąnderungen aktiv werden, muss nat√ľrlich nochmal der rote „Deploy“-Button bet√§tigt werden. Und dann sollte es im „Debugging“-Fenster in etwa so aussehen:

Im Pfad „payload.battery.charge.value“ steckt dann bspw. der Wert „100“, welcher der aktuellen Kapazit√§t des Akkus entspricht. Dieser Wert l√§sst sich dann bspw. bequem mit einer „change-Node und einer „Festlegen“-Regel f√ľr eine weitere Verarbeitung auslesen. Dabei wird die gew√ľnschte neue „msg.payload“ durch „payload.battery.charge.value“ gesetzt:

Dem Element nachgestellt, ist in meinem Fall eine Loxone „control out“-Node, welche den Wert in einen „virtuellen Eingang“ in der Loxone Config schreibt.

In der Loxone-App l√§sst sich der „USV“-Status dann einsehen, hier als fertige L√∂sung zu sehen mit einigen f√ľr mich relevanten Statuswerten:

Aber zur√ľck zum Node-RED-Setup. Entsprechend der Akkukapazit√§t lassen sich auch noch weitere Werte auslesen:

  • payload.battery.runtime.value -> (Potenzielle) Akkulaufzeit bei derzeitigem Stromverbrauch in Sekunden
  • payload.battery.voltage.value -> Spannung des Akkus in Volt
  • payload.input.voltage.value -> Netzspannung in Volt – bei Netzausfall Wert 0
  • payload.ups.status.value -> mit etwas krytischen Werten
    • OB DISCHRG -> Notstrom aktiv – Akku entl√§dt
    • OL CHRG -> Netz aktiv – Akku l√§dt
    • OL -> Akku ist voll geladen
    • xyz -> vermutlich noch weitere Status m√∂glich bei Defekt des Akkus o.√Ą.

Letzt genannte Werte √ľberf√ľhre ich vor der √úbertragung zu Loxone in numerische Werte, um diese auswerten zu k√∂nnen. Alle Nodes und Einstellungen gibt es hier als Download: Node-RED Flow 2 (434 Downloads)

Analog zum Vorgehen im Blogpost Linux-Rechner per SSH-Befehlen √ľber Node-RED fernsteuern lassen sich mit einer exec-Node dann bspw. bei erkanntem Netzausfall andere Systeme remote herunterfahren oder eben auch das Node-RED-System mit einem einfachen „shutdown -h now“ als exec-Node-Befehl ausschalten.

Aus meinem täglichen Leben

Ich habe oben genanntes Hardwaresetup mit dem QNAP TVS-1282 (Affiliate-Link) und APC PRO 900G (Affiliate-Link) nun bereits knapp zwei Jahre im Einsatz und die USV hat mein NAS schon mehrfach erfolgreich vor einem Stromausfall – und potenziellem Datenverlust – bewahrt.

Vermutlich dem Neubaugebiet geschuldet, blieb der Strom aus dem Netz dabei schon √∂fter mal weg, teilweise auch f√ľr eine l√§ngere Zeit. Dann bietet das USV zwar nicht die M√∂glichkeit f√ľr einen weiteren Dauerbetrieb des NAS, daf√ľr ist es ja aber auch nicht ausgelegt. Nach f√ľnf Minuten Stromausfall f√§hrt mein NAS eben herunter und w√§hrenddessen k√ľmmert sich das mitlauschende Node-RED-System darum, andere PCs und schlie√ülich auch sich selbst kontrolliert herunterzufahren.

Wichtig dabei ist nat√ľrlich zu wissen, dass Node-RED nur dann mit frischen USV-Daten versorgt werden kann, wenn das NAS auch in Betrieb ist. Das ist aktuell noch der einzige Knackpunkt an meinem Setup, welchen ich noch beheben m√∂chte. So k√∂nnte ich die USV bspw. per USB an einen stromsparenden Raspberry Pi anschlie√üen, welcher sich dann mithilfe einer eigenen Node-RED-Instanz um das Monitoring sowie das kontrollierte Herunterfahren der Linux-Systeme im Netzwerk k√ľmmert. So k√∂nnte der Pi dann auch bei einem l√§ngeren Stromausfall an der USV noch lange „am Leben“ gehalten werden, da er selbst kaum Strom verbraucht (3-4W) und die USV-Batterie dann mehrere Stunden durchhalten sollte. Entsprechend k√∂nnte er dann auch einen Aufweck-Befehl per WoL an die Netzwerkger√§te senden, sobald der Netzstrom zur√ľckkehrt.

Vielleicht gibt es dazu dann auch nochmal einen kleinen Blogpost, vorerst bin ich jedenfalls schon mal gl√ľcklich damit, dass mein NAS safe ist und dar√ľber hinaus die Live-Daten des USV in Loxone einsehbar sind.

Loxone im Einsatz? Dann schau dir unseren LoxKurs an und profitiere von unserem Wissen!

Verpasse keine Inhalte mehr! Trage dich in den Newsletter ein und folge uns auf Facebook.

Was ist ein Affiliate-Link? Wenn du auf einen Affiliate-Link klickst und √ľber diesen Link einkaufst, bekomme ich vom betreffenden Online-Shop oder Anbieter eine Provision, was mich u.A. bei den laufenden Kosten den Blogs unterst√ľtzt. F√ľr dich ver√§ndert sich der Preis nicht.

Jörg

hat meintechblog.de ins Leben gerufen, um seine Technikbegeisterung und Erkenntnisse zu teilen. Er veröffentlicht regelmäßig Howtos in den Bereichen Smart Home und Home Entertainment. Mehr Infos

5 Gedanken zu „APC USV am QNAP NAS betreiben und Statuswerte per Node-RED abgreifen“

  1. Die von mir betriebenen Synology NAS (5 beruflich, 5 privat (im Freundeskreis)) haben diverse Stromausf√§lle schadlos √ľberstanden. Ja, es ist durchaus m√∂glich (und √§rgerlich), dass bei einem Schreibvorgang Datenverluste entstehen. Das aber das System dadurch besch√§digt wird, ist mir noch nicht passiert und habe es auch weder gelesen oder geh√∂rt. Bei Stromverlust werden die Lesek√∂pfe der Festplatten automatisch in ihre Parkposition gefahren.
    Ich habe vor einiger Zeit mal eine (nagelneue) USV zu einem Bruchteil des Neupreises ergattern k√∂nnen und an meine eigene DS218+ gehangen. Seitdem gab es ‚Äď Murphys Law ‚Äď keinen Stromausfall.
    Eine USV _kann_ aber z.B. auch Spannungsspitzen abfangen. Das w√§re f√ľr mich der deutlich h√∂here Nutzen.
    Und ganz klar geh√∂rt ein r√§umlich getrenntes Backup _aller_ Daten zur Grundvorraussetzung f√ľr jeden Server

    1. Hi Martin,
      danke f√ľr dein Feedback!

      Einen direkten Datenverlust hatte ich aufgrund eines Stromausfalls auch noch nicht – zum Gl√ľck. Aber es reicht schon, wenn dadurch das RAID durcheinanderkommt (bei mir eigentlich immmer der Fall gewesen bei einem Stromausfall ohne USV) und das NAS dann stundenlang einen RAID-Test inkl.etwaigem RAID-Rebuild durchf√ľhren muss. In dieser Zeit sind dann entweder keine Dienste verf√ľgbar oder nur mit geringerer Zugriffsgeschwindigkeit. Das nervt auch schon mega finde ich und ich w√ľrde schon alleine deswegen immer eine USV einsetzen.

      Und du hast nat√ľrlich recht: Die USV federt im Notfall auch Spannungsspitzen des Stromnetzes weg, was ein echter Pluspunkt ist.

      Viele Gr√ľ√üe
      Jörg

    2. Hallo

      Ich habe mir ebenfalls eine APC USV zugelegt, nachdem ich aus versehen die Steckdosenleiste, an der das Nas hing, ausgeschaltet habe und danach eine Festplatte einen S.M.A.R.T Fehler hatte.
      Damals kostete eine 8TB HDD 350-400‚ā¨. Da war die USV g√ľnstiger.
      Ich habe das TVS-1282 und die APC PRO 1200g (Affiliate-Link).

  2. Hallo

    Etwas kann nicht stimmen mit den IP-Adressen.
    Du schreibst, dass dein PC mit der IP-Adresse 192.168.3.30 auf das Node-RED-System zugreifen kann, und dann greifst du auf das Node-RED-System mit der Adresse http://192.168.3.30:1880 zu. Das w√ľrde bedeuten, dass du das Node-RED-System auf dem Client √∂ffnest, nicht auf dem Server. Das macht keinen Sinn.

    1. Hi Philipp,
      im NAS (Server) wird das Node-RED-System (Client mit der IP 192.168.3.30) eingetragen, sodass der Client die Infos vom Server abrufen kann. Und dann definiere ich im Node-RED-System, wie der Zugriff erfolgen soll. Hab das wie hier gezeigt genau 1:1 im Einsatz – funktioniert also.

      Viele Gr√ľ√üe
      Jörg

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert