1.1X Rescale CLI の基本

基本的なジョブ投入の文法

Rescale CLI Appをインストールすると、以下のコマンドでジョブを投入することができます。

rescale-cli submit -p -i

Rescale CLIのデフォルトは、米国プラットフォーム platform.rescale.comです。その他のグローバルプラットフォーム(EU、JP、KR、ITAR)のユーザは、CLIコマンドで-Xフラグを使用して、地域プラットフォームを指定してください。例えば、以下のようになります。

PLATFORMCLI COMMAND
EUrescale-cli -X https://eu.rescale.com submit -p -i
日本rescale-cli -X https://platform.rescale.jp submit -p -i
Korearescale-cli -X https://kr.rescale.com submit -p -i
ITARrescale-cli -X https://itar.rescale.com submit -p -i

Rescale上でユーザが実行する可能性のあるコマンドが含まれています。これは、コマンドラインから./という接頭辞を使って実行できる、あらゆる種類の.shシェルスクリプトにすることができます。スクリプトの種類に関係なく、アプリはスクリプトを解析して、環境設定やサポートされていないコマンドに関連する不注意な問題を最小限に抑えようとします。pフラグは、ここに示すように作成したRescale API Application program interface (API) is a set of routines, pr... More Tokenを読み込むために使用します。

Rescale CLIコマンドを使用するためには、毎回Rescale APIキーを使用する必要があります。APIキーは文字と数字の長い組み合わせなので、環境変数を作成してプロファイルに保存しておくと、コマンドを使用するたびに実際のキーではなく、API変数を使用することができて便利でしょう。別のオプションとして、APIキーを毎回使用せずにCLIコマンドを使用するための設定ファイルをプロファイルで作成することができます。以下の手順で、環境変数を作成するか、プロファイルで設定ファイルを作成します。

Linuxの場合

APIキー環境変数の設定

  • ターミナルで または vi ~/.bashrc OR vi ~/.bash_profile のいずれかを入力し、ENTER を押してください。
  • ターミナルエディターが起動するので、次のように入力します export RESCALE_API_KEY=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
  • 入力が終わったら、まず ESC を押して、次に :wq を入力して変更を保存してください。
  • echo $RESCALE_API_KEYを使用して変数を表示することでテストすることができます。これにより、ターミナルにRescale APIキーが表示されます。

設定ファイルでのプロファイルの使用

  • デフォルトでは、CLIは ~/.config/rescale/apiconfigにあるプロファイル・ファイルを探します。最初のステップとして、Rescaleディレクトリを作成します。 mkdir ~/.config/rescale次に、設定ファイルを作成します。 vi ~/.config/rescale/apiconfig に、以下の内容を追加します。
[default]
apikey = XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

CLIは自動的に [default] プロファイルを使用します。別の名前のプロファイルは、 --profile コマンドライン引数を使用して指定できます。また、環境変数 RESCALE_CONFIG_FILE に任意のパスを設定することで、異なる設定ファイルのパスを使用することも可能です。

ユーザーが異なるプラットフォームで複数のプロファイルを使用する場合、それらのプラットフォームへのURLをapiconfigで以下のように指定する必要があります。

[default]
apibaseurl = https://platform.rescale.com
apikey = XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

[eu]

apibaseurl = https://eu.rescale.com apikey = XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX


Windowsの場合

APIキー環境変数の設定

  • 端末で、次のように入力します。 set RESCALE_API_KEY=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
  • API キーが環境変数に追加されているかどうかは、と入力することで再確認することができます。 echo %RESCALE_API_KEY%

これで、追加したAPIキーが表示されるはずです。

設定ファイルでのプロファイルの使用

デフォルトでは、CLIは %USERPROFILE%.configrescaleapiconfigにあるプロファイル・ファイルを探します。最初のステップとして、 %USERPROFILE% ディレクトリに移動します。 .config フォルダーとその下に rescale フォルダーを作成します。 .configrescaleの中に、メモ帳を開いて、以下の内容を追加します。

[default]
apikey = XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

ファイル名を"apiconfig"(ダブルクォーテーションで囲んで拡張子なしで保存)とし、All Files 形式で保存してください。

CLIは自動的に [default] プロファイルを使用します。別の名前のプロファイルは、 --profile コマンドライン引数を使用して指定できます。また、環境変数 RESCALE_CONFIG_FILE に任意のパスを設定することで、異なる設定ファイルのパスを使用することも可能です。

ユーザーが異なるプラットフォームで複数のプロファイルを使用する場合、それらのプラットフォームへのURLをapiconfigで以下のように指定する必要があります。

[default]
apibaseurl = https://platform.rescale.com
apikey = XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

[eu]

apibaseurl = https://eu.rescale.com apikey = XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX  

非常に簡単な例を見てみましょう。

Hello World!”ジョブを実行するには、シェル端末(Linux、MacOS、Cygwinなど)から、新しい実行ディレクトリを作成します。お好みのテキストエディタで、 submit.sh を含む入力サブミッションスクリプトを作成します。

#!/bin/bash
#RESCALE_NAME="Hello World"
#RESCALE_CORES=1
#RESCALE_ANALYSIS=user_included
#RESCALE_ANALYSIS_VERSION=0
#RESCALE_CORE_TYPE=Emerald

echo "Hello World!" > hello_world
sleep 120

注: 上記のスクリプトをコピーする際には、各環境変数の後に空白がないことを確認してください。

ターミナル ウィンドウで次のコマンドを実行して、ジョブを送信します。

rescale-cli submit -i submit.sh

これにより、新しいものがスピンアップされます そして、スクリプトのコマンドを使用してジョブを送信します。 これで、ユーザーは Rescale Web UI にログインしてジョブを追跡および監視できるようになります。 ジョブリストにはジョブが次のように表示されます。 "こんにちは世界"

ジョブが送信されました

ステータスページにはジョブの進行状況が表示され、ファイルをクリックすることでUI内から尾行することが可能です。

ジョブが送信されました

ログは次のようなものになります。

2019-08-26 22:17:55,295 - Authenticated as @rescale.com
2019-08-26 22:17:55,304 - Executing Command.
2019-08-26 22:17:55,308 - Parsing Input Files
2019-08-26 22:17:55,308 - No existing files to include
2019-08-26 22:18:03,112 - Found Analysis: user_included
2019-08-26 22:18:04,274 - No project with the specified name was found: null
2019-08-26 22:18:04,274 - Zipping Files
2019-08-26 22:18:04,276 - Creating temporary encrypted zip at /tmp/rescale-cli-work/input.zip
2019-08-26 22:18:07,054 - Finished writing encrypted file
2019-08-26 22:18:07,055 - Uploading Files
2019-08-26 22:18:07,057 - Uploading: /tmp/rescale-cli-work/run.sh
2019-08-26 22:18:07,058 - Uploading run.sh:
2019-08-26 22:18:07,736 - ##############################| 192B / 192B
2019-08-26 22:18:08,069 - Uploading: /tmp/rescale-cli-work/input.zip
2019-08-26 22:18:08,069 - Uploading input.zip:
2019-08-26 22:18:11,532 - ##############################| 86.39MB / 86.39MB
2019-08-26 22:18:11,818 - Job: Saving Job
2019-08-26 22:18:12,568 - Job kREtT: Saved
2019-08-26 22:18:12,568 - Job kREtT: Submitting
2019-08-26 22:18:13,748 - Job kREtT: --end-to-end flag not set, polling should be done manually.