Synology Diskstation als Netzwerk-USV-Server für Linux oder Windows-Rechner verwenden

Beim Einsatz einer unterbrechungsfreien Stromversorgung (USV) wird diese gerne an NAS-Geräte angeschlossen, um die darauf abgelegten Daten gegen Stromausfälle zu schützen.

Bei Synology Diskstations gibt es die Möglichkeit diese als Netzwerk-USV-Server zu betreiben, also die Informationen über die USV auch anderen im Netzwerk befindlichen Rechnern zur Verfügung zu stellen. Der Vorteil liegt darin, dass dann auch Rechner, die nicht direkt mit dem Kabel der USV verbunden sind, geordnet herunterzufahren, wenn der Batteriepuffer der USV zur Neige geht.

Synology verwendet auf den Diskstation die „Network UPS Tools (NUT)“. Wie man diese über das Webfrontend der Diskstations konfiguriert ist hier beschrieben.

In unserem Beispiel werden wir für einen weiteren Linux-Rechner im Heimnetz den Dienst zur Verfügung stellen und dort konfigurieren.

Schritt 1: Eintragen des neuen „USV-Clients“ auf der Synology Diskstation unter „Systemsteuerung / Hardware und Energie / USV“. Zuerst setzen wir aber noch den Haken bei „Netzwerk-USV-Server aktivieren“

Aktivieren des USV-Netzwerk-Servers auf der Synology Diskstation

Danach klicken wir auf „Zugelassene Diskstation Geräte“. Keine Sorge – auch wenn uns Synology hier mit dem Text suggeriert, dass dies nur für weitere Synology Diskstations geht: es geht auch für andere Rechner.

Schritt 2: Im nachfolgenden Dialog tragen wir dann die IP-Adresse des neuen Rechners ein, den wir als neuen Client betreiben wollen.

Hinzufügen des neuen Clients als IP-Adresse

Danach konfigurieren wir den Client. Ich beschreibe das hier für Debian/Ubuntu:

Schritt 1: Installieren von NUT

 sudo aptitude install nut

Danach konfigurieren wir nut zuerst mit:

 sudo nano /etc/nut/nut.conf

und setzen dort die Einstellung, dass wir NUT im Client Mode nutzen wollen:

 MODE=netclient

Danach verweisen wir dann in der Datei:

 sudo nano /etc/nut/upsmon.conf

auf den Synology USV-Netwerk-Server:

 MONITOR ups@192.168.178.3 1 monuser secret slave

Selbstverständlich ersetzen sie hier die IP 192.168.178.3 durch ihre passende IP ihres Netzwerk USV Servers.
Danach starten wir NUT auf dem Client neu mit:

 sudo service nut-client restart

Und kontrollieren per:

 sudo upsc ups@192.168.178.3

ob die Verbindung klappt. Tut sie das, liefert der obige Befehle eine ähnlich Ausgabe wie diese hier:

Init SSL without certificate database
battery.charge: 100
battery.charge.low: 10
battery.charge.warning: 50
battery.date: not set
battery.mfr.date: 2015/01/16
battery.runtime: 1447
battery.runtime.low: 120
battery.type: PbAc
battery.voltage: 13.7
battery.voltage.nominal: 12.0
device.mfr: APC
device.model: Back-UPS ES 700G
device.serial: 
device.type: ups
driver.name: usbhid-ups
driver.parameter.pollfreq: 30
driver.parameter.pollinterval: 5
driver.parameter.port: auto
driver.version: SDS6-0-8445-factory-repack-8445-160817
driver.version.data: APC HID 0.95
driver.version.internal: 0.38
input.sensitivity: medium
input.transfer.high: 266
input.transfer.low: 180
input.transfer.reason: input voltage out of range
input.voltage: 230.0
input.voltage.nominal: 230
ups.beeper.status: enabled
ups.delay.shutdown: 20
ups.firmware: 871.O3 .I
ups.firmware.aux: O3
ups.load: 21
ups.mfr: APC
ups.mfr.date: 2015/01/16
ups.model: Back-UPS ES 700G
ups.productid: 0002
ups.serial: 5B1503T03854
ups.status: OL
ups.timer.reboot: 0
ups.timer.shutdown: -1
ups.vendorid: 051d

Fertig. Bei Stromverlust melden der Netzwerk-USV-Server den niedrigen Batteriestand an die Clients weiter. Diese fahren dann per NUT sauber herunter.

Für Windows gibt es das Programm WinNUT. Dies funktioniert analog zu dem, was ich hier beschrieben hatte. Hier müssen Sie lediglich nach Installation in der Datei

%Programfiles%\WinNUT\upsmon.conf

den Netzwerk-USV-Server eintragen.

Unterbrechungsfreie Stromversorgung: Einbinden einer APC BE700G-GR in ein Netzwerk mit Linux-Clients

This file is licensed under the Creative Commons Attribution-Share Alike 3.0 Unported license.

