Du führst deinen ersten Job am AWS ParallelCluster - AWS ParallelCluster

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Du führst deinen ersten Job am AWS ParallelCluster

In diesem Tutorial erfahren Sie, wie Sie Ihren ersten Hello World-Job am ausführen AWS ParallelCluster.

Voraussetzungen

Überprüfen der Installation

Zunächst überprüfen wir, ob die Installation und Konfiguration korrekt AWS ParallelCluster ist.

$ pcluster version

Dies gibt die laufende Version von zurück AWS ParallelCluster. Wenn Sie in der Ausgabe eine Meldung zur Konfiguration erhalten, müssen Sie zur Konfiguration Folgendes ausführen AWS ParallelCluster:

$ pcluster configure

Erstellen Sie Ihren ersten Cluster

Jetzt ist es an der Zeit, Ihren ersten Cluster zu erstellen. Da die Workload für dieses Tutorial nicht leistungsintensiv ist, können wir die Standard-Instance-Größe t2.micro verwenden. (Für Produktions-Workloads wählen Sie eine Instance-Größe, die Ihren Anforderungen am ehesten entspricht.)

Nennen Sie Ihren Cluster „hello-world“.

$ pcluster create hello-world

Wenn der Cluster erstellt wurde, wird eine Ausgabe ähnlich der Folgenden angezeigt:

Starting: hello-world Status: parallelcluster-hello-world - CREATE_COMPLETE MasterPublicIP = 54.148.x.x ClusterUser: ec2-user MasterPrivateIP = 192.168.x.x GangliaPrivateURL = http://192.168.x.x/ganglia/ GangliaPublicURL = http://54.148.x.x/ganglia/

Die Nachricht CREATE_COMPLETE zeigt, dass der Cluster erfolgreich erstellt wurde. Die Ausgabe liefert uns auch die öffentlichen und privaten IP-Adressen unseres Hauptknotens. Diese IP-Adresse benötigen wir für die Anmeldung.

Loggen Sie sich in Ihren Headnode ein

Verwenden Sie Ihre OpenSSH-PEM-Datei, um sich bei Ihrem Headnode anzumelden.

pcluster ssh hello-world -i /path/to/keyfile.pem

Sobald Sie angemeldet sind, führen Sie den Befehl qhost aus, um zu bestätigen, dass Ihre Datenverarbeitungsknoten eingerichtet und konfiguriert sind.

$ qhost HOSTNAME ARCH NCPU NSOC NCOR NTHR LOAD MEMTOT MEMUSE SWAPTO SWAPUS ---------------------------------------------------------------------------------------------- global - - - - - - - - - - ip-192-168-1-125 lx-amd64 2 1 2 2 0.15 3.7G 130.8M 1024.0M 0.0 ip-192-168-1-126 lx-amd64 2 1 2 2 0.15 3.7G 130.8M 1024.0M 0.0

Sie Ausgabe zeigt, dass wir zwei Datenverarbeitungsknoten in unserem Cluster haben. Beiden stehen zwei Threads zur Verfügung.

Führen Sie Ihren ersten Job aus mit SGE

Anmerkung

Dieses Beispiel gilt nur für AWS ParallelCluster Versionen bis einschließlich Version 2.11.4. Ab Version 2.11.5 wird die Verwendung von AWS ParallelCluster nicht unterstützt SGE or Torque Scheduler.

Als Nächstes erstellen wir eine Aufgabe, die einen Moment inaktiv ist und dann ihren eigenen Hostnamen ausgibt.

Erstellen Sie eine Datei mit dem Namen hellojob.sh und den folgenden Inhalten:

#!/bin/bash sleep 30 echo "Hello World from $(hostname)"

Als Nächstes übermitteln Sie die Aufgabe mit qsub und überprüfen, dass sie ausgeführt wird.

$ qsub hellojob.sh Your job 1 ("hellojob.sh") has been submitted

Jetzt können Sie Ihre Warteschlange anzeigen und den Status der Aufgabe überprüfen.

$ qstat job-ID prior name user state submit/start at queue slots ja-task-ID ----------------------------------------------------------------------------------------------------------------- 1 0.55500 hellojob.s ec2-user r 03/24/2015 22:23:48 all.q@ip-192-168-1-125.us-west 1

Die Ausgabe zeigt, dass die Aufgabe zurzeit ausgeführt wird. Warten Sie 30 Sekunden, bis die Aufgabe beendet wird, und führen Sie qstat dann erneut aus.

$ qstat $

Jetzt, wo sich keine Aufgaben in der Warteschlange befinden, können wir die Ausgabe in unserem aktuellen Verzeichnis überprüfen.

$ ls -l total 8 -rw-rw-r-- 1 ec2-user ec2-user 48 Mar 24 22:34 hellojob.sh -rw-r--r-- 1 ec2-user ec2-user 0 Mar 24 22:34 hellojob.sh.e1 -rw-r--r-- 1 ec2-user ec2-user 34 Mar 24 22:34 hellojob.sh.o1

In der Ausgabe sehen wir in unserem Job-Skript eine Datei „e1“ und eine Datei „o1“. Da die e1 Datei leer ist, gab es keine Ausgabe auf stderr. Wenn wir die Datei o1 anzeigen, können wir die Ausgabe unserer Aufgabe anzeigen.

$ cat hellojob.sh.o1 Hello World from ip-192-168-1-125

Die Ausgabe zeigt auch, dass die Aufgabe auf Instance ip-192-168-1-125 erfolgreich ausgeführt wurde.

Weitere Informationen zum Erstellen und Verwenden von Clustern finden Sie unter. Bewährte Methoden