ヘッダーイメージ 本文へジャンプ
日記

2012年03月20日 18時03分
ESXi5 と UPS の連携
ESXi5.0 に変えてVMServerに比べて劣る部分としてUPSとの連携がそのままではできないのでどうしようかと思っていたのですが、私の場合もう1台物理マシンがありそこにWindows7を入れているので、そこに入れている PowerChute とうまく連携できないかと試して見ました

なんとなくいけてそうな設定をすることができたのでメモっておきます

まずESXi5のシャットダウンをどうするかなんですが、ゲストOSの一覧取って動いているのを端からスリープなりシャットダウンしてから本体をシャットダウンしたいのですが、そんなスクリプトを作るより、クライアントからでシャットダウン操作したときの動作をさせたいですが(スリープやシャットダウンの設定がやろうと思えばゲストOSごとに設定できるので!)、コマンドが見つかりません・・・

それっぽいコマンドが /bin/host_shutdown.sh

ただし、次回起動したときにメンテナンスモードになり、ゲストOSが自動では上がってくれません

まぁ復電したときなんで良しとしましょう
(おそらく私の設定では、自動的には上がってくれないので・・・)

で、このコマンドをどうやってWindowsから実行するかですが、「TeraTerm」の「ttpmacro.exe」を使って送信できそうです

たとえば、こんなマクロを SHUTDOWN.ttl の名前で作ります

connect '
ESXi5のアドレス /ssh /auth=password /user=root /passwd=rootのパスワード'
wait '#'
sendln '/bin/host_shutdown.sh'
wait '#'
sendln 'exit'

でバッチを SHUTDOWN.bat の名前で作ります
"C:\Program Files (x86)\teraterm\ttpmacro.exe" C:\TOOL\UPS\SHUTDOWN.ttl

SHUTDOWN.bat を実行すると、ちゃんとシャットダウンしてくれます

で最後に実行のタイミングです
PowerChute の Personal Edition なんでスクリプト実行とかできないので、Windows7がシャットダウンするときのイベントで実行しようと思ってイベントログを見ていると、アプリケーションログに「APC UPS Service」ってのがあり、停電信号を受信したときのイベントがありました
で、復電したときのイベントもあるので

1.停電のイベント(ソースが「APC UPS Service」のイベントID174、ちなみに173が低電圧)のタスク
  シャットダウンスイッチ用のファイルを作成
2.停電のイベントから2分後に実行するタスク
  スイッチ用のファイルがあれば、マクロ実行
3.復電のイベント(ソースが「APC UPS Service」のイベントID61455)のタスク
  シャットダウンスイッチ用のファイルを削除

こんな感じでいけそうです(2の分数はUPSの容量とかお好みで、当然ですがPowerChuteのシャットダウン猶予分数より短い数字で!)

それぞれのタスクで実行するのは、こんな感じのバッチ(タスク作成時にカレントディレクトリーの設定が必要)

1のタスク
echo > SHUTDOWN_SW

2のタスク
IF NOT EXIST SHUTDOWN_SW EXIT
DEL SHUTDOWN_SW
SHUTDOWN.bat

3のタスク
IF EXIST SHUTDOWN_SW DEL SHUTDOWN_SW

ただし2番目のタスクだけは「最上位の特権で実行する」にチェックを付けると動かないとか、UIが無いと動かないみたいなのでログインしている時のみ実行
当然Windows7は常にログインしている状態にしておかないとダメです・・・
リモートディスクトップでログインしてそのまま(ログアウトせず)切ってしまってもOKっぽいです

いけてそうだと言うのは、これまだちゃんとUPSからの信号で動いていません・・・
手動でタスクを1つづつ実行してうまくいったよというだけです

UPSのバッテリー3分持ってくれるかなぁ・・・




・VMWARE に MACOSX を入れてみる
・VMServer内のゲストOSのIPV6 暫定解決
・ESXi5 に変えてみました
・ESXi5 でのバックアップとVNCの設定
・ESXi5 と UPS の連携
・ESXi5 で MACOSX
・ESXi5 のゲストOSにHDをRAWマウント
・ESXi5 P2V の変換
・ESXi5 でのバックアップ続編
・ESXi5 のゲストに HDAudio の追加
・ESXi に Windows8 を入れてみる
・ESXi5.1 へアップデート
・ESXi5.1 で crond が動いてない・・・
・Androidの開発でもやってみるか!
・ESXiのディスク障害
・ESXi5.5 を いまどきのマザーボードにインストール
・ESXi5.1 -> 5.5 での問題
・Volume サイズ と FileSystem のサイズ
・ESXi5.5 上の Windows2012R2 のネットが切れる
・ESXi5.5 上のクライアントが異常に遅い

カテゴリー:日記
目次へ戻る


フッターイメージ