Instalace a nastavení Smart UPS pod Linuxem
Nastavíme si APC Smart UPS tak, aby se systém při delším výpadku stihl řádně ukončit, poslal info do mailu a po obnově napájení se opět spustil. UPS máme samozřejmě připojenou k serveru/PC originálním sériovým kabelem. Instaloval jsem na Debian Squezee.
Nastavení BIOSu
V BIOSu nezapomeňte nastavit u ACPI volbu „Last State“ (nebo nějak podobně, záleží na verzi). Je to z důvodu, aby se po obnově napájení PC opět spustil.
Instalace potřebných balíčků
Jedná se o démona a monitorovací software
apt-get install apcupsd
Máte /usr na zvláštním oddíle?
Pokud máte /usr
na samostatném souborovém systému, je potřeba pár úprav. Program apcupsd
totiž potřebuje některé sdílené knihovny, které jsou pod /usr
a ten je v té konečné fázi vypínání již odpojený.
V /etc/apcupsd/killpower
odkomentujeme dva řádky (u /var
pouze v případě, že máte i tento oddíl samostatný)
#mount -n -o ro /usr #mount -n -o ro /var
a výsledek bude takovýto
mount -n -o ro /usr mount -n -o ro /var
Tím se před spuštěním killpower
opět připojí potřebné souborové systémy, a to read-onl
y, takže odpojení napájení nevadí
Další úpravy pro správné vypínání
Na řádku 51 v /etc/init.d/halt
změníme
poweroff="-p"
na
poweroff=""
čímž následně spouštěný příkaz halt
nevypne počítač přes ACPI (jinak by se po naběhnutí napájení nezapnul), ale jakoby „natvrdo“. Touto úpravou se vyřeší i to, že kdyby nezafungoval killpower
, tak UPS odpojí napájení po nějakém timeoutu („Shutdown Grace Delay“).
Procesy a chování Smart UPS
Takto nějak se má správně Smart UPS chovat:
- Normální stav: Server je zapojený na UPS, která je napájená ze sítě.
- Výpadek sítě:
apcupsd
zjistí, že UPS jede na baterii a průběžně sleduje, kolik zbývá času (je konfigurovatelná maximální doba a minimální kapacita baterie v %, při které se přejde na další fázi). - Pokud v této době síť naskočí — vrátíme se zpět na první bod.
- Výpadek pokračuje, je splněna některá z podmínek pro vypnutí (viz. druhý), tak server pošle UPS příkaz, že se začíná s vypínáním, od tohoto bodu není návratu – tj. po uplynutí „Shutdown grace delay“ UPS odpojí serveru napětí, a to i kdyby mezitím naskočila síť.
- Korektní vypnutí – Server ukončuje všechny služby, odpojí souborové systémy, “/“ nechá read-only. V této fázi se zavolá “apcupsd killpower“ – tj. UPS okamžitě odpojí výstup napětí pro server. I pokud by tento příkaz nebyl zavolán, po uplynutí „Shutdown Grace Delay“ (nastaveno v EEPROM UPS), je napájení odpojeno.
- Po naběhnutí sítě UPS počká na splnění určitých podmínek (nabití baterie na nějakou hladinu, aby se stihnul boot a korektní ukončení při opakovaném výpadku = „Return threshold, Wakeup delay“) a pak až zapne napájení serveru, které bylo do té doby odpojeno (viz. pátý bod). Pokud je tedy v BIOSu nastaveno něco jako LAST-STATE, je to v pořádku, protože v pátém nebyl server vypnut přes ACPI, ale „natvrdo“ odpojením napájení.
Nastavení Smart UPS
Konfiguraci můžeme provádět pomocí démona a nebo přímo na straně UPS. Doporučuji variantu druhou, tzn. na straně démona. Je zde více možností a konfiguraci máme přehledně na jednom místě.
Konfigurace apcupsd
Konfigurace démona je v /etc/apcupsd/apcupsd.conf
Důležité je nastavit správný typ kabelu. U APS Smart-UPS SC420 mám
UPSCABLE 940-0024C
Zajímat nás také bude:
- RETURNCHARGE – (v procentech) určuje, při jakém % nabití baterií se má UPS opět zapnout
- WAKEUP – (v sekundách) určuje, za jak dlouho se má UPS probudit po obnovení napájení ze sítě
Obojí lze nastavit i přes menu programem apctest
. Při jeho použití ale konfigurujeme přímo EEPROM v UPS, tzn., že nám nebude korespondovat s parametry v /etc/apcupsd/apcupsd.conf
v části
========== Configuration statements used in updating the UPS EPROM =========
Je tedy lepší upravovat /etc/apcupsd/apcupsd.conf
a potom konfiguraci nahrát do EEPROM v UPS (viz. níže)
Po změnách nezapomeneme restartovat démona
/etc/init.d/apcupsd restart
Konfigurace EEPROM v UPS pomocí apctest
Teď se ale podíváme na již zmiňovaný apctest
Před jeho spuštěním musíme nejdříve vypnout apcupsd
, který nám obsadil socket pro komunikaci s UPS
/etc/init.d/apcupsd stop
Spustíme apctest
V menu vybereme volbu
5) Program EEPROM 11) Change battery return threshold percent 7) Change wakeup delay
a nastavíme na požadované hodnoty
V případě, že budeme chtít použít hodnoty z /etc/apcupsd/apcupsd.conf
, vybereme volbu
14) Set EEPROM with conf file values
Po ukončení zapneme zase démona
/etc/init.d/apcupsd start
Výpis aktuálního nastavení UPS
Můžeme si také nechat vypsat aktuální stav UPS pomocí démona – POZOR: toto je funkční až nekolik vteřit po jeho nastartování, do té doby se bude zobrazovat error, ze komunikace byla odmítnuta
/etc/init.d/apcupsd status
nebo
apcaccess status
nebo v apctest
pod volbou
5) Program EEPROM 1) Print EEPROM values
Valid EEPROM values for the Smart-UPS SC420
Config Current Permitted
Description Directive Value Values
===========================================
Upper transfer voltage HITRANSFER 253 253 257 261 265
Lower transfer voltage LOTRANSFER 208 208 204 200 196
Return threshold RETURNCHARGE 15 00 15 50 90
Output voltage on batts OUTPUTVOLTS 230 230
Sensitivity SENSITIVITY H H M L L
Low battery warning LOWBATT 2 02 05 07 10
Shutdown grace delay SLEEP 180 060 180 300 600
Alarm delay BEEPSTATE 0 0 T L N
Wakeup delay WAKEUP 60 000 060 180 300
Self test interval SELFTEST 336 336 168 ON OFF
===========================================
Battery date: 06/06/08
UPS Name : UPS_IDEN
Zdroje informací
Nejnovější komentáře