雲の上はいつも青空 -7ページ目

雲の上はいつも青空

不思議な経歴をもつエンジニア!?の徒然なブログです。
お仕事関係の話が多いと思いますが、コメントとかもらえると中の人はとても喜びます(^O^)/

$雲の上はいつも青空UPS mini 500IIの使い方の続編です。今回はサーバで動かす監視ソフトの話を書いてみます。
Windowsマシンであれば製品に添付されているFeliSafe/Liteを使いますが、Linuxサーバの場合メーカーのWebサイトにはソフトウェアが見当たりません。

ここにLinux用のフリーなソフトウェアが見つかりますが、機能的にはシャットダウン出来るというだけで、管理機能等が全くありません。

今回はAPC用に使われているオープンソースのソフトウェアapcupsdを使う方法です。
apcupsdはAPC製のUPSをLinuxサーバに接続するときのデファクトスタンダードとも言えるソフトウェアですが、パラメータを以下のように設定することで、UPS mini 500IIを接続した場合でも監視が可能となります。
※シリアルケーブルは製品添付のものを使います。

aptitude install apcupsd でパッケージをインストールします。

/etc/apcupsd/apcupsd.conf の設定は、下記が必須の設定項目です。

UPSNAME     UPSmini500II
UPSCABLE 940-0020B
UPSTYPE backups
DEVICE /dev/ttyS0
←どこのシリアルポートに接続しているか?
TIMEOUT 180 ←停電を検知後の待機時間(秒)


ちなみに /etc/default/apcupsd の設定内容は以下の通りです。

APCACCESS=/sbin/apcaccess
ISCONFIGURED=yes


※細かい設定や使い方はapcupsdであればネット上に沢山の情報があります。また、デフォルトの状態でroot宛へ通知メールが自動で送られますので、遠隔地のサポートも可能です。
$雲の上はいつも青空

■後発のメーカは一般的に業界のデファクトスタンダードの製品を参考に設計するので、たぶんAPCの製品をお手本にしているであろうと推測しましたがビンゴでした。このUPSはAPC製のbackUPSシリーズのインターフェースをまねているようです。

■これでUSBでPCと接続出来るようになれば、結構売れるかもしれません。常時商業電源方式(平常時は元電源をそのまま出力側スルーする)は良いのですが、他社製品は電圧変動時にある程度の電圧補正が出来る回路を持っています。
 しかし、このUPSはそういった機能がなく、電圧が範囲外になると即座にバッテリーに切り替わる方式です。この点については賛否両論あるでしょうが、廉価版のUPSであればこの割り切った設計は有りだと私は思います。
※もちろん、あまりにも頻繁にバッテリーに切り替わるのであれば、電源事情の悪さを考慮して常時インバーター方式のUPSを採用するのが真っ当だと思いますが…
UPS mini 500IIというUPSを手に入れました。今回はこのUPSの使い方とちょっとしたTipsです。
500と書かれていますが、力率の関係で500VA/300Wとなります。ちょっとしたエントリーサーバなら接続が可能な容量だと思います。

定価は24,990円と書かれていますが、私はamazonから11,340円で購入しました。
まずは約1万円のUPSとしての感想を書いてみます。$雲の上はいつも青空

  1.長寿命のバッテリー(期待寿命7年)搭載は素晴らしい。
  2.ファンレスは静かで良い。
  3.とてもコンパクトで設置場所を選ばない。
  4.PCとの接続がシリアル(RS232C)しかない。
  5.連携ソフトは本当におまけっぽい。
  6.停電後の復電するタイミングによっては自動起動が出来ない。
  7.手動でシャットダウンすると復電後に自動起動が出来ない。

4は結構クリティカルだったりします。つまり、最近のPCはシリアルポートは殆ど装備していないので普通のPCには接続出来ないと思った方が良いです。つまりサーバ機のようにシリアルポートを持っている機器と接続しないと自動シャットダウンは出来ません。

6と7が結構微妙で、4の理由によりサーバ機しか使えないと書いたのですが、この自動起動出来ない場合があるというのはちょっと…って感じです。

サーバ機が自動起動するには電源の状態変化が必要です。BIOSの設定でAC電源がONになったら自動起動するように設定するのはもちろんなのですが、その場合でも、『PCがシャットダウン後、いったんAC電源がOFFとなり、それから再びONにならないと自動起動しない』というのが条件になります。

つまり、PCがシャットダウンしても電源がONのままであれば永久に自動起動しないという事になります。
※例外はBIOSでスケジュール運転の設定をしている場合で、その場合は指定した時間になると自動的に起動しますが、全てのPCでスケジュール運転の設定が出来るわけではありません。
※自動起動とは微妙に異なりますが、Wake on LANというネットワーク経由で電源を入れるというやり方がありますが、実現方法等諸々について今回は割愛します。

まとめると、

  a.UPSが停電を検知(バッテリーモードへ、ブザー音開始)
  b.サーバ機へ通知
  c.サーバ側の監視ソフトで停電を検知し、指定時間待機後シャットダウン処理を開始
  d.UPSへ電源出力停止を指示
  e.サーバのシャットダウン完了→電源自動断
  f.UPSの出力断→動作停止

このような一連の動作シーケンスをもって正常なシャットダウン動作となります。
その後、元電源が復電した場合には、UPSが自動起動し規定時間待機した後、UPSよりサーバへ電源が供給され、サーバ側はBIOSの設定に従い自動起動します。

これだけ書くと別に普通~って感じがしますが、実はdが曲者です。

dのUPSへの電源出力停止という指示ですが、今回話題にしているUPS(UPS mini 500II)ではRS232Cの決められた信号線を一定時間(4~5秒)ON にする必要があり、またこの指示はUPSがバッテリーモードでなければいけません。

この条件から、以下の重要な事が解ります。

d-1.停電が発生し、シャットダウン処理が始まった後で元電源が復電するとバッテリーモードは解除されるため、dの『UPSへの電源出力停止』という指令が無視(無効と)されます
しかし、サーバはすでにシャットダウン処理に入っているためサーバの電源は落ちてしまいますが、UPSはすでに復電しているためサーバの電源は供給されたままになります。そのため、サーバの自動起動は行われません。

d-2.次に7の場合ですが、停電が発生していない=バッテリーモードになっていない状況で、サーバを手動でシャットダウンさせた場合、UPSへ電源出力停止という指示が出ますが無視されます。結局d-1と同じ状況となり仮にサーバが停止後停電状態になってもUPSの電源出力は止まりません。
※停電時には自動的にバッテリー運転に切り替わりますがサーバはすでに止まっているのでバッテリーを殆ど消費しません(サーバの待機電流が流れるのみ)。そのため復電時まで電源を供給し続けます。
※仮に停電が相当な長期間にわたり、この待機電流の消費だけでバッテリーが空になればUPSの電源出力は止まります。この場合に限り、その後復電すれば、サーバは自動起動します。

■以上をまとめると、

・このUPSは普通のPCには接続できない(シリアルポートがあればOK)。
・手動でサーバをシャットダウンすると自動起動できない。
・停電時でも復電するタイミングによっては自動起動しないときがある。
・確実に自動起動したい場合にはUPSとは別の起動方法を考慮する必要がある。


■5のサーバで動かす監視ソフトに関しては次回書いてみます。