Kennen Sie das? Selbst kleinere Stromschwankungen und kurze Stromausfälle können gerade bei Linux-basierten Rechnern/Servern gravierende Auswirkungen im Dateisystem haben. Gerade dann, wenn das Gerät zum Zeitpunkt des Stromausfalls im Dateisystem geschrieben hat. Dies kann bis dahin gehen, dass der Server oder Rechner danach nicht mehr bootet oder Schäden am Dateisystem bemängelt, die nur mit hohem manuellen Aufwand behebbar sind.

Eine sichere Lösung für das Absichern von Servern im Heimnetzwerkbereich ist die Anschaffung einer unterbrechungsfreien Stromversorgung.

In meinem konkreten Falle habe ich mich für die Anschaffung einer APC BE700G-GR entschieden. Diese bietet mir die Möglichkeit meine Rechner und Geräte  über einen Zeitraum von ca. 20 Minuten zu überbrücken und danach gezielt die Server herunterzufahren, sollte der Stromausfall länger als 20 Minuten andauern.

APC Power-Saving Back-UPS ES 8 Outlet 700VA 230V CEE 7/7
APC Power-Saving Back-UPS ES 8 Outlet 700VA 230V CEE 7/7, Bildquelle: APC, IT Business Media Portal, http://www.apcmedia.com/prod_image_library/index.cfm?search_item=BE700G-GR#, abgerufen am 10.11.2014

 

Konkret sichere ich mit dieser USV folgende Geräte ab:

  • 2 Fritz!Boxen
  • 1 Netgear Switch mit PoE
  • 5 Raspberry Pi
  • 1 Banana Pi

In diesem Artikel möchte ich nun beschreiben, wie man recht einfach seine Linux-basierten Server an die USV anbindet. Dazu werden wir apcupsd (http://www.apcupsd.com/) verwenden.

Da ich vor allem Debian auf meinen Servern verwende beziehen sich die nachfolgenden Schritte auf dieses System.

Schritt 1: Verkabeln Sie die USV …

…wie im Handbuch angegeben und mit dem mitgelieferten Kabel an einen freien USB-Port ihres Linux-Rechners. Anbei sieht man die seitliche Ansicht der USV an der man das USB-Kabel am Anschluss „Data Port“ anbringt.

_resource_images_salestools_500_Miscellaneous_8FF4E83F070F84928525761F0048C8F7_MMAE_7VBHRP_misc_h_500x500
Seitenansicht APC Power-Saving Back-UPS ES 8 Outlet 700VA 230V CEE 7/7, Bildquelle: APC, IT Business Media Portal, http://www.apcmedia.com/prod_image_library/index.cfm?search_item=BE700G-GR#, abgerufen am 10.11.2014

Danach kann man mit nachfolgenden Befehl überprüfen, ob das Anschließen soweit geklappt hat. Dazu sollte die USV bereits mit Strom versorgt und eingeschaltet sein, sonst sieht man hier gar nix.

sudo lsusb

In der Ausgabe des Befehls sollte man erkennen können, dass hier eine USV von „American Power Conversion“ am werkeln ist.

Schritt 2: Installieren von apcupsd

sudo aptitude update && sudo aptitude upgrade
sudo aptitude install apcupsd

Schritt 3: Konfigurieren des „Masters“ (also derjenige Rechner, an dem die USV direkt per USB-Kabel angeschlossen ist)

sudo nano /etc/default/apcupsd

Dort ändern wir den Eintrag ISCONFIGURED auf:

ISCONFIGURED=yes

und die nachfolgenden Einträge in der /etc/apcupsd/apcupsd.conf auf die folgenden Werte:

sudo nano /etc/apcupsd/apcupsd.conf

UPSCABLE usb
UPSTYPE usb
DEVICE
BATTERYLEVEL 5
MINUTES 3
NETSERVER on
NISIP 0.0.0.0
NISPORT 3551

Danach starten wir den UPS-Daemon:

sudo /etc/init.d/apcupsd start

Schritt 4: Konfigurieren der USV-Slaves (also derjenigen Rechner, die nicht direkt mit der USV verbunden sind, die aber trotzdem heruntergefahren werden sollen, wenn es auf der USV knapp wird)

sudo nano /etc/default/apcupsd

Dort ändern wir den Eintrag ISCONFIGURED auf:

ISCONFIGURED=yes

und die nachfolgenden Einträge in der /etc/apcupsd/apcupsd.conf auf die folgenden Werte:

sudo nano /etc/apcupsd/apcupsd.conf

UPSCABLE ether
UPSTYPE net
DEVICE <IP-Adresse des USV-Masters>:3551
BATTERYLEVEL 10
MINUTES 6
NETSERVER on
NISIP 0.0.0.0
NISPORT 3551

Danach starten wir den UPS-Daemon:

sudo /etc/init.d/apcupsd start

Schritt 5: Nachkontrolle und Status

Mit dem nachfolgenden Befehl bekommen Sie den Status der APC USV angezeigt:

sudo apcaccess status