{"support":{"yesButton":"はい","noButton":"いいえ","feedback":{"title":"改善するために何かできることはありますか?"},"submitButton":"送信","successMessage":"フィードバックありがとうございました","title":"このFAQはお役に立ちましたか?","feedbackPercentLabel":"の人が役に立つと回答","captcha":{"error":"ボックスをチェックしてください"}}}
FAQを参照する
{"searchBar":{"inputPlaceholder":"キーワードを入力して「検索」ボタンをクリック","searchBtn":"検索","error":"キーワードを入力してください。"}}
PowerChute Network Shutdown v4.2とスクリプトを使用したNutanix ESXiハイパーバイザーのシャットダウン
このページでは、PowerChute Network Shutdown v4.2とスクリプトファイルを用いて、Nutanix VMware ESXiハイパーバイザー環境でNutanixシステムをシャットダウンする方法について説明しています。
お知らせ
PowerChute Network Shutdown v4.3にアップグレードすることにより、スクリプトを使用せず、Nutanixシステムをシャットダウンすることができます。PowerChute Network Shutdown v4.3によるNutanixのシャットダウンについてはこちらを参照してください。
※ PowerChute Network Shutdown v4.2による Acroplis Hyperveisor (AHV)のシャットダウンスクリプトについては、こちらを参照してください。
注意事項
※ スクリプトはサンプルですので、お客様環境に合わせて適切にカスタマイズを行ってください。
※ シュナイダーエレクトリックは、PowerChuteでスクリプトを実行するための手順についての質問、問題についてはお答えしますが、スクリプトの内容についてのお問い合わせへの回答、動作検証、動作保証、お客様個別のスクリプトのご提供はいたしかねますので、ご了承ください。
※ スクリプトを本番環境で使用する前に必ず試験を行ってください。
※ スクリプト実行にはフリーソフトウェアのCygwinを使用します。Cygwinについての質問は開発元にご確認ください。
【対象バージョン】
PowerChute Network Shutdown for Virtualization v4.2
【対象環境】
Nutanix VMware ESXiハイパーバイザー
【本スクリプト使用時の構成】
本ページで説明するスクリプトは以下の構成で使用しています。
PowerChuteは外部の物理マシン(Windows)にインストールします。
【外部の物理マシンについて】
※ NutanixのCluster停止コマンドは対話式です。これに対応するためにExpectコマンドを使用します。
※ CygwinにてSSHの鍵ペア(パスワードなし)を作成します。作成した公開鍵は、事前にPrism (Nutanixの管理コンソール)の「Cluster lockdown」メニューから登録してください。
【スクリプトファイルについて】
サンプルスクリプトはこちらからダウンロードしてください。
スクリプトは、以下の5つのファイルから構成されています。
(1) startcygwin.bat
PowerChuteにシャットダウン時のコマンドファイルとして設定するスクリプトです。以下(3)のシェルスクリプトを呼び出します。
(2) Shutdown-Parameter.txt
各ESXiホストやCVMの情報を入力します。この情報を元にシャットダウンスクリプトを実行します。
(3) Shutdown_nutanix.sh
上記のパラメータ情報を読み込み、以下(4)に渡します。
(4) Shutdown_sequence.sh
Nutanix環境全体をシャットダウンするスクリプトです。
(5) Shutdown_nutanix.log
上記スクリプト実行時、/tmp配下に簡易的なログファイルを出力します。
【スクリプト実行前の設定について】
以下のようにスクリプトファイルを実行環境に配置し、実行パスを設定します。
1. "startcygwin.bat"をPowerChuteのインストールディレクトリ(group1配下)にコピーします
2. "Shutdown_nutanix.sh"、"Shutdown_sequence.sh"、"Shutdown-Parameter.txt"を、Cygwin"/home/PowerChuteの実行ユーザ"配下にコピーします
3. "startcygwin.bat"を編集し、スクリプトの実行パスをCygwinからみた絶対パスで指定します(例:PowerChuteの実行ユーザが"administrator"だった場合、"bash /home/administrator/Shutdown_nutanix.sh"となります)
4. "Shutdown_nutanix.sh"を編集し、Parameterdirにスクリプトの実行パスを指定します(例:"Parameterdir=/home/administrator"となります)
※PowerChuteのサービスを実行するアカウントを「ローカルシステムアカウント」から管理者権限のアカウント(administrator)に変更しております。
実行環境に合わせて、Shutdown-Parameter.txtに以下の情報を入力します。
*2台目以降の情報を設定する際は、パラメーターの末尾に数値を加えてください。
例:2台目のESXiホストのIP Addressとユーザ名を設定する場合
【スクリプト実行時のシャットダウンシーケンスについて】
本スクリプトを使用した際のシャットダウンシーケンスの例は以下のとおりです。
STEP 1 停電検知後、PowerChuteが"startcygwin.bat"を実行します
STEP 2 "Shutdown_nutanix.sh"が実行されます
STEP 3 パラメータ情報(Shutdown-Parameter.txt)を読み込みます。
STEP 4 読み込んだ情報を引数として、スクリプト(Shutdown_sequence.sh)を実行します
STEP 5 各ESXiホストにSSHでログインし、UserVM情報を取得します(vim-cmdコマンドを使用しています)
STEP 6 UserVMのシャットダウンを開始します
STEP 6-1 ・VMwareToolsがインストールされている場合:ゲストのシャットダウンを実行します(vim-cmd vmsvc/power.shutdownを使用しています)
STEP 6-2 ・VMwareToolsがインストールされていない場合:パワーオフを実行します(vim-cmd vmsvc/power.offを使用しています)
STEP 7 120秒(パラメータ:VMShutdownTime)待機します
STEP 8 ESXiホストにSSHでログインし、VCSAのシャットダウンを開始します
STEP 9 180秒(パラメータ:VCSA_ShutdownTime)待機します
STEP 10 稼働しているUserVMがまだある場合、強制的にパワーオフを実行します
STEP 11 固定値30秒待機します(*本パラメータはShutdown_sequence.shで"VMShutdownForce"として定義しています)
STEP 12 CVMへSSHでログインし、Nutanixクラスタを停止します(Controller VM Commands / cluster stopコマンドを使用しています)
STEP 13 固定値90秒待機します(*本パラメータはShutdown_sequence.shで"ClusterStopTime"として定義しています)
STEP 14 CVMへSSHでログインし、CVMサーバのシャットダウンを実行します(sudo shutdown -h nowコマンドを使用しています)
STEP 15 各ESXiホストにメンテナンスモードを実行します(esxcli system maintenanceModeコマンドを使用しています)
STEP 16 各ESXiホストのシャットダウンを開始します(esxcli system shutdown poweroffコマンドを使用しています)
STEP 17 コマンド実行時間経過後、PowerChuteは自身のマシンのシャットダウンを開始します
※復電後のシステムの起動は手動で行ってください。
【PowerChuteの設定について】
(1) PowerChuteの「シャットダウンの設定」メニュー「コマンド実行」セクションに呼び出し用のバッチファイル(startcygwin.bat)を設定。
・設定値(所用時間):※「Shutdown_nutanix.sh」を手動で実行してどのくらい時間がかかるかを実際に確認し、それよりも長い時間を設定。検証時には600秒を設定しています。
(2) PowerChute の「イベント設定」で、「UPSオンバッテリ」のシャットダウン設定で「UPSの電源をオフにする」を選択。
(3) Network Management Cardで、
「Low battery Duration」は12分に設定
「On-Battery Shutdown Behavior」は「Restart when power is restored」に設定。
お知らせ
PowerChute Network Shutdown v4.3にアップグレードすることにより、スクリプトを使用せず、Nutanixシステムをシャットダウンすることができます。PowerChute Network Shutdown v4.3によるNutanixのシャットダウンについてはこちらを参照してください。
※ PowerChute Network Shutdown v4.2による Acroplis Hyperveisor (AHV)のシャットダウンスクリプトについては、こちらを参照してください。
注意事項
※ スクリプトはサンプルですので、お客様環境に合わせて適切にカスタマイズを行ってください。
※ シュナイダーエレクトリックは、PowerChuteでスクリプトを実行するための手順についての質問、問題についてはお答えしますが、スクリプトの内容についてのお問い合わせへの回答、動作検証、動作保証、お客様個別のスクリプトのご提供はいたしかねますので、ご了承ください。
※ スクリプトを本番環境で使用する前に必ず試験を行ってください。
※ スクリプト実行にはフリーソフトウェアのCygwinを使用します。Cygwinについての質問は開発元にご確認ください。
【対象バージョン】
PowerChute Network Shutdown for Virtualization v4.2
【対象環境】
Nutanix VMware ESXiハイパーバイザー
【本スクリプト使用時の構成】
本ページで説明するスクリプトは以下の構成で使用しています。
- Nutanix ノード4台 (ESXiハイパーバイザー)
- Nutanixクラスタの外部の物理マシン(Windows)
PowerChuteは外部の物理マシン(Windows)にインストールします。
- 外部の物理マシン(Windows)上でPowerChuteによりスクリプトを実行。
- スクリプトでは、Nutanix環境全体をシャットダウンします(ユーザーVMシャットダウン、VCSAシャットダウン、クラスタの停止、各CVMのシャットダウン、各ESXiホストのシャットダウン)。
- 外部の物理マシン(Windows)はPowerChuteによりシャットダウンします。
【外部の物理マシンについて】
- 外部の物理マシンはWindows OSが稼動するコンピューターで、ここにPowerChute Network Shutdown for VirtualizationおよびCygwinをインストールします。
- PowerChuteの設定については、ページ下部の"PowerChuteについて”を参照してください。
- Cygwin(2.8.1 x86-64)にインストールしたパッケージは以下となります。
- inetutils-server Common networking clients and servers(version1.9.1-2)
- openssh: The Open SSH server and client programs(version7.5p1-1)
- openssl: A general purpose cryptography toolkit with TLS implementation(version1.0.2k-1)
- expect:Tool for automating interactive applications(version5.45-3)
※ NutanixのCluster停止コマンドは対話式です。これに対応するためにExpectコマンドを使用します。
※ CygwinにてSSHの鍵ペア(パスワードなし)を作成します。作成した公開鍵は、事前にPrism (Nutanixの管理コンソール)の「Cluster lockdown」メニューから登録してください。
【スクリプトファイルについて】
サンプルスクリプトはこちらからダウンロードしてください。
スクリプトは、以下の5つのファイルから構成されています。
(1) startcygwin.bat
PowerChuteにシャットダウン時のコマンドファイルとして設定するスクリプトです。以下(3)のシェルスクリプトを呼び出します。
(2) Shutdown-Parameter.txt
各ESXiホストやCVMの情報を入力します。この情報を元にシャットダウンスクリプトを実行します。
(3) Shutdown_nutanix.sh
上記のパラメータ情報を読み込み、以下(4)に渡します。
(4) Shutdown_sequence.sh
Nutanix環境全体をシャットダウンするスクリプトです。
(5) Shutdown_nutanix.log
上記スクリプト実行時、/tmp配下に簡易的なログファイルを出力します。
【スクリプト実行前の設定について】
以下のようにスクリプトファイルを実行環境に配置し、実行パスを設定します。
1. "startcygwin.bat"をPowerChuteのインストールディレクトリ(group1配下)にコピーします
2. "Shutdown_nutanix.sh"、"Shutdown_sequence.sh"、"Shutdown-Parameter.txt"を、Cygwin"/home/PowerChuteの実行ユーザ"配下にコピーします
3. "startcygwin.bat"を編集し、スクリプトの実行パスをCygwinからみた絶対パスで指定します(例:PowerChuteの実行ユーザが"administrator"だった場合、"bash /home/administrator/Shutdown_nutanix.sh"となります)
4. "Shutdown_nutanix.sh"を編集し、Parameterdirにスクリプトの実行パスを指定します(例:"Parameterdir=/home/administrator"となります)
※PowerChuteのサービスを実行するアカウントを「ローカルシステムアカウント」から管理者権限のアカウント(administrator)に変更しております。
実行環境に合わせて、Shutdown-Parameter.txtに以下の情報を入力します。
パラメーター | サンプルの値 | 説明 |
VMShutdownTime= | 120 | ESXi上で稼働しているUserVMのシャットダウンの所要時間(サンプルでは120秒) |
ESXi_NUM= | 4 | シャットダウン対象となるESXiホストの総数(サンプルでは4台) |
VCSA_VMName= | VCSA | ESXi上で稼働しているVCSAのVM名(サンプルでは"VCSA"という名前を設定しています) |
VCSA_ShutdownTime= | 180 | ESXi上で稼働しているVCSAのシャットダウンの所要時間(サンプルでは180秒) |
ESXi_HOSTIP1= | 192.168.0.101 | 1台目のESXiホストのIP Address |
ESXi_USER1= | root | 1台目のESXiホストにSSHログインする際のユーザ名 |
CVM_HOSTIP1= | 172.16.0.101 | 1台目のESXiホスト上で稼働しているCVMサーバのIP Address |
CVM_USER1= | nutanix | 1台目のESXiホスト上で稼働しているCVMサーバにSSHログインする際のユーザ名(サンプルでは"nutanix") |
CVM_VMName1= | NTNX-A-CVM | 1台目のESXiホスト上で稼働しているCVMサーバのVM名(サンプルでは"NTNX-A-CVM") |
*2台目以降の情報を設定する際は、パラメーターの末尾に数値を加えてください。
例:2台目のESXiホストのIP Addressとユーザ名を設定する場合
・ESXi_HOSTIP2=192.168.0.102
・ESXi_USER2=root
サンプルのShutdown-Parameter.txtは、4台構成で作成しています。 ・ESXi_USER2=root
【スクリプト実行時のシャットダウンシーケンスについて】
本スクリプトを使用した際のシャットダウンシーケンスの例は以下のとおりです。
STEP 1 停電検知後、PowerChuteが"startcygwin.bat"を実行します
STEP 2 "Shutdown_nutanix.sh"が実行されます
STEP 3 パラメータ情報(Shutdown-Parameter.txt)を読み込みます。
STEP 4 読み込んだ情報を引数として、スクリプト(Shutdown_sequence.sh)を実行します
STEP 5 各ESXiホストにSSHでログインし、UserVM情報を取得します(vim-cmdコマンドを使用しています)
STEP 6 UserVMのシャットダウンを開始します
STEP 6-1 ・VMwareToolsがインストールされている場合:ゲストのシャットダウンを実行します(vim-cmd vmsvc/power.shutdownを使用しています)
STEP 6-2 ・VMwareToolsがインストールされていない場合:パワーオフを実行します(vim-cmd vmsvc/power.offを使用しています)
STEP 7 120秒(パラメータ:VMShutdownTime)待機します
STEP 8 ESXiホストにSSHでログインし、VCSAのシャットダウンを開始します
STEP 9 180秒(パラメータ:VCSA_ShutdownTime)待機します
STEP 10 稼働しているUserVMがまだある場合、強制的にパワーオフを実行します
STEP 11 固定値30秒待機します(*本パラメータはShutdown_sequence.shで"VMShutdownForce"として定義しています)
STEP 12 CVMへSSHでログインし、Nutanixクラスタを停止します(Controller VM Commands / cluster stopコマンドを使用しています)
STEP 13 固定値90秒待機します(*本パラメータはShutdown_sequence.shで"ClusterStopTime"として定義しています)
STEP 14 CVMへSSHでログインし、CVMサーバのシャットダウンを実行します(sudo shutdown -h nowコマンドを使用しています)
STEP 15 各ESXiホストにメンテナンスモードを実行します(esxcli system maintenanceModeコマンドを使用しています)
STEP 16 各ESXiホストのシャットダウンを開始します(esxcli system shutdown poweroffコマンドを使用しています)
STEP 17 コマンド実行時間経過後、PowerChuteは自身のマシンのシャットダウンを開始します
※復電後のシステムの起動は手動で行ってください。
【PowerChuteの設定について】
- PowerChuteはVirtualization版を使用してください。
- インストール時、「VMwareサポートの設定」画面にて、「VMwareサポートを有効にしない」を選択してください。
- PowerChuteから、「.sh」ファイルは直接実行は出来ません。(実行できるのは、.cmdファイルか、.batファイルのみです) 今回の検証では、「Shutdown_nutanix.sh」を実行させる、呼び出し用のバッチファイルをPowerChute上に設定しています。
(1) PowerChuteの「シャットダウンの設定」メニュー「コマンド実行」セクションに呼び出し用のバッチファイル(startcygwin.bat)を設定。
・設定値(所用時間):※「Shutdown_nutanix.sh」を手動で実行してどのくらい時間がかかるかを実際に確認し、それよりも長い時間を設定。検証時には600秒を設定しています。
(2) PowerChute の「イベント設定」で、「UPSオンバッテリ」のシャットダウン設定で「UPSの電源をオフにする」を選択。
(3) Network Management Cardで、
「Low battery Duration」は12分に設定
「On-Battery Shutdown Behavior」は「Restart when power is restored」に設定。
詳細を見る
詳細を見る
お探しのものが見つかりませんか?
カスタマーケアチームに連絡して、テクニカルサポート情報や問い合わせへの対応を依頼してください。