Unterabschnitte


Apcupsd - UPS Uninterruptable Power Supply

Die Einleitung

Dieses Programm stellt einen Dienst für eine USV zur Verfügung. Eine unterbrechungsfreie Stromversorgung (USV, engl. Uninterruptable Power Supply oder Uninterruptible Power Source, UPS) soll beim Ausfall der Netzspannung, die Stromversorgung mit Hilfe von Akkumulatoren (kurz Akkus), für eine bestimmte Zeitspanne sicherstellen. Schwankungen im Stromnetz der Energieversorgungsunternehmen (EVU) sind heute an der Tagesordnung, so dass die USV auch Schwankungen (Spitzen usw.) abfangen sollen. USVs werden u.a. in Krankenhäusern, Fernseh- und Radiostationen, Rechenzentren und Einsatzzentralen eingesetzt.

Diese Software unterliegt der GNU General Public License (GPL) mit allen daraus resultierenden Rechten, sowie dem Ausschluss jeglicher Gewährleistung.

Hinweis: Vor dem produktiven Einsatz sollten alle Einstellungen gründlich getestet werden. Dabei ist es sinnvoll den Server NICHT an die Spannungsversorgung der USV anzuschliessen. Insbesondere die Einstellungen zum Abschalten der USV sind hier kritisch und können zum unbeabsichtigten Abschalten der Versorgung führen.

Das Menü im Setup-Programm

Das Menü im Setup-Programm ist wie folgt aufgebaut:

  4. Service administration  
  x. Apcupsd    
  1. View documentation
  2. Edit configuration
  3. Advanced configuration file handling
  4. Show status
  5. Start Apcupsd
  6. Stop Apcupsd
  7. Restart Apcupsd
  8. Test USV
  9. Apcupsd web monitoring (optional)
  0. Exit

TIPP im BIOS des Rechners sollte in den Energieeinstellungen 'always on' gesetzt werden, ansonsten wird der Server nach Wiedereinschalten der Versorgung nicht wieder starten.

Änderung der Konfiguration

Die Konfiguration kann über den Menüpunkt 'Edit configuration' geändert werden. Standardmäßig wird der Editor aufgerufen, der in der Environment-Konfiguration über die Variable 'EDITOR' festgelegt wurde.

Die Konfigurationsdatei

In der Konfigurationsdatei, die über das Menü zugänglich ist, sind folgende Parameter vorhanden; wer sie von Hand editieren will findet sie unter
/etc/config.d/apcupsd

Die Parameter

START_APCUPSD

Legt fest ob apcupsd gestartet werden soll. Ein Stoppen über das Menü ist jederzeit möglich.

Gültige Werte: yes, no

Standardeinstellung: START_APCUPSD='no'

APCUPSD_UPSCABLE

Verwendetes Kabel für die Kommunikation mit der USV.

Gültige Werte:

  simple | 940-0020B | 940-0023A
  smart | 940-0024B | 940-0024C
  940-1524C | 940-0024G | 940-0095A
  940-0095B | 940-0095C | 940-0119A
  ether | usb  

Standardeinstellung: APCUPSD_UPSCABLE='smart'

APCUPSD_UPSTYPE

Hier wird der Typ der angeschlossenen USV angegeben.

UPSTYPE und DEVICE müssen aufeinander abgestimmt sein, siehe APCUPSD_DEVICE.

Gültige Werte: dump, apcsmart, net, usb, snmp

Standardeinstellung: APCUPSD_UPSTYPE='apcsmart'

APCUPSD_DEVICE

Abhängig vom Eintrag unter APCUPSD_UPSTYPE:

Gültige Werte:

APCUPSD APCUPSD    
UPSTYPE DEVICE Beschreibung  
       
apcsmart /dev/tty** Neuere seriell angeschlossene USV.  
    Passend für SmartUPS Modelle die keinen  
    USB Anschluss verwenden. Mögliche Einträge  
    für Device /dev/ttyS[0-9]  
       
usb <BLANK> Für neue USV-Modelle mit USB Anschluss.  
    Dabei bleibt APCUPSD_DEVICE leer!  
       
net hostname:port Dieser Eintrag ist für Computer,  
    die nicht direkt an die USV angeschlossen  
    sind. Dafür muss der Eintrag  
    APCUPSD_NETSERVER auf dem Master Server  
    auf 'YES' stehen. Dieser stellt dann die  
    Informationen über den Status der USV  
    zur Verfügung, so dass bei einem  
    Netzausfall auch die Slave Rechner an der USV  
    herunter gefahren werden können. Angegeben wird  
    IP-Adresse oder Hostname und Port des Master Rechners.  
       
