VMware ESXiがシングル構成の場合、ESXi上の仮想マシンの任意のWindows ServerにIPMをインストールします。
VMwareの機能「仮想マシンの自動起動および停止」を使用して、仮想マシンを制御する設定をします。IPMは停電時にESXiホストにシャットダウン命令を投げるだけです。
シャットダウン命令を受けたESXiは、仮想マシンを指定した順番にシャットダウンしたあとに、シャットダウンします。
本解説の構成
Eaton
- Eaton 9PX1500RT UPS
- Eaton Network-M2 Card
- Eaton IPM Manage License
VMware
- VMware ESXi 6.7 1台
- VMware VM 3台 (Windows Server 1台、CentOS 2台)


仮想マシンの自動起動と停止
仮想マシンのシャットダウンおよび自動起動は、VMwareの機能で実現します。つまり、停電時やIPMに関係なく、常に有効になります。
ホストの管理 > システム > 自動起動 > 設定の編集

有効:はい、停止アクション:シャットダウン、その他項目は任意で設定/保存します。

1番目に自動起動したい(最後にシャットダウンしたい)仮想マシンを選択。[有効]を押します。

2番目に自動起動したい(最後から2番目にシャットダウンしたい)仮想マシンを選択。[有効]を押します。

3番目に自動起動したい(最後から3番目にシャットダウンしたい)仮想マシンを選択。[有効]を押します。

仮想マシンの自動起動は、昇順(1→2→3)で起動します。
仮想マシンのシャットダウンは、降順(3→2→1)でシャットダウンします。
変更したい場合は、仮想マシンを選択して[後で起動][先に起動]で調整します。

ここで、ESXiホストのシャットダウンを実行して、設定した通りに仮想マシンをシャットダウンしてからESXiホストがシャットダウンする事を確認します。

ESXiホストがシャットダウンしたら、サーバーの電源ボタンを押して、設定した通りに仮想マシンが自動起動する事を確認します。

UPSシャットダウン設定
UPSのシャットダウンは、Network-M2 Cardで設定します。
Network-M2の基本設定は、Network-M2ページの下部に記載されています。ここでは、10分間バッテリー運転したらシャットダウンシーケンスに移行、2分後にUPSがシャットダウンを開始する設定例を掲載しました。
シャットダウンシーケンスに移行すると、仮想マシンのシャットダウンが始まります。検証環境のため2分後にUPSがシャットダウンするようにしていますが、本番環境では、仮想マシン及びESXiホストが全てシャットダウンし終わる十分な時間を設定してください。仮想マシンが多いほど、時間を長くする必要があります。
保護 > 停電時のシャットダウン
・600秒間バッテリー運転が継続したら、シャットダウンシーケンスに移行する
または
・バッテリー残り時間が180秒を下回ったら、シャットダウンシーケンスを移行する

保護 > エージェント設定
・シャットダウンシーケンスに移行したら、120秒後にUPSのシャットダウンを開始する

IPM設定
OpenJDK 1.8 インストール
OpenJDK ダウンロードURL
https://github.com/ojdkbuild/ojdkbuild
インストール手順は省略します
IPM インストール
IPM ダウンロードURL
https://www.eaton.com/us/en-us/catalog/backup-power-ups-surge-it-power-distribution/eaton-intelligent-power-manager/download-eaton-intelligent-power-manager-ipm.html
インストール手順は省略します
IPM 設定
設定 > 自動検出 > UPSを選択 > ノードアクセスパラメーターの設定

Network-M2にログインするユーザー名とパスワードを入力して保存します

ステータスとアクセスがOKになりました

設定 > システム > 更新設定の編集

[指定なし]を選択して保存します

設定 > システム > モジュール設定の編集

[インフラストラクチャーコネクター]にチェックを入れて保存します

管理 > 構成ポリシー > 新しいポリシーを作成

構成ポリシーネーム:任意 (例:UPS名 policy)
ターゲットノード:UPSを選択
クラスリスト:Runtime threshold settings と パワーソース の2つを選択
タイマー:-1s
パワーソース:UPSを選択 (ターゲットノードと同一)
保存します

設定 > インフラストラクチャーコネクター > コネクターの追加

[VMware ESX/ESXi]を選択

ESXiの情報を入力して保存します

コネクターが追加されて接続状態が[OK]になっている事を確認します

設定 > 自動検出 > ESXi > シャットダウンポリシーを作成

構成ポリシーネーム:任意に編集します
パワーソース:UPSを選択
保存します

新しいアクションの作成は[はい]を選択します

構成ポリシーネーム:任意に編集します
ターゲットホスト:ESXiを選択

ターゲットホストが設定された事を確認して保存します

シャットダウンテスト
UPSの入力電源ケーブルを抜いて、仮想マシンとESXiがシャットダウンすることを確認します。
10分間のバッテリー運転で・・・

IPMによって、シャットダウンホストが実行されました。ESXiはゲスト仮想マシンをシャットダウンしてから、ホストをシャットダウンします。
