Inhaltsverzeichnis
USV Webanwendungen installieren
Falls der Deamons - Apcupsd erfolgreich installiert, konfiguriert und gestartet ist, kann mit nachfolgenden Anweisungen eine Überwachung der USV via Netzwerk bzw. Internet und Webbrowser ermöglicht werden.
Herunterladen
Es wird empfohlen die letzte stabile Version von Apcupsd - multimon - Paket herunter zu laden. Aktuell ist das die Version 3.14.8
- die zu herunter ladende Datei lautet aktuell
apcupsd-multimon-3.14.8-1.el5.i386.rpm
Installation
Ab hier werden root
-Rechte zur Ausführung der nachfolgenden Befehle benötigt. Um root
zu werden geben Sie bitte folgenden Befehl ein:
$ su - Password:
Ein mögliche Installation wäre das RPM-Paket mit folgendem Befehl zu installieren, ausgehend davon das das RPM-Paket sich im Verzeichnis /tmp
befindet:
# yum localinstall --nogpgcheck /tmp/apcupsd-multimon-3.14.8-1.el5.i386.rpm
Nach erfolgreicher Installation, kann mit nachfolgendem Befehl überprüft werden, welche Dateien innerhalb des Installationspakets apcupsd-multimon-3.14.8-1.el5.i386.rpm
enthalten waren:
# rpm -qil apcupsd-multimon Name : apcupsd-multimon Relocations: (not relocatable) Version : 3.14.8 Vendor: APC UPS Daemon Team Release : 1 Build Date: Mon 18 Jan 2010 11:59:37 PM CET Install Date: Sun 24 Jan 2010 04:06:27 PM CET Build Host: steinman.kroptech.com Group : Applications/Internet Source RPM: apcupsd-3.14.8-1.src.rpm Size : 86081 License: GPL v2 Signature : DSA/SHA1, Tue 19 Jan 2010 01:18:55 AM CET, Key ID 24e84804a57b2d90 Packager : Adam Kropelin <akropel1@rochester.rr.com> URL : http://www.apcupsd.com Summary : APC UPS Power Control Daemon for Linux Description : apcupsd Network Monitoring (CGI) Programs which will give you the status of your UPS or UPSes over the network. /etc/apcupsd /etc/apcupsd/apcupsd.css /etc/apcupsd/hosts.conf /etc/apcupsd/multimon.conf /var/www/cgi-bin /var/www/cgi-bin/multimon.cgi /var/www/cgi-bin/upsfstats.cgi /var/www/cgi-bin/upsimage.cgi /var/www/cgi-bin/upsstats.cgi
Konfiguration Webserver
Zu beachten ist, das die Scripte in einem CGI-Verzeichnis oder einem Verzeichnis auf dem Apache HTTP Webserver zu erreichen sein müssen. Evtl. kann auch ein eigener Virtueller Host im Apache HTTP Webserver dafür definiert werden.
Standardmäßig werden die benötigten CGI-Scripte im Verzeichnis /var/www/cgi-bin
installiert. Falls dies gewünscht sein sollte, können die Scripte mit nachfolgender Beispiel-URL erreicht werden:
HINWEIS - Wesentlich eleganter ist die Definition eines Virtuellen Host in der Konfigurationsdatei /etc/httpd/conf.d/vhosts.conf
, die könnte wie folgt aussehen könnte:
# # usv.tachtler.net # (only reachable from local network) # <VirtualHost *:80> ServerAdmin webmaster@tachtler.net ServerName usv.tachtler.net ServerAlias www.usv.tachtler.net ServerPath / DocumentRoot "/var/www/html/usv" AddHandler cgi-script .cgi <Directory "/var/www/html/usv"> Options ExecCGI AllowOverride AuthConfig Order deny,allow Deny from all # Access from local host only Allow from 127.0.0.1 # Access from local network Allow from 192.168.0.0/24 </Directory> DirectoryIndex multimon.cgi ErrorLog logs/usv_error.log CustomLog logs/usv_access.log combined </VirtualHost>
WICHTIG sind hier folgende Definitionen:
AddHandler cgi-script .cgi
* Ausführbarkeit von CGI-Scripte für den Apache HTTP Webserver und
DirectoryIndex multimon.cgi
* Startdatei für den Apache HTTP Webserver, damit das CGI-Script beim Aufruf des Virtuellen Hosts gleich ausgeführt wird.
Um die benötigten CGI-Scripte unter dem neuen Virtuellen Host erreichbar zu machen, gibt es verschiedene Möglichkeiten. Eine davon ist die CGI-Scripte in das ROOT-Verzeichnis des neuen Virtuellen Host zu verschieben, was evtl. später auch den Vorteil hätte, diese durch eine Passwort abfrage mittels .htaccess
zu schützen.
Um die benötigten CGI-Scripte in das ROOT-Verzeichnis des Virtuellen Host zu verschieben sind nachfolgende Befehle erforderlich:
# mv /var/www/cgi-bin/multicom.cgi /var/www/html/usv # mv /var/www/cgi-bin/ups*.cgi /var/www/html/usv
Anschließend können die Besitzrechte an den benötigten CGI-Scripten mit nachfolgendem Befehl angepasst werden:
# chown root.apache /var/www/html/usv/*
und die Dateirechte ebenfalls mit nachfolgendem Befehl angepasst werden:
# chmod 750 *.cgi
Konfiguration
Zwar ist die „Webanwendung“ bereits lauffähig, jedoch können noch Anpassungen in der Konfigurationsdatei von apcupsd-multimon
durchgeführt werden, welche in nachfolgendem Verzeichnis und mit nachfolgendem Namen zu editieren sind:
/etc/apcupsd/multimon.conf
/etc/apcupsd/hosts.conf
/etc/apcupsd/multimon.conf
Dies Konfigurationsdatei /etc/apcupsd/multimon.conf
nach der Installation im default-Zustand sieht wie folgt aus (Kommentarzeilen und Leerzeilen werden nicht mit ausgegeben):
# egrep -v '(^.*#|^$)' /etc/apcupsd/multimon.conf TEMPC FIELD SYSTEM "System" "" FIELD MODEL "Model" "" FIELD STATUS "Status" "" FIELD battpct "Battery Chg" "%" FIELD utility "Utility" "VAC" FIELD loadpct "UPS Load" "%" FIELD UPSTEMP "UPS Temp" "" FIELD runtime "Batt. Run Time" "min." FIELD DATA "Data" "All data"
HINWEIS - Da nicht von allen USV's die Ausgabe der Batterie-Temperatur unterstützt wird, kann diese mit dem auskommentieren der nachfolgenden Zeile auch ausgeblendet werden (nur relevanter Ausschnitt):
... # FIELD UPSTEMP "UPS Temp" "" ...
HINWEIS - Das Hinzufügen von Feldern ist ebenfalls möglich! Nachfolgende Zeile zeigt an, wie die USV an den Server angeschlossen ist nur relevanter Ausschnitt):
... FIELD cable "Anschlussart" "" ...
Weitere Anpassungen wären z.B. die Übersetzung der angezeigten Spalten in die deutsche Sprache, eine Konfigurationsdatei /etc/apcupsd/multimon.conf
könnte dann wie folgt aussehen (Kommentarzeilen und Leerzeilen werden nicht mit ausgegeben):
# egrep -v '(^.*#|^$)' /etc/apcupsd/multimon.conf TEMPC FIELD SYSTEM "System" "" FIELD MODEL "Modell" "" FIELD cable "Anschlussart" "" FIELD STATUS "Status" "" FIELD battpct "Batterie Ladezustand" "%" FIELD loadpct "USV Auslastung" "%" FIELD runtime "Batterie Restlaufzeit" "min." FIELD utility "Eingangsspannung" "Volt" FIELD DATA "Details" "Abfrage"
/etc/apcupsd/hosts.conf
Dies Konfigurationsdatei /etc/apcupsd/multimon.conf
nach der Installation im default-Zustand sieht wie folgt aus:
# cat hosts.conf # Network UPS Tools - hosts.conf # # This file does double duty - it lists the systems that multimon will # monitor, and also specifies the systems that upsstats is allowed to # watch. It keeps people from feeding random addresses to upsstats, # among other things. upsimage also uses this file to know who it # may speak to. upsfstats too. # # Usage: list systems running upsd that you want to monitor # # MONITOR <address> "<host description>" # # Please note, MONITOR must start in column 1 (no spaces permitted) # # Example: # MONITOR 10.64.1.1 "Finance department" # MONITOR 10.78.1.1 "Sierra High School data room #1" # MONITOR 127.0.0.1 "Local Host"
Hier kann die letzte Zeile, wie folgt abgeändert werden (nur relevanter Ausschnitt):
...
MONITOR 127.0.0.1 "nss.tachtler.net"
...
Anzeigebeispiele
Folgende Anzeigen sind Beispiele für die verschiedenen CGI-Scripte, welche durch Apcupsd bereitgestellt werden