snmp hostname:port: Für USV die über eine SNMP-Karte verfügen.  
  vendor:community Dabei steht Hostname für den Namen der SNMP-Karte  
    der USV, hier kann auch eine IP-Adresse eingetragen  
    werden. Port ist gewöhnlich. Für vendor sind  
    die Einträge APC, APC_NOTRAP und RFC möglich.  
    Hier kann meist APC verwendet werden.  
    APC powernet MIB  
    APC_NOTRAP powernet mit SNMP trap ohne caching  
    RFC rfc1628 UPS-MIB  
    Community ist normalerweise privat.  
       
dump /dev/tty** Für ältere USV-Modelle, die nur die simple  
    Signalisierung beherrschen. Mögliche Einträge  
    für Device /dev/ttyS[0-9]  
       
pcnet ipaddr:username: Für das 'PowerChute Network Shutdown protocol'  
  passphrase wird diese Einstellung benötigt. Dieses Protokoll  
    wird von den neueren PowerNet Karten der AP9617  
    Familie verwendet.IP-Adresse ist die Adresse der  
    UPS mgmt Karte. Username und Passwort sind die auf  
    der Karte konfigurierten Werte.  

Standardeinstellung: APCUPSD_DEVICE='/dev/ttyS0'

APCUPSD_POLLTIME

Zeit in Sekunden, zwischen den Abfragen des USV Status. Der Wert wird bei einem Netzausfall automatisch auf eine Sekunde gesetzt. Ist die Netzspannung zurückgekehrt, wird wieder der eingegebene Wert benutzt. Der Wert wirkt sowohl für direkt angeschlossene USV Typen, als auch für über das Netzwerk (net, snmp) angebundene Typen. Standard sind 60 Sekunden, ein kleinerer Wert belastet die CPU entsprechend mehr.

Gültige Werte: Zahl

Standardeinstellung: APCUPSD_POLLTIME='60'

Verhalten bei einem Stromausfall

Die folgenden Einstellungen dienen der Festlegung des Verhaltens bei einem Stromausfall.

APCUPSD_ONBATTERYDELAY

Wartezeit in Sekunden vom Ausfall der Netzspannung bis zur Reaktion von apcupsd. Um eine Benachrichtigung bei kurzen Stromausfällen zu vermeiden, kann hier eine entsprechend lange Zeit eingestellt werden. Standard 6 Sekunden.

Gültige Werte: Zahl

Standardeinstellung: APCUPSD_ONBATTERYDELAY='6'

APCUPSD_BATTERYLEVEL

Der hier eingegebene Wert legt fest, bei wie viel Prozent der Akku-Kapazität das Herunterfahren des Servers ausgelöst wird. Standardwert ist 5 %. Die Einstellung wird bei simple Signalisierung ignoriert. Zum Deaktivieren der Einstellung kann ein Wert von -1 gesetzt werden.

Gültige Werte: Zahl, -1

Standardeinstellung: APCUPSD_BATTERYLEVEL='5'

APCUPSD_MINUTES

Verbleibende Akku Restlaufzeit in Minuten.
Wird die Restlaufzeit, von der in der USV berechneten unterschritten, wird das Herunterfahren des Servers ausgelöst. Standardwert sind 3 Minuten. Die Einstellung wird bei simple Signalisierung ignoriert. Zum Deaktivieren der Einstellung kann ein Wert von -1 gesetzt werden. Es sollte beachtet werden, dass einige USV-Modelle den Wert falsch berechnen. In der Statusanzeige kann der Wert für TIMELEFT geprüft werden. Ist der Wert NULL oder unplausibel liegt evtl. ein Defekt an der USV vor. In diesem Fall den Wert deaktivieren.

Gültige Werte: Zahl, -1

Standardeinstellung: APCUPSD_MINUTES='3'

APCUPSD_TIMEOUT

Bei einem Stromausfall wird nach Ablauf dieser Zeit in Sekunden der Server heruntergefahren. Für alle smart USV-Typen und USV-Typen die ein Low Battery Signal übermitteln, kann dieser Wert auf 0 gesetzt werden. Ein Herunterfahren wird hier über BATTERYLEVEL oder MINUTES ausgelöst. Für andere USV-Typen muss der Wert gesetzt werden. So wird der Server nach der hier eingestellten Zeit heruntergefahren. Dieser Wert kann auch für Testzwecke nützlich sein. Bei einem kleinen Wert z.B. 60 Sekunden kann das korrekte Herunterfahren schnell geprüft werden. Die Werte TIMEOUT, BATTERYLEVEL und MINUTES können auch alle gesetzt werden. Der Wert der zuerst erreicht wird löst dann das Herunterfahren aus.

