Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Ejecución del primer trabajo en AWS ParallelCluster
Este tutorial le guía por la ejecución de su primer trabajo Hello World en AWS ParallelCluster.
Requisitos previos
-
AWS ParallelCluster está instalado.
-
LaAWS CLI esté instalado y configurado.
-
Tiene unEC2 key pair (Par de claves de EC2).
-
Tiene una función de IAM en elPermisos denecesario que esté instalado para ejecutar elpclusterCLIM.
Comprobación de la instalación
En primer lugar, comprobamos que AWS ParallelCluster esté instalado y configurado correctamente.
$
pcluster version
Esto devuelve la versión en ejecución de AWS ParallelCluster. Si recibe un mensaje del resultado sobre la configuración, tiene que ejecutar lo siguiente para configurarAWS ParallelCluster:
$
pcluster configure
Creación de su primer clúster
Ahora ha llegado el momento de crear su primer clúster. Debido a que la carga de trabajo de este tutorial no es excesiva, podemos usar el tamaño de instancia predeterminado de t2.micro
. (Para las cargas de trabajo de producción, puede elegir el tamaño de instancia que mejor se adapte a sus necesidades).
Llamemos a su clúster hello-world.
$
pcluster create hello-world
Al crearse el clúster, verá un resultado parecido al siguiente:
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/
El mensaje CREATE_COMPLETE
muestra que el clúster se ha creado correctamente. El resultado también nos proporciona las direcciones IP públicas y privadas de nuestro nodo principal. Necesitamos esta IP para iniciar sesión.
Iniciar sesión en el nodo principal
Utilice su archivo pem de OpenSSH para iniciar sesión en el nodo principal.
pcluster ssh hello-world -i /path/to/keyfile.pem
Después de iniciar sesión, ejecute el comando qhost
para comprobar que sus nodos de computación se instalan y configuran.
$
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
El resultado muestra que tenemos dos nodos de computación en nuestro clúster, ambos con subprocesos disponibles.
Ejecución de su primer trabajo con SGE
Este ejemplo solo se aplica aAWS ParallelClusterversiones hasta la versión 2.11.4 incluida. A partir de la versión 2.11.5,AWS ParallelClusterno admite el uso deSGEoTorqueprogramadores.
A continuación, creamos un trabajo que entra en suspensión durante un tiempo y luego genera su propio nombre de host.
Cree un archivo denominado hellojob.sh
con el siguiente contenido.
#!/bin/bash sleep 30 echo "Hello World from $(hostname)"
A continuación, envíe el trabajo mediante qsub
y compruebe que se ejecuta.
$
qsub hellojob.sh
Your job 1 ("hellojob.sh") has been submitted
Ahora puede ver la cola y comprobar el estado del trabajo.
$
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
El resultado muestra que el trabajo se encuentra actualmente en estado de ejecución. Espere 30 segundos a que el trabajo se termine y, a continuación, vuelva a ejecutar qstat
.
$
qstat
$
Ahora que no hay trabajos en la cola, podemos comprobar el resultado en nuestro directorio actual.
$
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
En el resultado, vemos un archivo "e1
" y "o1
" en nuestro script de trabajo. Ya que lae1
está vacío, stderr no ha generado respuesta. Si vemos el archivo o1
, podemos ver el resultado que nuestro trabajo ha generado.
$
cat hellojob.sh.o1
Hello World from ip-192-168-1-125
El resultado también muestra que nuestro trabajo se ha ejecutado correctamente en la instancia ip-192-168-1-125
.
Para obtener más información sobre la creación y el uso de clústeres, consultePrácticas recomendadas.