ブログ内検索
Nutanix AHVの”クラスタ停止”、”CVMシャットダウン”、”AHVシャットダウン”をIPMの「クラスタのシャットダウン」を使用しないで、Tera Termでシャットダウンする手順です。
※Nutanixゲスト仮想マシンのシャットダウンは、IPMの「仮想マシンの電源操作(ゲストのシャットダウン)」を使用してください。
本解説の構成
ゲスト仮想マシンはシャットダウン完了しており、CVMとAHVだけ起動している状態です。

Tera Term インストール
最新版のTera Termをダウンロードしてインストールします
https://ja.osdn.net/projects/ttssh2/releases/

インストール途中で、.ttlファイルを ttpmacro.exe に関連付けます

Tera Termにて全CVMと全AHVにログイン
Tera Termをインストールしたら、全てのCVMとAHVにログインテストします。ログインできたら、何もせずに exit します。
※セキュリティ警告は[続行]を選択します




設定の流れ
- 「クラスタ停止 ⇒ CVMシャットダウン ⇒ AHVシャットダウン」を実行するマクロとバッチファイルを任意フォルダ(例:c:\scripts)に保存します
- バッチファイルを実行するタスクを作成します
- タスクを実行するIPMアクションを作成します
これら設定により、アクションが実行されるとシャットダウンマクロが実行されます
IPMのアクション実行 ⇒ タスク実行 ⇒ バッチファイル実行 ⇒ 各Tera Termマクロ実行
クラスタ停止、CVMシャットダウン、AHVシャットダウン 設定
Nutanix AHV シャットダウン フロー
「クラスタ停止 ⇒ CVMシャットダウン ⇒ AHVシャットダウン」の各コマンド
1. クラスタ停止
任意のCVM1台にSSHで接続して、 echo Y | cluster stop を実行。
2. CVMシャットダウン
各CVMにSSHで接続して、 sudo shutdown -h now を実行。
3. AHVシャットダウン
各AHVにSSHで接続して、 shutdown -h now を実行。
上記1~3のスクリプトをTeraTermで作成しました。
Nutanix AHV シャットダウン サンプルスクリプト
TeraTerm サンプル.ttl
3種のttlファイルをc:\scripts に保存します。
各ttl内のIPアドレス、ユーザー名、パスワードは、環境に合わせて変更してください。
【1. クラスタ停止】
nutanix_cluster_stop.ttl
;; ########## 初期設定 ##########
;; 接続先ホスト/ユーザ名/パスワード設定
HOSTADDR = '192.168.10.5'
USERNAME = 'nutanix'
PASSWORD = 'nutanix/4u'
;; ##############################
COMMAND = HOSTADDR
strconcat COMMAND ':22 /ssh /2 /auth=password /user='
strconcat COMMAND USERNAME
strconcat COMMAND ' /passwd='
strconcat COMMAND PASSWORD
strconcat COMMAND ' /V'
;; CVM1にSSH接続
connect COMMAND
;;接続出来ない場合はマクロ終了
if result <> 2 then
end
endif
;; 5秒以内にプロンプトが表示されないとマクロ終了
timeout = 5
wait '$'
if result = 0 then
disconnect 0
end
endif
;; クラスター停止
sendln 'echo Y | cluster stop'
;; クラスター停止完了を最大180秒待機
timeout = 180
wait '$'
if result = 0 then
goto ending
endif
:ending
;; SSH切断
unlink
【2. CVMシャットダウン】
※ノード数が4ノード以外の場合、ノード数に合わせてください。
nutanix_cvm1_shutdown.ttl
;; ########## 初期設定 ##########
;; 接続先ホスト/ユーザ名/パスワード設定
HOSTADDR = '192.168.10.5'
USERNAME = 'nutanix'
PASSWORD = 'nutanix/4u'
;; ##############################
COMMAND = HOSTADDR
strconcat COMMAND ':22 /ssh /2 /auth=password /user='
strconcat COMMAND USERNAME
strconcat COMMAND ' /passwd='
strconcat COMMAND PASSWORD
strconcat COMMAND ' /V'
;; CVM1にSSH接続
connect COMMAND
;;接続出来ない場合はマクロ終了
if result <> 2 then
end
endif
;; 5秒以内にプロンプトが表示されないとマクロ終了
timeout = 5
wait '$'
if result = 0 then
disconnect 0
end
endif
;; CVM1シャットダウン
sendln 'sudo shutdown -h now'
;; SSH切断
unlink
nutanix_cvm2_shutdown.ttl
;; ########## 初期設定 ##########
;; 接続先ホスト/ユーザ名/パスワード設定
HOSTADDR = '192.168.10.6'
USERNAME = 'nutanix'
PASSWORD = 'nutanix/4u'
;; ##############################
COMMAND = HOSTADDR
strconcat COMMAND ':22 /ssh /2 /auth=password /user='
strconcat COMMAND USERNAME
strconcat COMMAND ' /passwd='
strconcat COMMAND PASSWORD
strconcat COMMAND ' /V'
;; CVM2にSSH接続
connect COMMAND
;;接続出来ない場合はマクロ終了
if result <> 2 then
end
endif
;; 5秒以内にプロンプトが表示されないとマクロ終了
timeout = 5
wait '$'
if result = 0 then
disconnect 0
end
endif
;; CVM2シャットダウン
sendln 'sudo shutdown -h now'
;; SSH切断
unlink
nutanix_cvm3_shutdown.ttl
;; ########## 初期設定 ##########
;; 接続先ホスト/ユーザ名/パスワード設定
HOSTADDR = '192.168.10.7'
USERNAME = 'nutanix'
PASSWORD = 'nutanix/4u'
;; ##############################
COMMAND = HOSTADDR
strconcat COMMAND ':22 /ssh /2 /auth=password /user='
strconcat COMMAND USERNAME
strconcat COMMAND ' /passwd='
strconcat COMMAND PASSWORD
strconcat COMMAND ' /V'
;; CVM3にSSH接続
connect COMMAND
;;接続出来ない場合はマクロ終了
if result <> 2 then
end
endif
;; 5秒以内にプロンプトが表示されないとマクロ終了
timeout = 5
wait '$'
if result = 0 then
disconnect 0
end
endif
;; CVM3シャットダウン
sendln 'sudo shutdown -h now'
;; SSH切断
unlink
nutanix_cvm4_shutdown.ttl
;; ########## 初期設定 ##########
;; 接続先ホスト/ユーザ名/パスワード設定
HOSTADDR = '192.168.10.8'
USERNAME = 'nutanix'
PASSWORD = 'nutanix/4u'
;; ##############################
COMMAND = HOSTADDR
strconcat COMMAND ':22 /ssh /2 /auth=password /user='
strconcat COMMAND USERNAME
strconcat COMMAND ' /passwd='
strconcat COMMAND PASSWORD
strconcat COMMAND ' /V'
;; CVM4にSSH接続
connect COMMAND
;;接続出来ない場合はマクロ終了
if result <> 2 then
end
endif
;; 5秒以内にプロンプトが表示されないとマクロ終了
timeout = 5
wait '$'
if result = 0 then
disconnect 0
end
endif
;; CVM4シャットダウン
sendln 'sudo shutdown -h now'
;; SSH切断
unlink
【3. AHVシャットダウン】
※ノード数が4ノード以外の場合、ノード数に合わせてください。
nutanix_ahv1_shutdown.ttl
;; ########## 初期設定 ##########
;; 接続先ホスト/ユーザ名/パスワード設定
HOSTADDR = '192.168.10.1'
USERNAME = 'root'
PASSWORD = 'nutanix/4u'
;; ##############################
COMMAND = HOSTADDR
strconcat COMMAND ':22 /ssh /2 /auth=password /user='
strconcat COMMAND USERNAME
strconcat COMMAND ' /passwd='
strconcat COMMAND PASSWORD
strconcat COMMAND ' /V'
;; AHV1にSSH接続
connect COMMAND
;;接続出来ない場合はマクロ終了
if result <> 2 then
end
endif
;; 5秒以内にプロンプトが表示されないとマクロ終了
timeout = 5
wait '#'
if result = 0 then
disconnect 0
end
endif
;; AHV1シャットダウン
sendln 'shutdown -h now'
;; SSH切断
unlink
nutanix_ahv2_shutdown.ttl
;; ########## 初期設定 ##########
;; 接続先ホスト/ユーザ名/パスワード設定
HOSTADDR = '192.168.10.2'
USERNAME = 'root'
PASSWORD = 'nutanix/4u'
;; ##############################
COMMAND = HOSTADDR
strconcat COMMAND ':22 /ssh /2 /auth=password /user='
strconcat COMMAND USERNAME
strconcat COMMAND ' /passwd='
strconcat COMMAND PASSWORD
strconcat COMMAND ' /V'
;; AHV2にSSH接続
connect COMMAND
;;接続出来ない場合はマクロ終了
if result <> 2 then
end
endif
;; 5秒以内にプロンプトが表示されないとマクロ終了
timeout = 5
wait '#'
if result = 0 then
disconnect 0
end
endif
;; AHV2シャットダウン
sendln 'shutdown -h now'
;; SSH切断
unlink
nutanix_ahv3_shutdown.ttl
;; ########## 初期設定 ##########
;; 接続先ホスト/ユーザ名/パスワード設定
HOSTADDR = '192.168.10.3'
USERNAME = 'root'
PASSWORD = 'nutanix/4u'
;; ##############################
COMMAND = HOSTADDR
strconcat COMMAND ':22 /ssh /2 /auth=password /user='
strconcat COMMAND USERNAME
strconcat COMMAND ' /passwd='
strconcat COMMAND PASSWORD
strconcat COMMAND ' /V'
;; AHV3にSSH接続
connect COMMAND
;;接続出来ない場合はマクロ終了
if result <> 2 then
end
endif
;; 5秒以内にプロンプトが表示されないとマクロ終了
timeout = 5
wait '#'
if result = 0 then
disconnect 0
end
endif
;; AHV3シャットダウン
sendln 'shutdown -h now'
;; SSH切断
unlink
nutanix_ahv4_shutdown.ttl
;; ########## 初期設定 ##########
;; 接続先ホスト/ユーザ名/パスワード設定
HOSTADDR = '192.168.10.4'
USERNAME = 'root'
PASSWORD = 'nutanix/4u'
;; ##############################
COMMAND = HOSTADDR
strconcat COMMAND ':22 /ssh /2 /auth=password /user='
strconcat COMMAND USERNAME
strconcat COMMAND ' /passwd='
strconcat COMMAND PASSWORD
strconcat COMMAND ' /V'
;; AHV4にSSH接続
connect COMMAND
;;接続出来ない場合はマクロ終了
if result <> 2 then
end
endif
;; 5秒以内にプロンプトが表示されないとマクロ終了
timeout = 5
wait '#'
if result = 0 then
disconnect 0
end
endif
;; AHV4シャットダウン
sendln 'shutdown -h now'
;; SSH切断
unlink
Nutanix シャットダウン サンプル.bat
各ttlを5秒間待機しながら実行、最後にWindows Serverがシャットダウンするbatファイルのサンプルです。Windows Serverをシャットダウンさせない場合は、最後の1行を削除すること。
※ノード数が4ノード以外の場合、ノード数に合わせてください。
nutanix_ahv_shutdown.bat
"C:\Program Files (x86)\teraterm\ttpmacro.exe" /V /I "C:\scripts\nutanix_cluster_stop.ttl" timeout 5 /NOBREAK "C:\Program Files (x86)\teraterm\ttpmacro.exe" /V /I "C:\scripts\nutanix_cvm1_shutdown.ttl" timeout 5 /NOBREAK "C:\Program Files (x86)\teraterm\ttpmacro.exe" /V /I "C:\scripts\nutanix_cvm2_shutdown.ttl" timeout 5 /NOBREAK "C:\Program Files (x86)\teraterm\ttpmacro.exe" /V /I "C:\scripts\nutanix_cvm3_shutdown.ttl" timeout 5 /NOBREAK "C:\Program Files (x86)\teraterm\ttpmacro.exe" /V /I "C:\scripts\nutanix_cvm4_shutdown.ttl" timeout 5 /NOBREAK "C:\Program Files (x86)\teraterm\ttpmacro.exe" /V /I "C:\scripts\nutanix_ahv1_shutdown.ttl" timeout 5 /NOBREAK "C:\Program Files (x86)\teraterm\ttpmacro.exe" /V /I "C:\scripts\nutanix_ahv2_shutdown.ttl" timeout 5 /NOBREAK "C:\Program Files (x86)\teraterm\ttpmacro.exe" /V /I "C:\scripts\nutanix_ahv3_shutdown.ttl" timeout 5 /NOBREAK "C:\Program Files (x86)\teraterm\ttpmacro.exe" /V /I "C:\scripts\nutanix_ahv4_shutdown.ttl" timeout 5 /NOBREAK shutdown /s /f /t 0
バッチファイルを実行するタスクを作成する
タスク スケジューラを起動します。