Gültige Werte: Zahl

Standardeinstellung: APCUPSD_TIMEOUT='0'

APCUPSD_MAILNOTIFY

Aktiviert/Deaktiviert Email-Benachrichtigung.

Gültige Werte: yes, no

Standardeinstellung: APCUPSD_MAILNOTIFY='yes'

APCUPSD_ANNOY

Pause in Sekunden zwischen den Aufforderungen sich abzumelden. Standard Wert ist 300 Sekunden (5 Minuten). Der Zeitwert muss größer sein als der für APCUPSD_ANNOYDELAY.

Hinweis
Wenn APCUPSD_NOLOGON auf disable oder always gesetzt ist wird diese Einstellung ebenfalls deaktiviert.


Gültige Werte: Zahl

Standardeinstellung: APCUPSD_ANNOY='300'

APCUPSD_ANNOYDELAY

Zeit in Sekunden bis angemeldete Benutzer bei einem Netzausfall das erste mal aufgefordert werden sich abzumelden. Standardwert ist 60 Sekunden.

Hinweis
Wenn APCUPSD_NOLOGON auf disable oder always gesetzt ist wird diese Einstellung ebenfalls deaktiviert.


Gültige Werte: Zahl

Standardeinstellung: APCUPSD_ANNOYDELAY='60'

APCUPSD_NOLOGON

Steuert ob und wann ein Login bei Stromausfall verhindert wird.

Kommentar: Die wahrscheinlich sinnvollsten Einstellungen sind disable und always. Bei allen anderen Einstellungen ist die Zeit zwischen dem Verhindern eines Login und dem Herunterfahren des Servers sehr kurz.

  disable deaktiviert diese Funktion, das heisst jeder Benutzer
    kann sich während eines Netzausfalls anmelden. Die
    Funktionen ANNOY und ANNOYDELAY sind damit ebenfalls
    ausgeschaltet.
     
  timeout verhindert ein Login wenn 90% der in TIMEOUT
    eingestellten Zeit vergangen ist.
    Kommentar: Da in den meisten Fällen der TIMEOUT Wert
    nicht gesetzt wird ist diese Einstellung weniger nützlich.
     
  percent ein Login wird verhindert, wenn die verbleibende
    Akku-Kapazität 110% oder weniger als der in BATTERYLEVEL
    eingestellt Wert erreicht hat.
    Beispiel: BATTERYLEVEL=15 ein Login wird bei weniger
    als 16% Akkukapazität verhindert (15% X 110% = 16%).
     
  minutes ein Login wird verhindert, wenn die verbleibende
    Restlaufzeit 110% oder weniger als der in MINUTES
    eingestellt Wert erreicht hat.
    Beispiel: MINUTES=3 ein Login wird bei weniger als
    3 Minuten Restlaufzeit verhindert (3 X 110% = 3).
     
  always bei einem Netzausfall wird das Login sofort verhindert.
    Die Funktionen ANNOY und ANNOYDELAY sind damit ebenfalls
    ausgeschaltet.

Gültige Werte: disable, timeout, percent, minutes, always

Standardeinstellung: APCUPSD_NOLOGON='disable'

APCUPSD_KILLPOWER

Über diesen Parameter wird bestimmt ob beim Herunterfahren das KILLPOWER Signal an die USV gesendet wird. Normalerweise kann die Einstellung auf 'yes' belassen werden. Falls die USV abschaltet bevor der Server heruntergefahren ist und sich die Zeit in der USV bis zum Abschalten nicht einstellen lässt, kann hier 'no' gesetzt werden. Allerdings wird die USV dann solange laufen bis der Akku erschöpft ist. Sollte vorher die Netzspannung wiederkehren, wird der Rechner nicht neu starten.

Gültige Werte: yes, no

Standardeinstellung: APCUPSD_KILLPOWER='yes'

Network Information Server

Die folgenden Einstellungen dienen der Konfiguration des Network Information Servers (NIS).
Diese Einstellungen sind für eine einwandfreie Funktion NICHT erforderlich.

APCUPSD_NETSERVER

Network Information Server aktivieren.

Es wird ein Child-Prozess gestartet der Staus und Ereignisse im Netzwerk zur Verfügung stellt. Diese Informationen werden hauptsächlich von den CGI Programmen des Webinterfaces genutzt.

Gültige Werte: yes, no

