QNAP Anbindung an einen Network UPS Server

In den vorherigen Beiträgen habe ich ja mal die grundlegenden Einstellungen von QNAP QTS für die Anbindung einer USV erläutert und einen eigenen Network-UPS-Server aufgesetzt.

Dieser soll nun mit dem QNAP NAS verbunden werden, aber die tücke liegt hier im Detail. Man könnte meinen es langt in den Systemeinstellungen der QNAP einfach die IP-Adresse des Network-UPS-Server anzugeben.

Falsch gedacht…. Hier tut sich nämlich zu Beginn nichts.

Nun warum: Eigentlich ist die Lösung ganz einfach und doch schwierig zu finden. Die Suche nach der Lösung führt ins Terminal. Ich hab mich jetzt einfach mal auf das NAS via SSH verbunden. QNAP QTS basiert auch auf Linux somit können wir uns hier über das Terminal leicht bewegen.

Auf dem QNAP QTS ist auch der UPS-Client (upsc) installiert. Somit können wir hier schonmal die Verbindung zum Remote-UPS-Server testen. Hierzu geben wir folgenden Befehl im Terminal ein.

upsc ups01@198.168.1.154 

Und hier das Ergebnis.

battery.charge: 100
battery.charge.low: 20
battery.runtime: 3000
battery.type: PbAc
device.mfr: EATON
device.model: Ellipse ECO 1200
device.serial: 000000000
device.type: ups
driver.name: usbhid-ups
driver.parameter.pollfreq: 30
driver.parameter.pollinterval: 2
driver.parameter.port: auto
driver.parameter.synchronous: no
driver.parameter.vendorid: 0463
driver.version: 2.7.4
driver.version.data: MGE HID 1.39
driver.version.internal: 0.41
input.transfer.high: 264
input.transfer.low: 184
outlet.1.desc: PowerShare Outlet 1
outlet.1.id: 2
outlet.1.status: on
outlet.1.switchable: no
outlet.2.desc: PowerShare Outlet 2
outlet.2.id: 3
outlet.2.status: on
outlet.2.switchable: no
outlet.desc: Main Outlet
outlet.id: 1
outlet.power: 25
outlet.switchable: no
output.frequency.nominal: 50
output.voltage: 230.0
output.voltage.nominal: 230
ups.beeper.status: enabled
ups.delay.shutdown: 20
ups.delay.start: 30
ups.firmware: 02
ups.load: 8
ups.mfr: EATON
ups.model: Ellipse ECO 1200
ups.power.nominal: 1200
ups.productid: ffff
ups.serial: 000000000
ups.status: OL
ups.timer.shutdown: -1
ups.timer.start: -1
ups.vendorid: 0463

Eigentlich auch wie erwartet. Somit kann das NAS auf die UPS zugreifen, möchte man meinen.

Die Einstellungen zur USV werden über die QNAP QTS Weboberfläche direkt in das Config-File upsmon.conf geschrieben. Die Config-Files zur UPS liegen auf der QNAP im Verzeichnis /etc/config/ups/

Schauen wir uns das File upsmon.conf mal im Detail an. Wir suchen hier nach der Section MONITOR

# -------------------------------------------------------------------------- 
# MONITOR ("master"|"slave")
...
# Examples: 
# 
# MONITOR myups@bigserver 1 monmaster blah master 
# MONITOR su700@server.example.com 1 upsmon secretpass slave 

MONITOR qnapups@198.168.1.154 1 admin 123456 slave

Die letzte Zeile ist der Ursprung allen übels. Die Konfiguration die vom QTS geschrieben wird hinterlegt nur die IP gemäß der Einstellung in der Weboberfläche. Der Name der UPS, User & Kennwort sind hart in der Config hinterlegt.

Man kann hier nun etwas herumprobieren und die Werte überschreiben. Das hat aber einen großen Nachteil: QTS prüft sofern man den Modus Network-UPS-Slave verwendet auch immer fix auf die UPS mit dem Namen qnapups ab. Somit ist die Integration in das System dann nicht mehr gegeben und es passiert auch nichts. Es wird kein Shutdown getriggert. Davon das die Daten im Webinterface nicht angezeigt werden sprechen wir mal nicht.

Mögliche Lösungen für dieses Problem:

  • Am Network-UPS-Server die UPS in qnapups umbenennen & einen User admin mit Kennwort 123456 anlegen
    oder
  • Eine zusätzliche „Dummy-UPS“ am Network-UPS-Server anlegen welche als Repeater auf die eigentliche UPS funktioniert
    Um das zu realisieren müssen wir in der ups.conf am Server eine zusätzliche UPS hinzufügen
nano /etc/nut/ups.conf
[qnapups]
driver = dummy-ups
port = ups01@198.168.1.154
desc = "Eaton Ellipse ECO 1200"

Außerdem müssen wir natürlich hier auch noch den User anlegen

nano /etc/nut/upsd.user
[admin]
    password  = 123456
    upsmon slave 

Hat man eine der beiden Lösungsvarianten verwendet sollte nun die USV in der QNAP QTS auftauchen funktionieren.

Das können wir natürlich einfach testen indem wir die USV vom Netz nehmen. Das NAS sollte hier dann genauso funktionieren wie die USB-Anbindung.

Spezialitäten

Wir haben hier allerdings nun den ähnliches Problem wie bei der USB-Anbindung. Fällt der Network-UPS-Server aus, wird die Netzwerkverbindung getrennt oder die USB-Verbindung ausgesteckt, wird das am NAS wieder nur als „Device unplugged“ geloggt und es wird kein Shutdown eingeleitet. Das ist noch nicht ganz optimal. Dieser Spezialität werde ich mich in einem meiner nächsten Post noch widmen.

Ausgenommen von diesem Problem funktioniert die Anbindung ohne Probleme und ist hier durchaus schon praxistauglich.