CentOSで2台のコンピュータの電源バックアップをした時の備忘録です。
UPS1台だけでLANでつながれた複数台のコンピュータの自動シャットダウンの設定が可能です。当たり前ですがスイッチングハブもUPSでバックアップする必要があります。
セットアップ内容
接続の設定
- 1台をUPSとコンピュータをUSBでつないでサーバにする。
- もう一台をサーバにつなぐクライアントにする。
シャットダウン設定
以下の二つの条件いずれかが成り立ったときにシャットダウンします。
- 残り電池残量が60%以下になったとき
- 残り予想駆動時間が3分以下になったとき
設定(共通)
インストール設定
CentOSにインスコします。
$ sudo yum install http://springdale.math.ias.edu/data/puias/unsupported/7/x86_64//apcupsd-3.14.14-5.sdl7.x86_64.rpm
新しい安定バージョンが出たらそっちを使ってください。
シャットダウンの設定
こんな感じで設定します。
よく、TIMEOUTを60とかで設定し、停電後60秒後にシャットダウンをする例がありますが、TIMEOUTはあまり使わないでって書いてあります。
TIMEOUT 0
でTIMEOUTを無効化します。
代わりに、BATTERYLEVEL
で危険バッテリーレベルを書いて、MINUTES
でシャットダウンにかかりそうな時間を書きます。
いずれかの条件が満たされればシャットダウンが実行されます。
ここでは、シャットダウンには3分あれば大丈夫(MINUTES
の設定)で、BATTERYLEVEL
は60%以下になったらシャットダウンするように書きました。
TIMEOUT 0
BATTERYLEVEL 60
MINUTES 3
設定(サーバ側)
サーバー側では、ポートの開放をして、接続の許可を行います。
また、ハードウェア設定でusbから取得するようにしてサーバとして機能するようにします。
ポート開放
解放ポートの確認
$ sudo firewall-cmd --list-all
まだなら、ポート開放
$ sudo firewall-cmd --permanent --add-port=3551/tcp
接続の許可
apcupsd:(ip address to allow)
#
# hosts.allow This file contains access rules which are used to
# allow or deny connections to network services that
# either use the tcp_wrappers library or that have been
# started through a tcp_wrappers-enabled xinetd.
#
# See 'man 5 hosts_options' and 'man 5 hosts_access'
# for information on rule syntax.
# See 'man tcpd' for information on tcp_wrappers
#
UPSのデバイスを確認
ls /dev/usb*
等で確認する。(UPSをたくさんつながない限り、すぐにわかると思う)
UPSの設定ファイル
USB接続をして、NETSERVERを有効化、PORT番号を3551であることを確認します。
UPSCABLE usb
UPSTYPE usb
DEVICE /dev/usb/<your usb device here!!>
NETSERVER on
NISIP 0.0.0.0
NISPORT 3551
クライアント側
UPSCABLE ether
UPSTYPE net
DEVICE 10.4.200.96:3551