1.1X Rescale CLI-Grundlagen

Grundlegende Übermittlungssyntax

Sobald die Rescale CLI-App installiert ist, kann mit dem folgenden Befehl ein Job übermittelt werden:

rescale-cli submit -p -i

Die CLI wird standardmäßig auf die US-Plattform umgestellt. platform.rescale.comWenn Sie eine der anderen globalen Plattformen (EU, JP, KR, ITAR) verwenden, geben Sie Ihre regionale Plattform bitte mit dem Flag -X in Ihrem CLI-Befehl an. Beispiel:

PLATTFORMCLI-BEFEHL
EUrescale-cli -X https://eu.rescale.com senden -p -ich
Japanrescale-cli -X https://platform.rescale.jp senden -p -ich
Korearescale-cli -X https://kr.rescale.com senden -p -ich
ITARrescale-cli -X https://itar.rescale.com senden -p -ich

Das enthält die Befehle, die der Benutzer möglicherweise auf Rescale ausführen möchte. Es kann jede Art von .sh Shell-Skript, das über die Befehlszeile mit dem Befehl ./ Präfix. Unabhängig vom Skripttyp versucht die App, das Skript zu analysieren, um unbeabsichtigte Probleme im Zusammenhang mit der Umgebungseinrichtung und nicht unterstützten Befehlen zu minimieren. Die -p Flag wird verwendet, um das von Ihnen erstellte Rescale-API-Token wie gezeigt zu lesen werden auf dieser Seite erläutert.

Für die Verwendung der Rescale-CLI-Befehle muss jedes Mal der Rescale-API-Schlüssel verwendet werden. Da der API-Schlüssel eine lange Kombination aus Buchstaben und Zahlen ist, empfiehlt es sich, eine Umgebungsvariable zu erstellen und in Ihrem Profil zu speichern. So können Sie bei jeder Verwendung der Befehle bequem die API-Variable anstelle des eigentlichen Schlüssels verwenden. Alternativ können Sie mit Ihrem Profil eine Konfigurationsdatei erstellen, um CLI-Befehle ohne die Verwendung des API-Schlüssels zu verwenden. Befolgen Sie die folgenden Schritte, um entweder eine Umgebungsvariable oder eine Konfigurationsdatei mit Ihrem Profil zu erstellen:

Unter Linux

Festlegen der API-Schlüsselumgebungsvariable

  • Geben Sie auf Ihrem Terminal entweder vi ~/.bashrc OR vi ~/.bash_profile und drücken Sie ENTER.
  • Dadurch wird ein Terminal-Editor geöffnet, in den Sie Folgendes eingeben können: export RESCALE_API_KEY=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
  • Wenn Sie mit der Eingabe fertig sind, drücken Sie zuerst ESC und geben Sie dann ein :wq um die Änderungen zu speichern.
  • Sie können die Variable testen, indem Sie die Variable anzeigen mit echo $RESCALE_API_KEY. Dadurch wird der Rescale-API-Schlüssel auf dem Terminal angezeigt.

Verwenden von Profilen in einer Konfigurationsdatei

  • Standardmäßig sucht die CLI nach der Profildatei in ~/.config/rescale/apiconfig. Erstellen Sie als ersten Schritt ein Rescale-Verzeichnis mkdir ~/.config/rescale. Als nächstes erstellen Sie die Konfigurationsdatei vi ~/.config/rescale/apiconfig und fügen Sie den folgenden Inhalt hinzu:
[default]
apikey = XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Die CLI verwendet die [default] Profil automatisch. Ein anderes benanntes Profil kann mithilfe der --profile Befehlszeilenargument. Es ist auch möglich, einen anderen Konfigurationsdateipfad zu verwenden, indem Sie den RESCALE_CONFIG_FILE Umgebungsvariable auf den gewünschten Pfad.

Wenn ein Benutzer mehrere Profile für verschiedene Plattformen verwendet, muss er die URL zu diesen Plattformen in der API-Konfiguration wie folgt angeben:

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

[eu]

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


Unter Windows

Festlegen der API-Schlüsselumgebungsvariable

  • Geben Sie auf Ihrem Terminal Folgendes ein: set RESCALE_API_KEY=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
  • Sie können überprüfen, ob der API-Schlüssel zu den Umgebungsvariablen hinzugefügt wurde, indem Sie Folgendes eingeben: echo %RESCALE_API_KEY%

Dies sollte den von Ihnen hinzugefügten API-Schlüssel anzeigen.

Verwenden von Profilen in einer Konfigurationsdatei

Standardmäßig sucht die CLI nach der Profildatei in %USERPROFILE%.configrescaleapiconfigNavigieren Sie zunächst zu Ihrem %USERPROFILE% Verzeichnis. Erstellen Sie einen Ordner .config und einem rescale Ordner darunter. Innerhalb .configrescale, öffnen Sie den Notizblock und fügen Sie den folgenden Inhalt hinzu:

[default]
apikey = XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Geben Sie beim Speichern der Datei den Dateinamen als "apiconfig" (Mit den doppelten Anführungszeichen, um es ohne Dateierweiterung zu speichern) und speichern unter Alle Dateien Art.

Die CLI verwendet die [default] Profil automatisch. Ein anderes benanntes Profil kann mithilfe der --profile Befehlszeilenargument. Es ist auch möglich, einen anderen Konfigurationsdateipfad zu verwenden, indem Sie den RESCALE_CONFIG_FILE Umgebungsvariable auf den gewünschten Pfad.

Wenn ein Benutzer mehrere Profile für verschiedene Plattformen verwendet, muss er die URL zu diesen Plattformen in der API-Konfiguration wie folgt angeben:

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

[eu]

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

Schauen wir uns ein sehr einfaches Beispiel an.

Um einen „Hello World!“-Job auszuführen, erstellen Sie in einem Shell-Terminal (z. B. unter Linux, MacOS oder Cygwin) ein neues Ausführungsverzeichnis. Erstellen Sie mit dem Texteditor Ihrer Wahl eine submit.sh Eingabeübermittlungsskript mit:

#!/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

Hinweis: Achten Sie beim Kopieren des obigen Skripts darauf, dass nach den Umgebungsvariablen keine Leerzeichen stehen.

Senden Sie den Auftrag, indem Sie den folgenden Befehl in Ihrem Terminalfenster ausführen:

rescale-cli submit -i submit.sh

Dadurch wird ein neues Gruppe und senden Sie die Aufträge mit den Befehlen aus dem Skript. Der Benutzer kann sich nun bei der Rescale-Web-Benutzeroberfläche anmelden, um den Auftrag zu verfolgen und zu überwachen. Die Auftragsliste zeigt den Auftrag wie folgt an: "Hallo Welt"

Auftrag übermittelt

Auf der Statusseite wird der Fortschritt des Auftrags angezeigt und die Dateien können innerhalb der Benutzeroberfläche durch Klicken auf die Datei verfolgt werden:

Auftrag übermittelt

Das Protokoll sieht ungefähr so aus:

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.