Good to Know Database

Raspbian Wheezy: Apcupsd einrichten


Apcupsd ist ein Daemon zum Steuern und Überwachen von UPS-Modellen des Herstellers APC. Sobald ein Stromausfall auftritt überbrückt die unterbrechungsfreie Stromversorgung (UPS) die Stromversorgung der angeschlossenen Geräte und der APC UPS Daemon meldet dies den Benutzern. Wird ein vorgegebener minimaler Überbrückungszeitraum unterschritten, wird vom Apcupsd ein automatischer Shutdown eingeleitet um somit eventuellem Datenverlust vorzubeugen.

In der folgenden Anleitung möchte ich Ihnen die Konfiguration des APC UPS Daemons anhand der APC Back-UPS RS 800VA zeigen. Als Grundlage wird hier das derzeit aktuelle Raspbian Image vom 09.02.2013 (2013-02-09-wheezy-raspbian.zip) verwendet.

Apcupsd installieren

Für die Verkabelung der UPS nehmen Sie wenn nötig das Handbuch des Herstellers zu Hilfe. Wenn Sie das USB-Datenkabel mit dem Raspberry Pi verbunden haben, können Sie mit dem folgenden Befehl überprüfen ob die UPS erkannt wurde. Sie erhalten dadurch eine Übersicht der angeschlossenen USB-Geräte in welcher auch die APC Back-UPS erscheinen sollte.

pi@raspberrypi ~ $ lsusb
Bus 001 Device 002: ID 0424:9512 Standard Microsystems Corp.
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp.
Bus 001 Device 004: ID 051d:0002 American Power Conversion Back-UPS Pro 500/1000/1500

Installieren Sie jetzt das Paket apcupsd.

pi@raspberrypi ~ $ sudo apt-get update
pi@raspberrypi ~ $ sudo apt-get install apcupsd

Standalone-Konfiguration

Nach der Installation müssen Sie noch einige Änderungen an der Konfigurationsdatei vornehmen. Da es verschiedene Konfigurationsmöglichkeiten gibt, möchte ich hier nur auf zwei Grundkonfigurationen eingehen.

Die erste Konfigurationsart ist die Standalone-Variante. Hier wird nur ein System beziehungsweise nur der Raspberry Pi von der UPS versorgt welcher auch die Überwachung übernimmt.

Öffnen Sie zuerst die Konfigurationsdatei des APC UPS Daemons.

pi@raspberrypi ~ $ sudo vi /etc/apcupsd/apcupsd.conf

Überprüfen Sie nun bei den folgenden Optionen ob der richtige Wert zugeordnet ist und ob sie auskommentiert sind.

UPSCABLE usb
UPSTYPE usb

Die Option DEVICE gibt die Schnittstelle an, an welcher die UPS angeschlossen ist. Wenn die UPS über USB angeschlossen wurde, darf hier keine Schnittstelle eingetragen werden.

DEVICE

Dies waren die wichtigsten Optionen um eine Verbindung zur UPS aufzubauen und diese zu überwachen. Die nächsten zwei Optionen geben an wann ein System-Shutdown ausgeführt wird.

Durch die Option BATTERYLEVEL können Sie prozentual angeben bei welcher Restladung der UPS-Batterie der Shutdown-Befehl ausgeführt werden soll.

BATTERYLEVEL 5

Eine weitere Möglichkeit bietet die Option MINUTES welche die errechnete Restlaufzeit der UPS zu Hilfe nimmt.

MINUTES 3

Hinweis: In beiden Fällen sollten Sie aber beachten, dass noch genug Batteriekapazität für einen ordnungsgemäßen Shutdown aller angeschlossenen Systeme zur Verfügung steht.

Die nachfolgenden Einstellungen sind für den Network Information Server (NIS), über welchen der Status der UPS abgefragt werden kann. Diesen Service benötigen Sie unter anderem für den Apcupsd Network Monitor und wenn Sie mehrere Rechner an einer UPS betreiben wollen.

NETSERVER on
NISIP 0.0.0.0
NISPORT 3551

Nachdem Sie die Konfigurationsdatei /etc/apcupsd/apcupsd.conf angepasst haben, müssen Sie noch die /etc/default/apcupsd anpassen.

pi@raspberrypi ~ $ sudo vi /etc/default/apcupsd

Ändern Sie hier die Option ISCONFIGURED wie folgt ab.

ISCONFIGURED=yes

Sobald Sie alle Einstellungen vorgenommen haben, speichern Sie die Datei und starten den APC UPS Daemon.

pi@raspberrypi ~ $ sudo /etc/init.d/apcupsd start

Master/Slave-Konfiguration

