■電源が復旧したときに自動的に起動するようBIOSを設定

BIOSに「AC Power Recovery」という項目があったら「Last」(デフォルト)を「On」に変更しておく。自動的に起動させたくない場合は「Last」のままにしておく。

「Last」とは「直前の状態」という意味で、apcupsdの動作も含めてサーバが正常にシャットダウンした場合には、その後停電が発生し、さらに電源が復旧しても、サーバはシャットダウンした状態(Last)を保つ。つまり起動しない。サーバが起動した状態のまま(正常にシャットダウンされずに)停電が発生し、異常終了した場合には、電源が復旧したときにサーバは起動する。

これに対して、「On」は「常に起動する」という意味で、サーバが正常にシャットダウンしようとしまいと、電源が復旧したときにサーバは起動する。そのため、意図的にサーバをシャットダウンし、停電の有無にかかわらずシャットダウンしたままにしておきたいサーバも、このBIOSの項目が「On」になっていると、勝手に起動するので注意が必要である。

■Linuxでのシリアルポートの確認

# setserial -g /dev/ttyS0
/dev/ttyS0, UART: 16550A, Port: 0x03f8, IRQ: 4

「ttyS0」の末尾は「0」(ゼロ)

■LinuxでのPCIの確認

「lspci」の先頭は小文字のエル

# /sbin/lspci
00:00.0 Host bridge: Intel Corporation Server DRAM Controller (rev 01)
00:01.0 PCI bridge: Intel Corporation Server Host-Primary PCI Express Bridge (re
v 01)
00:1c.0 PCI bridge: Intel Corporation 82801I (ICH9 Family) PCI Express Port 1 (r
ev 02)
00:1c.4 PCI bridge: Intel Corporation 82801I (ICH9 Family) PCI Express Port 5 (r
ev 02)
00:1c.5 PCI bridge: Intel Corporation 82801I (ICH9 Family) PCI Express Port 6 (r
ev 02)
00:1d.0 USB Controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controll
er #1 (rev 02)
00:1d.1 USB Controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controll
er #2 (rev 02)
00:1d.2 USB Controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controll
er #3 (rev 02)
00:1d.7 USB Controller: Intel Corporation 82801I (ICH9 Family) USB2 EHCI Control
ler #1 (rev 02)
00:1e.0 PCI bridge: Intel Corporation 82801 PCI Bridge (rev 92)
00:1f.0 ISA bridge: Intel Corporation 82801IR (ICH9R) LPC Interface Controller (
rev 02)
00:1f.2 IDE interface: Intel Corporation 82801IR/IO/IH (ICH9R/DO/DH) 4 port SATA
 IDE Controller (rev 02)
03:00.0 Ethernet controller: Broadcom Corporation NetXtreme BCM5721 Gigabit Ethe
rnet PCI Express (rev 21)
04:00.0 Ethernet controller: Broadcom Corporation NetXtreme BCM5721 Gigabit Ethe
rnet PCI Express (rev 21)
05:05.0 VGA compatible controller: ATI Technologies Inc ES1000 (rev 02)
#

■Linux版でUPSとUSBケーブルで接続する場合

configureのとき、「./configure --enable-usb」と「 --enable-usb」付きで実行する。

USB接続のとき「Communications with UPS restored.」というメールがroot宛てに頻繁に届く場合がある。その場合、「/var/log/messages」を調べてみること。

Jun  9 02:10:25 ns2 kernel: hub.c: already running port 2 disabled by hub (EMI?)
, re-enabling...
Jun  9 02:10:25 ns2 kernel: usb.c: USB disconnect on device 00:0f.2-2 address 2
Jun  9 02:10:25 ns2 kernel: hub.c: new USB device 00:0f.2-2, assigned address 3
Jun  9 02:10:27 ns2 devlabel: devlabel service started/restarted
Jun  9 02:10:27 ns2 kernel: hiddev1: USB HID v1.10 Device [American Power Conver
sion Smart-UPS 500 FW:650.18.A USB FW:7.4] on usb1:3.0
Jun  9 02:10:30 ns2 usb.agent[28158]: missing kernel or user mode driver hid
Jun  9 02:10:32 ns2 devlabel: devlabel service started/restarted
Jun  9 02:10:44 ns2 apcupsd[21742]: Communications with UPS restored.

サーバがUSBを正常に認識していない可能性がある。

■稼動状況を調べる

「apcupsd status」で稼動状態を知ることができる。以下はイーサネット経由でのスレーブ側で実行した例。

# /etc/rc.d/init.d/apcupsd status
apcupsd (pid 31560) を実行中...
APC      : 001,042,1072
DATE     : 2011-06-09 19:15:25 +0900
HOSTNAME : xxx.xxxxxx.co.jp
VERSION  : 3.14.8 (16 January 2010) redhat
UPSNAME  : SmartUPS
CABLE    : Ethernet Link
MODEL    : Smart-UPS 1500
UPSMODE  : Stand Alone
STARTTIME: 2011-06-09 19:15:25 +0900
MASTERUPD: 2011-06-09 19:15:25 +0900
MASTER   : 192.168.1.10:3551
STATUS   : ONLINE SLAVE
LINEV    : 096.4 Volts
LOADPCT  :  55.2 Percent Load Capacity
BCHARGE  : 100.0 Percent
TIMELEFT :  20.0 Minutes
MBATTCHG : 5 Percent
MINTIMEL : 3 Minutes
MAXTIME  : 180 Seconds
MAXLINEV : 096.4 Volts
MINLINEV : 095.7 Volts
OUTPUTV  : 096.4 Volts
SENSE    : High
DLOWBATT : 02 Minutes
LOTRANS  : 092.0 Volts
HITRANS  : 108.0 Volts
RETPCT   : 000.0 Percent
ITEMP    : 39.6 C Internal
BATTV    : 27.1 Volts
LINEFREQ : 50.0 Hz
LASTXFER : Unacceptable line voltage changes
NUMXFERS : 0
TONBATT  : 0 seconds
CUMONBATT: 0 seconds
XOFFBATT : N/A
SELFTEST : NO
STATFLAG : 0x07000408 Status Flag
SERIALNO : AS0726322300
BATTDATE : 06/30/07
NOMOUTV  : 100 Volts
NOMBATTV :  24.0 Volts
FIRMWARE : 601.17.A
END APC  : 2011-06-09 19:15:38 +0900
#

■apcupsdのマスターとスレーブおよびスレーブのスレーブ

UPSとシリアルケーブルまたはUSBケーブルで接続したサーバはapcupsdを動作させることでマスターサーバとして稼動し、イーサネット経由でマスターサーバと接続しているサーバはスレーブサーバとして動作するが、スレーブサーバとさらにイーサネット経由で接続することもできる。

UPS ------------ マスター ---- スレーブ(マスター) ------ スレーブ
 (シリアルまたはUSB) (イーサネット)     (イーサネット)

とデイジーチェーンのようにしてゆくことができる。この場合、マスター、スレーブでLinux版、Windows版が混在していてもかまわない。