タスク スケジューラ ライブラリを右クリックして、タスクの作成を選択します。

【全般】タブ
タスクの名前は、「nutanix_shutdown」とします。
「ユーザーがログオンしているかどうかにかかわらず実行する」を選択します。
「最上位の特権で実行する」にチェックを入れます。
◇◆重要◆◇ 構成は、必ず「Windows Server 2003、XP、2000」を選択します。

【トリガー】タブ
何もしません。
【操作】タブ
新規をクリックします。

参照を押して、C:\scripts\nutanix_ahv_shutdown.bat を選択します。

【条件】タブ
「コンピュータをAC電源で使用している場合のみタスクを開始する」のチェックを外します。

【設定】タブ
何もしません。
右下の「OK」を押すと、batを実行するタスクが作成されます。アカウント情報を求められた時は、ユーザー名とパスワードを入力します。
このタスクはトリガーが無いため、通常は動作しません。

タスクを実行するIPMアクションを作成する
アクションの作成
設定 > アクション/イベント > 新しいアクションの作成
アクション名:任意 (例:Nutanix AHV Shutdown Action)
イベントリスト:任意のイベントを選択 (例:Shutdown Start 180s)
イベントソース:任意のソース
アクションのタイプ:コマンド
コマンド:
schtasks.exe /run /tn "nutanix_shutdown"
再トリガ可能:はい
※ダブルクォーテーション内の[文字列]は、作成したタスクの[名前]と一致する必要があります。
※パスが通っていない場合は、c:\windows\system32\schtasks.exe ~と絶対パスから入力します。


おわりに
環境により、Tera Termのセッションが切断された時に[Application Fault]が発生しますが、シャットダウン動作に影響ありません。どうしてもx2消したい場合、全てのttl内13行目 strconcat COMMAND ‘ /V’ をコメントアウトアウトしてください。
;; strconcat COMMAND ' /V'
掲載しているスクリプトは、サンプルです。
ダイトロンは、このサンプルスクリプトに関する動作保証は致しかねます。ご了承ください。


