apcupsdの設定
サーバのUPS設定をしていなかったので、apcupsdを使って自動シャットダウン等するようにしてみました。
apcupsdの導入
リポジトリ設定については以下を参照のこと。
・ CentOS5 で RPMforge を使う
# yum --enablerepo=rpmforge install apcupsd
apcupsd-3.10.18-1.2.el5.rfが入りました。少し古いバージョンだけどUSB接続に対応してるのでOKとします。
設定
/etc/apcupsd/apcupsd.conf を書き換えます。
長いので差分だけ置いときます。.orgがデフォルトのファイルです。
# diff /etc/apcupsd/apcupsd.conf /etc/apcupsd/apcupsd.conf.org 22c22 < UPSCABLE usb --- > UPSCABLE smart 44c44 < UPSTYPE usb --- > UPSTYPE smartups 67c67 < DEVICE /dev/hiddev0 --- > DEVICE /dev/ttyS0 94c94 < BATTERYLEVEL 10 --- > BATTERYLEVEL 5 115c115 < TIMEOUT 300 --- > TIMEOUT 0
項目 | 説明 |
---|---|
UPSCABLE | 接続に用いるケーブルの種類 |
UPSTYPE | UPSの種類 |
DEVICE | UPSを繋いだポート |
BATTERYLEVEL | バッテリ残量が指定したパーセンテージを下回った場合にシャットダウンする |
TIMEOUT | バッテリに動作が切り替わってからシャットダウンする秒数 0ならシャットダウンしない |
MINUTES | バッテリ稼働可能と思われる予想残り時間が指定の時間(分)を切った場合にシャットダウンする(今回はデフォルトのまま) |
BATTERYLEVEL, TIMEOUT, MINUTESの最初に該当したものでシャットダウン処理がなされるっぽい。
起動設定
# /etc/init.d/apcupsd start # chkconfig apcupsd on
ブラウザからステータスを参照する
下記のファイルが作成されているので、allow fromを追記すればOKです。デフォルトだと127.0.0.1からしか参照できません。
/etc/httpd/conf.d/apcupsd.conf
ScriptAlias /apcupsd/ /var/www/apcupsd/ <Directory /var/www/apcupsd/> DirectoryIndex upsstats.cgi Options ExecCGI order deny,allow deny from all allow from 127.0.0.1 192.168.0. </Directory>
http://localhost/apcupsd/upsstats.cgi からステータスを参照でます。