Standardeinstellung: APCUPSD_NETSERVER='yes'

APCUPSD_NISIP

IP-Adresse auf die der NIS Server lauscht. Standard ist 0.0.0.0, das heisst es wird auf allen Adressen gelauscht. Es kann auch eine Spezielle IP-Adresse angegeben werden. Oder auch 127.0.0.1 (loopback), es werden nur Verbindungen des lokalen Rechners erlaubt.

Gültige Werte: IP Addresse

Standardeinstellung: APCUPSD_NISIP='0.0.0.0'

APCUPSD_NISPORT

Port den der Network Information Server verwendet. Vorgabe ist 3551, dieser ist dafür von der IANA (Internet Assigned Numbers Authority) offiziell zugeordnet. Wird der Port geändert funktionieren die CGI Programme des Webinterfaces nicht mehr. Die CGI Programme müssen dann mit der geänderten Portnummer neu kompiliert werden.

Gültige Werte: Port Nummer

Standardeinstellung: APCUPSD_NISPORT='3551'

USV Sharing

Die folgenden Einstellungen sind für das USV Sharing (an einer USV sind mehrere Rechner angeschlossen).

Die Werte sind ausschliesslich für die Nutzung der APC Erweiterungskarte ShareUPS.

APCUPSD_UPSCLASS

Standard ist standalone, es sei denn eine APC ShareUPS Karte wird verwendet.

Gültige Werte: standalone, shareslave, sharemaster

Standardeinstellung: APCUPSD_UPSCLASS='standalone'

APCUPSD_UPSMODE

Standard ist disable, es sei denn eine APC ShareUPS Karte wird verwendet.

Gültige Werte: disable, share.

Standardeinstellung: APCUPSD_UPSMODE='disable'

Loggen von Statusmeldungen

Mit den folgenden Einstellungen wird das Loggen von Statusmeldungen konfiguriert.

APCUPSD_STATTIME

Hier wird das Intervall, in Sekunden, für das Schreiben des Statusfiles (/etc/apcupsd/apcupsd.status) festgelegt. Der Wert sollte auf 0 belassen werden, d.h. es wird kein Statusfile geschrieben.

Gültige Werte: Zahl

Standardeinstellung: APCUPSD_STATTIME='0'

APCUPSD_LOGSTATS

Loggen von Statusmeldungen.

Hinweis
Wird diese Einstellung aktiviert, werden sehr viele Meldungen ins Logfile geschrieben.


Gültige Werte: yes, no

Standardeinstellung: APCUPSD_LOGSTATS='no'

APCUPSD_DATATIME

Intervall in Sekunden in denen die Statusmeldungen ins Logfile geschrieben werden. Dieser Wert ist normalerweise 0.

Gültige Werte: Zahl

Standardeinstellung: APCUPSD_DATATIME='0'

EEPROM Programierung

Die folgenden Einstellungen lassen sich mit dem apctest Modul (Menüpunkt 'Test USV') in das EEPROM der USV Programmieren. Diese Werte haben keine Wirkung auf den apcupsd Daemon. Die aktuell in der USV gespeicherten Werte lassen sich über den Menüpunkt 'Show Status' oder 'Test USV' Anzeigen.

ACHTUNG
Die Einstellungen sind mit Vorsicht zu wählen, da sich hier z.B auch die Ausgangsspannung der USV beeinflussen lässt. Wird für einen Parameter IGNORE gesetzt wird dieser beim Programmieren des EEPROM nicht berücksichtigt.


APCUPSD_EEPROM_UPSNAME

Name der USV maximal 8 Zeichen. (scheint beim Schreiben ins EEPROM ignoriert zu werden)

Gültige Werte: Name

Standardeinstellung: APCUPSD_EEPROM_UPSNAME='IGNORE'

APCUPSD_EEPROM_BATTDATE

Datum des letzten Akkutausches Format mm/dd/yy (scheint beim Schreiben ins EEPROM ignoriert zu werden)

Gültige Werte: mm/dd/yy

Standardeinstellung: APCUPSD_EEPROM_BATTDATE='IGNORE'

APCUPSD_EEPROM_SENSITIVITY

Ansprech-Empfindlichkeit der USV. Je höher die Empfindlichkeit eingestellt wird, desto schneller schaltet die USV bei Netzschwankungen auf Batterieversorgung.

Standard Einstellung ist 'H'. Diese Einstellung kann geändert werden, wenn die USV aufgrund von Spannungsschankungen sehr oft auf Batterie umschaltet. Vorausgesetzt die Computer-Hardware verkraftet dann die Spannungsschwankungen.

