Table of Contents
Installazione apcups su RedHat 4 EL
Il pacchetto apcupsd ufficiale per RedHat 4 EL non contiene tutte le componenti (ad esempio l'interfaccia web) ed è di una vecchia versione. Preferita la pacchettizzazione recente trovata sul sito dag.wieers.com. Il pacchetto non ha richiesto dipendenze.
Due UPS collegati allo stesso server
Al server sono collegati due gruppi di continuità, un APC-3000 con cavetto USB e un APC-1400 con cavetto seriale. Si vogliono avere due demoni apcupsd
in esecuzione contemporaneamente: si creano due directory di configurazione copiandoci tutto il contenuto della /etc/apcupsd/
:
/etc/apcupsd/1400/
/etc/apcupsd/3000/
Si configurano i due file apcupsd.conf
, ecco le parti rilevanti:
UPSCABLE usb UPSTYPE usb DEVICE SCRIPTDIR /etc/apcupsd/3000 PWRFAILDIR /etc/apcupsd/3000 BATTERYLEVEL 10 MINUTES 5 TIMEOUT 600 UPSCLASS standalone NETSERVER on NISIP 0.0.0.0 NISPORT 3551 UPSNAME APC_3000
UPSCABLE smart UPSTYPE apcsmart DEVICE /dev/ttyS0 SCRIPTDIR /etc/apcupsd/1400 PWRFAILDIR /etc/apcupsd/1400 BATTERYLEVEL -1 MINUTES -1 TIMEOUT 0 UPSCLASS standalone NETSERVER on NISIP 0.0.0.0 NISPORT 3552 UPSNAME APC_1400
Inoltre si sostituisce lo script /etc/apcupsd/1400/apccontrol
con il file fornito come esempio safe.apccontrol
.
In pratica l'UPS APC-1400 indicherà al proprio demone quando la tensione viene a mancare, ma a questo non seguirà alcuna azione. Sono invece le impostazione dell'APC-3000 che determinano i tempi di shutdown.
I due demoni apcupsd
sono consultabili via network sulle porte TCP 3551 (default) e 3552 rispettivamente.
Avvio automatico dei due demoni
Si deve modificare lo script /etc/init.d/apcupsd
relativamente alle azioni di start e stop, ecco un estratto:
CONFIG_FILES="/etc/apcupsd/*/apcupsd.conf" case "$1" in start) rm -f /etc/apcupsd/powerfail rm -f /etc/nologin echo -n "Starting UPS monitoring:" for conf in $CONFIG_FILES; do subdir="$(dirname "$conf")" instance="$(basename "$subdir")" daemon --force /sbin/apcupsd -f "$conf" RETVAL=$? [ $RETVAL -eq 0 ] && touch /var/lock/subsys/apcupsd.$instance done echo ;; stop) echo -n "Shutting down UPS monitoring:" for conf in $CONFIG_FILES; do subdir="$(dirname "$conf")" instance="$(basename "$subdir")" killproc apcupsd rm -f /var/lock/subsys/apcupsd.$instance done echo rm -f $APCPID ;;
Interfaccia web
Si punta il browser su http://host/apcupsd/multimon.cgi
, ovviamente deve essere attivo un server web. Per indicare che ci sono due demoni da monitorare, si modifica il file /etc/apcupsd/hosts.conf
mettendo qualcosa del genere:
MONITOR 127.0.0.1 "APC-3000" MONITOR 127.0.0.1:3552 "APC-1400"
Installazione di un client
Configurato un server Windows 2000 come client di apcupsd
, installato il pacchetto winapcupsd-3.14.4.exe e configurato il file C:\apcupsd\etc\apcupsd.conf
, in particolare:
UPSCABLE ether UPSTYPE net DEVICE 192.168.123.123:3552 BATTERYLEVEL -1 MINUTES -1 TIMEOUT 60 NISIP 127.0.0.1 NETTIME 10
Il client ignora le informazioni fornite dall'UPS su livello della batteria e minuti rimasti (stime), ma inizia uno shutdown dopo 60 secondi dal bkack-out. Il client controlla lo stato dell'UPS dal server ogni 10 secondi e condivide solo con se stesso queste informazioni (NISIP 127.0.0.1, necessario perché funzioni l'applicativo da systray).