この製品のマニュアルセットは、偏向のない言語を使用するように配慮されています。このマニュアルセットでの偏向のない言語とは、年齢、障害、性別、人種的アイデンティティ、民族的アイデンティティ、性的指向、社会経済的地位、およびインターセクショナリティに基づく差別を意味しない言語として定義されています。製品ソフトウェアのユーザーインターフェイスにハードコードされている言語、RFP のドキュメントに基づいて使用されている言語、または参照されているサードパーティ製品で使用されている言語によりドキュメントに例外が存在する場合があります。シスコのインクルーシブランゲージに対する取り組みの詳細は、こちらをご覧ください。
このドキュメントは、米国シスコ発行ドキュメントの参考和訳です。リンク情報につきましては、日本語版掲載時点で、英語版にアップデートがあり、リンク先のページが移動/変更されている場合がありますことをご了承ください。あくまでも参考和訳となりますので、正式な内容については米国サイトのドキュメントを参照ください。
この章は、次の項で構成されています。
VIX スクリプトは、ゲスト VM で Linux コマンドや Windows コマンドを実行します。Cisco UCS Director には、VIX スクリプト実行用に以下のような方法が用意されています。
VIX スクリプトの実行タスクでは、[出力表示(Output Display)] オプションが使用できます。VIX スクリプトの実行タスクを使用する場合はいつでも、[出力表示(Output Display)] オプションを有効化できます。
VM での Windows コマンドの実行に対して [出力表示(Output Display)] オプションを有効にした場合、バッチファイルと出力ファイルが /opt/infra/vix_temp_files ディレクトリに作成されます。バッチ ファイルには、選択された VM で実行されるコマンドが含まれています。コマンドが VM で実行された後、出力ファイルが作成されます。出力ファイルには、バッチ ファイル実行のステータス コードが含まれています。
VM での Linuxs コマンドの実行に対して [出力表示(Output Display)] オプションを有効にした場合、出力ファイルのみ作成されます。出力ファイルには、バッチ ファイルの実行ステータス コードがキャプチャされます。
以下の例に、[出力表示(Output Display)] オプションを有効化した状態で、VIX スクリプトの実行タスクを使用して Windows VM および Linux VM でコマンドを実行する方法を示します。
この例では、[出力表示(Output Display)] オプションを有効化した状態で、VIX スクリプトの実行タスクを使用して単一行の Windows コマンドを実行します。VM での Windows コマンドの実行に対して [出力表示(Output Display)] オプションを有効にした場合、バッチファイルが作成されます。バッチ ファイルには、選択された VM で実行されるコマンドが含まれています。出力ファイルには、バッチ実行のステータス コードがキャプチャされます。
UCS Director アプライアンスで利用可能な VIX スクリプトの実行タスクに、以下の情報を入力します。
VIX スクリプトを実行する VM を選択します。
VM の管理者クレデンシャルを入力します。
[スクリプト(Script)] ボックスにサンプル Windows コマンドを入力します。
C:\\WINDOWS\\system32\\cmd.exe mkdir C:\\test_Dir_9867
[出力表示(Output Display)] ボックスにマークを付けます。
タスクの実行後、ログに以下の情報が表示されます。
Service Request ID: 536 Mar 21, 2016 10:03:00 UTC Request Submitted Mar 21, 2016 10:03:03 UTC Executing workflow item number 1 Mar 21, 2016 10:03:03 UTC Completed workflow item number 0, with status completed Mar 21, 2016 10:03:09 UTC Executing workflow item number 2 Mar 21, 2016 10:03:00 UTC Trigger context executeWorkflowStep called Mar 21, 2016 10:03:09 UTC Executing custom action vix_script (Execute VIX Script) Mar 21, 2016 10:03:09 UTC Executing custom action vix_script (Execute VIX Script) Mar 21, 2016 10:03:13 UTC [VIXActionHandler] - account details VMName : Win_2k12 , Host: 172.31.234.46, OS Type: microsoft windows server 2012 (64-bit), ExitCode :0 Mar 21, 2016 10:03:13 UTC Task#1 (vix_script (Execute VIX Script)) completed successfully in 3 seconds Mar 21, 2016 10:03:13 UTC Input/Output values for Task#1 (vix_script (Execute VIX Script)): Mar 21, 2016 10:03:13 UTC [Local Input: Select VM = 3312) Mar 21, 2016 10:03:13 UTC [Local Input: Credential type = Login] Mar 21, 2016 10:03:13 UTC [Local Input: Login = administrator] Mar 21, 2016 10:03:13 UTC [Local Input: Password = "masked-value") Mar 21, 2016 10:03:13 UTC [Local Input: Script - C:\\WINDOWS\\system32\\cmd.exe mkdir C:\\test_Dir_9867] Mar 21, 2016 10:03:13 UTC [Local Input: Undo Script = ] Mar 21, 2016 10:03:13 UTC (Local Input: Error Codes = ] Mar 21, 2016 10:03:13 UTC [Local Input: Output display = true] Mar 21, 2016 10:03:13 UTC (Output: EXIT_STATUS_CODE = 0] Mar 21, 2016 10:03:13 UTC (Output: ERROR_STATUS_MESSAGE = ] Mar 21, 2016 10:03:13 UTC Completed workflow item number 1, with status completed
ログに表示されているように、スクリプトはタスクが正常に実行されたことを意味するステータス コード 0 を返します。
バッチ ファイルは次の場所に作成されます。
/opt/infra/vix_temp_files/vixbatch-03_21_2016_10_03_09_835.bat
バッチ ファイルの内容は、以下のとおりです。
@echo off mkdir C:\\test_Dir_9867 echo status_code: %ERRORLEVEL%
出力ファイルは次の場所に作成されます。
/opt/infra/vix_temp_files/vixoutput-03_21_2016_10_03_09_835.txt
出力ファイルの内容は、以下のとおりです。
status_code: 0
この例では、[出力表示(Output Display)] オプションを有効化した状態で、VIX スクリプトの実行タスクを使用して複数行の Windows コマンドを実行します。VM での Windows コマンドの実行に対して [出力表示(Output Display)] オプションを有効にした場合、バッチ ファイルが作成されます。バッチ ファイルには、選択された VM で実行されるコマンドが含まれています。出力ファイルには、バッチ ファイルの実行ステータス コードがキャプチャされます。
UCS Director アプライアンスで利用可能な VIX スクリプトの実行タスクに、以下の情報を入力します。
VIX スクリプトを実行する VM を選択します。
VM の管理者クレデンシャルを入力します。
[スクリプト(Script)] ボックスにサンプル Windows コマンドを入力します。
C:\\Windows\\system32\\cmd.exe echo 1sttt file > c:\\One1.txt && echo 2nddd file > c:\\Three.txt
(注) | 複数行コマンドには「&&」を使用します。複数行コマンドで「&.」はサポートされていません。 |
[出力表示(Output Display)] オプションにマークを付けます。
タスクの実行後、SR ログに以下の情報が表示されます。
Apr 06, 2016 12:06:00 UTC Request Submitted Apr 06, 2016 12:06:03 UTC Executing workflow item number 1 Apr 06, 2016 12:06:03 UTC Completed workflow item number 0, with status completed Apr 06, 2016 12:06:09 UTC Executing workflow item number 2 Apr 06, 2016 12:06:00 UTC Trigger context executeWorkflowStep called Apr 06, 2016 12:06:09 UTC Executing custom action VIX2008 (Execute VIX Script) Apr 06, 2016 12:06:09 UTC Executing custom action VIX2008 (Execute VIX Script) Apr 06, 2016 12:06:13 UTC [VIXActionHandler] - account details VMName : vm-DEF-SR119 , Host: 172.31.234.85, OS Type: microsoft windows server 2012 (64-bit), ExitCode :0 Apr 06, 2016 12:06:13 UTC Task#1 (vix_script (Execute VIX Script)) completed successfully in 3 seconds Apr 06, 2016 12:06:13 UTC Input/Output values for Task#1 (vix_script (Execute VIX Script)): Apr 06, 2016 12:06:13 UTC [Local Input: Select VM = 392) Apr 06, 2016 12:06:13 UTC [Local Input: Credential type = Login] Apr 06, 2016 12:06:13 UTC [Local Input: Login = administrator] Apr 06, 2016 12:06:13 UTC [Local Input: Password = "masked-value") Apr 06, 2016 12:06:13 UTC [Local Input: Script - C:\\WINDOWS\\system32\\cmd.exe /c fsutil file x.txt | echo.hi > C:\\util.txt] Apr 06, 2016 12:06:13 UTC [Local Input: Undo Script = ] Apr 06, 2016 12:06:13 UTC (Local Input: Error Codes = ] Apr 06, 2016 12:06:13 UTC [Local Input: Output display = true] Apr 06, 2016 12:06:13 UTC (Output: EXIT_STATUS_CODE = 0] Apr 06, 2016 12:06:13 UTC (Output: ERROR_STATUS_MESSAGE = ] Apr 06, 2016 12:06:13 UTC Completed workflow item number 1, with status completed Apr 06, 2016 12:06:13 UTC Completed workflow item number 3 Apr 06, 2016 12:06:13 UTC Completed workflow item number 2, with status completed
ログに表示されているように、スクリプトはタスクが正常に実行されたことを意味するステータス コード 0 を返します。
バッチ ファイルは次の場所に作成されます。
/opt/infra/vix_temp_files/vixbatch-04_07_2016_02_01_34_231.bat
バッチ ファイルの内容は、以下のとおりです。
@echo off echo 1sttt file > c:\\One1.txt && echo 2nddd file > c:\\Three.txt echo status_code: %ERRORLEVEL%
出力ファイルは次の場所に作成されます。
/opt/infra/vix_temp_files/vixoutput-04_07_2016_02_01_34_231.txt
出力ファイルの内容は、以下のとおりです。
status_code: 0
この例では、[出力表示(Output Display)] オプションを有効化した状態で、エラー コードを指定し、VIX スクリプトの実行タスクを使用して単一行の Windows コマンドを実行します。VM での Windows コマンドの実行に対して [出力表示(Output Display)] オプションを有効にした場合、バッチファイルが作成されます。バッチ ファイルには、選択された VM で実行されるコマンドが含まれています。出力ファイルには、バッチ ファイルの実行ステータス コードがキャプチャされます。
UCS Director アプライアンスで利用可能な VIX スクリプトの実行タスクに、以下の情報を入力します。
VIX スクリプトを実行する VM を選択します。
VM の管理者クレデンシャルを入力します。
[スクリプト(Script)] ボックスに以下の無効な Windows コマンドを入力します。
C:\\WINDOWS\\system32\\cmd.exe mkkdir C:\\test_error_code
[エラーコード(Error Code)] ボックスにエラー コード「9009」を入力します。
[出力表示(Output Display)] ボックスにマークを付けます。
ユーザが無効なコマンドを渡し、エラー コード(9009)を指定すると、タスクによってユーザの入力したエラー コードが確認され、タスクが失敗します。
Service Request ID: 486 Apr 21, 2016 09:05:00 UTC Request Submitted Apr 21, 2016 09:05:03 UTC Executing workflow item number 1 Apr 21, 2016 09:05:03 UTC Completed workflow item number 0, with status completed Apr 21, 2016 09:05:09 UTC Executing workflow item number 2 Apr 21, 2016 09:05:00 UTC Trigger context executeWorkflowStep called Apr 21, 2016 09:05:09 UTC Executing custom action vix_script (Execute VIX Script) Apr 21, 2016 09:05:09 UTC Executing custom action vix_script (Execute VIX Script) Apr 21, 2016 09:05:13 UTC [VIXActionHandler] - account details VMName : Win_2k12 , Host: 172.31.234.46, OS Type: microsoft windows server 2012 (64-bit), ExitCode :0 Apr 21, 2016 09:05:13 UTC Action Execute VIX Script: Task failed with Error Code: 9009 and status message: "mkkdir" not recognized as an internal or external command, operable program or batch file Apr 21, 2016 09:05:13 UTC Task: (vix_script (Execute VIX Script) failed with error - Task failed with Error Code: 9009 and status message: 'mkkdir' not recognized as an internal or external command, operable program or batch file. , selectedContext=<None> Apr 21, 2016 09:05:13 UTC Task#1 (vix_script (Execute VIX Script)) failed after 6 seconds Apr 21, 2016 09:05:13 UTC Input/Output values for Task#1 (vix_script (Execute VIX Script)): Apr 21, 2016 09:05:13 UTC [Local Input: Select VM = 3312) Apr 21, 2016 09:05:13 UTC [Local Input: Credential type = Login] Apr 21, 2016 09:05:13 UTC [Local Input: Login = administrator] Apr 21, 2016 09:05:13 UTC [Local Input: Password = "masked-value") Apr 21, 2016 09:05:13 UTC [Local Input: Script - C:\\WINDOWS\\system32\\cmd.exe mkdir C:\\test_error_code] Apr 21, 2016 09:05:13 UTC [Local Input: Undo Script = ] Apr 21, 2016 09:05:13 UTC (Local Input: Error Codes = 9009] Apr 21, 2016 09:05:13 UTC [Local Input: Output display = true] Apr 21, 2016 09:05:13 UTC (Output: EXIT_STATUS_CODE = 9009] Apr 21, 2016 09:05:13 UTC (Output: ERROR_STATUS_MESSAGE = 'mkkdir' not recognized as an internal or external command, operable program or batch file.] Apr 21, 2016 09:05:13 UTC Completed workflow item number 1, with status failed
ログに表示されているように、スクリプトは [エラーコード(Error Code)] フィールドに入力された値であるステータス コード 9009 を返します。
コマンドが無効であるがエラー コードが入力されていなかった場合、ゲスト エラー コードとユーザ フィールド エラー コードを照合しません。そのため、タスクが成功したと表示されます。以下のように、タスクによって適切なゲスト エラー コードが返されます。
Service Request ID: 523 Apr 21, 2016 10:05:00 UTC Request Submitted Apr 21, 2016 10:05:03 UTC Executing workflow item number 1 Apr 21, 2016 10:05:03 UTC Completed workflow item number 0, with status completed Apr 21, 2016 10:05:09 UTC Executing workflow item number 2 Apr 21, 2016 10:05:00 UTC Trigger context executeWorkflowStep called Apr 21, 2016 10:05:09 UTC Executing custom action vix_script (Execute VIX Script) Apr 21, 2016 10:05:09 UTC Executing custom action vix_script (Execute VIX Script) Apr 21, 2016 10:05:13 UTC [VIXActionHandler] - account details VMName : Win_2k12 , Host: 172.31.234.46, OS Type: microsoft windows server 2012 (64-bit), ExitCode :0 Apr 21, 2016 10:05:13 UTC Task#1 (vix_script (Execute VIX Script)) completed successfully after 3 seconds Apr 21, 2016 10:05:13 UTC Input/Output values for Task#1 (vix_script (Execute VIX Script)): Apr 21, 2016 10:05:13 UTC [Local Input: Select VM = 3312) Apr 21, 2016 10:05:13 UTC [Local Input: Credential type = Login] Apr 21, 2016 10:05:13 UTC [Local Input: Login = administrator] Apr 21, 2016 10:05:13 UTC [Local Input: Password = "masked-value") Apr 21, 2016 10:05:13 UTC [Local Input: Script - C:\\WINDOWS\\system32\\cmd.exe mkkdir C:\\test_error_code] Apr 21, 2016 10:05:13 UTC [Local Input: Undo Script = ] Apr 21, 2016 10:05:13 UTC (Local Input: Error Codes = ] Apr 21, 2016 10:05:13 UTC [Local Input: Output display = true] Apr 21, 2016 10:05:13 UTC (Output: EXIT_STATUS_CODE = 9009] Apr 21, 2016 10:05:13 UTC (Output: ERROR_STATUS_MESSAGE = 'mkkdir' is not recognized as an internal or external command, operable program or batch file.] Apr 21, 2016 10:05:13 UTC Completed workflow item number 1, with status completed
この例では、[出力表示(Output Display)] オプションを有効化した状態で、VIX スクリプトの実行タスクを使用して単一行の Linux コマンドを実行します。VM での Linuxs コマンドの実行に対して [出力表示(Output Display)] オプションを有効にした場合、出力ファイルが作成されます。出力ファイルには、バッチ実行のステータス コードがキャプチャされます。
UCS Director アプライアンスで利用可能な VIX スクリプトの実行タスクに、以下の情報を入力します。
VIX スクリプトを実行する VM を選択します。
VM の管理者クレデンシャルを入力します。
[スクリプト(Script)] ボックスにサンプル Linux コマンドを入力します。
/bin/mkdir /tmp/testdir
[出力表示(Output Display)] ボックスにマークを付けます。
タスクの実行後、SR ログに以下の情報が表示されます。
Apr 22, 2016 12:06:00 UTC Request Submitted Apr 22, 2016 12:06:03 UTC Executing workflow item number 1 Apr 22, 2016 12:06:03 UTC Completed workflow item number 0, with status completed Apr 22, 2016 12:06:09 UTC Executing workflow item number 2 Apr 22, 2016 12:06:00 UTC Trigger context executeWorkflowStep called Apr 22, 2016 12:06:09 UTC Executing custom action vix_script (Execute VIX Script) Apr 22, 2016 12:06:09 UTC Executing custom action Vix_script (Execute VIX Script) Apr 22, 2016 12:06:13 UTC [VIXActionHandler] - account details VMName : vm-DEF-SR119 , Host: 172.31.234.85, OS Type: red hat enterprise linux 4(32-bit), ExitCode :0 Apr 22, 2016 12:06:13 UTC Task#1 (vix_script (Execute VIX Script)) completed successfully in 4 seconds Apr 22, 2016 12:06:13 UTC Input/Output values for Task#1 (vix_script (Execute VIX Script)): Apr 22, 2016 12:06:13 UTC [Local Input: Select VM = 9801) Apr 22, 2016 12:06:13 UTC [Local Input: Credential type = Login] Apr 22, 2016 12:06:13 UTC [Local Input: Login = administrator] Apr 22, 2016 12:06:13 UTC [Local Input: Password = "masked-value") Apr 22, 2016 12:06:13 UTC [Local Input: Script - /bin/mkdir /tmp/testdir] Apr 22, 2016 12:06:13 UTC [Local Input: Undo Script = ] Apr 22, 2016 12:06:13 UTC (Local Input: Error Codes = ] Apr 22, 2016 12:06:13 UTC [Local Input: Output display = true] Apr 22, 2016 12:06:13 UTC (Output: EXIT_STATUS_CODE = 0] Apr 22, 2016 12:06:13 UTC (Output: ERROR_STATUS_MESSAGE = ] Apr 22, 2016 12:06:13 UTC Completed workflow item number 1, with status completed
ログに表示されているように、スクリプトはタスクが正常に実行されたことを意味するステータス コード 0 を返します。
Windows とは異なり、個別のシェル スクリプトは作成されません。出力ファイルのみ作成されます。出力ファイルは次の場所に作成されます。
/opt/infra/vix_temp_files/vixoutput-04_07_2016_10_03_09_835.txt
出力ファイルの内容は、以下のとおりです。
status_code: 0
VIX スクリプトの実行タスクで [出力表示(Output Display)] オプションのマークが外されている場合、コマンドは Windows または Linux VM で直接実行されます。バッチ ファイルや出力ファイルは作成されません。
次の例に、[出力表示(Output Display)] オプションを有効化していない状態で、VIX スクリプトの実行タスクを使用して Windows VM および Linux VM でコマンドを実行する方法を示します。
この例では、[出力表示(Output Display)] オプションを無効にした状態で、VIX スクリプトの実行タスクを使用して単一行の Windows コマンドを実行します。[出力表示(Output Display)] オプションのマークが外れている場合、Windows コマンドは直接 VM で実行されます。バッチ ファイルや出力ファイルは作成されません。
UCS Director アプライアンスで利用可能な VIX スクリプトの実行タスクに、以下の情報を入力します。
VIX スクリプトを実行する VM を選択します。
VM の管理者クレデンシャルを入力します。
[スクリプト(Script)] ボックスにサンプル Windows コマンドを入力します。
C:\\WINDOWS\\system32\\cmd.exe /c mkdir C:\\test_Dir_1234
[出力表示(Output Display)] ボックスにマークが付いている場合、クリアします。
タスクの実行後、ログに以下の情報が表示されます。
Service Request ID: 458 Mar 21, 2016 10:03:00 UTC Request Submitted Mar 21, 2016 10:03:03 UTC Executing workflow item number 1 Mar 21, 2016 10:03:03 UTC Completed workflow item number 0, with status completed Mar 21, 2016 10:03:09 UTC Executing workflow item number 2 Mar 21, 2016 10:03:00 UTC Trigger context executeWorkflowStep called Mar 21, 2016 10:03:09 UTC Executing custom action vix_script (Execute VIX Script) Mar 21, 2016 10:03:09 UTC Executing custom action vix_script (Execute VIX Script) Mar 21, 2016 10:03:13 UTC [VIXActionHandler] - account details VMName : Win_2k12 , Host: 172.31.234.46, OS Type: microsoft windows server 2012 (64-bit), ExitCode :0 Mar 21, 2016 10:03:13 UTC Task#1 (vix_script (Execute VIX Script)) completed successfully in 3 seconds Mar 21, 2016 10:03:13 UTC Input/Output values for Task#1 (vix_script (Execute VIX Script)): Mar 21, 2016 10:03:13 UTC [Local Input: Select VM = 3312) Mar 21, 2016 10:03:13 UTC [Local Input: Credential type = Login] Mar 21, 2016 10:03:13 UTC [Local Input: Login = administrator] Mar 21, 2016 10:03:13 UTC [Local Input: Password = "masked-value") Mar 21, 2016 10:03:13 UTC [Local Input: Script - C:\\WINDOWS\\system32\\cmd.exe /c mkdir C:\\test_Dir_1234] Mar 21, 2016 10:03:13 UTC [Local Input: Undo Script = ] Mar 21, 2016 10:03:13 UTC (Local Input: Error Codes = ] Mar 21, 2016 10:03:13 UTC [Local Input: Output display = true] Mar 21, 2016 10:03:13 UTC (Output: EXIT_STATUS_CODE = 0] Mar 21, 2016 10:03:13 UTC (Output: ERROR_STATUS_MESSAGE = ] Mar 21, 2016 10:03:13 UTC Completed workflow item number 1, with status completed Mar 21, 2016 10:03:13 UTC Completed workflow item number 3 Mar 21, 2016 10:03:13 UTC Completed workflow item number 2, with status completed
ログに表示されているように、コマンドは VM 上で直接実行されます。
この例では、[出力表示(Output Display)] オプションを無効にした状態で、VIX スクリプトの実行タスクを使用して複数行の Windows コマンドを実行します。[出力表示(Output Display)] オプションのマークが外れている場合、複数行の Windows コマンドは直接 VM で実行されます。バッチ ファイルや出力ファイルは作成されません。
UCS Director アプライアンスで利用可能な VIX スクリプトの実行タスクに、以下の情報を入力します。
VIX スクリプトを実行する VM を選択します。
VM の管理者クレデンシャルを入力します。
[スクリプト(Script)] ボックスにサンプル Windows コマンドを入力します。
C:\\WINDOWS\\system32\\cmd.exe /c mkdir C:\\testfolder_line1 && C:\\WINDOWS\\system32\\cmd.exe /c mkdir C:\\testfolder_line2
[出力表示(Output Display)] オプションにマークが付いている場合、クリアします。
タスクの実行後、ログに以下の情報が表示されます。
Service Request ID: 448 Mar 21, 2016 10:03:00 UTC Request Submitted Mar 21, 2016 10:03:03 UTC Executing workflow item number 1 Mar 21, 2016 10:03:03 UTC Completed workflow item number 0, with status completed Mar 21, 2016 10:03:09 UTC Executing workflow item number 2 Mar 21, 2016 10:03:00 UTC Trigger context executeWorkflowStep called Mar 21, 2016 10:03:09 UTC Executing custom action vix_script (Execute VIX Script) Mar 21, 2016 10:03:09 UTC Executing custom action vix_script (Execute VIX Script) Mar 21, 2016 10:03:13 UTC [VIXActionHandler] - account details VMName : Win_2k12 , Host: 172.31.234.46, OS Type: microsoft windows server 2012 (64-bit), ExitCode :0 Mar 21, 2016 10:03:13 UTC Task#1 (vix_script (Execute VIX Script)) completed successfully in 3 seconds Mar 21, 2016 10:03:13 UTC Input/Output values for Task#1 (vix_script (Execute VIX Script)): Mar 21, 2016 10:03:13 UTC [Local Input: Select VM = 3312) Mar 21, 2016 10:03:13 UTC [Local Input: Credential type = Login] Mar 21, 2016 10:03:13 UTC [Local Input: Login = administrator] Mar 21, 2016 10:03:13 UTC [Local Input: Password = "masked-value") Mar 21, 2016 10:03:13 UTC [Local Input: Script - C:\\WINDOWS\\system32\\cmd.exe /c mkdir C:\\testfolder_line1 && C:\\WINDOWS\\system32\\cmd.exe /c mkdir C:\\testfolder_line2 ] Mar 21, 2016 10:03:13 UTC [Local Input: Undo Script = ] Mar 21, 2016 10:03:13 UTC (Local Input: Error Codes = ] Mar 21, 2016 10:03:13 UTC [Local Input: Output display = true] Mar 21, 2016 10:03:13 UTC (Output: EXIT_STATUS_CODE = 0] Mar 21, 2016 10:03:13 UTC (Output: ERROR_STATUS_MESSAGE = ] Mar 21, 2016 10:03:13 UTC Completed workflow item number 1, with status completed Mar 21, 2016 10:03:13 UTC Completed workflow item number 3 Mar 21, 2016 10:03:13 UTC Completed workflow item number 2, with status completed
ログに表示されているように、コマンドは VM 上で直接実行されます。
この例では、[出力表示(Output Display)] オプションを無効にした状態で、VIX スクリプトの実行タスクを使用して単一行の Linux コマンドを実行します。[出力表示(Output Display)] オプションが無効にされている場合、Linux コマンドは直接 VM で実行されます。出力ファイルは作成されません。
UCS Director アプライアンスで利用可能な VIX スクリプトの実行タスクに、以下の情報を入力します。
VIX スクリプトを実行する VM を選択します。
VM の管理者クレデンシャルを入力します。
[スクリプト(Script)] ボックスにサンプル Linux コマンドを入力します。
/bin/mkdir /tmp/testdir1
[出力表示(Output Display)] オプションにマークが付いている場合、外します。
タスクの実行後、SR ログに以下の情報が表示されます。
Apr 22, 2016 12:06:00 UTC Request Submitted Apr 22, 2016 12:06:03 UTC Executing workflow item number 1 Apr 22, 2016 12:06:03 UTC Completed workflow item number 0, with status completed Apr 22, 2016 12:06:09 UTC Executing workflow item number 2 Apr 22, 2016 12:06:00 UTC Trigger context executeWorkflowStep called Apr 22, 2016 12:06:09 UTC Executing custom action vix_script (Execute VIX Script) Apr 22, 2016 12:06:09 UTC Executing custom action Vix_script (Execute VIX Script) Apr 22, 2016 12:06:13 UTC [VIXActionHandler] - account details VMName : vm-DEF-SR119 , Host: 172.31.234.85, OS Type: red hat enterprise linux 4(32-bit), ExitCode :0 Apr 22, 2016 12:06:13 UTC Task#1 (vix_script (Execute VIX Script)) completed successfully in 4 seconds Apr 22, 2016 12:06:13 UTC Input/Output values for Task#1 (vix_script (Execute VIX Script)): Apr 22, 2016 12:06:13 UTC [Local Input: Select VM = 9801) Apr 22, 2016 12:06:13 UTC [Local Input: Credential type = Login] Apr 22, 2016 12:06:13 UTC [Local Input: Login = administrator] Apr 22, 2016 12:06:13 UTC [Local Input: Password = "masked-value") Apr 22, 2016 12:06:13 UTC [Local Input: Script - /bin/mkdir /tmp/testdir1] Apr 22, 2016 12:06:13 UTC [Local Input: Undo Script = ] Apr 22, 2016 12:06:13 UTC (Local Input: Error Codes = ] Apr 22, 2016 12:06:13 UTC [Local Input: Output display = true] Apr 22, 2016 12:06:13 UTC (Output: EXIT_STATUS_CODE = 0] Apr 22, 2016 12:06:13 UTC (Output: ERROR_STATUS_MESSAGE = ] Apr 22, 2016 12:06:13 UTC Completed workflow item number 1, with status completed
ログに表示されているように、Linux コマンドは VM 上で直接実行されます。
この例では、userAPIExecuteVIXScript API タスクを使用して Windows コマンドを実行します。この API の制限は、応答にステータス コードだけが表示され、出力メッセージが表示されないことです。
UCS Director アプライアンスで利用可能な userAPIExecuteVIXScript API タスクに、以下の情報を入力します。
VIX スクリプトを実行する VM を選択します。
VM の管理者クレデンシャルを入力します。
[URL の生成(Generate URL)] ボタンをクリックし、以下のパラメータを入力します。
/app/api/rest?formatType=json&opName=genericvm:userAPIExecuteVIXScript&opData= {param0:642,param1:"administrator",param2:"cloupia345",param3:"C:\\WINDOWS\\system32\\cmd.exe mkdir C:\\test_Dir"}
(注) |
|
[REST API の実行(Execute REST API)] ボタンをクリックします。
コマンドが有効な場合、以下の応答が表示されます。
{ "serviceResult":126, "serviceError":null, "serviceName":"InfraMgr", "opName":"genericvm:userAPIExecuteVIXScript" }
コマンドが正常に実行されると、SR ログに以下の情報が表示されます。
Service Request ID: 445 Apr 19, 2016 10:03:00 UTC Request Submitted Apr 19, 2016 10:03:03 UTC Executing workflow item number 1 Apr 19, 2016 10:03:03 UTC Completed workflow item number 0, with status completed Apr 19, 2016 10:03:09 UTC Executing workflow item number 2 Apr 19, 2016 10:03:00 UTC Trigger context executeWorkflowStep called Apr 19, 2016 10:03:09 UTC Executing custom action vix_script (Execute VIX Script) Apr 19, 2016 10:03:09 UTC Executing custom action vix_script (Execute VIX Script) Apr 19, 2016 10:03:13 UTC [VIXActionHandler] - account details VMName : Win_2k12 , Host: 172.31.234.46, OS Type: microsoft windows server 2012 (64-bit), ExitCode :0 Apr 19, 2016 10:03:13 UTC Task#1 (vix_script (Execute VIX Script)) completed successfully in 6 seconds Apr 19, 2016 10:03:13 UTC Input/Output values for Task#1 (vix_script (Execute VIX Script)): Apr 19, 2016 10:03:13 UTC [Local Input: Select VM = 642) Apr 19, 2016 10:03:13 UTC [Local Input: Credential type = Login] Apr 19, 2016 10:03:13 UTC [Local Input: Login = administrator] Apr 19, 2016 10:03:13 UTC [Local Input: Password = "masked-value") Apr 19, 2016 10:03:13 UTC [Local Input: Script - C:\\WINDOWS\\system32\\cmd.exe mkdir C:\\test_Dir] Apr 19, 2016 10:03:13 UTC [Local Input: Undo Script = ] Apr 19, 2016 10:03:13 UTC (Local Input: Error Codes = ] Apr 19, 2016 10:03:13 UTC [Local Input: Output display = true] Apr 19, 2016 10:03:13 UTC (Output: EXIT_STATUS_CODE = 0] Apr 19, 2016 10:03:13 UTC (Output: ERROR_STATUS_MESSAGE = ] Apr 19, 2016 10:03:13 UTC Completed workflow item number 1, with status completed
ログに表示されているように、スクリプトはタスクが正常に実行されたことを意味するステータス コード 0 を返します。
コマンドが無効な場合(C:\\WINDOWS\\system32\\cmd.exe testxml のような不正なコマンドを入力した場合など)、ステータス コードによって適切なエラー コードが SR ログに返されます。
Service Request ID: 445 Apr 19, 2016 10:03:00 UTC Request Submitted Apr 19, 2016 10:03:03 UTC Executing workflow item number 1 Apr 19, 2016 10:03:03 UTC Completed workflow item number 0, with status completed Apr 19, 2016 10:03:09 UTC Executing workflow item number 2 Apr 19, 2016 10:03:00 UTC Trigger context executeWorkflowStep called Apr 19, 2016 10:03:09 UTC Executing custom action vix_script (Execute VIX Script) Apr 19, 2016 10:03:09 UTC Executing custom action vix_script (Execute VIX Script) Apr 19, 2016 10:03:13 UTC [VIXActionHandler] - account details VMName : Win_2k12 , Host: 172.31.234.46, OS Type: microsoft windows server 2012 (64-bit), ExitCode :0 Apr 19, 2016 10:03:13 UTC Task#1 (vix_script (Execute VIX Script)) completed successfully after 6 seconds Apr 19, 2016 10:03:13 UTC Input/Output values for Task#1 (vix_script (Execute VIX Script)): Apr 19, 2016 10:03:13 UTC [Local Input: Select VM = 642) Apr 19, 2016 10:03:13 UTC [Local Input: Credential type = Login] Apr 19, 2016 10:03:13 UTC [Local Input: Login = administrator] Apr 19, 2016 10:03:13 UTC [Local Input: Password = "masked-value") Apr 19, 2016 10:03:13 UTC [Local Input: Script - C:\\WINDOWS\\system32\\cmd.exe testxml] Apr 19, 2016 10:03:13 UTC [Local Input: Undo Script = ] Apr 19, 2016 10:03:13 UTC (Local Input: Error Codes = ] Apr 19, 2016 10:03:13 UTC [Local Input: Output display = true] Apr 19, 2016 10:03:13 UTC (Output: EXIT_STATUS_CODE = 9009] Apr 19, 2016 10:03:13 UTC (Output: ERROR_STATUS_MESSAGE = 'testxml' is not recognized as an internal or external command, operable program or batch file.] Apr 19, 2016 10:03:13 UTC Completed workflow item number 1, with status completed
ここで、ステータス コード 1 は未知のエラーを意味します。
この例では、userAPIExecuteVIXScript API タスクを使用して Linux コマンドを実行します。この API の制限は、応答にステータス コードだけが表示され、出力メッセージが表示されないことです。
UCS Director アプライアンスで利用可能な userAPIExecuteVIXScript API タスクに、以下の情報を入力します。
VIX スクリプトを実行する VM を選択します。
VM の管理者クレデンシャルを入力します。
[URL の生成(Generate URL)] ボタンをクリックし、以下のパラメータを入力します。
/app/api/rest?formatType=json&opName=genericvm:userAPIExecuteVIXScript&opData= {param0:279,param1:"root",param2:"cloupia345",param3:"/bin/mkdir /temp/test1"}
(注) | ここで、param0 は VM ID、param1 と param2 は VM のルートクレデンシャル、param3 は Linux コマンドになります。 |
[REST API の実行(Execute REST API)] ボタンをクリックします。
コマンドが有効な場合、以下の応答が表示されます。
{ "serviceResult":81, "serviceError":null, "serviceName":"InfraMgr", "opName":"genericvm:userAPIExecuteVIXScript" }
コマンドが正常に実行されると、SR ログに以下の情報が表示されます。
Service Request ID: 495 Apr 19, 2016 10:03:00 UTC Request Submitted Apr 19, 2016 10:03:03 UTC Executing workflow item number 1 Apr 19, 2016 10:03:03 UTC Completed workflow item number 0, with status completed Apr 19, 2016 10:03:09 UTC Executing workflow item number 2 Apr 19, 2016 10:03:00 UTC Trigger context executeWorkflowStep called Apr 19, 2016 10:03:09 UTC Executing custom action vix_script (Execute VIX Script) Apr 19, 2016 10:03:09 UTC Executing custom action vix_script (Execute VIX Script) Apr 19, 2016 10:03:13 UTC [VIXActionHandler] - account details VMName :SDK-VIX, Host :172.29.110.75 , OS Type :red hat enterprise linux 5 (64-bit), ExitCode :0 Apr 19, 2016 10:03:13 UTC Task#1 (vix_script (Execute VIX Script)) completed successfully in 6 seconds Apr 19, 2016 10:03:13 UTC Input/Output values for Task#1 (vix_script (Execute VIX Script)): Apr 19, 2016 10:03:13 UTC [Local Input: Select VM = 279) Apr 19, 2016 10:03:13 UTC [Local Input: Credential type = Login] Apr 19, 2016 10:03:13 UTC [Local Input: Login = administrator] Apr 19, 2016 10:03:13 UTC [Local Input: Password = "masked-value") Apr 19, 2016 10:03:13 UTC [Local Input: Script - /bin/mkdir /temp/test1] Apr 19, 2016 10:03:13 UTC [Local Input: Undo Script = ] Apr 19, 2016 10:03:13 UTC (Local Input: Error Codes = ] Apr 19, 2016 10:03:13 UTC [Local Input: Output display = true] Apr 19, 2016 10:03:13 UTC (Output: EXIT_STATUS_CODE = 0] Apr 19, 2016 10:03:13 UTC (Output: ERROR_STATUS_MESSAGE = ] Apr 19, 2016 10:03:13 UTC Completed workflow item number 1, with status completed
ログに表示されているように、スクリプトはタスクが正常に実行されたことを意味するステータス コード 0 を返します。
コマンドが無効な場合(///abcd/test/123 のような不正なコマンドを入力した場合など)、ステータス コードによって適切なエラー コードが SR ログに返されます。
Service Request ID: 495 Apr 19, 2016 10:03:00 UTC Request Submitted Apr 19, 2016 10:03:03 UTC Executing workflow item number 1 Apr 19, 2016 10:03:03 UTC Completed workflow item number 0, with status completed Apr 19, 2016 10:03:09 UTC Executing workflow item number 2 Apr 19, 2016 10:03:00 UTC Trigger context executeWorkflowStep called Apr 19, 2016 10:03:09 UTC Executing custom action vix_script (Execute VIX Script) Apr 19, 2016 10:03:09 UTC Executing custom action vix_script (Execute VIX Script) Apr 19, 2016 10:03:13 UTC [VIXActionHandler] - account details VMName :SDK-VIX, Host :172.29.110.75 , OS Type :red hat enterprise linux 5 (64-bit), ExitCode :0 Apr 19, 2016 10:03:13 UTC Task#1 (vix_script (Execute VIX Script)) completed successfully in 3 seconds Apr 19, 2016 10:03:13 UTC Input/Output values for Task#1 (vix_script (Execute VIX Script)): Apr 19, 2016 10:03:13 UTC [Local Input: Select VM = 279) Apr 19, 2016 10:03:13 UTC [Local Input: Credential type = Login] Apr 19, 2016 10:03:13 UTC [Local Input: Login = administrator] Apr 19, 2016 10:03:13 UTC [Local Input: Password = "masked-value") Apr 19, 2016 10:03:13 UTC [Local Input: Script - ///abcd/test/123] Apr 19, 2016 10:03:13 UTC [Local Input: Undo Script = ] Apr 19, 2016 10:03:13 UTC (Local Input: Error Codes = ] Apr 19, 2016 10:03:13 UTC [Local Input: Output display = true] Apr 19, 2016 10:03:13 UTC (Output: EXIT_STATUS_CODE = 9009] Apr 19, 2016 10:03:13 UTC (Output: ERROR_STATUS_MESSAGE = 'abcd/test/123' is not recognized as an internal or external command, operable program or batch file.] Apr 19, 2016 10:03:13 UTC Completed workflow item number 1, with status completed
ここで、ステータス コード 1 は未知のエラーを意味します。
この例では、EXECUTE_VIX_SCRIPT API タスクを使用して Windows コマンドを実行します。この API の制限は、応答にステータス コードだけが表示され、出力メッセージが表示されないことです。
UCS Director アプライアンスで利用可能な EXECUTE_VIX_SCRIPT API タスクに、以下の情報を入力します。
VIX スクリプトを実行する VM を選択します。
VM の管理者クレデンシャルを入力します。
[スクリプト(Script)] ボックスにサンプル Windows コマンドを入力します。
C:\\WINDOWS\\system32\\cmd.exe mkdir C:\\test_xml_api
[REST API の実行(Execute REST API)] ボタンをクリックします。
コマンドが有効な場合、以下の応答が表示されます。
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <cuicOperationResponse> <Log> <Messages>1</Messages> <Message> <TimeStamp>2016-04-26 08:11:26.864</TimeStamp> <Severity>INFO</Severity> <Text>[VIXActionHandler] - account details VMName :SDK-VIX, Host :172.29.110.75 , OS Type :microsoft windows server 2008 r2 (64-bit), ExitCode:0</Text> </Message> </Log> <operationStatus>0</operationStatus> <response> <ExecuteVIXScriptResponse> <EXIT_STATUS_CODE>0</EXIT_STATUS_CODE> </ExecuteVIXScriptResponse> </response> <responsemap> <entry> <key>ERROR_STATUS_CODE</key> <value>0</value> </entry> </responsemap> </cuicOperationResponse>
応答に表示されているように、ステータス コードはコマンドが正常に実行されたことを意味する 0 を返します。
コマンドが無効な場合(C:\\WINDOWS\\system32\\cmd.exe testxml のような不正なコマンドを入力した場合など)、ステータス コードによって適切なエラー コードが [応答(Response)] フィールドに返されます。
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <cuicOperationResponse> <Log> <Messages>1</Messages> <Message> <TimeStamp>2016-04-26 03:12:29.864</TimeStamp> <Severity>INFO</Severity> <Text>[VIXActionHandler] - account details VMName :SDK-VIX, Host :172.29.110.75 , OS Type :red hat enterprise linux 5 (64-bit), ExitCode:0</Text> </Message> </Log> <operationStatus>0</operationStatus> <response> <ExecuteVIXScriptResponse> <EXIT_STATUS_CODE>9009</EXIT_STATUS_CODE> <ERROR_STATUS_MESSAGE>"testxml" is not recognized as an internal or external command, operable program or batch file.</ERROR_STATUS_MESSAGE> </ExecuteVIXScriptResponse> </response> <responsemap> <entry> <key>ERROR_STATUS_CODE</key> <value>0</value> </entry> <entry> <key>ERROR_STATUS_MESSAGE</key> <value></value> </entry> </responsemap> </cuicOperationResponse>
ここで、ステータス コード 1 は未知のエラーを意味します。
この例では、EXECUTE_VIX_SCRIPT API タスクを使用して Linux コマンドを実行します。この API の制限は、応答にステータス コードだけが表示され、出力メッセージが表示されないことです。
UCS Director アプライアンスで利用可能な EXECUTE_VIX_SCRIPT API タスクに、以下の情報を入力します。
VIX スクリプトを実行する VM を選択します。
VM の管理者クレデンシャルを入力します。
[スクリプト(Script)] ボックスにサンプル Linux コマンドを入力します。
/bin/date
[REST API の実行(Execute REST API)] ボタンをクリックします。
コマンドが有効な場合、以下の応答が表示されます。
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <cuicOperationResponse> <Log> <Messages>1</Messages> <Message> <TimeStamp>2016-04-26 03:11:26.864</TimeStamp> <Severity>INFO</Severity> <Text>[VIXActionHandler] - account details VMName :SDK-VIX, Host :172.29.110.75 , OS Type :red hat enterprise linux 5 (64-bit), ExitCode:0</Text> </Message> </Log> <operationStatus>0</operationStatus> <response> <ExecuteVIXScriptResponse> <EXIT_STATUS_CODE>0</EXIT_STATUS_CODE> <ERROR_STATUS_MESSAGE></ERROR_STATUS_MESSAGE> </ExecuteVIXScriptResponse> </response> <responsemap> <entry> <key>ERROR_STATUS_CODE</key> <value>0</value> </entry> <entry> <key>ERROR_STATUS_MESSAGE</key> <value></value> </entry> </responsemap> </cuicOperationResponse>
応答に表示されているように、ステータス コードはコマンドが正常に実行されたことを意味する 0 を返します。
コマンドが無効な場合、ステータス コードによって適切なエラー コードが [応答(Response)] フィールドに返されます。
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <cuicOperationResponse> <Log> <Messages>1</Messages> <Message> <TimeStamp>2016-04-26 03:11:26.864</TimeStamp> <Severity>INFO</Severity> <Text>[VIXActionHandler] - account details VMName :SDK-VIX, Host :172.29.110.75 , OS Type :red hat enterprise linux 5 (64-bit), ExitCode:0</Text> </Message> </Log> <operationStatus>0</operationStatus> <response> <ExecuteVIXScriptResponse> <EXIT_STATUS_CODE>1</EXIT_STATUS_CODE> <ERROR_STATUS_MESSAGE></ERROR_STATUS_MESSAGE> </ExecuteVIXScriptResponse> </response> <responsemap> <entry> <key>ERROR_STATUS_CODE</key> <value>0</value> </entry> <entry> <key>ERROR_STATUS_MESSAGE</key> <value></value> </entry> </responsemap> </cuicOperationResponse>
ここで、1 は不明なエラーを意味します。
この例では、userAPIExecuteVIXScriptWithOutput API を使用して Windows コマンドを実行します。
userAPIExecuteVIXScriptWithOutput API を使用して Windows コマンドを実行すると、API によって以下のものが作成されます。
出力ファイル(ファイル拡張子 .txt)(ファイル パス ロケーション /opt/infra/vix_temp_files)。
ワークフロー タスクの入力パラメータと出力変数の一覧を表示する入出力レポート。
バッチ コマンドを確認するバッチ ファイル(ファイル拡張子 .bat)(Windows VM のみ)。
UCS Director アプライアンスで利用可能な userAPIExecuteVIXScriptWithOutput API タスクに、以下の情報を入力します。
VIX スクリプトを実行する VM を選択します。
VM の管理者クレデンシャルを入力します。
[URL の生成(Generate URL)] ボタンをクリックし、以下のパラメータを入力します。
/app/api/rest?formatType=json&opName=genericvm:userAPIExecuteVIXScriptWithOutput&opData= {param0:247,param1:"administrator",param2:"cloupia123",param3:"C:\\WINDOWS\\system32\\cmd.exe echo hi"}
[REST API の実行(Execute REST API)] ボタンをクリックします。
コマンドが有効な場合、以下の応答が表示されます。
{ "serviceResult":126, "serviceError":null, "serviceName":"InfraMgr", "opName":"genericvm:userAPIExecuteVIXScriptWithOutput" }
コマンドが正常に実行されると、SR ログに以下の情報が表示されます。
Service Request ID: 435 Apr 19, 2016 10:03:00 UTC Request Submitted Apr 19, 2016 10:03:03 UTC Executing workflow item number 1 Apr 19, 2016 10:03:03 UTC Completed workflow item number 0, with status completed Apr 19, 2016 10:03:09 UTC Executing workflow item number 2 Apr 19, 2016 10:03:00 UTC Trigger context executeWorkflowStep called Apr 19, 2016 10:03:09 UTC Executing custom action vix_script (Execute VIX Script) Apr 19, 2016 10:03:09 UTC Executing custom action vix_script (Execute VIX Script) Apr 19, 2016 10:03:13 UTC [VIXActionHandler] - account details VMName : Win_2k12 , Host: 172.31.234.46, OS Type: microsoft windows server 2012 (64-bit), ExitCode :0 Apr 19, 2016 10:03:13 UTC Task#1 (vix_script (Execute VIX Script)) completed successfully in 6 seconds Apr 19, 2016 10:03:13 UTC Input/Output values for Task#1 (vix_script (Execute VIX Script)): Apr 19, 2016 10:03:13 UTC [Local Input: Select VM = 247) Apr 19, 2016 10:03:13 UTC [Local Input: Credential type = Login] Apr 19, 2016 10:03:13 UTC [Local Input: Login = administrator] Apr 19, 2016 10:03:13 UTC [Local Input: Password = "masked-value") Apr 19, 2016 10:03:13 UTC [Local Input: Script - /app/api/rest?formatType=json&opName=genericvm:userAPIExecuteVIXScriptWithOutput&opData= {param0:247,param1:"administrator",param2:"cloupia123",param3:"C:\\WINDOWS\\system32\\cmd.exe echo hi"} ] Apr 19, 2016 10:03:13 UTC [Local Input: Undo Script = ] Apr 19, 2016 10:03:13 UTC (Local Input: Error Codes = ] Apr 19, 2016 10:03:13 UTC [Local Input: Output display = true] Apr 19, 2016 10:03:13 UTC (Output: EXIT_STATUS_CODE = 0] Apr 19, 2016 10:03:13 UTC (Output: ERROR_STATUS_MESSAGE = ] Apr 19, 2016 10:03:13 UTC Completed workflow item number 1, with status completed
ログに表示されているように、スクリプトはタスクが正常に実行されたことを意味するステータス コード 0 を返します。
ワークフロータスクの入力パラメータと出力変数(ステータス コードとステータス メッセージ)の一覧を表示する入出力レポートも API によって作成されます。
無効な Windows コマンドが userAPIExecuteVIXScriptWithOutput API で送信されると、SR ログに次のようなレポートが表示されます。
Service Request ID: 435 Apr 19, 2016 10:03:00 UTC Request Submitted Apr 19, 2016 10:03:03 UTC Executing workflow item number 1 Apr 19, 2016 10:03:03 UTC Completed workflow item number 0, with status completed Apr 19, 2016 10:03:09 UTC Executing workflow item number 2 Apr 19, 2016 10:03:00 UTC Trigger context executeWorkflowStep called Apr 19, 2016 10:03:09 UTC Executing custom action vix_script (Execute VIX Script) Apr 19, 2016 10:03:09 UTC Executing custom action vix_script (Execute VIX Script) Apr 19, 2016 10:03:13 UTC [VIXActionHandler] - account details VMName : Win_2k12 , Host: 172.31.234.46, OS Type: microsoft windows server 2012 (64-bit), ExitCode :0 Apr 19, 2016 10:03:13 UTC Task#1 (vix_script (Execute VIX Script)) completed successfully in 9 seconds Apr 19, 2016 10:03:13 UTC Input/Output values for Task#1 (vix_script (Execute VIX Script)): Apr 19, 2016 10:03:13 UTC [Local Input: Select VM = 247) Apr 19, 2016 10:03:13 UTC [Local Input: Credential type = Login] Apr 19, 2016 10:03:13 UTC [Local Input: Login = administrator] Apr 19, 2016 10:03:13 UTC [Local Input: Password = "masked-value") Apr 19, 2016 10:03:13 UTC [Local Input: Script - /app/api/rest?formatType=json&opName=genericvm:userAPIExecuteVIXScriptWithOutput&opData= {param0:247,param1:"administrator",param2:"cloupia123",param3:"C:\\WINDOWS\\system32\\cmd.exe whatsapp"} ] Apr 19, 2016 10:03:13 UTC [Local Input: Undo Script = ] Apr 19, 2016 10:03:13 UTC (Local Input: Error Codes = ] Apr 19, 2016 10:03:13 UTC [Local Input: Output display = true] Apr 19, 2016 10:03:13 UTC (Output: EXIT_STATUS_CODE = 9009] Apr 19, 2016 10:03:13 UTC (Output: ERROR_STATUS_MESSAGE = 'whatsapp' is not recognized as an internal or external command, operable program or batch file.] Apr 19, 2016 10:03:13 UTC Completed workflow item number 1, with status completed
ログに表示されるように、該当するステータス コードと、コマンドが無効であるというエラー メッセージがスクリプトによって返されます。同じエラー ステータス コードとエラー ステータス メッセージが、入出力レポートにも表示されます。
API によって次の場所にバッチ ファイルが作成されます。
/opt/infra/vix_temp_files/vixbatch-04_07_2016_02_01_34_231.bat
API によって次の場所に出力ファイルが作成されます。
/opt/infra/vix_temp_files/vixoutput-04_07_2016_02_01_34_231.txt
この例では、userAPIExecuteVIXScriptWithOutput API を使用して Linux コマンドを実行します。
UCS Director アプライアンスで利用可能な userAPIExecuteVIXScriptWithOutput API タスクに、以下の情報を入力します。
VIX スクリプトを実行する VM を選択します。
VM の管理者クレデンシャルを入力します。
[URL の生成(Generate URL)] ボタンをクリックし、以下のパラメータを入力します。
/app/api/rest?formatType=json&opName=genericvm:userAPIExecuteVIXScriptWithOutput&opData= {param0:244,param1:"root",param2:"cloupia123",param3:"/bin/date"}
(注) | ここで、param0 は VM ID、param1 と param2 は VM の管理者クレデンシャル、param3 は Linux コマンドになります。 |
[REST API の実行(Execute REST API)] ボタンをクリックします。
コマンドが有効な場合、以下の応答が表示されます。
{ "serviceResult":228, "serviceError":null, "serviceName":"InfraMgr", "opName":"genericvm:userAPIExecuteVIXScriptWithOutput" }
コマンドが正常に実行されると、SR ログに以下の情報が表示されます。
Service Request ID: 491 Apr 19, 2016 10:03:00 UTC Request Submitted Apr 19, 2016 10:03:03 UTC Executing workflow item number 1 Apr 19, 2016 10:03:03 UTC Completed workflow item number 0, with status completed Apr 19, 2016 10:03:09 UTC Executing workflow item number 2 Apr 19, 2016 10:03:00 UTC Trigger context executeWorkflowStep called Apr 19, 2016 10:03:09 UTC Executing custom action vix_script (Execute VIX Script) Apr 19, 2016 10:03:09 UTC Executing custom action vix_script (Execute VIX Script) Apr 19, 2016 10:03:13 UTC [VIXActionHandler] - account details VMName :SDK-VIX, Host :172.29.110.75 , OS Type :red hat enterprise linux 5 (64-bit), ExitCode :0 Apr 19, 2016 10:03:13 UTC Task#1 (vix_script (Execute VIX Script)) completed successfully in 6 seconds Apr 19, 2016 10:03:13 UTC Input/Output values for Task#1 (vix_script (Execute VIX Script)): Apr 19, 2016 10:03:13 UTC [Local Input: Select VM = 244) Apr 19, 2016 10:03:13 UTC [Local Input: Credential type = Login] Apr 19, 2016 10:03:13 UTC [Local Input: Login = administrator] Apr 19, 2016 10:03:13 UTC [Local Input: Password = "masked-value") Apr 19, 2016 10:03:13 UTC [Local Input: Script - /bin/date} ] Apr 19, 2016 10:03:13 UTC [Local Input: Undo Script = ] Apr 19, 2016 10:03:13 UTC (Local Input: Error Codes = ] Apr 19, 2016 10:03:13 UTC [Local Input: Output display = true] Apr 19, 2016 10:03:13 UTC (Output: EXIT_STATUS_CODE = 0] Apr 19, 2016 10:03:13 UTC (Output: ERROR_STATUS_MESSAGE = ] Apr 19, 2016 10:03:13 UTC Completed workflow item number 2, with status completed
ログに表示されているように、スクリプトはタスクが正常に実行されたことを意味するステータス コード 0 を返します。
ワークフロータスクの入力パラメータと出力変数(ステータス コードとステータス メッセージ)の一覧を表示する入出力レポートも API によって作成されます。
無効な Linux コマンド(「abcd」など)が userAPIExecuteVIXScriptWithOutput API で送信されると、SR ログに次のようなレポートが表示されます。
Service Request ID: 491 Apr 19, 2016 10:03:00 UTC Request Submitted Apr 19, 2016 10:03:03 UTC Executing workflow item number 1 Apr 19, 2016 10:03:03 UTC Completed workflow item number 0, with status completed Apr 19, 2016 10:03:09 UTC Executing workflow item number 2 Apr 19, 2016 10:03:00 UTC Trigger context executeWorkflowStep called Apr 19, 2016 10:03:09 UTC Executing custom action vix_script (Execute VIX Script) Apr 19, 2016 10:03:09 UTC Executing custom action vix_script (Execute VIX Script) Apr 19, 2016 10:03:13 UTC [VIXActionHandler] - account details VMName :SDK-VIX, Host :172.29.110.75 , OS Type :red hat enterprise linux 5 (64-bit), ExitCode :0 Apr 19, 2016 10:03:13 UTC Task#1 (vix_script (Execute VIX Script)) completed successfully in 9 seconds Apr 19, 2016 10:03:13 UTC Input/Output values for Task#1 (vix_script (Execute VIX Script)): Apr 19, 2016 10:03:13 UTC [Local Input: Select VM = 244) Apr 19, 2016 10:03:13 UTC [Local Input: Credential type = Login] Apr 19, 2016 10:03:13 UTC [Local Input: Login = administrator] Apr 19, 2016 10:03:13 UTC [Local Input: Password = "masked-value") Apr 19, 2016 10:03:13 UTC [Local Input: Script - abcd} Apr 19, 2016 10:03:13 UTC [Local Input: Undo Script = null] Apr 19, 2016 10:03:13 UTC (Output: EXIT_STATUS_CODE = 127] Apr 19, 2016 10:03:13 UTC (Output: ERROR_STATUS_MESSAGE = sh:abcd: command not found] Apr 19, 2016 10:03:13 UTC Completed workflow item number 2, with status completed
ログに表示されるように、該当するステータス コードと、コマンドが無効であるというエラー メッセージがスクリプトによって返されます。同じエラー ステータス コードとエラー ステータス メッセージが、入出力レポートにも表示されます。