Gültige Werte: (H)igh, (M)edium, (L)ow.

Standardeinstellung: APCUPSD_EEPROM_SENSITIVITY='IGNORE'

APCUPSD_EEPROM_WAKEUP

Wartezeit vor dem Wiedereinschalten der USV in Sekunden. Nach dem Herunterfahren des Servers und dem Abschalten der USV bei einem Stromausfall, wird vor dem Wiedereinschalten der USV diese Zeit gewartet. Diese Einstellung schützt die Hardware vor zu frühem Wiedereinschalten, vor allem wenn die Netzspannung in kurzen Abständen wieder ausfällt.

Standard = 0 ⇒ (Deaktiviert)

Gültige Werte: 0, 60, 180, 300

Standardeinstellung: APCUPSD_EEPROM_WAKEUP='IGNORE'

APCUPSD_EEPROM_SLEEP

Verzögerung in Sekunden vom Empfang des KILLPOWER Signals bis zum Abschalten der USV. Beim Herunterfahren, aufgrund eines Stromausfalls, wird das KILLPOWER Signal zum Abschalten an die USV gesendet. Die Zeit bis zum tatsächlichen Abschalten muss so gewählt werden, daß der Server genügend Zeit zum herunterfahren hat!

Standard = 0 ⇒ (Deaktiviert)

Gültige Werte: 0, 20, 180, 300, 600

Standardeinstellung: APCUPSD_EEPROM_SLEEP='IGNORE'

APCUPSD_EEPROM_LOTRANSFER

Unterschreitet die Netzspannung diesen Wert in Volt, wird auf Akku-Betrieb geschaltet.

Die Werte sind vom USV-Modell abhängig.

Gültige Werte:

  D 106 103 100 097
  M 177 172 168 182
  A 092 090 088 086
  I 208 204 200 196

Standard = 0 ⇒ (Deaktiviert)

Standardeinstellung: APCUPSD_EEPROM_LOTRANSFER='IGNORE'

APCUPSD_EEPROM_HITRANSFER

Überschreitet die Netzspannung diesen Wert in Volt wird auf Akku-Betrieb geschaltet.

Die Werte sind vom USV-Modell abhängig.

Gültige Werte:

  D 127 130 133 136
  M 229 234 239 224
  A 108 110 112 114
  I 253 257 261 265

Standard = 0 ⇒ (Deaktiviert)

Standardeinstellung: APCUPSD_EEPROM_HITRANSFER='IGNORE'

APCUPSD_EEPROM_RETURNCHARGE

Dieser Wert legt den erforderlichen Akku-Ladezustand in Prozent fest, bei dem die USV nach einem Stromausfall wieder einschaltet.

Die Werte sind vom USV-Modell abhängig.

Gültige Werte: 00, 15, 50, 90

Standard = 15

Standardeinstellung: APCUPSD_EEPROM_RETURNCHARGE='IGNORE'

APCUPSD_EEPROM_BEEPSTATE

Hier wird das Verhalten des in der USV eingebauten Piepsers eingestellt.

  0 sobald ein Problem mit der Stromversorgung auftritt.
  T Wie 0 aber mit 30 Sekunden Verzoegerung.
  L Warnung erst bei niedrigem Akkustand.
  N Piepser immer ausgeschaltet.

Gültige Werte: 0, T, L ,N

Standardeinstellung: APCUPSD_EEPROM_BEEPSTATE='IGNORE'

APCUPSD_EEPROM_LOWBATT

Verzögerung bis zur Warnung niedriger Batteriestandïn Minuten.

Gültige Werte: 02, 05, 07, 10

Standard = 02

Standardeinstellung: APCUPSD_EEPROM_LOWBATT='IGNORE'

APCUPSD_EEPROM_OUTPUTVOLTS

Ausgangsspannung in Volt der USV.

Die Werte sind vom USV-Modell abhängig.

Gültige Werte:

  D 115
  M 208
  A 100
  I 230 240 220 225

Standard = 0 ⇒ (Deaktiviert)

Standardeinstellung: APCUPSD_EEPROM_OUTPUTVOLTS='IGNORE'

APCUPSD_EEPROM_SELFTEST

Einstellung für den Selbsttest der USV.

Gültige Werte:

  OFF kein Selbsttest.
  ON beim Einschalten der USV.
  168 alle 168 Stunden (eine Woche)
  336 alle 336 Stunden (zwei Wochen)

Standardeinstellung: APCUPSD_EEPROM_SELFTEST='IGNORE'