Die Master/Slave-Konfiguration ist die zweite Konfigurationsvariante die ich hier vorstellen möchte. Bei dieser Variante gibt es zwei oder mehrere Systeme welche von einer UPS versorgt werden. Über eine Netzwerkverbindung zwischen den Rechnern werden die Statusdaten der UPS ausgetauscht.

Sollten Sie diese Art der Konfiguration einsetzen, vergessen Sie bitte nicht auch die Netzwerkinfrastruktur, über welche die Rechner verbunden sind, mit der UPS abzusichern.

Zuerst ändern Sie die Konfiguration des Masters, dazu öffnen Sie wieder die Konfiguration.

pi@raspberrypi ~ $ sudo vi /etc/apcupsd/apcupsd.conf

Die folgenden Einstellungen für die Verbindung zur UPS sind identisch mit der Standalone-Konfiguration.

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

Nachdem Sie die Konfigurationsdatei /etc/apcupsd/apcupsd.conf angepasst haben, müssen Sie noch die /etc/default/apcupsd anpassen.

pi@raspberrypi ~ $ sudo vi /etc/default/apcupsd

Ändern Sie hier die Option ISCONFIGURED wie folgt ab.

ISCONFIGURED=yes

Falls Sie bei Raspbian die Firewall iptables aktiviert haben, müssen Sie noch den TCP-Port 3551 in der Firewall öffnen damit ein Client auf den Master zugreifen kann.

Sobald Sie alle Einstellungen vorgenommen haben, können Sie den APC UPS Daemon starten.

pi@raspberrypi ~ $ sudo /etc/init.d/apcupsd start

Kommen wir nun zur Slave-Konfiguration. Öffnen Sie deshalb die Konfigurationsdatei auf dem Slave-System.

[root@centos6 ~]# vi /etc/apcupsd/apcupsd.conf

Passen Sie jetzt die folgenden Optionen an.

UPSCABLE ether
UPSTYPE net
DEVICE 192.168.10.53:3551
BATTERYLEVEL 10
MINUTES 6
NETSERVER on
NISIP 0.0.0.0
NISPORT 3551

Hinweis: Beachten Sie bei den Optionen BATTERYLEVEL und MINUTES, dass die Werte der Slave-Systeme über den Werten des Master-Systems liegen. Sollten Sie kleinere oder die gleichen Werte verwenden, könnte es dazu kommen, dass das Master-System bereits heruntergefahren wird und die Slave-Systeme keine Informationen mehr vom Master bekommen und somit nicht rechtzeitig heruntergefahren werden.

Die Option NETTIME sollten Sie auskommentieren, da sie angibt in welchem Abstand der Apcupsd den UPS-Status vom Server abfragen soll. Je nachdem welche zeitliche Differenz zwischen den Master- und Slave-Werten von BATTERYLEVEL und MINUTES gewählt wurde, sollten Sie die standardmäßigen 60 Sekunden anpassen.

NETTIME 60

Speichern Sie die Konfiguration ab und starten den Daemon auf dem Slave-System.

[root@centos6 ~]# service apcupsd start

Vergessen Sie nicht auf dem Slave-System den Apcupsd für den automatischen Start beim Systemstart zu konfigurieren.

[root@centos6 ~]# chkconfig --level 35 apcupsd on

Statusinformationen

Mit dem folgenden Befehl können Sie sich einen Statusbericht Ihrer UPS ausgeben lassen.

pi@raspberrypi ~ $ apcaccess status

Alle Ereignisse vom Apcupsd können Sie dem Logile /var/log/apcupsd.log entnehmen.

pi@raspberrypi ~ $ tail -f /var/log/apcupsd.events

Apcupsd Network Monitor installieren

Der Apcupsd Network Monitor besteht aus einigen CGI-Scripten welche Sie über einen Browser aufrufen können und somit die UPS-Informationen einsehen können. Wenn Sie die CGI-Skripte einsetzen wollen, müssen Sie den Webserver Apache2 und das Paket apcupsd-cgi installieren.

pi@raspberrypi ~ $ sudo apt-get install apache2 apcupsd-cgi

Nach der Installation können Sie in Ihrem Browser die folgende Adresse aufrufen und den aktuellen Status Ihrer UPS einsehen. Den Domainnamen des Raspberry Pi's müssen Sie entsprechend anpassen oder die IP-Adresse angeben.

http://raspberrypi.home.lan/cgi-bin/apcupsd/multimon.cgi


Dieser Eintrag wurde am 01.05.2013 erstellt und zuletzt am 25.09.2016 bearbeitet.

Direkter Link zu dieser Seite: http://www.gtkdb.de/index_36_2203.html

[ Zur Startseite ]   [ Zur Kategorie ]


Valid XHTML 1.0 Transitional Valid CSS Valid Atom 1.0

© 2004-2018 by Georg Kainzbauer