AWS ParallelCluster Guía del usuario de AWS ParallelCluster

AWS ParallelCluster: Guía del usuario de AWS ParallelCluster Copyright © Amazon Web Services, Inc. and/or its affiliates. All rights reserved. AWS ParallelCluster Guía del usuario de AWS ParallelCluster

Las marcas comerciales y la imagen comercial de Amazon no se pueden utilizar en relación con ningún producto o servicio que no sea de Amazon de ninguna manera que pueda causar confusión entre los clientes y que menosprecie o desacredite a Amazon. Todas las demás marcas comerciales que no son propiedad de Amazon son propiedad de sus respectivos propietarios, que pueden o no estar afiliados, conectados o patrocinados por Amazon. AWS ParallelCluster Guía del usuario de AWS ParallelCluster

Table of Contents

¿Qué es AWS ParallelCluster? ...... 1 AWS ParallelClusterversión 3 ...... 2 Configuración de AWS ParallelCluster ...... 2 Instalar AWS ParallelCluster ...... 2 Pasos a seguir después de la instalación ...... 4 Configuración de AWS ParallelCluster ...... 5 Prácticas recomendadas ...... 10 Trasladarse desdeAWS ParallelCluster2.x a 3.x ...... 11 Regiones compatibles conAWS ParallelClusterVersión 3 ...... 19 Uso AWS ParallelCluster ...... 19 AWS Identity and Access Managementroles enAWS ParallelCluster3.x ...... 20 Configuraciones de red ...... 39 Acciones de arranque personalizadas ...... 45 Programadores admitidos por AWS ParallelCluster ...... 47 Configuración de varias colas ...... 60 AWS ParallelClusterAPI de ...... 61 Connect al nodo director a través de NICE DCV ...... 67 Uso pcluster update-cluster ...... 67 Referencia de la paraAWS ParallelCluster ...... 70 AWS ParallelClusterComandos CLI de versión 3 ...... 70 Archivos de configuración ...... 89 Tutorials ...... 132 Ejecución del primer trabajo en AWS ParallelCluster ...... 132 Creación de una AMI de AWS ParallelCluster personalizada ...... 134 Solución de problemas de AWS ParallelCluster ...... 138 Recuperación y conservación de registros ...... 139 Solución de problemas de implementación de clúster ...... 139 Solución de problemas de escalado ...... 143 Grupos de ubicación y problemas de lanzamiento de instancias ...... 146 Directorios que no se pueden reemplazar ...... 147 Solución de problemas en NICE DCV ...... 147 Solución de problemas de clústeres conAWS Batchintegration ...... 147 Soporte adicional ...... 147 AWS ParallelClusterversión 2 ...... 148 Configuración de AWS ParallelCluster ...... 148 Instalar AWS ParallelCluster ...... 148 Configuración de AWS ParallelCluster ...... 158 Prácticas recomendadas ...... 163 Transferir desde CfnCluster hasta AWS ParallelCluster ...... 164 Regiones admitidas ...... 165 Uso AWS ParallelCluster ...... 166 Configuraciones de red ...... 166 Acciones de arranque personalizadas ...... 170 Trabajo con Amazon S3 ...... 173 Uso de Instancias de spot ...... 173 AWS Identity and Access Managementroles enAWS ParallelCluster ...... 175 Programadores admitidos por AWS ParallelCluster ...... 199 Modo de cola múltiple ...... 213 Panel de Amazon CloudWatch ...... 214 Integración con Amazon CloudWatch Logs ...... 214 Elastic Fabric Adapter ...... 215 Soluciones Intel Select ...... 216 Habilitar Intel MPI ...... 217 Especificación de plataforma Intel HPC ...... 218

iii AWS ParallelCluster Guía del usuario de AWS ParallelCluster

Librerías de rendimiento de ...... 218 Connect al nodo director a través de NICE DCV ...... 219 Uso pcluster update ...... 220 Comandos de la CLI de AWS ParallelCluster ...... 222 pcluster ...... 222 pcluster-config ...... 235 Configuration ...... 171 Layout ...... 236 Sección [global] ...... 237 Sección [aws] ...... 238 Sección [aliases] ...... 238 Sección [cluster] ...... 239 Sección [compute_resource] ...... 259 Sección [cw_log] ...... 261 Sección [dashboard] ...... 262 Sección [dcv] ...... 263 Sección [ebs] ...... 264 Sección [efs] ...... 268 Sección [fsx] ...... 271 Sección [queue] ...... 281 Sección [raid] ...... 283 Sección [scaling] ...... 288 Sección [vpc] ...... 288 Examples ...... 173 Cómo funciona AWS ParallelCluster ...... 293 AWS ParallelClusterProcesos ...... 293 AWSServicios utilizados porAWS ParallelCluster ...... 298 Auto Scaling de AWS ParallelCluster ...... 302 Tutorials ...... 304 Ejecución del primer trabajo en AWS ParallelCluster ...... 304 Creación de una AMI de AWS ParallelCluster personalizada ...... 306 Ejecución de un trabajo de MPI conAWS ParallelClusteryawsbatchprogramador ...... 309 Cifrado de disco con una clave KMS personalizada ...... 314 Modo de cola múltiple tutorial ...... 316 Development ...... 324 Configuración de unaAWS ParallelClusterlibro de recetas ...... 324 Configuración de unaAWS ParallelClusterpaquete de nodo ...... 325 Solución de problemas ...... 326 Recuperación y preservación de registros ...... 326 Solución de problemas de implementación de ...... 327 Solución de problemas en varios clústeres de modo de cola ...... 327 Solución de problemas en clústeres de modo de cola única ...... 331 Grupos de ubicación y problemas de lanzamiento de instancias ...... 333 Directorios que no se pueden reemplazar ...... 333 Solución de problemas en NICE DCV ...... 333 Solución de problemas en clústeres conAWS Batchintegration ...... 334 Soporte adicional ...... 334 AWS ParallelClusterPolítica de compatibilidad ...... 335 Seguridad ...... 336 Información de seguridad para los servicios utilizados porAWS ParallelCluster ...... 336 Protección de los datos ...... 337 Cifrado de datos ...... 338 Véase también ...... 338 Identity and Access Management ...... 339 Validación de la conformidad ...... 339 Aplicación de TLS 1.2 ...... 340 Determinar los protocolos admitidos actualmente ...... 340

iv AWS ParallelCluster Guía del usuario de AWS ParallelCluster

Compilar OpenSSL y Python ...... 341 Historial de revisión ...... 343 ...... ccclxv

v AWS ParallelCluster Guía del usuario de AWS ParallelCluster

¿Qué es AWS ParallelCluster?

AWS ParallelClusteres unAWSUna herramienta de administración de clústeres de código abierto compatible con la herramienta de administración de clústeres de informática de alto rendimiento (HPC) en el Nube de AWS . Basado en el proyecto CFNCluster de código abierto,AWS ParallelClusterpermite crear con rapidez un entorno informático de HPC enAWS. Configura automáticamente los recursos informáticos y el sistema de archivos compartido. Puede usarAWS ParallelClustercon programadores por lotes, comoAWS BatchySlurm.AWS ParallelClusterfacilita el inicio rápido de las implementaciones de prueba de concepto y las implementaciones de producción. También puede crear flujos de trabajo de nivel superior como, por ejemplo, un portal de genómica que automatice el flujo de trabajo completo de la secuenciación del ADN encima de AWS ParallelCluster.

1 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Configuración de AWS ParallelCluster

AWS ParallelClusterversión 3

Temas • Configuración de AWS ParallelCluster (p. 2) • Uso AWS ParallelCluster (p. 19) • Referencia de la paraAWS ParallelCluster (p. 70) • Tutorials (p. 132) • Solución de problemas de AWS ParallelCluster (p. 138)

Configuración de AWS ParallelCluster

Temas • Instalar AWS ParallelCluster (p. 2) • Pasos a seguir después de la instalación (p. 4) • Configuración de AWS ParallelCluster (p. 5) • Prácticas recomendadas (p. 10) • Trasladarse desdeAWS ParallelCluster2.x a 3.x (p. 11) • Regiones compatibles conAWS ParallelClusterVersión 3 (p. 19)

Instalar AWS ParallelCluster

AWS ParallelClusterse distribuye como un paquete de Python y se instala mediantepip, el administrador de paquetes de Python. Para obtener más información acerca de la instalación de paquetes de Python, consulteInstalación de paquetesen laGuía del usuario del paquete Python.

Formas de instalar AWS ParallelCluster:

• InstallAWS ParallelClusterEn un entorno virtual (recomendado) (p. 2) • InstalaciónAWS ParallelClusterMediante un entorno no virtual mediante pip (p. 4)

Puede encontrar el número de versión de la CLI más reciente en la página de versiones de GitHub. En esta guía, los comandos de ejemplo dan por hecho que ha instalado una versión de Python >= 3.6. Los comandos de ejemplo pip utilizan la versión pip3.

Gestionar ambosAWS ParallelCluster2 yAWS ParallelCluster3

Para los clientes que utilizan tantoAWS ParallelCluster2 yAWS ParallelCluster3 y desea administrar los CLI para ambos paquetes, se recomienda instalarAWS ParallelCluster2 yAWS ParallelCluster3 en diferentesEntornos virtuales (p. 2). Esto garantiza que pueda continuar usando cada versión deAWS ParallelClustery cualquier recurso de clúster asociado. InstallAWS ParallelClusterEn un entorno virtual (recomendado)

Recomendamos que instaleAWS ParallelClusterEn un entorno virtual para evitar conflictos de versiones con otrospipPackages.

2 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Instalar AWS ParallelCluster

Prerequisites

• AWS ParallelClusterrequiere Python 3.6 o posterior. Si aún no lo ha hecho,Descargar una versión compatiblepara su plataforma enpython.org.

Para instalar AWS ParallelCluster en un entorno virtual

1. Si virtualenv no está instalado, instale virtualenv mediante pip3. Si python3 -m virtualenv help muestra información de ayuda, vaya al paso 2.

Linux, macOS, or Unix

$ python3 -m pip install --upgrade pip $ python3 -m pip install --user --upgrade virtualenv

Ejecute exit para salir de la ventana de terminal actual y abrir una nueva para detectar los cambios del entorno. 2. Cree un entorno virtual y asígnele un nombre.

Linux, macOS, or Unix

$ python3 -m virtualenv ~/apc-ve

También puede usar la opción -p para especificar una versión específica de Python.

$ python3 -m virtualenv -p $(which python3) ~/apc-ve

3. Active el entorno virtual nuevo.

Linux, macOS, or Unix

$ source ~/apc-ve/bin/activate

4. Instale AWS ParallelCluster en el entorno virtual.

Linux, macOS, or Unix

(apc-ve)~$ python3 -m pip install --upgrade "aws-parallelcluster"

5. Compruebe que AWS ParallelCluster está instalado correctamente.

Linux, macOS, or Unix

$ pcluster version { "version": "3.0.0" }

Puede utilizar el comando deactivate para salir del entorno virtual. Cada vez que inicie una sesión, debereactivar el entorno (p. 3).

Para actualizar a la versión más reciente de AWS ParallelCluster, ejecute el comando de instalación de nuevo.

3 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Pasos a seguir después de la instalación

Linux, macOS, or Unix

(apc-ve)~$ python3 -m pip install --upgrade "aws-parallelcluster"

InstalaciónAWS ParallelClusterMediante un entorno no virtual mediante pip

Prerequisites

• AWS ParallelClusterrequiere Python 3.6 o posterior. Si aún no lo ha hecho,Descargar una versión compatiblepara su plataforma enpython.org.

Instalar AWS ParallelCluster

1. Utilice pip para instalar AWS ParallelCluster.

$ python3 -m pip install "aws-parallelcluster" --upgrade --user

Cuando se utiliza el modificador --user, pip instala AWS ParallelCluster en ~/.local/bin. 2. Compruebe que AWS ParallelCluster está instalado correctamente.

$ pcluster version { "version": "3.0.0" }

3. Para actualizar a la versión más reciente, ejecute el comando de instalación de nuevo.

$ python3 -m pip install "aws-parallelcluster" --upgrade --user

Pasos a seguir después de la instalación

Instalar Node Version Manager y Node.js

Node.jses un nuevo requisito para elAWS ParallelClusterCLI, debido al uso de CDK para la generación de plantillas. A continuación se muestra cómo instalar Node.js:

$ curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.38.0/install.sh | bash $ chmod ug+x ~/.nvm/nvm.sh $ source ~/.nvm/nvm.sh $ nvm install node $ node --version

Puede comprobar que AWS ParallelCluster se ha instalado correctamente ejecutando pcluster version (p. 89).

$ pcluster version { "version": "3.0.0" }

4 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Configuración de AWS ParallelCluster

La AWS ParallelCluster se actualiza periódicamente. Para actualizar a la última versión de AWS ParallelCluster, ejecute el comando de instalación de nuevo. Para obtener información detallada sobre la última versión de AWS ParallelCluster, consulte las notas de la versión de AWS ParallelCluster.

$ pip3 install aws-parallelcluster --upgrade --user

Para desinstalar AWS ParallelCluster, utilice pip3 uninstall.

$ pip3 uninstall aws-parallelcluster

Si no dispone de Python ni pip3, utilice el procedimiento para su entorno. Configuración de AWS ParallelCluster

Una vez que instale AWS ParallelCluster, realice los siguientes pasos de configuración.

En primer lugar, configure suAWSCredenciales de . Para obtener más información, consulte Configuración de AWS CLI en la Guía del usuario de AWS CLI.

$ aws configure AWS Access Key ID [None]: AKIAIOSFODNN7EXAMPLE AWS Secret Access Key [None]: wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY Default region name [us-east-1]: us-east-1 Default output format [None]:

La región de en la que se lanzará el clúster debe tener al menos un key pair de Amazon EC2. Para obtener más información, consulte Pares de claves de Amazon EC2 en la Guía del usuario de Amazon EC2 para instancias Linux.

$ pcluster configure --config cluster-config.yaml

El asistente de configuración le pedirá toda la información necesaria para crear su clúster. Los detalles de la secuencia difieren cuando se utilizaAWS Batchcomo el programador en comparación con el uso deSlurm.

Slurm

De la lista de Región de AWS , elija la región de en la que desea que se ejecute el clúster. Note

La lista de Regiones que se muestra se basa en la partición de su cuenta y solo incluye Regiones habilitadas para su cuenta. Para obtener más información acerca de cómo habilitar las regiones de su cuenta, consulteAdministración Regiones de AWS en laAWSReferencia general de. El ejemplo que se muestra es delAWSPartición global. Si su cuenta se encuentra en el AWS GovCloud (US) , solo se enumeran las regiones de esa partición (gov-us- east-1ygov-us-west-1). Del mismo modo, si su cuenta se encuentra en elAWSPartición de China, sólocn-north-1ycn-northwest-1se muestran. Para obtener una lista completa de las regiones que admiteAWS ParallelCluster, consulteRegiones compatibles conAWS ParallelClusterVersión 3 (p. 19).

Allowed values for AWS Region ID: 1. af-south-1 2. ap-east-1 3. ap-northeast-1 4. ap-northeast-2 5. ap-south-1 6. ap-southeast-1 7. ap-southeast-2

5 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Configuración de AWS ParallelCluster

8. ca-central-1 9. eu-central-1 10. eu-north-1 11. eu-south-1 12. eu-west-1 13. eu-west-2 14. eu-west-3 15. me-south-1 16. sa-east-1 17. us-east-1 18. us-east-2 19. us-west-1 20. us-west-2

Región de AWS ID [ap-northeast-1]:

El key pair se selecciona entre los pares de claves registrados con Amazon EC2 en la región seleccionada. Elija el key pair:

Allowed values for EC2 Key Pair Name: 1. your-key-1 2. your-key-2 EC2 Key Pair Name [your-key-1]:

Elija el programador que desea utilizar con el clúster.

Allowed values for Scheduler: 1. slurm 2. awsbatch Scheduler [slurm]:

Elija el sistema operativo.

Allowed values for : 1. alinux2 2. centos7 3. ubuntu1804 4. ubuntu2004 Operating System [alinux2]:

Elija el tipo de instancia de nodo principal:

Head node instance type [t2.micro]:

Elija la configuración de la cola. Nota: No se puede especificar el tipo de instancia para varios recursos informáticos en la misma cola.

Number of queues [1]: Name of queue 1 [queue1]: Number of compute resources for queue1 [1]: 2 Compute instance type for compute resource 1 in queue1 [t2.micro]: Maximum instance count [10]: Compute instance type for compute resource 2 in queue1 [t2.micro]: t3.micro Maximum instance count [10]:

Una vez completados los pasos anteriores, decida si desea utilizar una VPC existente o dejar que AWS ParallelCluster cree una VPC por usted. Si no tiene una VPC configurada correctamente, AWS ParallelCluster puede crear una nueva. Utiliza tanto los nodos principal como de computación

6 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Configuración de AWS ParallelCluster

de la misma subred pública, o solo el nodo principal en una subred pública con todos los nodos en una subred privada. Es posible alcanzar el límite de número de VPC en una región. El límite predeterminado es de cinco VPC para cada región. Para obtener más información acerca de este límite y cómo solicitar un incremento, consulteVPC y subredesen laAmazon VPC User Guide.

Si le permiteAWS ParallelClusterCree una VPC, debe decidir si todos los nodos deben estar en una subred pública. Important

VPC creadas porAWS ParallelClusterno habilitan los registros de flujo de VPC de forma predeterminada. Los logs de flujo de VPC permiten capturar información acerca del tráfico IP entrante y saliente de las interfaces de red de las VPC. Para obtener más información, consulte Logs de flujo de VPC en la Guía del usuario de Amazon VPC.

Automate VPC creation? (y/n) [n]: y Allowed values for Availability Zone: 1. us-east-1a 2. us-east-1b 3. us-east-1c 4. us-east-1d 5. us-east-1e 6. us-east-1f Availability Zone [us-east-1a]: Allowed values for Network Configuration: 1. Head node in a public subnet and compute fleet in a private subnet 2. Head node and compute fleet in the same public subnet Network Configuration [Head node in a public subnet and compute fleet in a private subnet]: 1 Beginning VPC creation. Please do not leave the terminal until the creation is finalized

Si no crea una VPC nueva, debe seleccionar una VPC existente

Automate VPC creation? (y/n) [n]: n Allowed values for VPC ID: # id name number_of_subnets ------1 vpc-0b4ad9c4678d3c7ad ParallelClusterVPC-20200118031893 2 2 vpc-0e87c753286f37eef ParallelClusterVPC-20191118233938 5 VPC ID [vpc-0b4ad9c4678d3c7ad]: 1

Una vez seleccionada la VPC, debe decidir si desea utilizar subredes existentes o crear nuevas.

Automate Subnet creation? (y/n) [y]: y

Creating CloudFormation stack... Do not leave the terminal until the process has finished

AWS Batch

De la lista de Región de AWS , elija la región de en la que desea que se ejecute el clúster. Note

La lista de Regiones que se muestra se basa en la partición de su cuenta y solo incluye Regiones habilitadas para su cuenta. Para obtener más información acerca de cómo habilitar las regiones de su cuenta, consulteAdministración Regiones de AWS en laAWSReferencia general de. El ejemplo que se muestra es delAWSPartición global. Si su cuenta se encuentra en el AWS GovCloud (US) , solo se enumeran las regiones de esa partición (gov-us- east-1ygov-us-west-1). Del mismo modo, si su cuenta se encuentra en elAWSPartición

7 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Configuración de AWS ParallelCluster

de China, sólocn-north-1ycn-northwest-1se muestran. Para obtener una lista completa de las regiones que admiteAWS ParallelCluster, consulteRegiones compatibles conAWS ParallelClusterVersión 3 (p. 19).

Allowed values for AWS Region ID: 1. af-south-1 2. ap-east-1 3. ap-northeast-1 4. ap-northeast-2 5. ap-south-1 6. ap-southeast-1 7. ap-southeast-2 8. ca-central-1 9. eu-central-1 10. eu-north-1 11. eu-south-1 12. eu-west-1 13. eu-west-2 14. eu-west-3 15. me-south-1 16. sa-east-1 17. us-east-1 18. us-east-2 19. us-west-1 20. us-west-2 AWS Region ID [us-east-1]:

El key pair se selecciona entre los pares de claves registrados con Amazon EC2 en la región seleccionada. Elija el key pair:

Allowed values for EC2 Key Pair Name: 1. your-key-1 2. your-key-2 EC2 Key Pair Name [your-key-1]:

Elija el programador que desea utilizar con el clúster.

Allowed values for Scheduler: 1. slurm 2. awsbatch Scheduler [slurm]: 2

Cuando awsbatch se selecciona como programador, alinux2 se utiliza como sistema operativo. Se especifica el tipo de instancia del nodo principal:

Head node instance type [t2.micro]:

Elija la configuración de la cola. Nota: LaAWS Batchsólo contienen una sola cola. Se especifica el tamaño mínimo y máximo del clúster de nodos de computación. Esto se mide en número de vCPU.

Number of queues [1]: Name of queue 1 [queue1]: Maximum vCPU [10]:

Decida si desea utilizar VPC existentes o dejar que AWS ParallelCluster las cree por usted. Si no tiene una VPC configurada correctamente, AWS ParallelCluster puede crear una nueva. Utiliza tanto los nodos principal como de computación de la misma subred pública, o solo el nodo principal en una subred pública con todos los nodos en una subred privada. Es posible alcanzar el límite de número de VPC en una región. El número predeterminado de VPC es cinco. Para obtener más información

8 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Configuración de AWS ParallelCluster

acerca de este límite y cómo solicitar un incremento, consulteVPC y subredesen laAmazon VPC User Guide. Important

VPC creadas porAWS ParallelClusterno habilitan los registros de flujo de VPC de forma predeterminada. Los logs de flujo de VPC permiten capturar información acerca del tráfico IP entrante y saliente de las interfaces de red de las VPC. Para obtener más información, consulte Logs de flujo de VPC en la Guía del usuario de Amazon VPC.

Si le permiteAWS ParallelClusterCree una VPC, decida si todos los nodos deben estar en una subred pública.

Automate VPC creation? (y/n) [n]: y Allowed values for Availability Zone: 1. us-east-1a 2. us-east-1b 3. us-east-1c 4. us-east-1d 5. us-east-1e 6. us-east-1f Availability Zone [us-east-1a]: Allowed values for Network Configuration: 1. Head node in a public subnet and compute fleet in a private subnet 2. Head node and compute fleet in the same public subnet Network Configuration [Head node in a public subnet and compute fleet in a private subnet]: *1* Beginning VPC creation. Please do not leave the terminal until the creation is finalized

Si no crea una VPC nueva, debe seleccionar una VPC existente

Automate VPC creation? (y/n) [n]: n Allowed values for VPC ID: # id name number_of_subnets ------1 vpc-0b4ad9c4678d3c7ad ParallelClusterVPC-20200118031893 2 2 vpc-0e87c753286f37eef ParallelClusterVPC-20191118233938 5 VPC ID [vpc-0b4ad9c4678d3c7ad]: 1

Una vez seleccionada la VPC, debe decidir si desea utilizar subredes existentes o crear nuevas.

Automate Subnet creation? (y/n) [y]: y

Creating CloudFormation stack... Do not leave the terminal until the process has finished

Una vez completados los pasos anteriores, un clúster sencillo se lanzará en una VPC. La VPC utiliza una subred existente que admite direcciones IP públicas. La tabla de ruteo de la subred es0.0.0.0/0 => igw-xxxxxx. Tenga en cuenta las condiciones siguientes:

• La VPC debe tener DNS Resolution = yes y DNS Hostnames = yes. • La VPC también deben tener las opciones de DHCP con el domain-name correcto para la región. El conjunto de opciones de DHCP predeterminado ya especifica el AmazonProvidedDNS necesario. Si especifica más de un servidor de nombres de dominio, consulteConjuntos de opciones de DHCPen laAmazon VPC User Guide. Cuando utilice subredes privadas, utilice una gateway NAT o un proxy interno para habilitar el acceso web a los nodos de computación. Para obtener más información, consulte Configuraciones de red (p. 39).

9 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Prácticas recomendadas

Cuando todas las opciones tengan valores válidos, podrá lanzar el clúster ejecutando el comando create.

$ pcluster create-cluster --cluster-name test-cluster --cluster-configuration cluster- config.yaml { "cluster": { "clusterName": "test-cluster", "cloudformationStackStatus": "CREATE_IN_PROGRESS", "cloudformationStackArn": "arn:aws:cloudformation:eu-west-1:xxx:stack/test- cluster/44427f50-e892-11eb-8a89-026e4ef1fdab", "region": "eu-west-1", "version": "3.0.0", "clusterStatus": "CREATE_IN_PROGRESS" }, "validationMessages": [] }

Seguir los progresos del clúster:

$ pcluster describe-cluster --cluster-name test-cluster o bien

$ pcluster list-clusters --query 'items[?clusterName==`test-cluster`]'

Después de que el clúster llegue a la"clusterStatus": "CREATE_COMPLETE"Puede conectarse a él utilizando su configuración del cliente de SSH normal. Para obtener más información acerca de cómo conectarse a instancias Amazon EC2, consulte laGuía del usuario de EC2en laGuía del usuario de Amazon EC2 para instancias de Linux. O puede conectar el clúster a través de

$ pcluster ssh --cluster-name test-cluster

Sipcluster configure (p. 73)creó una nueva VPC, puede eliminar esa VPC eliminando laAWS CloudFormationpila que creó. El nombre comenzará con «parallelclusternetworking-» y contendrá el tiempo de creación en un formato «AAAAMMDDHHMMSS». Puede enumerar las pilas utilizando la herramientalist-stackscomando.

$ aws --region us-east-2 cloudformation list-stacks \ --stack-status-filter "CREATE_COMPLETE" \ --query "StackSummaries[].StackName" | \ grep -e "parallelclusternetworking-""parallelclusternetworking-pubpriv-20191029205804"

La pila se puede eliminar usando la herramientadelete-stackcomando.

$ aws --region us-west-2 cloudformation delete-stack \ --stack-name parallelclusternetworking-pubpriv-20191029205804

Prácticas recomendadas Prácticas recomendadas: selección del tipo de instancia de nodo principal

Aunque el nodo principal no ejecuta ningún trabajo, sus funciones y su tamaño son cruciales para el rendimiento general del clúster. Al elegir el tipo de instancia que se va a utilizar para el nodo principal, desea evaluar los siguientes elementos:

10 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Trasladarse desdeAWS ParallelCluster2.x a 3.x

Tamaño del clúster:el nodo principal orquesta la lógica de escalado del clúster y es responsable de adjuntar nuevos nodos al programador. Si necesita escalar hacia arriba y hacia abajo el clúster de una cantidad considerable de nodos, entonces desea darle al nodo principal una capacidad de cálculo adicional.

Sistemas de archivos compartidos:cuando utilice sistemas de archivos compartidos para compartir artefactos entre los nodos de cálculo y el nodo principal, tenga en cuenta que el nodo principal es el nodo que expone el servidor NFS. Por este motivo, desea elegir un tipo de instancia con suficiente ancho de banda de red y suficiente ancho de banda dedicado de Amazon EBS para gestionar sus flujos de trabajo. Prácticas recomendadas: rendimiento de la red

El rendimiento de red es fundamental para garantizar que las aplicaciones de informática de alto rendimiento (HPC) funcionen como se esperaba. Recomendamos estas tres prácticas recomendadas para optimizar el rendimiento de la red.

• Grupo de ubicación:Un grupo de ubicación en clúster es una agrupación lógica de instancias en una misma zona de disponibilidad. Para obtener más información acerca de los grupos de ubicación, consulteGrupos de ubicaciónen laGuía del usuario de Amazon EC2 para instancias de Linux. Si está usandoSlurm, puede configurar cadaSlurmpara utilizar un grupo de ubicación de clúster especificando unaPlacementGroupen elNetworking (p. 106)Configuración del .

Networking: PlacementGroup: Enabled: true Id: your-placement-group-name

O dejeAWS ParallelClusterCree un grupo de ubicación con:

Networking: PlacementGroup: Enabled: true

Para obtener más información, consulte Networking (p. 106). • Redes mejoradas:considere la posibilidad de elegir un tipo de instancia que admita redes mejoradas. Esto se aplica a todosInstancias de generación actual. Para obtener más información, consulteRedes mejoradas en Linuxen laGuía del usuario de Amazon EC2 para instancias de Linux. • Ancho de banda de instancia:el ancho de banda se escala con el tamaño de la instancia, considere elegir el tipo de instancia que mejor se adapte a sus necesidades, consulteInstancias optimizadas para Amazon EBSyTipos de volúmenes de Amazon EBSen laGuía del usuario de Amazon EC2 para instancias de Linux.

Trasladarse desdeAWS ParallelCluster2.x a 3.x Acciones de arranque personalizadas

AWS ParallelCluster3 le permite especificar diferentes secuencias de comandos de acciones de arranque personalizadas para el nodo principal y los nodos de cálculo utilizandoOnNodeStart(pre_installen ParallelCluster versión 2) yOnNodeConfigured(post_installen ParallelCluster versión 2) en elHeadNode (p. 91)yScheduling/SlurmQueues (p. 100)Secciones. ConsulteAcciones de arranque personalizadas (p. 45)Para obtener más información.

Secuencias de acciones de arranque personalizadas desarrolladas paraAWS ParallelCluster2 necesitan ser adaptados para ser utilizados enAWS ParallelCluster3:

11 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Trasladarse desdeAWS ParallelCluster2.x a 3.x

• con/etc/parallelcluster/cfnconfigycfn_node_typepara diferenciar entre los nodos de cabeza y de cálculo. En su lugar, se recomienda especificar dos secuencias de comandos diferentes en elHeadNodeyScheduling/SlurmQueues sections. • si prefieres continuar cargando/etc/parallelcluster/cfnconfigpara su uso en el script de acciones de arranque, tenga en cuenta el valor decfn_node_typeha sido cambiado de «MasterServer» a «HeadNode» (consulte:Idioma inclusivo (p. 16)). • enAWS ParallelCluster2 el primer argumento de entrada para los scripts de acción de arranque fue la URL de S3 para el script y fue reservado. EnAWS ParallelCluster3, sólo los argumentos configurados en la configuración se pasan a los scripts.

Warning

El uso de variables internas proporcionadas a través del/etc/parallelcluster/ cfnconfigno se admite oficialmente. Este archivo se puede quitar como parte de una versión futura. AWS ParallelCluster2.x y 3.x utilizan una sintaxis diferente del archivo de configuración

AWS ParallelClusterLa configuración 3.x utiliza la sintaxis YAML, su referencia completa se puede encontrar enArchivos de configuración (p. 89).

Además de requerir un formato de archivo YAML, se han actualizado varias secciones de configuración, ajustes y valores de parámetros enAWS ParallelCluster3.x Aquí observamos los cambios clave en elAWS ParallelClusterjunto con ejemplos paralelos que ilustran estas diferencias en cada versión deAWS ParallelCluster.

Ejemplo de configuración de varias colas de programador con hiperthreading habilitado y deshabilitado

AWS ParallelCluster2:

[cluster default] queue_settings = ht-enabled, ht-disabled ...

[queue ht-enabled] compute_resource_settings = ht-enabled-i1 disable_hyperthreading = false

[queue ht-disabled] compute_resource_settings = ht-disabled-i1 disable_hyperthreading = true

[compute_resource ht-enabled-i1] instance_type = c5n.18xlarge [compute_resource ht-disabled-i1] instance_type = c5.xlarge

AWS ParallelCluster3:

... : Scheduler: slurm SlurmQueues: - Name: ht-enabled Networking:

12 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Trasladarse desdeAWS ParallelCluster2.x a 3.x

SubnetIds: - compute_subnet_id ComputeResources: - Name: ht-enabled-i1 DisableSimultaneousMultithreading: true InstanceType: c5n.18xlarge - Name: ht-disabled Networking: SubnetIds: - compute_subnet_id ComputeResources: - Name: ht-disabled-i1 DisableSimultaneousMultithreading: false InstanceType: c5.xlarge

Ejemplo de nuevo FSx para la configuración del sistema de archivos

AWS ParallelCluster2:

[cluster default] fsx_settings = fsx ...

[fsx fsx] shared_dir = /shared-fsx storage_capacity = 1200 imported_file_chunk_size = 1024 import_path = s3://bucket export_path = s3://bucket/export_dir weekly_maintenance_start_time = 3:02:30 deployment_type = PERSISTENT_1 data_compression_type = LZ4

AWS ParallelCluster3:

... SharedStorage: - Name: fsx MountDir: /shared-fsx StorageType: FsxLustre FsxLustreSettings: StorageCapacity: 1200 ImportedFileChunkSize: 1024 ImportPath: s3://bucket ExportPath: s3://bucket/export_dir WeeklyMaintenanceStartTime: "3:02:30" DeploymentType: PERSISTENT_1 DataCompressionType: LZ4

Ejemplo de configuración de clúster que monta un FSx existente para el sistema de archivos Lustre

AWS ParallelCluster2:

[cluster default] fsx_settings = fsx ...

[fsx fsx] shared_dir = /shared-fsx fsx_fs_id = fsx_fs_id

13 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Trasladarse desdeAWS ParallelCluster2.x a 3.x

AWS ParallelCluster3:

... SharedStorage: - Name: fsx MountDir: /shared-fsx StorageType: FsxLustre FsxLustreSettings: FileSystemId: fsx_fs_id

Ejemplo de clúster con la pila de software de especificación de plataforma Intel HPC

AWS ParallelCluster2:

[cluster default] enable_intel_hpc_platform = true ...

AWS ParallelCluster3:

... AdditionalPackages: IntelSoftware: IntelHpcPlatform: true

Notas:

• La instalación del software de especificación de plataforma Intel HPC está sujeta a los términos y condiciones de laContrato de licencia para el usuario final Intel

Ejemplo de configuraciones de IAM personalizadas que incluyen: perfil de instancia, rol de instancia, políticas adicionales para instancias y el rol para las funciones lambda asociadas al clúster

AWS ParallelCluster2:

[cluster default] #!! additional_iam_policies = arn:aws:iam::aws:policy/ AmazonS3ReadOnlyAccess,arn:aws:iam::aws:policy/AmazonDynamoDBReadOnlyAccess ec2_iam_role = ec2_iam_role iam_lambda_role = lambda_iam_role ...

AWS ParallelCluster3:

... Iam: Roles: CustomLambdaResources: lambda_iam_role HeadNode: ... Iam: InstanceRole: ec2_iam_role Scheduling: Scheduler: slurm SlurmQueues: - Name: queue1 ... Iam:

14 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Trasladarse desdeAWS ParallelCluster2.x a 3.x

InstanceProfile: iam_instance_profile - Name: queue2 ... Iam: AdditionalIamPolicies: - Policy: arn:aws:iam::aws:policy/AmazonS3ReadOnlyAccess - Policy: arn:aws:iam::aws:policy/AmazonDynamoDBReadOnlyAccess

Notas:

• ParaAWS ParallelCluster2 la configuración de IAM se aplica a todas las instancias de un clúster yadditional_iam_policiesno se puede utilizar junto conec2_iam_role • ParaAWS ParallelCluster3 puede tener diferentes configuraciones de IAM para los nodos de cabeza y de proceso e incluso especificar diferentes configuraciones de IAM para cada cola de proceso. • ParaAWS ParallelCluster3 puede utilizar un perfil de instancia de IAM como alternativa a un rol de IAM.InstanceProfile,InstanceRoleorAdditionalIamPoliciesno se pueden configurar juntos.

Ejemplo de acciones de arranque personalizadas

AWS ParallelCluster2:

[cluster default] s3_read_resource = arn:aws:s3:::bucket_name/* pre_install = s3://bucket_name/scripts/pre_install.sh pre_install_args = 'R curl wget' post_install = s3://bucket_name/scripts/post_install.sh post_install_args = "R curl wget" ...

AWS ParallelCluster3:

... HeadNode: ... CustomActions: OnNodeStart: Script: s3://bucket_name/scripts/pre_install.sh Args: - R - curl - wget OnNodeConfigured: Script: s3://bucket_name/scripts/post_install.sh Args: ['R', 'curl', 'wget'] Iam: S3Access: - BucketName: bucket_name Scheduling: Scheduler: slurm SlurmQueues: - Name: queue1 ... CustomActions: OnNodeStart: Script: s3://bucket_name/scripts/pre_install.sh Args: ['R', 'curl', 'wget'] OnNodeConfigured: Script: s3://bucket_name/scripts/post_install.sh Args: ['R', 'curl', 'wget'] Iam: S3Access:

15 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Trasladarse desdeAWS ParallelCluster2.x a 3.x

- BucketName: bucket_name

Ejemplo de clúster con acceso de lectura y escritura a los recursos del bucket de S3

AWS ParallelCluster2:

[cluster default] s3_read_resource = arn:aws:s3:::bucket/read_only/* s3_read_write_resource = arn:aws:s3:::bucket/read_and_write/* ...

AWS ParallelCluster3:

... HeadNode: ... Iam: S3Access: - BucketName: bucket_name KeyName: read_only/ EnableWriteAccess: False - BucketName: bucket_name KeyName: read_and_write/ EnableWriteAccess: True Scheduling: Scheduler: slurm SlurmQueues: - Name: queue1 ... Iam: S3Access: - BucketName: bucket_name KeyName: read_only/ EnableWriteAccess: False - BucketName: bucket_name KeyName: read_and_write/ EnableWriteAccess: True

Idioma inclusivo

AWS ParallelCluster3 utiliza las palabras «nodo principal «en los lugares donde se utilizó» master «enAWS ParallelCluster2. Esto incluye:

• exportada en elAWS Batchentorno de trabajo cambiado: deMASTER_IPDe aPCLUSTER_HEAD_NODE_IP. • TodoAWS CloudFormationsalidas cambiadas deMaster*De aHeadNode* • todos los nodeType y etiquetas cambiadas deMasterDe aHeadNode.

Support del programador

AWS ParallelCluster3.x no es compatible con los programadores Hijo de Grid Engine (SGE) y Torque.

LaAWS Batchcommandsawsbhosts,awsbkill,awsbout,awsbqueues,awsbstatyawsbsubse distribuyen comoaws-parallelcluster-awsbatch-cliPaquete PyPI. Este paquete está instalado porAWS ParallelClusteren el nodo principal. Si bien todavía puede usar estosAWS Batchdesde el nodo principal del clúster, si desea usarAWS BatchEn una ubicación distinta del nodo principal, primero debe instalar el comandoaws-parallelcluster-awsbatch-cliPaquete PyPI.

16 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Trasladarse desdeAWS ParallelCluster2.x a 3.x AWS ParallelCluster CLI

LaAWS ParallelClusterLa interfaz de línea de comandos (CLI) ha sido modificada y la nueva sintaxis se describe en laComandos de la CLI de AWS ParallelCluster (p. 70). El formato de salida de la CLI es unJSON: cadena.

Configuración de un nuevo clúster

Lapcluster configureincluye diferentes parámetros enAWS ParallelCluster3 en comparación conAWS ParallelCluster2, por favor consultepcluster configure (p. 73)Para obtener más información.

Tenga en cuenta también que la sintaxis del archivo de configuración ha cambiado deAWS ParallelCluster2, consulteArchivo de configuración de clúster (p. 89)para obtener una referencia completa de las opciones de configuración del clúster

Creación de un nuevo clúster

AWS ParallelCluster2pcluster createEl comando ha sido reemplazado por elpcluster create- cluster (p. 73)comando.

Tenga en cuenta el comportamiento predeterminado enAWS ParallelCluster2.x, sin el-nw, es esperar los eventos de creación de clústeres, mientras queAWS ParallelClusterEl comando 3.x devuelve inmediatamente. El progreso de la creación del clúster se puede supervisar mediantepcluster describe-cluster (p. 85)

Un registroAWS ParallelCluster3 contiene una sola definición de clúster, por lo que el archivo-tya no es necesario.

Ejemplo:

# AWS ParallelCluster v2 $ pcluster create \ -r REGION \ - V2_CONFIG_FILE \ -nw \ -t CLUSTER_TEMPLATE \ CLUSTER_NAME

# AWS ParallelCluster v3 $ pcluster create-cluster \ --region REGION \ --cluster-configuration V3_CONFIG_FILE \ --cluster-name CLUSTER_NAME

Listado de clústeres

Lapcluster list AWS ParallelCluster2.x debe reemplazarse conpcluster list- clusters (p. 78)comando.

Nota: necesitaAWS ParallelClusterv2 CLI para enumerar clústeres creados con versiones 2.x deAWS ParallelCluster. ConsulteInstallAWS ParallelClusterEn un entorno virtual (recomendado) (p. 2)para ver cómo instalar varias versiones deAWS ParallelClusterutilizando entornos virtuales.

# AWS ParallelCluster v2 $ pcluster list -r REGION

# AWS ParallelCluster v3 $ pcluster list-clusters --region REGION

17 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Trasladarse desdeAWS ParallelCluster2.x a 3.x

Inicio y detención de un clúster

Lapcluster startypcluster stop AWS ParallelClusterLos comandos 2.x deben ser reemplazados porpcluster update-compute-fleet (p. 81)commands.

Iniciar una flota informática:

# AWS ParallelCluster v2 $ pcluster start \ -r REGION \ CLUSTER_NAME

# AWS ParallelCluster v3 - Slurm fleets $ pcluster update-compute-fleet \ --region REGION \ --cluster-name CLUSTER_NAME \ --status START_REQUESTED

# AWS ParallelCluster v3 - AWS Batch fleets $ pcluster update-compute-fleet \ --region REGION \ --cluster-name CLUSTER_NAME \ --status ENABLED

Detener una flota de cómputos:

# AWS ParallelCluster v2 $ pcluster stop \ -r REGION \ CLUSTER_NAME

# AWS ParallelCluster v3 - Slurm fleets $ pcluster update-compute-fleet \ --region REGION \ --cluster-name CLUSTER_NAME \ --status STOP_REQUESTED

# AWS ParallelCluster v3 - AWS Batch fleets $ pcluster update-compute-fleet \ --region REGION \ --cluster-name CLUSTER_NAME \ --status DISABLED

Conexión a un clúster

Lapcluster ssh AWS ParallelCluster2.x tiene diferentes nombres de parámetros enAWS ParallelCluster3.x Consulte pcluster ssh (p. 80)

Conexión a un clúster:

# AWS ParallelCluster v2 $ pcluster ssh \ -r REGION \ CLUSTER_NAME \ -i ~/.ssh/id_rsa

# AWS ParallelCluster v3 $ pcluster ssh \ --region REGION \ --cluster-name CLUSTER_NAME \ -i ~/.ssh/id_rsa

18 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Regiones compatibles conAWS ParallelClusterVersión 3 Regiones compatibles conAWS ParallelClusterVersión 3

AWS ParallelClusterLa versión 3 está disponible en la siguiente Regiones de AWS :

Nombre de la región Región

US East (Ohio) us-east-2

US East (N. Virginia) us-east-1

US West (N. California) us-west-1

US West (Oregon) us-west-2

Africa (Cape Town) af-south-1

Asia Pacific (Hong Kong) ap-east-1

Asia Pacific (Mumbai) ap-south-1

Asia Pacific (Seoul) ap-northeast-2

Asia Pacific (Singapore) ap-southeast-1

Asia Pacific (Sydney) ap-southeast-2

Asia Pacific (Tokyo) ap-northeast-1

Canada (Central) ca-central-1

China (Beijing) cn-north-1

China (Ningxia) cn-northwest-1

Europe (Frankfurt) eu-central-1

Europe (Ireland) eu-west-1

Europe (London) eu-west-2

Europe (Milan) eu-south-1

Europe (Paris) eu-west-3

Europe (Stockholm) eu-north-1

Medio Oriente (Baréin) me-south-1

South America (São Paulo) sa-east-1

AWS GovCloud (EE. UU. Este) us-gov-east-1

AWS GovCloud (EE. UU. Oeste) us-gov-west-1

Uso AWS ParallelCluster

Temas

19 AWS ParallelCluster Guía del usuario de AWS ParallelCluster AWS Identity and Access Managementroles enAWS ParallelCluster3.x • AWS Identity and Access Managementroles enAWS ParallelCluster3.x (p. 20) • Configuraciones de red (p. 39) • Acciones de arranque personalizadas (p. 45) • Programadores admitidos por AWS ParallelCluster (p. 47) • Configuración de varias colas (p. 60) • AWS ParallelClusterAPI de (p. 61) • Connect al nodo director a través de NICE DCV (p. 67) • Uso pcluster update-cluster (p. 67)

AWS Identity and Access Managementroles enAWS ParallelCluster3.x

AWS ParallelClusterutilizaAWS Identity and Access Management(IAM) para controlar los permisos asociados con elAWSdesplegados en el Cuenta de AWS . EnAWS ParallelClusterpodemos identificar dos tipos de roles de IAM: el que asume el usuario que invoca los comandos CLI y los que están asociados conAWS ParallelClusterRecursos de, como las instancias EC2 lanzadas en un clúster.

Por defecto,AWS ParallelClusterse encarga de crear todas las funciones de IAM necesarias que se configuran con el conjunto mínimo de políticas requeridas porAWS ParallelClusterde AWS. Sin embargo, el usuario que invoca los diversosAWS ParallelClusterLas operaciones de deben tener el nivel adecuado de permisos para crear o modificar todos los recursos necesarios.

Temas • Usar roles de IAM existentes conAWS ParallelCluster (p. 20) • AWS ParallelClusterdirectivas de usuario de ejemplo (p. 20) • AWS ParallelClusterparámetros para controlar los permisos de IAM (p. 32)

Usar roles de IAM existentes conAWS ParallelCluster

Puede utilizar los roles de IAM existentes al crear un clúster o crear una imagen EC2 personalizada. Normalmente, elige roles de IAM existentes para controlar completamente los permisos concedidos aAWS ParallelClustery a los usuarios del clúster. Los siguientes ejemplos muestran las directivas y roles de IAM que son necesarios para invocarAWS ParallelClustery personalizar los permisos asociados con las instancias EC2 del clúster.

En las directivas, reemplace,, y cadenas similares con los valores adecuados. AWS ParallelClusterdirectivas de usuario de ejemplo

LaAWS ParallelClusterhace referencia a la función de IAM asumida por el usuario delAWS ParallelClusterCLI.

En las siguientes políticas de ejemplo se incluyen nombres de recursos de Amazon (ARN) para los recursos. Si trabaja en el AWS GovCloud (US) orAWSChina particiones, los ARN deben ser cambiados. Específicamente, deben cambiarse de «arn:aws» a «arn:aws-us-gov» para el AWS GovCloud (US) o «arn:aws-cn» para elAWSLa partición de China. Para obtener más información, consulteNombres de recursos de Amazon (ARN) en AWS GovCloud (US) Regiones deen la AWS GovCloud (US) Guía del usuario deyARN paraAWSServicios en ChinainIntroducción aAWSServicios en China.

Temas

20 AWS ParallelCluster Guía del usuario de AWS ParallelCluster AWS Identity and Access Managementroles enAWS ParallelCluster3.x • Política de usuario base necesaria para invocarAWS ParallelClusterCaracterísticas de (p. 21) • Política de usuario adicional al usarAWS Batchprogramador (p. 24) • Política de usuario a utilizarAWS ParallelClusterCaracterísticas de compilación de imágenes (p. 26) • Política de usuario para administrar los recursos de IAM (p. 28)

Política de usuario base necesaria para invocarAWS ParallelClusterCaracterísticas de

La siguiente directiva muestra los permisos necesarios para ejecutarAWS ParallelClustercommands.

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "ec2:Describe*" ], "Resource": "*", "Effect": "Allow", "Sid": "EC2Read" }, { "Action": [ "ec2:AllocateAddress", "ec2:AssociateAddress", "ec2:AttachNetworkInterface", "ec2:AuthorizeSecurityGroupEgress", "ec2:AuthorizeSecurityGroupIngress", "ec2:CreateLaunchTemplate", "ec2:CreateLaunchTemplateVersion", "ec2:CreateNetworkInterface", "ec2:CreatePlacementGroup", "ec2:CreateSecurityGroup", "ec2:CreateSnapshot", "ec2:CreateTags", "ec2:CreateVolume", "ec2:DeleteLaunchTemplate", "ec2:DeleteNetworkInterface", "ec2:DeletePlacementGroup", "ec2:DeleteSecurityGroup", "ec2:DeleteVolume", "ec2:DisassociateAddress", "ec2:ModifyLaunchTemplate", "ec2:ModifyNetworkInterfaceAttribute", "ec2:ModifyVolume", "ec2:ModifyVolumeAttribute", "ec2:ReleaseAddress", "ec2:RevokeSecurityGroupEgress", "ec2:RevokeSecurityGroupIngress", "ec2:RunInstances", "ec2:TerminateInstances" ], "Resource": "*", "Effect": "Allow", "Sid": "EC2Write" }, { "Action": [ "dynamodb:DescribeTable", "dynamodb:ListTagsOfResource", "dynamodb:CreateTable", "dynamodb:DeleteTable",

21 AWS ParallelCluster Guía del usuario de AWS ParallelCluster AWS Identity and Access Managementroles enAWS ParallelCluster3.x "dynamodb:GetItem", "dynamodb:PutItem", "dynamodb:Query", "dynamodb:TagResource" ], "Resource": "arn:aws:dynamodb:*::table/parallelcluster-*", "Effect": "Allow", "Sid": "DynamoDB" }, { "Action": [ "route53:ChangeResourceRecordSets", "route53:ChangeTagsForResource", "route53:CreateHostedZone", "route53:DeleteHostedZone", "route53:GetChange", "route53:GetHostedZone", "route53:ListResourceRecordSets", "route53:ListQueryLoggingConfigs" ], "Resource": "*", "Effect": "Allow", "Sid": "Route53HostedZones" }, { "Action": [ "cloudformation:*" ], "Resource": "*", "Effect": "Allow", "Sid": "CloudFormation" }, { "Action": [ "cloudwatch:PutDashboard", "cloudwatch:ListDashboards", "cloudwatch:DeleteDashboards", "cloudwatch:GetDashboard" ], "Resource": "*", "Effect": "Allow", "Sid": "CloudWatch" }, { "Action": [ "iam:GetRole", "iam:GetRolePolicy", "iam:GetPolicy", "iam:SimulatePrincipalPolicy", "iam:GetInstanceProfile" ], "Resource": [ "arn:aws:iam:::role/*", "arn:aws:iam:::policy/*", "arn:aws:iam::aws:policy/*", "arn:aws:iam:::instance-profile/*" ], "Effect": "Allow", "Sid": "IamRead" }, { "Action": [ "iam:CreateInstanceProfile", "iam:DeleteInstanceProfile", "iam:AddRoleToInstanceProfile", "iam:RemoveRoleFromInstanceProfile"

22 AWS ParallelCluster Guía del usuario de AWS ParallelCluster AWS Identity and Access Managementroles enAWS ParallelCluster3.x ], "Resource": [ "arn:aws:iam:::instance-profile/parallelcluster/*" ], "Effect": "Allow", "Sid": "IamInstanceProfile" }, { "Condition": { "StringEqualsIfExists": { "iam:PassedToService": [ "lambda.amazonaws.com", "ec2.amazonaws.com", "spotfleet.amazonaws.com" ] } }, "Action": [ "iam:PassRole" ], "Resource": [ "arn:aws:iam:::role/parallelcluster/*" ], "Effect": "Allow", "Sid": "IamPassRole" }, { "Condition": { "StringEquals": { "iam:AWSServiceName": [ "fsx.amazonaws.com", "s3.data-source.lustre.fsx.amazonaws.com" ] } }, "Action": [ "iam:CreateServiceLinkedRole", "iam:DeleteServiceLinkedRole" ], "Resource": "*", "Effect": "Allow" }, { "Action": [ "lambda:CreateFunction", "lambda:DeleteFunction", "lambda:GetFunctionConfiguration", "lambda:GetFunction", "lambda:InvokeFunction", "lambda:AddPermission", "lambda:RemovePermission", "lambda:UpdateFunctionConfiguration" ], "Resource": [ "arn:aws:lambda:*::function:parallelcluster-*", "arn:aws:lambda:*::function:pcluster-*" ], "Effect": "Allow", "Sid": "Lambda" }, { "Action": [ "s3:*" ], "Resource": [ "arn:aws:s3:::parallelcluster-*",

23 AWS ParallelCluster Guía del usuario de AWS ParallelCluster AWS Identity and Access Managementroles enAWS ParallelCluster3.x "arn:aws:s3:::aws-parallelcluster-*" ], "Effect": "Allow", "Sid": "S3ResourcesBucket" }, { "Action": [ "s3:Get*", "s3:List*" ], "Resource": "arn:aws:s3:::*-aws-parallelcluster*", "Effect": "Allow", "Sid": "S3ParallelClusterReadOnly" }, { "Action": [ "fsx:*" ], "Resource": [ "arn:aws:fsx:*::*" ], "Effect": "Allow", "Sid": "FSx" }, { "Action": [ "elasticfilesystem:*" ], "Resource": [ "arn:aws:elasticfilesystem:*::*" ], "Effect": "Allow", "Sid": "EFS" }, { "Action": [ "logs:DeleteLogGroup", "logs:PutRetentionPolicy", "logs:DescribeLogGroups", "logs:CreateLogGroup", "logs:FilterLogEvents", "logs:GetLogEvents", "logs:CreateExportTask", "logs:DescribeLogStreams", "logs:DescribeExportTasks" ], "Resource": "*", "Effect": "Allow", "Sid": "CloudWatchLogs" } ] }

Política de usuario adicional al usarAWS Batchprogramador

En caso de que necesite crear y administrar un clúster conAWS Batchse requiere la siguiente directiva adicional.

{ "Version": "2012-10-17", "Statement": [ { "Condition": { "StringEqualsIfExists": {

24 AWS ParallelCluster Guía del usuario de AWS ParallelCluster AWS Identity and Access Managementroles enAWS ParallelCluster3.x "iam:PassedToService": [ "ecs-tasks.amazonaws.com", "batch.amazonaws.com", "codebuild.amazonaws.com" ] } }, "Action": [ "iam:PassRole" ], "Resource": [ "arn:aws:iam:::role/parallelcluster/*" ], "Effect": "Allow", "Sid": "IamPassRole" }, { "Condition": { "StringEquals": { "iam:AWSServiceName": [ "batch.amazonaws.com" ] } }, "Action": [ "iam:CreateServiceLinkedRole", "iam:DeleteServiceLinkedRole" ], "Resource": [ "arn:aws:iam:::role/aws-service-role/batch.amazonaws.com/*" ], "Effect": "Allow" }, { "Action": [ "codebuild:*" ], "Resource": "arn:aws:codebuild:*::project/pcluster-*", "Effect": "Allow" }, { "Action": [ "ecr:*" ], "Resource": "*", "Effect": "Allow", "Sid": "ECR" }, { "Action": [ "batch:*" ], "Resource": "*", "Effect": "Allow", "Sid": "Batch" }, { "Action": [ "events:*" ], "Resource": "*", "Effect": "Allow", "Sid": "AmazonCloudWatchEvents" }, { "Action": [

25 AWS ParallelCluster Guía del usuario de AWS ParallelCluster AWS Identity and Access Managementroles enAWS ParallelCluster3.x "ecs:DescribeContainerInstances", "ecs:ListContainerInstances" ], "Resource": "*", "Effect": "Allow", "Sid": "ECS" } ] }

Política de usuario a utilizarAWS ParallelClusterCaracterísticas de compilación de imágenes

Los usuarios que pretenden crear imágenes EC2 personalizadas conAWS ParallelClusternecesitará tener el siguiente conjunto de permisos.

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "ec2:DescribeImages", "ec2:DescribeInstanceTypeOfferings", "ec2:DescribeInstanceTypes", "ec2:DeregisterImage", "ec2:DeleteSnapshot" ], "Resource": "*", "Effect": "Allow", "Sid": "EC2" }, { "Action": [ "iam:CreateInstanceProfile", "iam:AddRoleToInstanceProfile", "iam:GetRole", "iam:GetRolePolicy", "iam:GetInstanceProfile", "iam:RemoveRoleFromInstanceProfile" ], "Resource": [ "arn:aws:iam:::instance-profile/parallelcluster/*", "arn:aws:iam:::instance-profile/ParallelClusterImage*", "arn:aws:iam:::role/parallelcluster/*" ], "Effect": "Allow", "Sid": "IAM" }, { "Condition": { "StringEquals": { "iam:PassedToService": [ "lambda.amazonaws.com", "ec2.amazonaws.com" ] } }, "Action": [ "iam:PassRole" ], "Resource": [ "arn:aws:iam:::instance-profile/parallelcluster/*", "arn:aws:iam:::role/parallelcluster/*" ],

26 AWS ParallelCluster Guía del usuario de AWS ParallelCluster AWS Identity and Access Managementroles enAWS ParallelCluster3.x "Effect": "Allow", "Sid": "IAMPassRole" }, { "Action": [ "logs:CreateLogGroup", "logs:DeleteLogGroup" ], "Resource": [ "arn:aws:logs:*::log-group:/aws/imagebuilder/ ParallelClusterImage-*", "arn:aws:logs:*::log-group:/aws/lambda/ ParallelClusterImage-*" ], "Effect": "Allow", "Sid": "CloudWatch" }, { "Action": [ "cloudformation:DescribeStacks", "cloudformation:CreateStack", "cloudformation:DeleteStack" ], "Resource": [ "arn:aws:cloudformation:*::stack/*" ], "Effect": "Allow", "Sid": "CloudFormation" }, { "Action": [ "lambda:CreateFunction", "lambda:GetFunction", "lambda:AddPermission", "lambda:RemovePermission", "lambda:DeleteFunction" ], "Resource": [ "arn:aws:lambda:*::function:ParallelClusterImage-*" ], "Effect": "Allow", "Sid": "Lambda" }, { "Action": [ "imagebuilder:Get*" ], "Resource": "*", "Effect": "Allow", "Sid": "ImageBuilderGet" }, { "Action": [ "imagebuilder:CreateImage", "imagebuilder:TagResource", "imagebuilder:CreateImageRecipe", "imagebuilder:CreateComponent", "imagebuilder:CreateDistributionConfiguration", "imagebuilder:CreateInfrastructureConfiguration", "imagebuilder:DeleteImage", "imagebuilder:DeleteComponent", "imagebuilder:DeleteImageRecipe", "imagebuilder:DeleteInfrastructureConfiguration", "imagebuilder:DeleteDistributionConfiguration" ], "Resource": [

27 AWS ParallelCluster Guía del usuario de AWS ParallelCluster AWS Identity and Access Managementroles enAWS ParallelCluster3.x "arn:aws:imagebuilder:*::image/parallelclusterimage-*", "arn:aws:imagebuilder:*::image-recipe/parallelclusterimage- *", "arn:aws:imagebuilder:*::component/parallelclusterimage-*", "arn:aws:imagebuilder:*::distribution-configuration/ parallelclusterimage-*", "arn:aws:imagebuilder:*::infrastructure-configuration/ parallelclusterimage-*" ], "Effect": "Allow", "Sid": "ImageBuilder" }, { "Action": [ "s3:CreateBucket", "s3:ListBucket", "s3:ListBucketVersions" ], "Resource": [ "arn:aws:s3:::parallelcluster-*" ], "Effect": "Allow", "Sid": "S3Bucket" }, { "Action": [ "sns:GetTopicAttributes", "sns:TagResource", "sns:CreateTopic", "sns:Subscribe", "sns:Publish", "SNS:DeleteTopic", "SNS:Unsubscribe" ], "Resource": [ "arn:aws:sns:*::ParallelClusterImage-*" ], "Effect": "Allow", "Sid": "SNS" }, { "Action": [ "s3:PutObject", "s3:GetObject", "s3:GetObjectVersion", "s3:DeleteObject", "s3:DeleteObjectVersion" ], "Resource": [ "arn:aws:s3:::parallelcluster-*/*" ], "Effect": "Allow", "Sid": "S3Objects" } ] }

Política de usuario para administrar los recursos de IAM

Cuando se utilizaAWS ParallelClusterpara crear clústeres o AMI personalizadas, es necesario proporcionar directivas y roles de IAM para otorgar el conjunto necesario de permisos a los distintosAWS ParallelClustercomponentes. Dichos recursos de IAM se pueden crear automáticamente medianteAWS ParallelClustero deben proporcionarse como entrada al crear clústeres o recursos de imagen personalizados.

28 AWS ParallelCluster Guía del usuario de AWS ParallelCluster AWS Identity and Access Managementroles enAWS ParallelCluster3.x En función de las políticas de IAM adicionales otorgadas a laAWS ParallelClusterusuario podemos habilitar los siguientes casos de uso:

Temas • Modo de acceso IAM privilegiado (p. 29) • Modo de acceso IAM restringido (p. 30) • PermissionsBoundarymode (p. 31)

Modo de acceso IAM privilegiado

Con este modoAWS ParallelClusterse encarga de automatizar la creación de todos los recursos de IAM necesarios. La ventaja de delegar la creación de recursos de IAM aAWS ParallelClusterconsiste en el hecho de que las políticas de IAM tienen un ámbito reducido para permitir el acceso solo a los recursos del clúster.

Para habilitar este modo, agregue la siguiente política alAWS ParallelClusterUsuario. Warning

Este modo permite al usuario tener privilegios de administrador de IAM en Cuenta de AWS

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "iam:CreateServiceLinkedRole", "iam:DeleteRole", "iam:TagRole" ], "Resource": [ "arn:aws:iam:::role/parallelcluster/*" ], "Effect": "Allow", "Sid": "IamRole" }, { "Action": [ "iam:CreateRole" ], "Resource": [ "arn:aws:iam:::role/parallelcluster/*" ], "Effect": "Allow", "Sid": "IamCreateRole" }, { "Action": [ "iam:PutRolePolicy", "iam:DeleteRolePolicy" ], "Resource": "arn:aws:iam:::role/parallelcluster/*", "Effect": "Allow", "Sid": "IamInlinePolicy" }, { "Condition": { "ArnLike": { "iam:PolicyARN": [ "arn:aws:iam:::policy/parallelcluster*", "arn:aws:iam:::policy/parallelcluster/*", "arn:aws:iam::aws:policy/CloudWatchAgentServerPolicy", "arn:aws:iam::aws:policy/AmazonSSMManagedInstanceCore",

29 AWS ParallelCluster Guía del usuario de AWS ParallelCluster AWS Identity and Access Managementroles enAWS ParallelCluster3.x "arn:aws:iam::aws:policy/AWSBatchFullAccess", "arn:aws:iam::aws:policy/AmazonS3ReadOnlyAccess", "arn:aws:iam::aws:policy/service-role/AWSBatchServiceRole", "arn:aws:iam::aws:policy/service-role/ AmazonEC2ContainerServiceforEC2Role", "arn:aws:iam::aws:policy/service-role/ AmazonECSTaskExecutionRolePolicy", "arn:aws:iam::aws:policy/service-role/ AmazonEC2SpotFleetTaggingRole", "arn:aws:iam::aws:policy/EC2InstanceProfileForImageBuilder", "arn:aws:iam::aws:policy/service-role/AWSLambdaBasicExecutionRole" ] } }, "Action": [ "iam:AttachRolePolicy", "iam:DetachRolePolicy" ], "Resource": "arn:aws:iam:::role/parallelcluster/*", "Effect": "Allow", "Sid": "IamPolicy" } ] }

Modo de acceso IAM restringido

Cuando no se conceden directivas de IAM adicionales a laAWS ParallelCluster, los roles de IAM requeridos por los clústeres o la compilación de imágenes personalizadas deben ser creados manualmente por un administrador de IAM y pasados como parte de la configuración de recursos.

Al crear un clúster se requieren los siguientes parámetros:

• Iam (p. 125) / Roles (p. 125) / LambdaFunctionsRole (p. 125) • HeadNode (p. 91) / Iam (p. 98) / InstanceRole (p. 98) | InstanceProfile (p. 98) • Scheduling (p. 100) / SlurmQueues (p. 105) / Iam (p. 113) / InstanceRole (p. 114) | InstanceProfile (p. 113)

Cuando se crea una imagen personalizada, se requieren los siguientes parámetros:

• Build (p. 128) / Iam (p. 129) / InstanceRole (p. 129) | InstanceProfile (p. 129) • Build (p. 128) / Iam (p. 129) / CleanupLambdaRole (p. 129)

Los roles de IAM pasados como parte de los parámetros enumerados anteriormente tienen que crearse en el/parallelcluster/prefijo de ruta. Si esto no es posible,AWS ParallelClusterla directiva de usuario debe actualizarse para concederiam:PassRoleen los roles personalizados específicos, como en el ejemplo siguiente.

{ "Condition": { "StringEqualsIfExists": { "iam:PassedToService": [ "ecs-tasks.amazonaws.com", "lambda.amazonaws.com", "ec2.amazonaws.com", "spotfleet.amazonaws.com", "batch.amazonaws.com", "codebuild.amazonaws.com" ]

30 AWS ParallelCluster Guía del usuario de AWS ParallelCluster AWS Identity and Access Managementroles enAWS ParallelCluster3.x } }, "Action": [ "iam:PassRole" ], "Resource": [ ], "Effect": "Allow", "Sid": "IamPassRole" }

Warning

Actualmente, este modo no permite la administración deAWS Batchporque no todos los roles de IAM se pueden pasar en la configuración del clúster.

PermissionsBoundarymode

Este modo delega aAWS ParallelClusterla creación de roles de IAM, sin embargo, dichos roles están enlazados al límite de permisos de IAM configurado. Para obtener más información sobre los límites de permisos de IAM, consulteLímites de permisos de las entidades de IAMen laIAM User Guide.

La siguiente política debe agregarse a laAWS ParallelClusterUsuario.

En la directiva, reemplacecon la política de IAM ARN que se debe aplicar como límite de permisos.

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "iam:CreateServiceLinkedRole", "iam:DeleteRole", "iam:TagRole" ], "Resource": [ "arn:aws:iam:::role/parallelcluster/*" ], "Effect": "Allow", "Sid": "IamRole" }, { "Condition": { "StringEquals": { "iam:PermissionsBoundary": [ ] } }, "Action": [ "iam:CreateRole" ], "Resource": [ "arn:aws:iam:::role/parallelcluster/*" ], "Effect": "Allow", "Sid": "IamCreateRole" }, { "Condition": { "StringEquals": { "iam:PermissionsBoundary": [

31 AWS ParallelCluster Guía del usuario de AWS ParallelCluster AWS Identity and Access Managementroles enAWS ParallelCluster3.x ] } }, "Action": [ "iam:PutRolePolicy", "iam:DeleteRolePolicy" ], "Resource": "arn:aws:iam:::role/parallelcluster/*", "Effect": "Allow", "Sid": "IamInlinePolicy" }, { "Condition": { "StringEquals": { "iam:PermissionsBoundary": [ ] }, "ArnLike": { "iam:PolicyARN": [ "arn:aws:iam:::policy/parallelcluster*", "arn:aws:iam:::policy/parallelcluster/*", "arn:aws:iam::aws:policy/CloudWatchAgentServerPolicy", "arn:aws:iam::aws:policy/AmazonSSMManagedInstanceCore", "arn:aws:iam::aws:policy/AWSBatchFullAccess", "arn:aws:iam::aws:policy/AmazonS3ReadOnlyAccess", "arn:aws:iam::aws:policy/service-role/AWSBatchServiceRole", "arn:aws:iam::aws:policy/service-role/ AmazonEC2ContainerServiceforEC2Role", "arn:aws:iam::aws:policy/service-role/ AmazonECSTaskExecutionRolePolicy", "arn:aws:iam::aws:policy/service-role/ AmazonEC2SpotFleetTaggingRole", "arn:aws:iam::aws:policy/EC2InstanceProfileForImageBuilder", "arn:aws:iam::aws:policy/service-role/AWSLambdaBasicExecutionRole" ] } }, "Action": [ "iam:AttachRolePolicy", "iam:DetachRolePolicy" ], "Resource": "arn:aws:iam:::role/parallelcluster/*", "Effect": "Allow", "Sid": "IamPolicy" } ] } wherees el ARN de la política de IAM que se debe aplicar como límite de permisos.

Cuando este modo está habilitado, el límite de permisos ARN debe especificarse al crear/actualizar un clúster a través delIam (p. 125)/PermissionsBoundary (p. 125)y cuando se construye una imagen personalizada a través del parámetroBuild (p. 128) / Iam (p. 129) / PermissionBoundary (p. 129)parámetro. AWS ParallelClusterparámetros para controlar los permisos de IAM

AWS ParallelClusterexpone una serie de opciones de configuración para controlar y personalizar los roles de IAM que se utilizan en un clúster o durante el proceso personalizado de creación de AMI.

32 AWS ParallelCluster Guía del usuario de AWS ParallelCluster AWS Identity and Access Managementroles enAWS ParallelCluster3.x Temas • Configuración de clúster (p. 33) • Configuración personalizada de la imagen (p. 37)

Configuración de clúster

HeadNode (p. 91) / Iam (p. 98) / InstanceRole (p. 98) | InstanceProfile (p. 98)

Esta opción permite anular el rol de IAM que se asigna al nodo principal del clúster. Para obtener más información, consulte laInstanceProfile (p. 98)referencia.

Aquí está el conjunto mínimo de políticas que se usarán como parte de este rol cuando el programador sea Slurm:

• arn:aws:iam::aws:policy/CloudWatchAgentServerPolicydirectiva de IAM administrada • arn:aws:iam::aws:policy/AmazonSSMManagedInstanceCoredirectiva de IAM administrada • Política adicional de IAM:

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "s3:GetObject", "s3:GetObjectVersion" ], "Resource": [ "arn:aws:s3:::-aws-parallelcluster/*", "arn:aws:s3:::dcv-license./*", "arn:aws:s3:::parallelcluster-*-v1-do-not-delete/*" ], "Effect": "Allow" }, { "Action": [ "dynamodb:GetItem", "dynamodb:PutItem", "dynamodb:BatchWriteItem" ], "Resource": "arn:aws:dynamodb:::table/parallelcluster- *", "Effect": "Allow" }, { "Condition": { "StringEquals": { "ec2:ResourceTag/parallelcluster:node-type": "Compute" } }, "Action": "ec2:TerminateInstances", "Resource": "*", "Effect": "Allow" }, { "Action": "ec2:RunInstances", "Resource": "*", "Effect": "Allow" }, { "Condition": { "StringEquals": {

33 AWS ParallelCluster Guía del usuario de AWS ParallelCluster AWS Identity and Access Managementroles enAWS ParallelCluster3.x "iam:PassedToService": [ "ec2.amazonaws.com" ] } }, "Action": [ "iam:PassRole" ], "Resource": [ "arn:aws:iam:::role/parallelcluster/*", "arn:aws:iam:::instance-profile/parallelcluster/*" ], "Effect": "Allow" }, { "Action": [ "ec2:DescribeInstances", "ec2:DescribeInstanceStatus", "ec2:CreateTags", "ec2:DescribeVolumes", "ec2:AttachVolume", "ec2:DescribeInstanceAttribute" ], "Resource": "*", "Effect": "Allow" }, { "Action": [ "cloudformation:DescribeStackResource", "cloudformation:SignalResource" ], "Resource": "*", "Effect": "Allow" }, { "Action": [ "route53:ChangeResourceRecordSets" ], "Resource": "*", "Effect": "Allow" } ] }

Tenga en cuenta que en caso deScheduling (p. 100) / SlurmQueues (p. 105) / Iam (p. 113) / InstanceRole (p. 114)se utiliza para anular el rol de IAM de computación, la directiva de nodo principal notificada anteriormente debe incluir dicho rol en elResourceSección sobre de laiam:PassRolePermiso.

Aquí está el conjunto mínimo de políticas que se usarán como parte de este rol cuando el programador esAWS Batch:

• arn:aws:iam::aws:policy/CloudWatchAgentServerPolicydirectiva de IAM administrada • arn:aws:iam::aws:policy/AmazonSSMManagedInstanceCoreIAM administrado • arn:aws:iam::aws:policy/AWSBatchFullAccessdirectiva de IAM administrada • Política adicional de IAM:

{ "Version": "2012-10-17", "Statement": [ { "Action": [

34 AWS ParallelCluster Guía del usuario de AWS ParallelCluster AWS Identity and Access Managementroles enAWS ParallelCluster3.x "s3:GetObject", "s3:PutObject", "s3:GetObjectVersion" ], "Resource": [ "arn:aws:s3:::parallelcluster-*-v1-do-not-delete/*" ], "Effect": "Allow" }, { "Action": "s3:GetObject", "Resource": [ "arn:aws:s3:::dcv-license./*", "arn:aws:s3:::-aws-parallelcluster/*" ], "Effect": "Allow" }, { "Condition": { "StringEquals": { "iam:PassedToService": [ "batch.amazonaws.com" ] } }, "Action": [ "iam:PassRole" ], "Resource": [ "arn:aws:iam:::role/parallelcluster/*", "arn:aws:iam:::instance-profile/parallelcluster/*" ], "Effect": "Allow" }, { "Action": [ "ec2:DescribeInstances", "ec2:DescribeInstanceStatus", "ec2:CreateTags", "ec2:DescribeVolumes", "ec2:AttachVolume", "ec2:DescribeInstanceAttribute" ], "Resource": "*", "Effect": "Allow" }, { "Action": [ "cloudformation:DescribeStackResource", "cloudformation:DescribeStacks", "cloudformation:SignalResource" ], "Resource": "*", "Effect": "Allow" }, { "Action": [ "route53:ChangeResourceRecordSets" ], "Resource": "*", "Effect": "Allow" } ] }

35 AWS ParallelCluster Guía del usuario de AWS ParallelCluster AWS Identity and Access Managementroles enAWS ParallelCluster3.x Scheduling (p. 100) / SlurmQueues (p. 105) / Iam (p. 113) / InstanceRole (p. 114) | InstanceProfile (p. 113)

Esta opción permite anular la función de IAM que se asigna a los nodos de cálculo del clúster. Para obtener más información, consulte InstanceProfile (p. 113).

Aquí está el conjunto mínimo de políticas que se usarán como parte de este rol:

• arn:aws:iam::aws:policy/CloudWatchAgentServerPolicydirectiva de IAM administrada • arn:aws:iam::aws:policy/AmazonSSMManagedInstanceCoredirectiva de IAM administrada • Política adicional de IAM:

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "dynamodb:Query" ], "Resource": "arn:aws:dynamodb:::table/parallelcluster- *", "Effect": "Allow" }, { "Action": "s3:GetObject", "Resource": [ "arn:aws:s3:::-aws-parallelcluster/*" ], "Effect": "Allow" }, { "Action": "ec2:DescribeInstanceAttribute", "Resource": "*", "Effect": "Allow" } ] }

HeadNode (p. 91)/Iam (p. 98)/S3Access (p. 98)orScheduling (p. 100)/SlurmQueues (p. 105)/Iam (p. 113)/S3Access (p. 98)

Estas secciones de configuración permiten personalizar el acceso de S3 mediante la concesión de directivas S3 adicionales a los roles de IAM asociados con el nodo principal o los nodos de cálculo del clúster cuando dichos roles son creados porAWS ParallelCluster. Para obtener más información, consulte la documentación de referencia de cada uno de los parámetros de configuración.

Este parámetro solo se puede usar cuando se hace elAWS ParallelClusterestá configurado enModo de acceso IAM privilegiado (p. 29)orPermissionsBoundarymode (p. 31).

HeadNode (p. 91)/Iam (p. 98)/AdditionalIamPolicies (p. 99)orScheduling (p. 100)/SlurmQueues (p. 105)/Iam (p. 113)/AdditionAliamPolicies (p. 114)

Estas secciones de configuración permiten adjuntar directivas de IAM administradas adicionales a los roles de IAM asociados con el nodo principal o los nodos de computación del clúster cuando dichos roles son creados porAWS ParallelCluster.

Para utilizar esta opción, asegúrese de que la opciónAWS ParallelClusterSe concede al usuarioiam:AttachRolePolicyyiam:DetachRolePolicypara las directivas de IAM que deben adjuntarse.

Iam (p. 125) / PermissionsBoundary (p. 125)

36 AWS ParallelCluster Guía del usuario de AWS ParallelCluster AWS Identity and Access Managementroles enAWS ParallelCluster3.x Este parámetro fuerzaAWS ParallelClusterpara adjuntar la política de IAM dada comoPermissionsBoundarya todos los roles de IAM que se crean como parte de una implementación de clúster.

ConsultePermissionsBoundarymode (p. 31)para obtener la lista de políticas requeridas por elAWS ParallelClusterpara utilizar dicha funcionalidad. Configuración personalizada de la imagen

Build (p. 128) / Iam (p. 129) / InstanceRole (p. 129) | InstanceProfile (p. 129)

Esta opción permite anular la función de IAM asignada a la instancia de EC2 iniciada por EC2 Image Builder para crear una AMI personalizada.

Aquí está el conjunto mínimo de políticas que se usarán como parte de este rol:

• arn:aws:iam::aws:policy/AmazonSSMManagedInstanceCoredirectiva de IAM administrada • arn:aws:iam::aws:policy/EC2InstanceProfileForImageBuilderdirectiva de IAM administrada • Política adicional de IAM:

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "ec2:CreateTags", "ec2:ModifyImageAttribute" ], "Resource": "arn:aws:ec2:::image/*", "Effect": "Allow" } ] }

Build (p. 128) / Iam (p. 129) / CleanupLambdaRole (p. 129)

Esta opción anula la función asociada a todos losAWS Lambdaque se utilizan durante el proceso de creación de imágenes personalizadas.AWS LambdaSe necesita configurar como principal permitido asumir el rol.

Aquí está el conjunto mínimo de políticas que se usarán como parte de este rol:

• arn:aws:iam::aws:policy/service-role/AWSLambdaBasicExecutionRoledirectiva de IAM administrada • Política adicional de IAM:

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "iam:DetachRolePolicy", "iam:DeleteRole", "iam:DeleteRolePolicy" ], "Resource": "arn:aws:iam:::role/parallelcluster/*", "Effect": "Allow"

37 AWS ParallelCluster Guía del usuario de AWS ParallelCluster AWS Identity and Access Managementroles enAWS ParallelCluster3.x }, { "Action": [ "iam:DeleteInstanceProfile", "iam:RemoveRoleFromInstanceProfile" ], "Resource": "arn:aws:iam:::instance-profile/parallelcluster/*", "Effect": "Allow" }, { "Action": "imagebuilder:DeleteInfrastructureConfiguration", "Resource": "arn:aws:imagebuilder:::infrastructure- configuration/parallelclusterimage-*", "Effect": "Allow" }, { "Action": [ "imagebuilder:DeleteComponent" ], "Resource": [ "arn:aws:imagebuilder:::component/ parallelclusterimage-*/*" ], "Effect": "Allow" }, { "Action": "imagebuilder:DeleteImageRecipe", "Resource": "arn:aws:imagebuilder:::image-recipe/ parallelclusterimage-*/*", "Effect": "Allow" }, { "Action": "imagebuilder:DeleteDistributionConfiguration", "Resource": "arn:aws:imagebuilder:::distribution- configuration/parallelclusterimage-*", "Effect": "Allow" }, { "Action": "imagebuilder:DeleteImage", "Resource": "arn:aws:imagebuilder:::image/ parallelclusterimage-*/*", "Effect": "Allow" }, { "Action": "cloudformation:DeleteStack", "Resource": "arn:aws:cloudformation:::stack/*/*", "Effect": "Allow" }, { "Action": "ec2:CreateTags", "Resource": "arn:aws:ec2:::image/*", "Effect": "Allow" }, { "Action": "tag:TagResources", "Resource": "*", "Effect": "Allow" }, { "Action": [ "lambda:DeleteFunction", "lambda:RemovePermission" ], "Resource": "arn:aws:lambda:::function:ParallelClusterImage-*", "Effect": "Allow"

38 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Configuraciones de red

}, { "Action": "logs:DeleteLogGroup", "Resource": "arn:aws:logs:::log-group:/aws/lambda/ ParallelClusterImage-*:*", "Effect": "Allow" }, { "Action": [ "SNS:GetTopicAttributes", "SNS:DeleteTopic", "SNS:GetSubscriptionAttributes", "SNS:Unsubscribe" ], "Resource": "arn:aws:sns:::ParallelClusterImage-*", "Effect": "Allow" } ] }

Build (p. 128) / Iam (p. 129) / AdditionalIamPolicies (p. 129)

Esta sección de configuración permite adjuntar directivas de IAM administradas adicionales al rol asociado a la instancia de EC2 utilizada por EC2 Image Builder para producir la AMI personalizada.

Para utilizar esta opción, asegúrese de que la opciónAWS ParallelClusterSe concede al usuarioiam:AttachRolePolicyyiam:DetachRolePolicypara las directivas de IAM que deben adjuntarse.

Build (p. 128) / Iam (p. 129) / PermissionsBoundary (p. 129)

Este parámetro fuerzaAWS ParallelClusterpara adjuntar la política de IAM dada comoPermissionsBoundarya todos los roles de IAM que se crean como parte de la compilación de AMI personalizada.

ConsultePermissionsBoundarymode (p. 31)para obtener la lista de políticas necesarias para utilizar dicha funcionalidad. Configuraciones de red

AWS ParallelClusterutiliza Amazon Virtual Private Cloud (VPC) para establecer redes. VPC proporciona una plataforma de red flexible y configurable en la que se pueden implementar clústeres.

La VPC debe tener DNS Resolution = yes, DNS Hostnames = yes y opciones de DHCP con el nombre de dominio correcto para la región. El conjunto de opciones de DHCP predeterminado ya especifica los AmazonProvidedDNS necesarios. Si especifica más de un servidor de nombres de dominio, consulteConjuntos de opciones de DHCPen laAmazon VPC User Guide.

AWS ParallelCluster admite las siguientes configuraciones de carácter general:

• Una sola subred para los nodos de computación y jefe. • Dos subredes, con el nodo principal en una subred pública y los nodos de computación en una subred privada. Las subredes pueden ser nuevas o existentes.

Todas estas configuraciones pueden funcionar con o sin direcciones IP públicas.AWS ParallelClusterTambién puede implementarse para utilizar un proxy HTTP para todos losAWSsolicitudes. La combinaciones de estas configuraciones se traducen en muchos casos de implementación. Por ejemplo, puede configurar una subred pública única con todo el acceso a través de Internet. O bien, puede configurar una red completamente privada usando AWS Direct Connect y proxy HTTP para todo el tráfico.

39 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Configuraciones de red

A partir deAWS ParallelCluster3.0.0 es posible configurar diferentesSecurityGroups,AdditionalSecurityGroupsyPlacementGrouppara cada cola, consulteHeadNode / Networking(Networking (p. 92)) ySlurmQueues / Networking(SlurmQueuesPropiedades (p. 106)) yAwsBatchQueues / Networking(AwsBatchQueuesPropiedades (p. 103)) para obtener más información.

Consulte los siguientes diagramas de arquitectura para ver ilustraciones de algunos casos de red: AWS ParallelCluster en una subred pública única

La configuración de esta arquitectura requiere los siguientes valores de configuración:

# Note that all values are only provided as examples ... HeadNode: ... Networking: SubnetId: subnet-12345678 # subnet with internet gateway #ElasticIp: true | false | eip-12345678 Scheduling: Scheduler: slurm SlurmQueues: - ... Networking: SubnetIds: - subnet-12345678 # subnet with internet gateway

40 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Configuraciones de red

#AssignPublicIp: true

En esta configuración, todas las instancias del clúster deben ser asignadas una IP pública para obtener acceso a Internet. Para ello, proceda del modo siguiente:

• Asegúrese de que el nodo principal tenga asignada una IP pública activando la opción «Habilitar asignación automática de dirección IPv4 pública «para la subred utilizada enHeadNode > Networking > SubnetIdo asignando un Elastic Ip enHeadNode > Networking > ElasticIp. • Asegúrese de que los nodos de computación tengan asignada una IP pública activando la opción «Habilitar asignación automática de dirección IPv4 pública «para la subred utilizada enScheduling > SlurmQueues > Networking > SubnetIdso configurandoAssignPublicIp: trueinScheduling > SlurmQueues > Networking.

Para obtener más información, consulteHabilitar el acceso a InternetinAmazon VPC User Guide. AWS ParallelCluster con dos subredes

La configuración para utilizar una subred privada existente para instancias de informática requiere los siguientes valores de configuración:

# Note that all values are only provided as examples ... HeadNode:

41 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Configuraciones de red

... Networking: SubnetId: subnet-12345678 # subnet with internet gateway #ElasticIp: true | false | eip-12345678 Scheduling: Scheduler: slurm SlurmQueues: - ... Networking: SubnetIds: - subnet-23456789 # subnet with NAT gateway #AssignPublicIp: false

En esta configuración sólo se requiere que el nodo principal del clúster tenga asignada una IP pública. Puede lograrlo activando la opción «Habilitar asignación automática de dirección IPv4 pública «para la subred utilizada enHeadNode > Networking > SubnetIdo asignando una IP elástica enHeadNode > Networking > ElasticIp.

Esta configuración requiere ungateway NATo un proxy interno en la subred utilizada para las colas, para dar acceso a Internet a las instancias informáticas. AWS ParallelCluster en una única subred privada conectada mediante AWS Direct Connect

La configuración de esta arquitectura requiere los siguientes valores de configuración:

42 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Configuraciones de red

# Note that all values are only provided as examples ... HeadNode: ... Networking: SubnetId: subnet-34567890 # subnet with proxy Proxy: HttpProxyAddress: http://proxy-address:port Ssh: KeyName: ec2-key-name Scheduling: Scheduler: slurm SlurmQueues: - ... Networking: SubnetIds: - subnet-34567890 # subnet with proxy AssignPublicIp: false Proxy: HttpProxyAddress: http://proxy-address:port

CuandoScheduling / SlurmQueues / Networking / AssignPublicIptoma el valorfalseLas subredes deben configurarse correctamente para utilizar el proxy para todo el tráfico. El acceso a la web es necesario para los nodos de computación y jefe.

AWS ParallelClusterporAWS Batchprogramador

Al usar awsbatch como tipo de programador, AWS ParallelCluster crea un entorno informático administrado de AWS Batch. LaAWS BatchEl entorno de se encarga de la administración de instancias de contenedor de Amazon Elastic Container Service (Amazon ECS), que se lanzan en la subred configurada en laAwsBatchQueues > Networking > SubnetIdsparámetro. ParaAWS BatchPara que funcione correctamente, las instancias de contenedor de Amazon ECS necesitan acceso de red externo para comunicarse con el punto de enlace de servicio de Amazon ECS. Esto se traduce en los siguientes casos:

• El ID de subred especificado para la cola utiliza una gateway NAT para obtener acceso a Internet. (Recomendamos este enfoque). • Las instancias que se lanzan en la subred de cola tienen direcciones IP públicas y pueden llegar a Internet a través de una Internet Gateway.

Además, si está interesado en trabajos paralelos de varios nodos (en laAWS Batchdocumentos):

AWS BatchLos trabajos paralelos de varios nodos utilizan laawsvpc, que otorga a los contenedores de trabajos paralelos de varios nodos las mismas propiedades de red que las instancias de Amazon EC2. Cada contenedor de trabajos paralelos de varios nodos obtiene su propia interfaz de red elástica, una dirección IP privada principal y un nombre de host DNS interno. La interfaz de red se crea en la misma subred de Amazon VPC como su recurso informático de host. Los grupos de seguridad que se hayan aplicado a los recursos informáticos se aplicarán también a ella.

Cuando se utiliza Amazon ECS Task Networking, elawsvpcEl modo de red no proporciona interfaces de red elásticas con direcciones IP públicas para tareas que utilizan el tipo de lanzamiento de Amazon EC2. Para obtener acceso a Internet, las tareas que utilizan el tipo de lanzamiento de Amazon EC2 se deben lanzar en una subred privada configurada para utilizar una gateway NAT.

Debe configurar una gateway NAT para habilitar el clúster para ejecutar trabajos paralelos de varios nodos.

43 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Configuraciones de red

Toda la configuración y consideraciones anteriores son válidas paraAWS Batch, también. Vea un ejemplo deAWS BatchConfiguración de red. Tenga en cuenta que todos los valores solo se proporcionan como ejemplos.

... HeadNode: ... Networking: SubnetId: subnet-12345678 # subnet with internet gateway, NAT gateway or proxy #ElasticIp: true | false | eip-12345678 #Proxy: #HttpProxyAddress: http://proxy-address:port Ssh: KeyName: ec2-key-name Scheduling: Scheduler: awsbatch AwsBatchQueues: - ... Networking: SubnetIds: - subnet-23456789 # subnet with internet gateway, NAT gateway or proxy #AssignPublicIp: true | false

En el navegadorScheduling > AwsBatchQueues > Networkingsección de la secciónSubnetIdses un tipo de lista pero, actualmente, sólo se admite una subred.

Para obtener más información, consulte los siguientes temas:

44 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Acciones de arranque personalizadas

• AWS Batchentornos informáticos gestionados • AWS Batchtrabajos paralelos de varios nodos • Red de tareas de Amazon ECS con el modo de red awsvpc

Acciones de arranque personalizadas

AWS ParallelClusterpuede ejecutar código arbitrario justo después del inicio del nodo (OnNodeStart) o cuando la configuración del nodo se completa correctamente (OnNodeConfigured). En la mayoría de los casos, este código se almacena en Amazon Simple Storage Service (Amazon S3) y se accede a través de una conexión HTTPS. El código se ejecuta comorooty puede estar en cualquier lenguaje de script compatible con el sistema operativo del clúster. A menudo, el código está enBashorPython.

OnNodeStartSe llama antes de que se inicie cualquier acción de arranque de implementación de nodos, como la configuración de NAT, Amazon Elastic Block Store (Amazon EBS) o el programador.OnNodeStartLas acciones de arranque pueden incluir la modificación del almacenamiento, agregar usuarios adicionales y agregar paquetes.

OnNodeConfiguredse llaman después de que los procesos de arranque del nodo se hayan completado.OnNodeConfiguredsirven las últimas acciones que se producen antes de que una instancia se considere completamente configurada y completa. AlgunoOnNodeConfiguredLas acciones de cambio incluyen la configuración del programador, la modificación del almacenamiento y los paquetes de. Puede transferir argumentos a los scripts especificándolos durante la configuración.

Si una acción personalizada falla, el arranque de instancia también falla. El éxito se indica con un código de salida de cero (0). Cualquier otro código de salida indica que el arranque de la instancia ha fallado.

Puede especificar diferentes secuencias de comandos para el nodo principal y para cada cola, en el cuadroHeadNode / CustomActions (p. 97)yScheduling / SlurmQueues / CustomActions (p. 112)Secciones de configuración. Note

AntesAWS ParallelClusterversión 3.0, no fue posible especificar diferentes scripts para los nodos de cabeza y de cálculo. Consulte Trasladarse desdeAWS ParallelCluster2.x a 3.x (p. 11).

Configuración

Los siguientes parámetros de configuración se utilizan para definirOnNodeStartyOnNodeConfiguredAcciones y argumentos.

HeadNode: [...] CustomActions: OnNodeStart: # Script URL. This is run before any of the bootstrap scripts are run Script: s3://bucket-name/on-node-start.sh # s3:// | https:// # Arguments to be passed to the script Args: - arg1 - arg2 OnNodeConfigured: # Script URL. This is run after all the bootstrap scripts are run Script: s3://bucket-name/on-node-configured.sh # s3:// | https:// # Arguments to be passed to the script Args: - arg1 - arg2 # Bucket permissions Iam: S3Access: - BucketName: bucket_name

45 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Acciones de arranque personalizadas

EnableWriteAccess: false Scheduling: Scheduler: slurm [...] SlurmQueues: - Name: queue1 [...] CustomActions: OnNodeStart: Script: s3://bucket-name/on-node-start.sh # s3:// | https:// Args: - arg1 - arg2 OnNodeConfigured: Script: s3://bucket-name/on-node-configured.sh # s3:// | https:// Args: - arg1 - arg2 Iam: S3Access: - BucketName: bucket_name EnableWriteAccess: false

Arguments (Argumentos) Note

EnAWS ParallelCluster2.x$1argumentos era uno reservado, para almacenar la URL del script personalizado. Si desea volver a utilizar los scripts de arranque personalizados creados paraAWS ParallelCluster2.x conAWS ParallelCluster3.x es necesario adaptarlos teniendo en cuenta el cambio de los argumentos. Consulte Trasladarse desdeAWS ParallelCluster2.x a 3.x (p. 11).

Ejemplo

Los siguientes pasos crean un script sencillo que se ejecutará después de configurar el nodo, que instala laR, curlywgeten los nodos del clúster.

1. Cree un script.

#!/bin/bash echo "The script has $# arguments" for arg in "$@" do echo "arg: ${arg}" done

yum -y install "${@:1}"

2. Cargue la secuencia de comandos con los permisos correctos a Amazon S3. Si los permisos de lectura pública no son apropiados para usted, useIam / S3Accesssección deHeadNode(Sección HeadNode (p. 91)) yScheduling / SlurmQueues(Sección Scheduling (p. 100)Para obtener más información, consulteTrabajo con Amazon S3 (p. 173).

$ aws s3 cp --acl public-read /path/to/myscript.sh s3:///myscript.sh

Important

Si la secuencia de comandos se editó en Windows, los finales de línea deben cambiarse de CRLF a LF antes de cargar la secuencia de comandos en Amazon S3. 3. Actualizar elAWS ParallelClusterpara incluir la nueva configuraciónOnNodeConfiguredaction.

46 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Programadores admitidos por AWS ParallelCluster

CustomActions: OnNodeConfigured: Script: https://.s3..amazonaws.com/myscript.sh Args: - "R" - "curl" - "wget"

Si el bucket no tiene permiso de lectura pública, utilices3como protocolo URL.

CustomActions: OnNodeConfigured: Script: s3:///myscript.sh Args: - "R" - "curl" - "wget"

4. Lance el clúster.

pcluster create-cluster --cluster-name mycluster \ --region --cluster-configuration config-file.yaml

5. Verifique el resultado.

$ less /var/log/cfn-init.log

2021-09-03 10:43:54,588 [DEBUG] Command run postinstall output: The script has 3 arguments arg: R arg: curl arg: wget Loaded plugins: dkms-build-requires, priorities, update-motd, upgrade-helper Package R-3.4.1-1.52.amzn1.x86_64 already installed and latest version Package curl-7.61.1-7.91.amzn1.x86_64 already installed and latest version Package wget-1.18-4.29.amzn1.x86_64 already installed and latest version Nothing to do

Programadores admitidos por AWS ParallelCluster

Programadores admitidos porAWS ParallelCluster

AWS ParallelClusteres compatible conSlurmyAWS Batch, establezca mediante elScheduler (p. 102)configuración de.

Temas • Slurm Workload Manager (slurm) (p. 47) • Slurmguía para el modo de cola múltiple (p. 48) • AWS Batch (awsbatch) (p. 55)

Slurm Workload Manager (slurm)

Para obtener más información sobre Slurm, consultehttps://slurm.schedmd.com. Para obtener descargas, consultehttps://www.schedmd.com/downloads.php. Para obtener el código fuente, consultehttps:// github.com/SchedMD/slurm.

47 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Programadores admitidos por AWS ParallelCluster

AWS ParallelClusterLa versión 3.0.0 utiliza Slurm 20.11.8.AWS ParallelClusterversiones entre 2.11.0 y 2.11.2 utilizan Slurm 20.11.7.AWS ParallelClusterLa versión 2.10.4 utiliza Slurm 20.02.7.AWS ParallelClusterversiones entre 2.9.0 y 2.10.3 utilizan Slurm 20.02.4.AWS ParallelClusterversiones entre 2.6 y 2.8.1 utilizan Slurm 19.05.5.AWS ParallelClusterLas versiones 2.5.0 y 2.5.1 utilizan Slurm 19.05.3-2.AWS ParallelClusterLas versiones de comprendidas entre la 2.3.1 y la 2.4.1 utilizan Slurm 18.08.6-2.AWS ParallelClusterversiones anteriores a 2.3.1 utilizan Slurm 16.05.3-1. Slurmguía para el modo de cola múltiple

En las secciones siguientes se proporciona una descripción general sobre el uso de un clúster de Slurm con la arquitectura de escalado. Overview

La arquitectura de escalado se basa enSlurm'sGuía de programación en la nubey el complemento de ahorro de energía. Para obtener más información sobre el complemento de ahorro de energía, consulteSlurmGuía de ahorro de energía. En la arquitectura, los recursos que potencialmente pueden estar disponibles para un clúster suelen estar predefinidos en elSlurmcomo nodos en la nube. Ciclo de vida del nodo de la nube

A lo largo de su ciclo de vida, los nodos de la nube introducen varios, si no todos, los siguientes estados:POWER_SAVING,POWER_UP(pow_up),ALLOCATED(alloc), yPOWER_DOWN(pow_dn). En algunos casos, un nodo en la nube puede entrar en elOFFLINEEstado. La siguiente lista detalla varios aspectos de estos estados en el ciclo de vida de los nodos de la nube.

• Un nodo en unPOWER_SAVINGaparece con un~sufijo (por ejemploidle~) ensinfo. En este estado, no hay ninguna instancia EC2 que respalde el nodo. Sin embargo,Slurmtodavía puede asignar trabajos al nodo. • Un nodo que pasa a unPOWER_UPaparece con un#sufijo (por ejemploidle#) ensinfo. • CuandoSlurmasigna el trabajo a un nodo en unPOWER_SAVING, el nodo se transfiere automáticamente a unPOWER_UPEstado. De lo contrario, los nodos se pueden colocar en elPOWER_UPmanualmente usando el comandoscontrol update nodename=nodename state=power_upcomando. En esta etapa, elResumeProgramy las instancias de EC2 se inician y configuran para respaldar unPOWER_UPnodo. • Un nodo que está disponible actualmente para su uso aparece sin ningún sufijo (por ejemploidle) ensinfo. Una vez configurado el nodo y se ha unido al clúster, estará disponible para ejecutar trabajos. En esta etapa, el nodo está configurado correctamente y listo para su uso. Como regla general, se recomienda que el número de instancias en EC2 sea el mismo que el número de nodos disponibles. En la mayoría de los casos, los nodos estáticos siempre están disponibles después de crear el clúster. • Un nodo que está en transición a unPOWER_DOWNaparece con un%sufijo (por ejemploidle %) ensinfo. Los nodos dinámicos entran automáticamentePOWER_DOWNestado despuésScaledownIdletime (p. 115). Por el contrario, los nodos estáticos en la mayoría de los casos no están apagados. Sin embargo, los nodos se pueden colocar en elPOWER_DOWNmanualmente usando el comandoscontrol update nodename=nodename state=powering_downcomando. En este estado, la instancia asociada a un nodo finaliza y el nodo se restablece de nuevo alPOWER_SAVINGestado para uso futuro después deScaledownIdletime (p. 115). Lascaledown-idletimese guarda en elSlurmya que la propiedadSuspendTimeoutconfiguración de. • Un nodo que está sin conexión aparece con un*sufijo (por ejemplodown*) ensinfo. Un nodo se desconecta siSlurmno puede ponerse en contacto con el nodo o si los nodos estáticos están deshabilitados y las instancias de respaldo se terminan.

Ahora considere los estados de nodo que se muestran en el siguientesinfoEjemplo de de .

$ sinfo PARTITION AVAIL TIMELIMIT NODES STATE NODELIST

48 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Programadores admitidos por AWS ParallelCluster

efa up infinite 4 idle~ efa-dy-efacompute1-[1-4] efa up infinite 1 idle efa-st-efacompute1-1 gpu up infinite 1 idle% gpu-dy-gpucompute1-1 gpu up infinite 9 idle~ gpu-dy-gpucompute1-[2-10] ondemand up infinite 2 mix# ondemand-dy-ondemandcompute1-[1-2] ondemand up infinite 18 idle~ ondemand-dy-ondemandcompute1- [3-10],ondemand-dy-ondemandcompute2-[1-10] spot* up infinite 13 idle~ spot-dy-spotcompute1-[1-10],spot- dy-spotcompute2-[1-3] spot* up infinite 2 idle spot-st-spotcompute2-[1-2]

Laspot-st-spotcompute2-[1-2]yefa-st-efacompute1-1ya tienen instancias de respaldo configuradas y están disponibles para su uso. Laondemand-dy-ondemandcompute1-[1-2]se encuentran en elPOWER_UPEstado, y deberían estar disponibles en unos minutos. Lagpu- dy-gpucompute1-1está en el nodoPOWER_DOWNestado, y pasará aPOWER_SAVINGestado despuésScaledownIdletime (p. 115)(el valor predeterminado es 10 minutos).

Todos los demás nodos están enPOWER_SAVINGsin instancias EC2 que las respalden. Trabajar con un nodo disponible

Un nodo disponible está respaldado por una instancia EC2. De forma predeterminada, el nombre del nodo se puede usar para SSH directamente en la instancia (por ejemplossh efa-st-efacompute1-1). La dirección IP privada de la instancia se puede recuperar utilizando lascontrol show nodes nodenamey comprobando el comandoNodeAddr. Para los nodos que no están disponibles, elNodeAddrno debería apuntar a una instancia de EC2 en ejecución. En cambio, debe ser el mismo que el nombre del nodo. Estados del Job y presentación

Los trabajos enviados en la mayoría de los casos se asignan inmediatamente a los nodos del sistema, o se colocan en pendientes si se asignan todos los nodos.

Si los nodos asignados para un trabajo incluyen nodos en unPOWER_SAVING, el trabajo comienza con unCF, o bienCONFIGURINGEstado. En este momento, el trabajo espera a los nodos en elPOWER_SAVINGEstado al que se hace la transiciónPOWER_UPestado y estar disponible.

Después de que todos los nodos asignados para un trabajo estén disponibles, el trabajo ingresa elRUNNING(R) Estado.

De forma predeterminada, todos los trabajos se envían a la cola predeterminada (conocida como partición enSlurm). Esto es significado por una*después del nombre de la cola. Puede seleccionar una cola utilizando la herramienta-popción de envío de trabajos.

Todos los nodos están configurados con las siguientes características, que se pueden utilizar en los comandos de envío de trabajos:

• Un tipo de instancia (por ejemploc5.xlarge) • Un tipo de nodo (Esto esdynamicorstatic.)

Puede ver todas las funciones disponibles para un nodo en particular mediante lascontrol show nodes nodenamey comprobando el comandoAvailableFeatureslista.

Otra consideración son los puestos de trabajo. En primer lugar, considere el estado inicial del clúster, que puede ver ejecutando elsinfocomando.

$ sinfo PARTITION AVAIL TIMELIMIT NODES STATE NODELIST efa up infinite 4 idle~ efa-dy-efacompute1-[1-4] efa up infinite 1 idle efa-st-efacompute1-1

49 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Programadores admitidos por AWS ParallelCluster

gpu up infinite 10 idle~ gpu-dy-gpucompute1-[1-10] ondemand up infinite 20 idle~ ondemand-dy-ondemandcompute1- [1-10],ondemand-dy-ondemandcompute2-[1-10] spot* up infinite 13 idle~ spot-dy-spotcompute1-[1-10],spot- dy-spotcompute2-[1-3] spot* up infinite 2 idle spot-st-spotcompute2-[1-2]

Tenga en cuenta quespotes la cola predeterminada. Se indica con el*sufijo.

Envíe un trabajo a un nodo estático a la cola predeterminada (spot).

$ sbatch --wrap "sleep 300" -N 1 -C static

Envíe un trabajo a un nodo dinámico a laEFAqueue.

$ sbatch --wrap "sleep 300" -p efa -C dynamic

Enviar un trabajo a ocho (8)c5.2xlargey dos (2)t2.xlargea la propiedadondemandqueue.

$ sbatch --wrap "sleep 300" -p ondemand -N 10 -C "[c5.2xlarge*8&t2.xlarge*2]"

Envíe un trabajo a un nodo de GPU a lagpuqueue.

$ sbatch --wrap "sleep 300" -p gpu -G 1

Ahora considere el estado de los trabajos utilizando lasqueuecomando.

$ squeue JOBID PARTITION NAME USER ST TIME NODES NODELIST(REASON) 12 ondemand wrap ubuntu CF 0:36 10 ondemand-dy- ondemandcompute1-[1-8],ondemand-dy-ondemandcompute2-[1-2] 13 gpu wrap ubuntu CF 0:05 1 gpu-dy-gpucompute1-1 7 spot wrap ubuntu R 2:48 1 spot-st-spotcompute2-1 8 efa wrap ubuntu R 0:39 1 efa-dy-efacompute1-1

Trabajos 7 y 8 (en elspotyefa(colas) ya se están ejecutando (R). Los trabajos 12 y 13 todavía se están configurando (CF), probablemente esperando a que las instancias estén disponibles.

# Nodes states corresponds to state of running jobs $ sinfo PARTITION AVAIL TIMELIMIT NODES STATE NODELIST efa up infinite 3 idle~ efa-dy-efacompute1-[2-4] efa up infinite 1 mix efa-dy-efacompute1-1 efa up infinite 1 idle efa-st-efacompute1-1 gpu up infinite 1 mix~ gpu-dy-gpucompute1-1 gpu up infinite 9 idle~ gpu-dy-gpucompute1-[2-10] ondemand up infinite 10 mix# ondemand-dy-ondemandcompute1- [1-8],ondemand-dy-ondemandcompute2-[1-2] ondemand up infinite 10 idle~ ondemand-dy-ondemandcompute1- [9-10],ondemand-dy-ondemandcompute2-[3-10] spot* up infinite 13 idle~ spot-dy-spotcompute1-[1-10],spot- dy-spotcompute2-[1-3] spot* up infinite 1 mix spot-st-spotcompute2-1 spot* up infinite 1 idle spot-st-spotcompute2-2

50 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Programadores admitidos por AWS ParallelCluster

Estado y características del nodo

En la mayoría de los casos, los estados de nodo son completamente administrados porAWS ParallelClustersegún los procesos específicos del ciclo de vida de los nodos de la nube descritos anteriormente en este tema.

Sin embargo,AWS ParallelClustertambién reemplaza o termina nodos no saludables enDOWNyDRAINEDestados y nodos que tienen instancias de respaldo en mal estado. Para obtener más información, consulte clustermgtd (p. 297). Estados de partición

AWS ParallelClusteradmite los siguientes estados de partición. ASlurmpartición es una cola enAWS ParallelCluster.

• UP: Indica que la partición está en estado activo. Este es el estado predeterminado de una partición. En este estado, todos los nodos de la partición están activos y disponibles para su uso. • INACTIVE: Indica que la partición está en estado inactivo. En este estado, se terminan todas las instancias que respaldan nodos de una partición inactiva. No se inician nuevas instancias para nodos en una partición inactiva. pcluster update-compute-fleet

• Detener la flota informática- Cuando se ejecuta el siguiente comando, todas las particiones se colocan en elINACTIVE, y el estadoAWS ParallelClustermantienen las particiones en elINACTIVEEstado.

$ pcluster update-compute-fleet --cluster-name testSlurm --region eu-west-1 --status STOPPED_REQUESTED

• Inicio de la flota de cómputos- Cuando se ejecuta el siguiente comando, todas las particiones se colocan inicialmente en elUPEstado. Sin embargo,AWS ParallelClusterno mantienen la partición en unUPEstado. Necesita cambiar los estados de partición manualmente. Todos los nodos estáticos estarán disponibles al cabo de unos minutos. Tenga en cuenta que establecer una partición enUPno enciende ninguna capacidad dinámica.

$ pcluster update-compute-fleet --cluster-name testSlurm --region eu-west-1 --status START_REQUESTED

Cuando se ejecuta la flota de proceso de actualización, puede comprobar el estado del clúster ejecutando elpcluster describe-compute-fleety comprobando el comandoStatus. A continuación se enumeran los estados posibles:

• STOP_REQUESTED: La solicitud de flota de cálculo de parada se envía al clúster. • STOPPING: Elpclusterestá deteniendo actualmente la flota informática. • STOPPED: Elpclusterterminó el proceso de detención, todas las particiones están enINACTIVE, y todas las instancias de cálculo se terminan. • START_REQUESTED: La solicitud de flota de cálculo de inicio se envía al clúster. • STARTING: Elpclusterproceso está comenzando el clúster • RUNNING: Elpclusterterminó el proceso de inicio, todas las particiones están enUPestado, y los nodos estáticos estarán disponibles al cabo de unos minutos. • PROTECTED: este estado indica que algunas particiones tienen errores de arranque consistentes. Las particiones afectadas están inactivas. Investigue el problema y, a continuación, actualice el estado de la flota informática para volver a habilitar la flota.

51 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Programadores admitidos por AWS ParallelCluster

Control manual de colas

En algunos casos, es posible que desee tener algún control manual sobre los nodos o la cola (conocido como una partición enSlurm) en un clúster. Puede administrar nodos en un clúster mediante los siguientes procedimientos comunes.

• Encienda los nodos dinámicos enPOWER_SAVINGEstado: Ejecute lascontrol update nodename=nodename state=power_upo enviar un marcador de posiciónsleep 1solicitud de trabajo para un cierto número de nodos y confiar enSlurmpara encender el número necesario de nodos. • Apagar nodos dinámicos antes deScaledownIdletime (p. 115): Establecer nodos dinámicos enDOWNconscontrol update nodename=nodename state=downcomando.AWS ParallelClusterfinaliza y restablece automáticamente los nodos dinámicos caídos. En general, no recomendamos configurar nodos enPOWER_DOWNdirectamente utilizando elscontrol update nodename=nodename state=power_downcomando. Esto se debe a queAWS ParallelClustermaneja automáticamente el proceso de apagado. No es necesaria ninguna intervención manual alguna. Por lo tanto, le recomendamos que intente establecer nodos enDOWNsiempre que sea posible. • Deshabilite una cola (partición) o detenga todos los nodos estáticos en una partición específica: Establezca la cola específica enINACTIVEconscontrol update partition=queue name state=inactivecomando. Al hacerlo, se terminan todas las instancias que respaldan nodos en la partición. • Habilitar una cola (partición): Establezca la cola específica enINACTIVEconscontrol update partition=queue name state=upcomando.

Comportamiento y ajustes de escalado

A continuación, se muestra un ejemplo del flujo de escala normal:

• El programador recibe un trabajo que requiere dos nodos. • El programador transita dos nodos a unPOWER_UPestado, y llamaResumeProgramcon los nombres de los nodos (por ejemploqueue1-dy-spotcompute1-[1-2]). • ResumeProgramlanza dos instancias EC2 y asigna las direcciones IP privadas y los nombres de host dequeue1-dy-spotcompute1-[1-2], a la espera deResumeTimeout(el período predeterminado es 30 minutos antes de restablecer los nodos. • Las instancias se configuran y se unen al clúster. El Job comienza a ejecutarse en instancias. • El Job ya está hecho. • Después de la configuraciónSuspendTimeha transcurrido (que se establece enScaledownIdletime (p. 115)), las instancias se colocan en elPOWER_SAVINGpor el programador. Plazas programadorasqueue1-dy-spotcompute1-[1-2]enPOWER_DOWNestado y llamadasSuspendProgramcon los nombres de los nodos. • SuspendProgramse llama para dos nodos. Los nodos permanecen en elPOWER_DOWNestado, por ejemplo, quedandoidle%para unSuspendTimeout(el período predeterminado es 120 segundos (2 minutos)). Despuésclustermgtddetecta que los nodos se están apagando, finaliza las instancias de respaldo. Luego, configuraqueue1-dy-spotcompute1-[1-2]en estado inactivo y restablece la dirección IP privada y el nombre de host para que puedan volver a encenderse para futuros trabajos.

Ahora, si las cosas salen mal y una instancia para un nodo en particular no se puede iniciar por alguna razón, entonces sucede lo siguiente.

• El programador recibe un trabajo que requiere dos nodos. • El programador coloca dos nodos de fragmentación de nube enPOWER_UPestado y llamadasResumeProgramcon los nodenames, (por ejemploqueue1-dy-spotcompute1-[1-2]). • ResumeProgramlanza una sola (1) instancia EC2 y configuraqueue1-dy-spotcompute1-1, pero no ha podido lanzar una instancia paraqueue1-dy-spotcompute1-2.

52 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Programadores admitidos por AWS ParallelCluster

• queue1-dy-spotcompute1-1no se verá afectado y se conectará después de llegar aPOWER_UPEstado. • queue1-dy-spotcompute1-2se coloca enPOWER_DOWN, y el trabajo se vuelve a poner en cola automáticamente porqueSlurmdetecta un error del nodo. • queue1-dy-spotcompute1-2vuelve a estar disponible después deSuspendTimeout(el valor predeterminado es 120 segundos (2 minutos)). Mientras tanto, el trabajo se vuelve a poner en cola y puede comenzar a ejecutarse en otro nodo. • El proceso anterior se repite hasta que el trabajo puede ejecutarse en un nodo disponible sin que ocurra un error.

Hay dos parámetros de temporización que se pueden ajustar si es necesario.

• ResumeTimeout(el valor predeterminado es 30 minutos):ResumeTimeoutcontrola la horaSlurmespera antes de poner el nodo en el estado inactivo. • Podría ser útil extender esto si su proceso de instalación anterior y posterior lleva casi tanto tiempo. • Este es también el tiempo máximo queAWS ParallelClusterespera antes de reemplazar o restablecer un nodo si hay un problema. Los nodos de computación se terminan automáticamente si se produce algún error durante el inicio o la configuración. A continuación,AWS ParallelClustertambién reemplaza el nodo cuando ve que la instancia está terminada. • SuspendTimeout(el valor predeterminado es 120 segundos (2 minutos)):SuspendTimeoutcontrola la rapidez con que los nodos se colocan de nuevo en el sistema y están listos para su uso de nuevo. • Un más cortoSuspendTimeoutsignificaría que los nodos se restablecerán más rápidamente, ySlurmpuede intentar iniciar instancias con más frecuencia. • A más largoSuspendTimeouthace que los nodos fallidos se restablezcan Mientras tanto,Slurmneumáticos para usar otros nodos. SiSuspendTimeoutes más de unos pocos minutos,Slurmintenta recorrer todos los nodos del sistema. A más largoSuspendTimeoutpodría ser beneficioso para sistemas a gran escala (más de 1.000 nodos) para reducir el estrés enSlurmvolviendo a poner en cola trabajos fallidos con frecuencia. • Tenga en cuenta queSuspendTimeoutno se refiere al tiempoAWS ParallelClusteresperó para terminar una instancia de respaldo para un nodo. Instancias de copia de seguridad paraPOWER_DOWNse terminan inmediatamente. El proceso de finalización generalmente se termina unos minutos. Sin embargo, durante este tiempo, el nodo permanece en elPOWER_DOWNy no está disponible para su uso en el programador.

Registros para la arquitectura

En la lista siguiente se incluyen los registros de claves. El nombre del flujo de registro utilizado con Amazon CloudWatch Logs tiene el formato{hostname}.{instance_id}.{logIdentifier}, dondeLogIdentifiersigue los nombres de registro.

• ResumeProgram: /var/log/parallelcluster/slurm_resume.log (slurm_resume) • SuspendProgram: /var/log/parallelcluster/slurm_suspend.log (slurm_suspend) • clustermgtd: /var/log/parallelcluster/clustermgtd.log (clustermgtd) • computemgtd: /var/log/parallelcluster/computemgtd.log (computemgtd) • slurmctld: /var/log/slurmctld.log (slurmctld) • slurmd: /var/log/slurmd.log (slurmd)

Problemas comunes y cómo depurar:

Nodos que no pudieron iniciar, encender o unirse al clúster:

• Nodos dinámicos:

53 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Programadores admitidos por AWS ParallelCluster

• Compruebe elResumeProgramregistro para ver siResumeProgramnunca fue llamado con el nodo. Si no es así, marque la casillaslurmctldregistro para determinar siSlurmalguna vez trató de llamar aResumeProgramcon el nodo. Tenga en cuenta que los permisos incorrectos enResumeProgrampodría hacer que falle silenciosamente. • SiResumeProgram, compruebe si se ha iniciado una instancia para el nodo. Si la instancia no se puede iniciar, debería haber un mensaje de error claro sobre por qué la instancia no se pudo iniciar. • Si se inició una instancia, puede haber habido algún problema durante el proceso de arranque. Busque la dirección IP privada y el ID de instancia correspondientes en laResumeProgramy busque los registros de arranque correspondientes para la instancia específica en CloudWatch Logs. • Nodos estáticos: • Compruebe elclustermgtdpara ver si se iniciaron instancias para el nodo. De lo contrario, debería haber errores claros sobre por qué las instancias no se iniciaron. • Si se ha iniciado una instancia, hay algún problema durante el proceso de arranque. Busque la IP privada y el ID de instancia correspondientes en la pestañaclustermgtdy busque los registros de arranque correspondientes para la instancia específica en CloudWatch Logs.

Nodos reemplazados o terminados inesperadamente, errores en los nodos

• Nodos reemplazados/terminados inesperadamente • En la mayoría de los casos,clustermgtdcontrola todas las operaciones de mantenimiento de nodos. Para comprobar siclustermgtdreemplazó o terminó un nodo, marque la casillaclustermgtdregistro. • Siclustermgtdreemplazó o terminó el nodo, debe haber un mensaje indicando el motivo de la acción. Si el motivo está relacionado con el programador (por ejemplo, el nodo fueDOWN), compruebe elslurmctldpara obtener más información. Si la razón está relacionada con EC2,utilizar herramientas para comprobar el estado o los registros de esa instancia. Por ejemplo, puede comprobar si la instancia tenía eventos programados o errores en las comprobaciones de estado de EC2. • Siclustermgtdno terminó el nodo, compruebe sicomputemgtdha terminado el nodo o si EC2 ha terminado la instancia para recuperar una instancia puntual. • Error en el nodo • En la mayoría de los casos, los trabajos se vuelven a poner en cola automáticamente si se produce un error en un nodo. Busque elslurmctldpara ver por qué falló un trabajo o un nodo y analizar la situación desde allí.

Error al reemplazar o terminar instancias, error al apagar nodos

• En general,clustermgtdgestiona todas las acciones de terminación de instancia esperadas. Busque elclustermgtdpara ver por qué no se pudo reemplazar o terminar un nodo. • Para nodos dinámicos que fallanScaledownIdletime (p. 115), busque en elSuspendProgrampara ver si un programa deslurmctldcon el nodo específico como argumento. NotaSuspendProgramen realidad no realiza ninguna acción específica. Más bien, solo registra cuando se llama. Toda la terminación de instancia yNodeAddrrestablecimiento se completan medianteclustermgtd.Slurmpone nodos enIDLEAFTERSuspendTimeout.

Otros problemas.

• AWS ParallelClusterno toma decisiones de asignación de trabajos o escalado. Simple intenta lanzar, terminar y mantener los recursos de acuerdo conSlurminstrucciones.

Para problemas relacionados con las asignaciones de trabajos, la asignación de nodos y la decisión de escalado, consulte laslurmctldpara obtener errores.

54 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Programadores admitidos por AWS ParallelCluster AWS Batch (awsbatch)

Para obtener más información sobre AWS Batch, consulte AWS Batch. Para obtener la documentación, consulte laAWS BatchGuía del usuario de.

AWS ParallelClusterComandos de la CLI deAWS Batch Important

Cuando se utilizaAWS Batch, los trabajos de GPU no son compatibles.

Cuando utiliza la propiedadawsbatch, el programador deAWS ParallelClusterComandos de la CLI deAWS Batchse instalan automáticamente en elAWS ParallelClusternodo principal. La CLI utilizaAWS Batchy permite las siguientes operaciones:

• Enviar y administrar trabajos • Monitorear trabajos, colas y hosts • Crear un reflejo de los comandos del programador tradicionales

Temas • awsbsub (p. 55) • awsbstat (p. 57) • awsbout (p. 58) • awsbkill (p. 58) • awsbqueues (p. 59) • awsbhosts (p. 59) awsbsub

Envía trabajos a la cola de trabajo del clúster. awsbsub [-h] [-jn JOB_NAME] [-c CLUSTER] [-cf] [-w WORKING_DIR] [-pw PARENT_WORKING_DIR] [-if INPUT_FILE] [-p VCPUS] [-m MEMORY] [-e ENV] [-eb ENV_DENYLIST] [-r RETRY_ATTEMPTS] [-t TIMEOUT] [-n NODES] [-a ARRAY_SIZE] [-d DEPENDS_ON] [command] [arguments [arguments ...]]

Argumentos de posición command

Envía el trabajo (el comando especificado debe estar disponible en las instancias de informática) o el nombre de archivo que se va a transferir. Véase también --command-file. arguments

(Opcional) Especifica argumentos para el comando o el archivo de comandos.

Argumentos con nombre

-jn JOB_NAME, --job-name JOB_NAME

Asigna un nombre al trabajo. El primer carácter debe ser una letra o un número. El nombre del trabajo puede contener letras (mayúsculas y minúsculas), números, guiones y caracteres de subrayado, y tener hasta 128 caracteres de longitud.

55 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Programadores admitidos por AWS ParallelCluster

-c CLUSTER, --cluster CLUSTER

Especifica el clúster que se va a utilizar. -cf, --command-file

Indica que el comando es una archivo que se va a transferir a las instancias de informática.

Valor predeterminado: Falso -w WORKING_DIR, --working-dir WORKING_DIR

Especifica la carpeta que se va a usar como directorio de trabajo del trabajo. Si no se especifica un directorio de trabajo, el trabajo se ejecuta en eljob-subcarpeta del directorio de inicio del usuario. Puede utilizar este parámetro o el parámetro --parent-working-dir. -pw PARENT_WORKING_DIR, --parent-working-dir PARENT_WORKING_DIR

Especifica la carpeta principal del directorio de trabajo del trabajo. Si no se especifica un directorio de trabajo principal, el valor predeterminado es el directorio de inicio del usuario. Una subcarpeta llamada job- se crea en el directorio de trabajo principal. Puede utilizar este parámetro o el parámetro --working-dir. -if INPUT_FILE, --input-file INPUT_FILE

Especifica el archivo que se va a transferir a las instancias de computación, en el directorio de trabajo de la tarea. Puede especificar varios parámetros de archivo de entrada. -p VCPUS, --vcpus VCPUS

Especifica la cantidad de CPU virtuales que quiere reservar para el contenedor. Cuando se utiliza junto con las–nodes, identifica la cantidad de vCPUs de cada nodo.

Valor predeterminado: 1 -m MEMORY, --memory MEMORY

Especifica el límite máximo de memoria (en MiB) que se va a proporcionar para el trabajo. Si su trabajo intenta superar el límite de memoria especificado aquí, finaliza.

Valor predeterminado: 128 -e ENV, --env ENV

Especifica una lista de nombres de variable de entorno separados por comas que se van a exportar al entorno de trabajo. Para exportar todas las variables de entorno, especifique "todas". Tenga en cuenta que una lista de «todas» las variables de entorno no incluyen aquellas que figuran en la–env- blacklist, o variables que comienzan con el parámetroPCLUSTER_*orAWS_*prefijo. -eb ENV_DENYLIST, --env-blacklist ENV_DENYLIST

Especifica una lista de nombres de variable de entorno separados por comas que no se van a exportar al entorno de trabajo. De forma predeterminada, no se exportan HOME, PWD, USER, PATH, LD_LIBRARY_PATH, TERM ni TERMCAP. -r RETRY_ATTEMPTS, --retry-attempts RETRY_ATTEMPTS

Especifica la cantidad de veces que toma pasar un trabajo alRUNNABLEEstado. Puede especificar entre 1 y 10 intentos. Si el valor de los intentos es superior a 1, el trabajo se reintenta si produce un error, hasta que haya pasado a unRUNNABLEEstado del número especificado de veces.

Valor predeterminado: 1 -t TIMEOUT, --timeout TIMEOUT

Especifica la duración en segundos (medida a partir de lastartedAtmarca temporal) después de lo cualAWS Batchfinaliza tu trabajo si no ha terminado. El valor del tiempo de inactividad debe ser al menos 60 segundos.

56 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Programadores admitidos por AWS ParallelCluster

-n NODES, --nodes NODES Especifica el número de nodos que quiere reservar para el trabajo. Especifique un valor para este parámetro para habilitar el envío paralelo de varios nodos. Note

Los trabajos paralelos de varios nodos no se admiten cuando lacluster_type (p. 243)El parámetro se establece enspot. -a ARRAY_SIZE, --array-size ARRAY_SIZE Indica el tamaño de la matriz. Puede especificar un valor comprendido entre 2 y 10 000. Si especifica las propiedades de matriz para un trabajo, pasa a ser un trabajo de matriz. -d DEPENDS_ON, --depends-on DEPENDS_ON Especifica una lista de dependencias separadas por puntos y coma para un trabajo. Un trabajo puede depender de un máximo de 20 trabajos. Puede especificar una propiedad deSEQUENTIALSin especificar un ID de trabajo para los trabajos de matriz. Una dependencia SEQUENTIAL permite que cada trabajo de matriz secundario se complete de forma secuencial, a partir del índice 0. También puede especificar una dependencia de tipo N_TO_N con un ID de trabajo para los trabajos de matriz. Una dependencia N_TO_N conlleva que cada índice secundario de este trabajo deba esperar a que se complete el índice secundario correspondiente de cada dependencia antes de comenzar. La sintaxis de este parámetro es «jobId=, tipo=;...». awsbstat Muestra los trabajos que se envían en la cola de trabajos del clúster. awsbstat [-h] [-c CLUSTER] [-s STATUS] [-e] [-d] [job_ids [job_ids ...]]

Argumentos de posición job_ids Especifica la lista de ID de trabajo separados por espacios que se van a mostrar en la salida. Si el trabajo es una matriz de trabajo, se muestran todos los trabajos secundarios. Si se solicita un solo trabajo, se muestra en una versión detallada.

Argumentos con nombre

-c CLUSTER, --cluster CLUSTER Indica el clúster que se va a utilizar. -s STATUS, --status STATUS Especifica una lista de estados de los trabajos separados por comas que se van a incluir. El estado del trabajo predeterminado es "activo". Los valores aceptados son: SUBMITTED, PENDING, RUNNABLE, STARTING, RUNNING, SUCCEEDED, FAILED y ALL.

Valor predeterminado: “SUBMITTED,PENDING,RUNNABLE,STARTING y RUNNING” -e, --expand-children Amplía los trabajos con elementos secundarios (tanto los de matriz como los paralelos de varios nodos).

Valor predeterminado: Falso -d, --details Muestra detalles de los trabajos.

57 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Programadores admitidos por AWS ParallelCluster

Valor predeterminado: Falso awsbout Muestra la salida de un trabajo especificado. awsbout [ - h ] [ - c CLUSTER ] [ - hd HEAD ] [ - t TAIL ] [ - s ] [ - sp STREAM_PERIOD ] job_id

Argumentos de posición job_id Especifica el ID de trabajo.

Argumentos con nombre

-c CLUSTER, --cluster CLUSTER Indica el clúster que se va a utilizar. -hd HEAD, --head HEAD

Obtiene las primeras líneas HEAD de la salida del trabajo. -t TAIL, --tail TAIL Obtiene las últimas líneas de la salida del trabajo. -s, --stream Obtiene la salida del trabajo y, a continuación, espera a que se produzca una salida adicional. Este argumento puede usarse junto a –tail para comenzar desde las últimas líneas de la salida del trabajo.

Valor predeterminado: Falso -sp STREAM_PERIOD, --stream-period STREAM_PERIOD Establece el periodo de streaming.

Valor predeterminado: 5 awsbkill Cancela o termina trabajos enviados en el clúster. awsbkill [ - h ] [ - c CLUSTER ] [ - r REASON ] job_ids [ job_ids ... ]

Argumentos de posición job_ids Especifica la lista de ID de trabajo separados por espacios que se deben cancelar o terminar.

Argumentos con nombre

-c CLUSTER, --cluster CLUSTER Indica el nombre del clúster que se va a utilizar.

58 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Programadores admitidos por AWS ParallelCluster

-r REASON, --reason REASON

Indica el mensaje que se asociará a un trabajo, en el cual se explica el motivo de su cancelación.

Valor predeterminado: “Terminated by the user” awsbqueues

Muestra la cola de trabajos que se asocia al clúster. awsbqueues [ - h ] [ - c CLUSTER ] [ - d ] [ job_queues [ job_queues ... ]]

Argumentos de posición job_queues

Especifica la lista de nombres de colas separados por espacios que se van a mostrar. Si se solicita una sola cola, se muestra en una versión detallada.

Los argumentos con nombre

-c CLUSTER, --cluster CLUSTER

Especifica el nombre del clúster que se va a utilizar. -d, --details

Indica si se deben mostrar los detalles de las colas.

Valor predeterminado: Falso awsbhosts

Muestra los hosts que pertenecen al entorno informático del clúster. awsbhosts [ - h ] [ - c CLUSTER ] [ - d ] [ instance_ids [ instance_ids ... ]]

Argumentos de posición instance_ids

Especifica una lista de ID de instancias separados por espacios. Si se solicita una sola instancia, se muestra en una versión detallada.

Argumentos con nombre

-c CLUSTER, --cluster CLUSTER

Especifica el nombre del clúster que se va a utilizar. -d, --details

Indica si se deben mostrar los detalles de los hosts.

Valor predeterminado: Falso

59 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Configuración de varias colas Configuración de varias colas

Configuración de varias colas

AWS ParallelClusterversión 3.0.0 admite varias colas a través de la especificación en el archivo de configuración cuandoScheduler (p. 102)toma el valorslurmy más de unSlurmQueues (p. 105)ya no está disponible. Este modo permite que diferentes tipos de instancias coexistan en los nodos de computación como se especifica en elComputeResources (p. 108)parte de la configuración. Los recursos informáticos que contienen los diferentes tipos de instancias se pueden escalar hacia arriba o hacia abajo según sea necesario. Tenga en cuenta que actualmente hay un máximo de cinco (5)ComputeResources (p. 108)por cola y un máximo de diez (10) colas que se pueden especificar. Cada una de las colas especificadas corresponde a una partición en elSlurm Workload Manager. Para obtener más información, consulte Slurm Workload Manager (slurm) (p. 47).

Recuentos de nodo

EACHComputeResources (p. 108)En una cola debe tener unName (p. 108)yInstanceType (p. 109)así como unMinCount (p. 109)yMaxCount (p. 109)especificar el rango de instancias para eseComputeResources (p. 108)dentro de la cola. EACHComputeResources (p. 108)estará compuesto de nodos estáticos numerados desde 1 hasta el valor deMinCount (p. 109). Nodos dinámicos para cadaComputeResources (p. 108)están numerados de la listaMinCount (p. 109)a laMaxCount (p. 109).

Ejemplo de configuración

A continuación se proporciona una sección de ejemplo de un archivo de configuración de clúster. En esta configuración hay dos colas denominadasqueue1yqueue2respectivamente y cada una de las colas tieneComputeResources (p. 108)definido con unMaxCount (p. 109).

Scheduling: Scheduler: slurm SlurmQueues: - Name: queue1 ComputeResources: - InstanceType: c5.xlarge MaxCount: 5 Name: c5xlarge - InstanceType: c4.xlarge MaxCount: 5 Name: c4xlarge - Name: queue2 ComputeResources: - InstanceType: c5.xlarge MaxCount: 5 Name: c5xlarge

Hostname

Las instancias que se inician en la flota informática se asignan dinámicamente. Para ayudar a administrar esto, se generan nombres de host para cada nodo. El formato del nombre de host es el siguiente:

$HOSTNAME=$QUEUE-$STATDYN-$COMPUTE_RESOURCE-$NODENUM

• $QUEUEes el nombre de la cola. Por ejemplo, si la propiedadSlurmQueues (p. 105)tiene una entrada con elName (p. 106)establecido en»queue-name» entonces»$QUEUE» es»queue-name». • $STATDYNesstpara nodos estáticos odypara nodos dinámicos. • $COMPUTE_RESOURCEserá elName (p. 108)de laComputeResource (p. 108)correspondiente a este nodo.

60 AWS ParallelCluster Guía del usuario de AWS ParallelCluster AWS ParallelClusterAPI de

• $NODENUMes el número del nodo.$NODENUMestá entre uno (1) y el valor deMinCount (p. 109)para nodos estáticos y entre uno (1) yMaxCount (p. 109)-MinCount (p. 109)para nodos dinámicos.

A partir del archivo de configuración de ejemplo anterior, un nodo dado dequeue1y computar recursos de computaciónc5xlargetendría un nombre de host:queue1-dy-c5xlarge-1.

Tanto los nombres de host como los nombres de dominio completos (FQDN) se crean mediante zonas alojadas de Amazon Route 53. El FQDN es$HOSTNAME.$CLUSTERNAME.pcluster, donde$CLUSTERNAMEes el nombre del clúster. AWS ParallelClusterAPI de

¿Qué es ?AWS ParallelCluster¿API?

AWS ParallelClusterAPI es una aplicación sin servidor que una vez implementada en su Cuenta de AWS permitirá el acceso programático aAWS ParallelClustera través de API.

AWS ParallelClusterAPI se distribuye como unAWS CloudFormationLa plantilla consiste principalmente en un punto de enlace de Amazon API Gateway, que exponeAWS ParallelCluster, y unAWS Lambda, que se encarga de ejecutar las características invocadas.

La siguiente imagen muestra un diagrama de arquitectura de alto nivel delAWS ParallelClusterInfraestructura de API.

61 AWS ParallelCluster Guía del usuario de AWS ParallelCluster AWS ParallelClusterAPI de

62 AWS ParallelCluster Guía del usuario de AWS ParallelCluster AWS ParallelClusterAPI de

AWS ParallelClusterDocumentación de la API

El archivo de especificación de OpenAPI que describe elAWS ParallelClusterAPI se puede descargar desde: https://-aws-parallelcluster.s3..amazonaws.com/parallelcluster/ /api/ParallelCluster.openapi.yaml

A partir del archivo de especificación de OpenAPI, puede generar documentación paraAWS ParallelClustermediante el uso de una de las muchas herramientas disponibles, comoIU de SwaggerorRedoc.

Cómo implementarAWS ParallelClusterAPI

Para implementarAWS ParallelClusternecesita ser un administrador de la Cuenta de AWS .

La plantilla utilizada para implementar la API está disponible en la siguiente URL: https://-aws-parallelcluster.s3..amazonaws.com/ parallelcluster//api/parallelcluster-api.yaml wherees el Región de AWS donde la API necesita ser implementada en yes elAWS ParallelClusterversión (por ejemplo, 3.0.0).

La imagen Docker utilizada para implementar elAWS Lambdafunción de implementaciónAWS ParallelClusterestá disponible en:https://gallery.ecr.aws/parallelcluster/pcluster-api Warning

Cualquier usuario en el Cuenta de AWS , que tiene acceso privilegiado aAWS Lambdao los servicios de Amazon API Gateway, heredarán automáticamente los permisos para administrarAWS ParallelClusterRecursos de la API de.

Implementar conAWS CLI

ConfiguraciónAWSCredenciales que se utilizarán con la CLI si aún no se han hecho. aws configure

Ejecute el siguiente comando para implementar la API de

REGION= API_STACK_NAME= # This can be any name VERSION=3.0.0 aws cloudformation create-stack \ --region ${REGION} \ --stack-name ${API_STACK_NAME} \ --template-url https://${REGION}-aws-parallelcluster.s3.${REGION}.amazonaws.com/ parallelcluster/${VERSION}/api/parallelcluster-api.yaml \ --capabilities CAPABILITY_NAMED_IAM CAPABILITY_AUTO_EXPAND aws cloudformation wait stack-create-complete --stack-name ${API_STACK_NAME} --region ${REGION}

Personalice la implementación

La implementación de API puede personalizarse mediante elAWS CloudFormationexpuestos por la plantilla. Para configurar el valor de un parámetro cuando se implementa a través de la CLI, se puede utilizar la siguiente opción:--parameters ParameterKey=KeyName,ParameterValue=Value.

63 AWS ParallelCluster Guía del usuario de AWS ParallelCluster AWS ParallelClusterAPI de

Los parámetros que se describen a continuación son opcionales.

• Región- ElRegionse puede usar para determinar si la API es capaz de controlar los recursos en todos los Regiones de AWS (predeterminado) o en una sola Región de AWS . Establezca este valor en la región en la que se está implementando la API para restringir el acceso. • ParallelClusterFunctionRole- Esto anula el rol de IAM que se asigna alAWS Lambdafunción de implementaciónAWS ParallelClusterCaracterísticas de. El parámetro acepta el ARN de un rol de IAM. Dicho rol debe configurarse para tenerAWS Lambdacomo principal de IAM. • CustomDomainName, CustomDomainCertificate, CustomDomainHostedZoneID: estos parámetros permiten establecer un dominio personalizado para el endpoint de Amazon API Gateway.CustomDomainNamees el nombre del dominio que se va a usar,CustomDomainCertificatees el ARN de unAWScertificado administrado para este nombre de dominio yCustomDomainHostedZoneIdes el ID de la zona alojada en la que desea crear registros. • EnableIamAdminAccess- De forma predeterminada, elAWS LambdaFunction para ejecutarAWS ParallelClusterLas operaciones de API se configuran con un rol de IAM que impide cualquier acceso privilegiado de IAM (EnableIamAdminAccess=false). Esto hace que la API no pueda ejecutar operaciones que requieren la creación de roles o directivas de IAM. Debido a esto, la creación de clústeres o imágenes personalizadas sólo se realiza correctamente cuando los roles de IAM se proporcionan como entrada como parte de la configuración de recursos.

CuandoEnableIamAdminAccesstoma el valortrueelAWS ParallelClusterLa API tiene permisos para administrar la creación de roles de IAM necesarios para implementar clústeres o generar AMI personalizadas. Warning

Si se establece esto en true, se otorgan privilegios de administrador de IAM alAWS LambdaFunction para ejecutarAWS ParallelCluster.

ConsultePolítica de usuario para administrar los recursos de IAM (p. 28)para obtener más detalles sobre las funciones que se pueden desbloquear al activar este modo. • PermisionesBoundaryPolicy- Este parámetro acepta el ARN de una política de IAM y sólo se puede utilizar cuandoEnableIamAdminAccesstoma el valortrue. Cuando se especifica una directiva de IAM, los permisos de IAM otorgados a la APIAWS Lambdaestá condicionalmente restringida al uso del límite de permisos dado.

ConsultePermissionsBoundarymode (p. 31)Para obtener información detallada sobre las restricciones impuestas por este modo. • CreateApiUserRole- De forma predeterminada, la implementación de laAWS ParallelClusterAPI incluye la creación de un rol de IAM que se establece como el único rol autorizado para invocar la API. De hecho, el extremo de Amazon API Gateway está configurado con una política basada en recursos para conceder permiso de invocación únicamente al usuario creado. Para levantar dicho conjunto de restriccionesCreateApiUserRole=falsey, a continuación, conceder acceso a la API a los usuarios de IAM seleccionados. Para obtener más información, consulteControlar el acceso para invocar una APIen laGuía para desarrolladores de Amazon API Gateway. Warning

CuandoCreateApiUserRole=trueel acceso al extremo de la API no está restringido por las políticas de recursos de Amazon API Gateway, ya que todos los roles de IAM tienenexecute- api:Invokeel permiso podrá acceder aAWS ParallelClusterCaracterísticas de. Para obtener más información, consulte .Control del acceso a una API con políticas de recursos de API Gatewayen laGuía para desarrolladores de API Gateway. Warning

LaParallelClusterApiUserRoletiene permisos de invocación para todos losAWS ParallelClusterOperaciones de la API de. Para restringir el acceso a un subconjunto de recursos 64 AWS ParallelCluster Guía del usuario de AWS ParallelCluster AWS ParallelClusterAPI de

de la API, consulte laControlar quién puede llamar a una API de API Gateway con políticas de IAMen laGuía para desarrolladores de API Gateway.

Actualización de la API de

Caso de uso 1: actualizar a una versión más recienteAWS ParallelClusterversion

Opción 1: Elimine la API existente eliminando elAWS CloudFormationy desplegar la nueva API como se muestra arriba.

Opción 2: Actualice la API existente ejecutando las siguientes instrucciones:

REGION= API_STACK_NAME= # This needs to correspond to the existing API stack name VERSION=3.0.0 aws cloudformation update-stack \ --region ${REGION} \ --stack-name ${API_STACK_NAME} \ --template-url https://${REGION}-aws-parallelcluster.s3.${REGION}.amazonaws.com/ parallelcluster/${VERSION}/api/parallelcluster-api.yaml \ --capabilities CAPABILITY_NAMED_IAM CAPABILITY_AUTO_EXPAND aws cloudformation wait stack-update-complete --stack-name ${API_STACK_NAME} --region ${REGION}

Caso de uso 2: actualizar la API a la última compilación de imagen Docker disponible para elAWS ParallelClusterversion

AWS ParallelClusterpuede implementar periódicamente imágenes Docker actualizadas para la APIAWS Lambdaque contienen dependencias actualizadas y parcheadas. Estas imágenes actualizadas no incluyen ningún cambio en términos de las características enviadas con elAWS ParallelClusterVersión de . Para utilizar la última imagen de Docker para la versión implementada de la API, puede ejecutar las siguientes instrucciones:

REGION= API_STACK_NAME= DOCKER_UPDATE_IMAGE_PIPELINE=$(aws cloudformation describe-stacks --region ${REGION} --stack-name ${API_STACK_NAME} --query "Stacks[0].Outputs[? OutputKey=='ParallelClusterDockerUpdateImagePipeline'].OutputValue" --output text) aws imagebuilder start-image-pipeline-execution --region ${REGION} --image-pipeline-arn ${DOCKER_UPDATE_IMAGE_PIPELINE}

Esto desencadena una compilación de una canalización EC2 Image Builder que se encarga de obtener la última versión disponibleAWS ParallelClusterImagen Docker para la versión de API implementada.

InvocaciónAWS ParallelClusterAPI

LaAWS ParallelClusterEl extremo de Amazon API Gateway se configura conAWS_IAMTipo de autorización, por lo que se requiere que todas las solicitudes se firmen con credenciales IAM válidas (Referencia de API: hacer solicitudes http).

Cuando se implementa con la configuración predeterminada, los permisos de invocación de API solo se conceden al usuario predeterminado de IAM creado con la API.

Para recuperar el ARN de dicho usuario ejecute:

REGION= API_STACK_NAME= aws cloudformation describe-stacks --region ${REGION} --stack-name ${API_STACK_NAME} -- query "Stacks[0].Outputs[?OutputKey=='ParallelClusterApiUserRole'].OutputValue" --output text

65 AWS ParallelCluster Guía del usuario de AWS ParallelCluster AWS ParallelClusterAPI de

Las credenciales temporales para dicho usuario se pueden obtener mediante una llamada aSTS AssumeRole.

LaAWS ParallelClusterEl punto de enlace de la API se puede obtener ejecutando el siguiente comando:

REGION= API_STACK_NAME= aws cloudformation describe-stacks --region ${REGION} --stack-name ${API_STACK_NAME} -- query "Stacks[0].Outputs[?OutputKey=='ParallelClusterApiInvokeUrl'].OutputValue" --output text

LaAWS ParallelClusterAPI puede ser invocada por cualquier cliente HTTP que cumpla con las especificaciones de OpenAPI que se pueden encontrar aquí: https://-aws-parallelcluster.s3..amazonaws.com/parallelcluster/ /api/ParallelCluster.openapi.yaml

Las solicitudes deben estar firmadas por SIGv4 como se documentaAQUÍ.

En este momento no ofrecemos ninguna implementación oficial de cliente API. Sin embargo, los clientes de API se pueden generar fácilmente desde el modelo OpenAPI usandoGenerador de OpenAPI. Una vez que se genera el cliente, la firma SIGv4 debe agregarse si no se proporciona de inmediato.

Se puede encontrar una implementación de referencia para un cliente de API de Python en laAWS ParallelClusterrepository.

Para implementar un mecanismo de control de acceso más avanzado, como Amazon Cognito o Lambda Authorizers, o para proteger aún más la API conAWS WAFo API, por favor, siga elDocumentación de Amazon API Gateway. Warning

Un usuario de IAM autorizado para invocar elAWS ParallelClusterAPI podrá controlar indirectamente todos losAWSadministrados porAWS ParallelClusteren la Cuenta de AWS . Esto incluye la creación deAWSque el usuario de IAM no puede controlar directamente debido a restricciones en su política de IAM. Por ejemplo, la creación de unAWS ParallelCluster, en función de su configuración, puede incluir la implementación de instancias de Amazon EC2, Amazon Route 53, sistemas de archivos de Amazon Elastic File System, sistemas de archivos de Amazon FSx, roles de IAM y recursos de otrosServicios de AWSUsado porAWS ParallelClusterque es posible que el usuario de IAM no tenga control directo sobre.

Acceso a los registros y métricas de la API

Los registros de API se publican en Amazon CloudWatch con una retención de 30 días. Para recuperar el nombre de LogGroup asociado a una implementación de API, ejecute el siguiente comando:

REGION= API_STACK_NAME= aws cloudformation describe-stacks --region ${REGION} --stack-name ${API_STACK_NAME} -- query "Stacks[0].Outputs[?OutputKey=='ParallelClusterLambdaLogGroup'].OutputValue" --output text

Métricas, registros y registros de LambdaAWS X-Raytambién se puede acceder a los registros de seguimiento a través de la consola de Lambda. Para recuperar el ARN de la función Lambda asociada a una implementación de API, ejecute el siguiente comando:

REGION=

66 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Connect al nodo director a través de NICE DCV

API_STACK_NAME= aws cloudformation describe-stacks --region ${REGION} --stack-name ${API_STACK_NAME} -- query "Stacks[0].Outputs[?OutputKey=='ParallelClusterLambdaArn'].OutputValue" --output text

Connect al nodo director a través de NICE DCV

NICE DCV es una tecnología de visualización remota que permite a los usuarios conectarse de forma segura a aplicaciones 3D con gráficos avanzados hospedadas en un servidor remoto de alto desempeño. Para obtener más información, consulteNICE DCV.

El software NICE DCV se instala automáticamente en el nodo principal y se puede activar mediante elDcv (p. 96)de la secciónHeadNodeConfiguración de .

Headode: Dcv: Enabled: true

Para obtener más información sobre los parámetros de configuración de NICE DCV, consulteDcv (p. 96). Para conectarse a la sesión de NICE DCV, utilice elpcluster dcv- connect (p. 82)comando. Certificado NICE DCV HTTPS

El DCV de NICE genera automáticamente un certificado autofirmado para proteger el tráfico entre el cliente de NICE DCV y el servidor NICE DCV.

Para reemplazar el certificado DCV de NICE autofirmado de predeterminado por otro certificado, conéctese primero al nodo principal. A continuación, copie el certificado y la clave en la carpeta /etc/dcv antes de ejecutar el comando pcluster dcv-connect (p. 82).

Para obtener más información, consulteCambio del certificado TLSen laGuía para el administrador NICE DCV. Licencia NICE DCV

El servidor de DCV de NICE no requiere un servidor de licencias cuando se ejecuta en instancias de Amazon EC2. Sin embargo, el servidor de DCV de NICE debe conectarse periódicamente a un bucket de Amazon S3 para determinar si hay alguna licencia válida disponible.

AWS ParallelClusteragrega automáticamente los permisos necesarios a la política de IAM del nodo principal. Cuando utilice una política de instancias de IAM personalizada, use los permisos descritos enNICE DCV en Amazon EC2en laGuía para el administrador NICE DCV.

Para obtener sugerencias acerca de la solución de problemas, consulte Solución de problemas en NICE DCV (p. 333). Uso pcluster update-cluster

EnAWS ParallelCluster3.x,pcluster update-cluster (p. 80)analiza la configuración utilizada para crear el clúster actual y la configuración del archivo de configuración en busca de problemas. Si se detecta algún problema, se notifican y se muestran los pasos a seguir para solucionarlos. Por ejemplo, si el cálculoInstanceType (p. 109), la flota informática debe detenerse antes de que pueda continuar una actualización. Este problema se notifica cuando se detecta. Si no se detectan problemas de bloqueo, se inicia el proceso de actualización y se informa de los cambios.

67 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Uso pcluster update-cluster Actualizar definiciones de políticas

Política de actualización: Esta configuración se puede cambiar durante una actualización.

Después de cambiar esta configuración, el clúster se puede actualizar mediantepcluster update- cluster (p. 80). Política de actualización: Si se cambia esta configuración, la actualización no está permitida.

Después de cambiar esta configuración, el clúster no se puede actualizar. El cambio debe revertirse o el clúster debe eliminarse (usandopcluster delete-cluster (p. 83)) y, a continuación, se crea un nuevo clúster (usandopcluster create-cluster (p. 73)) en el lugar del antiguo clúster. Política de actualización: Esta configuración no se analiza durante una actualización.

Estos ajustes se pueden cambiar y el clúster se actualiza mediantepcluster update- cluster (p. 80). Política de actualización: La flota informática debe detenerse para que esta configuración se cambie para una actualización.

Esta configuración no se puede cambiar mientras exista la flota informática. O bien se debe revertir el cambio o se debe detener la flota informática (usandopcluster update-compute- fleet (p. 81)), actualizado (usandopcluster update-cluster (p. 80)) y, a continuación, se crea una nueva flota informática (usandopcluster update-compute-fleet (p. 81)). Política de actualización: Esta configuración no puede reducirse durante una actualización.

Estos ajustes se pueden cambiar, pero no se pueden disminuir. Si se debe disminuir esta configuración, es necesario eliminar el clúster (usandopcluster delete-cluster (p. 83)) y cree un nuevo clúster (usandopcluster create-cluster (p. 73)). Política de actualización: Reducir el tamaño de una cola por debajo del número actual de nodos requiere que se detenga primero la flota informática.

Estos ajustes se pueden cambiar, pero si el cambio reduciría el tamaño de la cola por debajo del tamaño actual, se debe detener la flota informática (usandopcluster update-compute- fleet (p. 81)), actualizado (usandopcluster update-cluster (p. 80)) y, a continuación, se crea una nueva flota informática (usandopcluster update-compute-fleet (p. 81)). Política de actualización: Reducir el número de nodos estáticos en una cola requiere que la flota informática se detenga primero.

Estos ajustes se pueden cambiar, pero si el cambio reduciría el número de nodos estáticos en la cola por debajo del tamaño actual, la flota informática debe detenerse (usandopcluster update- compute-fleet (p. 81)), actualizado (usandopcluster update-cluster (p. 80)) y, a continuación, se crea una nueva flota informática (usandopcluster update-compute- fleet (p. 81)). Política de actualización: Si se cambia esta configuración, la actualización no está permitida. Si fuerza la actualización, el nuevo valor se ignorará y se usará el valor anterior.

Esta configuración no se puede cambiar si el clúster existente no se ha eliminado. El cambio debe revertirse o el clúster debe eliminarse (usandopcluster delete-cluster (p. 83)) y, a continuación, se crea un nuevo clúster (usandopcluster create-cluster (p. 73)) en el lugar del antiguo clúster. pcluster update-cluster Ejemplos

• En este ejemplo se muestra una actualización con algunos cambios permitidos y la actualización se inicia directamente.

68 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Uso pcluster update-cluster

$ pcluster update-cluster --cluster-name cluster_name --cluster-config ~/.parallelcluster/test_cluster --region us-east-1 { "cluster": { "clusterName": cluster_name, "cloudformationStackStatus": "UPDATE_IN_PROGRESS", "cloudformationStackArn": stack_arn, "region": "us-east-1", "version": "3.0.0", "clusterStatus": "UPDATE_IN_PROGRESS" }, "changeSet": [ { "parameter": "HeadNode.Networking.AdditionalSecurityGroups", "requestedValue": [ "sg-0cd61884c4ad11234" ], "currentValue": [ "sg-0cd61884c4ad16341" ] } ] }

• Este ejemplo muestra una actualización de ejecución en seco con algunos cambios permitidos. Dryrun es útil para informar del conjunto de cambios sin iniciar la actualización.

$ pcluster update-cluster --cluster-name cluster_name --cluster-config ~/.parallelcluster/test_cluster --region us-east-1 --dryrun true { "message": "Request would have succeeded, but DryRun flag is set.", "changeSet": [ { "parameter": "HeadNode.Networking.AdditionalSecurityGroups", "requestedValue": [ "sg-0cd61884c4ad11234" ], "currentValue": [ "sg-0cd61884c4ad16341" ] } ] }

• En este ejemplo se muestra una actualización con algunos cambios que bloquean la actualización.

$ pcluster update-cluster --cluster-name cluster_name --cluster-config ~/.parallelcluster/test_cluster --region us-east-1 { "message": "Update failure", "updateValidationErrors": [ { "parameter": "HeadNode.Ssh.KeyName", "requestedValue": "mykey_2", "message": "Update actions are not currently supported for the 'KeyName' parameter. Restore 'KeyName' value to 'jenkinsjun'. If you need this change, please consider creating a new cluster instead of updating the existing one.", "currentValue": "mykey_1" }, { "parameter": "Scheduling.SlurmQueues[queue1].ComputeResources[queue1- t2micro].InstanceType", "requestedValue": "c4.xlarge",

69 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Referencia de la paraAWS ParallelCluster

"message": "All compute nodes must be stopped. Stop the compute fleet with the pcluster update-compute-fleet command", "currentValue": "t2.micro" }, { "parameter": "SharedStorage[ebs1].MountDir", "requestedValue": "/my/very/very/long/shared_dir", "message": "Update actions are not currently supported for the 'MountDir' parameter. Restore 'MountDir' value to '/shared'. If you need this change, please consider creating a new cluster instead of updating the existing one.", "currentValue": "/shared" } ], "changeSet": [ { "parameter": "HeadNode.Networking.AdditionalSecurityGroups", "requestedValue": [ "sg-0cd61884c4ad11234" ], "currentValue": [ "sg-0cd61884c4ad16341" ] }, { "parameter": "HeadNode.Ssh.KeyName", "requestedValue": "mykey_2", "currentValue": "mykey_1" }, { "parameter": "Scheduling.SlurmQueues[queue1].ComputeResources[queue1- t2micro].InstanceType", "requestedValue": "c4.xlarge", "currentValue": "t2.micro" }, { "parameter": "SharedStorage[ebs1].MountDir", "requestedValue": "/my/very/very/long/shared_dir", "currentValue": "/shared" } ] }

Referencia de la paraAWS ParallelCluster

Temas • Comandos de la CLI de AWS ParallelCluster (p. 70) • Archivos de configuración (p. 89)

Comandos de la CLI de AWS ParallelCluster

pclusteres elAWS ParallelClusterCommand de la CLI Usted usapclusterPara lanzar y administrar clústeres de HPC en el Nube de AWS y crear y administrar imágenes AMI personalizadas.

pcluster [ -h ] ( list-clusters | create-cluster | delete-cluster | describe-cluster | update-cluster | describe-compute-fleet | update-compute-fleet | delete-cluster-instances | describe-cluster-instances | list-cluster-log-streams | get-cluster-log-events | get-cluster-stack- events | list-images | build-image | delete-image | describe-image |

70 AWS ParallelCluster Guía del usuario de AWS ParallelCluster AWS ParallelClusterComandos CLI de versión 3

list-image-log-streams | get-image-log-events | get-image-stack-events | list-official-images | configure | dcv-connect | export-cluster-logs | export-image-logs | ssh | version ) ...

Temas • pcluster (p. 71) pcluster pclusteres el principalAWS ParallelClusterCommand de la CLI Usted usapclusterPara lanzar y administrar clústeres de HPC en el Nube de AWS . pcluster [ -h ]

Arguments pcluster command

Opciones posibles:list-clusters (p. 78) create-cluster (p. 73) delete- cluster (p. 83) describe-cluster (p. 85) update-cluster (p. 80) describe-compute-fleet (p. 85) update-compute-fleet (p. 81) delete- cluster-instances (p. 82) describe-cluster-instances (p. 84) list- cluster-log-streams (p. 77) get-cluster-log-events (p. 74) get-cluster- stack-events (p. 75) list-images (p. 79) build-image (p. 72) delete- image (p. 83) describe-image (p. 86) list-image-log-streams (p. 79) get- image-log-events (p. 76) get-image-stack-events (p. 77) list-official- images (p. 86) configure (p. 73) dcv-connect (p. 82) export-cluster- logs (p. 87) export-image-logs (p. 88) ssh (p. 80) version (p. 89)

Subcomandos:

Temas • pcluster build-image (p. 72) • pcluster configure (p. 73) • pcluster create-cluster (p. 73) • pcluster get-cluster-log-events (p. 74) • pcluster get-cluster-stack-events (p. 75) • pcluster get-image-log-events (p. 76) • pcluster get-image-stack-events (p. 77) • pcluster list-cluster-log-streams (p. 77) • pcluster list-clusters (p. 78) • pcluster list-image-log-streams (p. 79) • pcluster list-images (p. 79) • pcluster ssh (p. 80) • pcluster update-cluster (p. 80) • pcluster update-compute-fleet (p. 81) • pcluster dcv-connect (p. 82) • pcluster delete-cluster-instances (p. 82) • pcluster delete-cluster (p. 83)

71 AWS ParallelCluster Guía del usuario de AWS ParallelCluster AWS ParallelClusterComandos CLI de versión 3

• pcluster delete-image (p. 83) • pcluster describe-cluster-instances (p. 84) • pcluster describe-cluster (p. 85) • pcluster describe-compute-fleet (p. 85) • pcluster describe-image (p. 86) • pcluster list-official-images (p. 86) • pcluster export-cluster-logs (p. 87) • pcluster export-image-logs (p. 88) • pcluster version (p. 89) pcluster build-image Crear un valor personalizadoAWS ParallelClusteren la región especificada. pcluster build-image [-h] [--suppress-validators SUPPRESS_VALIDATORS [SUPPRESS_VALIDATORS ...]] [--validation-failure-level {INFO,WARNING,ERROR}] [--dryrun DRYRUN] [--rollback-on-failure ROLLBACK_ON_FAILURE] [--region REGION] --image-configuration IMAGE_CONFIGURATION --image-id IMAGE_ID [--debug] [--query QUERY]

Argumentos con

-h, --help

Muestra el texto de ayuda parapcluster build-image. --suppress-validators SUPPRESS_VALIDATORS [SUPPRESS_VALIDATORS ...] Identifica uno o más validadores de configuración que se van a suprimir.

Formato: (ALL|type:[A-Za-z0-9]+) --validation-failure-level {INFO,WARNING,ERROR} Especifica el nivel mínimo de validación que causará un error en la creación. El valor predeterminado esERROR.) --dryrun DRYRUN Realice sólo la validación solicitada sin crear ningún recurso. Se puede utilizar para validar la configuración de la imagen. El valor predeterminado es.false.) --rollback-on-failure ROLLBACK_ON_FAILURE Cuando se establece, iniciará automáticamente una reversión de la pila de imágenes en caso de fallo. El valor predeterminado es.false.) --region REGION Especifica el. Región de AWS para usar. Debe especificarse la región, ya sea mediante el comandoRegión (p. 128)en el archivo de configuración de la imagen, la opciónAWS_DEFAULT_REGION, o la variable de entorno--regionParámetro de. --image-configuration IMAGE_CONFIGURATION Especifica el archivo de configuración de imagen como documento YAML. --image-id IMAGE_ID Especifica el id de la imagen que se va a generar.

72 AWS ParallelCluster Guía del usuario de AWS ParallelCluster AWS ParallelClusterComandos CLI de versión 3

--debug

Habilita el registro de depuración. --query QUERY

Consulta JMesPath para realizar en la salida. pcluster configure

Inicia un asistente de configuración interactivo paraAWS ParallelClusterversión 3. pcluster configure [-h] [--debug] [--region REGION] --config CONFIG

Argumentos con

-h, --help

Muestra el texto de ayuda parapcluster configure. --debug

Habilita el registro de depuración. --region REGION

Especifica el. Región de AWS para usar. --config CONFIG

Ruta de salida del archivo de configuración generado. pcluster create-cluster

Crea un clúster de AWS ParallelCluster. pcluster create-cluster [-h] [--region REGION] [--suppress-validators SUPPRESS_VALIDATORS [SUPPRESS_VALIDATORS ...]] [--validation-failure-level {INFO,WARNING,ERROR}] [--dryrun DRYRUN] [--rollback-on-failure ROLLBACK_ON_FAILURE] --cluster-name CLUSTER_NAME --cluster-configuration CLUSTER_CONFIGURATION [--debug] [--query QUERY]

Argumentos con

-h, --help

Muestra el texto de ayuda parapcluster create-cluster. --region REGION

Especifica el. Región de AWS para usar. Debe especificarse la región, ya sea mediante el comandoRegion (p. 90)en el archivo de configuración del clúster, la opciónAWS_DEFAULT_REGION, o la variable de entorno--regionParámetro de. --suppress-validators SUPPRESS_VALIDATORS [SUPPRESS_VALIDATORS ...]

Identifica uno o más validadores de configuración que se van a suprimir.

Formato: (ALL|tipo:[A-Za-z0-9]+)

73 AWS ParallelCluster Guía del usuario de AWS ParallelCluster AWS ParallelClusterComandos CLI de versión 3

--validation-failure-level {INFO,WARNING,ERROR}

Especifica el nivel mínimo de validación que causará un error en la creación. El valor predeterminado es.ERROR.) --dryrun DRYRUN

Especifica que el comando sólo llevará a cabo la validación sin crear ningún recurso. Se puede utilizar para validar la configuración del clúster. El valor predeterminado es.false.) --rollback-on-failure ROLLBACK_ON_FAILURE

Cuandotrue, inicia automáticamente una reversión de la pila de clústeres en caso de errores. El valor predeterminado es.true.) --cluster-name CLUSTER_NAME

Especifica el nombre del clúster que se va a crear. --cluster-configuration CLUSTER_CONFIGURATION

Especifica el archivo de configuración del clúster YAML. --debug

Habilita el registro de depuración. --query QUERY

Especifica la consulta JMesPath que se va a realizar en la salida. pcluster get-cluster-log-events

Recuperar los eventos asociados a una secuencia de registro. pcluster get-cluster-log-events [-h] --cluster-name CLUSTER_NAME --log-stream-name LOG_STREAM_NAME [--region REGION] [--next-token NEXT_TOKEN] [--start-from-head START_FROM_HEAD] [--limit LIMIT] [--start-time START_TIME] [--end-time END_TIME] [--debug] [--query QUERY]

Argumentos con

-h, --help

Muestra el texto de ayuda parapcluster get-cluster-log-events. --cluster-name CLUSTER_NAME

Especifica el nombre del clúster. --log-stream-name LOG_STREAM_NAME

Especifica el nombre del flujo de registros. --region REGION

Especifica el. Región de AWS para usar. Debe especificarse la región, ya sea mediante el comandoAWS_DEFAULT_REGIONLa variable de entorno--regionParámetro de. --next-token NEXT_TOKEN

Especifica el token que se va a utilizar para las solicitudes paginadas.

74 AWS ParallelCluster Guía del usuario de AWS ParallelCluster AWS ParallelClusterComandos CLI de versión 3

--start-from-head START_FROM_HEAD

Si el valor estrue, primero se devuelven los eventos de registro más antiguos. Si el valor esfalsePrimero se devuelve los eventos más recientes. El valor predeterminado es.false.) --limit LIMIT

Especifica el número máximo de eventos de registro que se devuelve. Si no se especifica un valor, el máximo es tantos eventos de registro como caben en un tamaño de respuesta de 1 MB, hasta 10.000 eventos de registro. --start-time START_TIME

Especifica el inicio del intervalo de tiempo, expresado en formato ISO 8601 (YYYY-MM- DDThh:mm:ssZPor ejemplo:2021-01-01T20:00:00Z). Se incluyen eventos con una marca de tiempo igual a esta hora o posterior a esta hora. --end-time END_TIME

Especifica el final del intervalo de tiempo, expresado en formato ISO 8601 (YYYY-MM- DDThh:mm:ssZPor ejemplo:2021-01-01T20:00:00Z). Los eventos con una marca de tiempo igual o posterior a esta hora no se incluyen. --debug

Habilita el registro de depuración. --query QUERY

Especifica la consulta JMesPath que se va a realizar en la salida. pcluster get-cluster-stack-events

Recuperar los eventos asociados con la pila del clúster especificado. pcluster get-cluster-stack-events [-h] --cluster-name CLUSTER_NAME [--region REGION] [--next-token NEXT_TOKEN] [--debug] [--query QUERY]

Argumentos con

-h, --help

Muestra el texto de ayuda parapcluster get-cluster-stack-events. --cluster-name CLUSTER_NAME

Especifica el nombre del clúster. --region REGION

Especifica el. Región de AWS para usar. Debe especificarse la región, ya sea mediante el comandoAWS_DEFAULT_REGIONLa variable de entorno--regionParámetro de. --next-token NEXT_TOKEN

Especifica el token que se va a utilizar para las solicitudes paginadas. --debug

Habilita el registro de depuración. --query QUERY

Especifica la consulta JMesPath que se va a realizar en la salida.

75 AWS ParallelCluster Guía del usuario de AWS ParallelCluster AWS ParallelClusterComandos CLI de versión 3 pcluster get-image-log-events

Recuperar los eventos asociados con una generación de imagen. pcluster get-image-log-events [-h] --image-id IMAGE_ID --log-stream-name LOG_STREAM_NAME [--region REGION] [--next-token NEXT_TOKEN] [--start-from-head START_FROM_HEAD] [--limit LIMIT] [--start-time START_TIME] [--end-time END_TIME] [--debug] [--query QUERY]

Argumentos con

-h, --help

Muestra el texto de ayuda parapcluster get-image-log-events. --image-id IMAGE_ID

Especifica el Id. de la imagen. --log-stream-name LOG_STREAM_NAME

Especifica el nombre del flujo de registros. --region REGION

Especifica el. Región de AWS para usar. Debe especificarse la región, ya sea mediante el comandoAWS_DEFAULT_REGIONLa variable de entorno--regionParámetro de. --next-token NEXT_TOKEN

Especifica el token que se va a utilizar para las solicitudes paginadas. --start-from-head START_FROM_HEAD

Si el valor estrue, primero se devuelven los eventos de registro más antiguos. Si el valor esfalsePrimero se devuelve los eventos más recientes. El valor predeterminado es.false.) --limit LIMIT

Especifica el número máximo de eventos de registro que se devuelve. Si no se especifica un valor, el máximo es tantos eventos de registro como caben en un tamaño de respuesta de 1 MB, hasta 10.000 eventos de registro. --start-time START_TIME

Especifica el inicio del intervalo de tiempo, expresado en formato ISO 8601 (YYYY-MM- DDThh:mm:ssZPor ejemplo:2021-01-01T20:00:00Z). Se incluyen eventos con una marca de tiempo igual o posterior a esta hora. --end-time END_TIME

Especifica el final del intervalo de tiempo, expresado en formato ISO 8601 (YYYY-MM- DDThh:mm:ssZPor ejemplo:2021-01-01T20:00:00Z). Los eventos con una marca de tiempo igual o posterior a esta hora no se incluyen. --debug

Habilita el registro de depuración. --query QUERY

Especifica la consulta JMesPath que se va a realizar en la salida.

76 AWS ParallelCluster Guía del usuario de AWS ParallelCluster AWS ParallelClusterComandos CLI de versión 3 pcluster get-image-stack-events

Recupere los eventos asociados con la pila para la generación de imagen especificada. pcluster get-image-stack-events [-h] --image-id IMAGE_ID [--region REGION] [--next-token NEXT_TOKEN] [--debug] [--query QUERY]

Argumentos con

-h, --help

Muestra el texto de ayuda parapcluster get-image-stack-events. --image-id IMAGE_ID

Especifica el ID de la imagen. --region REGION

Especifica el. Región de AWS para usar. Debe especificarse la región, ya sea mediante el comandoAWS_DEFAULT_REGIONLa variable de entorno--regionParámetro de. --next-token NEXT_TOKEN

Especifica el token que se va a utilizar para las solicitudes paginadas. --debug

Habilita el registro de depuración. --query QUERY

Especifica la consulta JMesPath que se va a realizar en la salida. pcluster list-cluster-log-streams

Recuperar la lista de flujos de registro asociados a un clúster. pcluster list-cluster-log-streams [-h] --cluster-name CLUSTER_NAME [--region REGION] [--filters FILTERS [FILTERS ...]] [--next-token NEXT_TOKEN] [--debug] [--query QUERY]

Argumentos con

-h, --help

Muestra el texto de ayuda parapcluster list-cluster-log-streams. --cluster-name CLUSTER_NAME

Especifica el nombre del clúster. --region REGION

Especifica el. Región de AWS para usar. Debe especificarse la región, ya sea mediante el comandoAWS_DEFAULT_REGIONLa variable de entorno--regionParámetro de. --filters FILTERS [FILTERS ...]

Especifica los filtros para los flujos de registro. Formato: Name=a,Values=1 Name=b,Values=2,3. Los filtros admitidos son:

77 AWS ParallelCluster Guía del usuario de AWS ParallelCluster AWS ParallelClusterComandos CLI de versión 3

private-dns-name

Especifica la forma corta del nombre de DNS privado de la instancia (por ejemplo,ip-10-0-0-101). node-type

Especifica el tipo nodo, el único valor aceptado para este filtro esHeadNode. --next-token NEXT_TOKEN

Especifica el token que se va a utilizar para las solicitudes paginadas. --debug

Habilita el registro de depuración. --query QUERY

Especifica la consulta JMesPath que se va a realizar en la salida. pcluster list-clusters

Recupere la lista de clústeres existentes. pcluster list-clusters [-h] [--region REGION] [--next-token NEXT_TOKEN] [--cluster-status {CREATE_IN_PROGRESS,CREATE_FAILED,CREATE_COMPLETE,

DELETE_IN_PROGRESS,DELETE_FAILED,UPDATE_IN_PROGRESS, UPDATE_COMPLETE,UPDATE_FAILED}

[{CREATE_IN_PROGRESS,CREATE_FAILED,CREATE_COMPLETE,

DELETE_IN_PROGRESS,DELETE_FAILED,UPDATE_IN_PROGRESS, UPDATE_COMPLETE,UPDATE_FAILED} ...]] [--debug] [--query QUERY]

Argumentos con

-h, --help

Muestra el texto de ayuda parapcluster list-clusters. --region REGION

Especifica el. Región de AWS para usar. Debe especificarse la región, ya sea mediante el comandoAWS_DEFAULT_REGIONLa variable de entorno--regionParámetro de. --next-token NEXT_TOKEN

Especifica el token que se va a utilizar para las solicitudes paginadas. --cluster-status {CREATE_IN_PROGRESS, CREATE_FAILED, CREATE_COMPLETE, DELETE_IN_PROGRESS, DELETE_FAILED, UPDATE_IN_PROGRESS, UPDATE_COMPLETE, UPDATE_FAILED} [{CREATE_IN_PROGRESS, CREATE_FAILED, CREATE_COMPLETE, DELETE_IN_PROGRESS, DELETE_FAILED, UPDATE_IN_PROGRESS, UPDATE_COMPLETE, UPDATE_FAILED} ...]

Especifica la lista de estados de clúster por los que se va a filtrar. El valor predeterminado es.all.) --debug

Habilita el registro de depuración. --query QUERY

Especifica la consulta JMesPath que se va a realizar en la salida.

78 AWS ParallelCluster Guía del usuario de AWS ParallelCluster AWS ParallelClusterComandos CLI de versión 3 pcluster list-image-log-streams

Recuperar la lista de flujos de registro asociados a una imagen. pcluster list-image-log-streams [-h] --image-id IMAGE_ID [--region REGION] [--next-token NEXT_TOKEN] [--debug] [--query QUERY]

Argumentos con

-h, --help

Muestra el texto de ayuda parapcluster list-image-log-streams. --image-id IMAGE_ID

Especifica el ID de la imagen. --region REGION

Especifica el. Región de AWS para usar. Debe especificarse la región, ya sea mediante el comandoAWS_DEFAULT_REGIONLa variable de entorno--regionParámetro de. --next-token NEXT_TOKEN

Especifica el token que se va a utilizar para las solicitudes paginadas. --debug

Habilita el registro de depuración. --query QUERY

Especifica la consulta JMesPath que se va a realizar en la salida. pcluster list-images

Recupere la lista de imágenes personalizadas existentes. pcluster list-images [-h] [--region REGION] [--next-token NEXT_TOKEN] --image-status {AVAILABLE,PENDING,FAILED} [--debug] [--query QUERY]

Argumentos con

-h, --help

Muestra el texto de ayuda parapcluster list-images. --region REGION

Especifica el. Región de AWS para usar. Debe especificarse la región, ya sea mediante el comandoAWS_DEFAULT_REGIONLa variable de entorno--regionParámetro de. --next-token NEXT_TOKEN

Especifica el token que se va a utilizar para las solicitudes paginadas. --image-status {AVAILABLE,PENDING,FAILED}

Filtrar imágenes por el estado proporcionado. --debug

Habilita el registro de depuración.

79 AWS ParallelCluster Guía del usuario de AWS ParallelCluster AWS ParallelClusterComandos CLI de versión 3

--query QUERY

Especifica la consulta JMesPath que se va a realizar en la salida. pcluster ssh

Ejecute unsshEjecute el comando con el nombre de usuario de clúster y la dirección IP completados previamente. Se adjuntan argumentos arbitrarios al final de lasshlínea de comandos. pcluster ssh [-h] [--debug] [--region REGION] --cluster-name CLUSTER_NAME [--dryrun DRYRUN]

Argumentos con

-h, --help

Muestra el texto de ayuda parapcluster ssh. --region REGION

Especifica el. Región de AWS para usar. Debe especificarse la región, ya sea mediante el comandoAWS_DEFAULT_REGIONLa variable de entorno--regionParámetro de. --cluster-name CLUSTER_NAME

Especifica el nombre del clúster al que hay que conectarse. --dryrun DRYRUN

Muestra la línea de comandos que se va a ejecutar y termina.

Ejemplo:

$ pcluster ssh --cluster-name mycluster -i ~/.ssh/id_rsa

Ejecute unsshComando el nombre de usuario y la dirección IP del clúster completados previamente: ssh [email protected] -i ~/.ssh/id_rsa pcluster update-cluster

Actualiza un clúster existente para que coincida con la configuración de un archivo de configuración especificado. pcluster update-cluster [-h] --cluster-name CLUSTER_NAME [--suppress-validators SUPPRESS_VALIDATORS [SUPPRESS_VALIDATORS ...]] [--validation-failure-level {INFO,WARNING,ERROR}] [--region REGION] [--dryrun DRYRUN] [--force-update FORCE_UPDATE] --cluster-configuration CLUSTER_CONFIGURATION [--debug] [--query QUERY]

Argumentos con

-h, --help

Muestra el texto de ayuda parapcluster update-cluster.

80 AWS ParallelCluster Guía del usuario de AWS ParallelCluster AWS ParallelClusterComandos CLI de versión 3

--cluster-name CLUSTER_NAME

Especifica el nombre del clúster. --suppress-validators SUPPRESS_VALIDATORS [SUPPRESS_VALIDATORS ...]

Identifica uno o más validadores de configuración que se van a suprimir.

Formato: (ALL|type:[A-Za-z0-9]+) --region REGION

Especifica el. Región de AWS para usar. Debe especificarse la región, ya sea mediante el comandoRegion (p. 90)en el archivo de configuración del clúster, la opciónAWS_DEFAULT_REGION, o la variable de entorno--regionParámetro de. --dryrun DRYRUN

Realice sólo la validación solicitada sin crear ningún recurso. Se puede utilizar para validar los requisitos de configuración y actualización de la imagen. El valor predeterminado esfalse.) --force-update FORCE_UPDATE

Fuerza la actualización ignorando los errores de validación de actualización. El valor predeterminado esfalse.) --cluster-configuration CLUSTER_CONFIGURATION

Especifica el archivo de configuración del clúster YAML. --debug

Habilita el registro de depuración. --query QUERY

Especifica la consulta JMesPath que se va a realizar en la salida. pcluster update-compute-fleet

Actualiza el estado de la flota informática del clúster. pcluster update-compute-fleet [-h] --cluster-name CLUSTER_NAME [--region REGION] --status {START_REQUESTED,STOP_REQUESTED,ENABLED,DISABLED} [--debug] [--query QUERY]

Argumentos con

-h, --help

Muestra el texto de ayuda parapcluster update-compute-fleet. --cluster-name CLUSTER_NAME

Especifica el nombre del clúster. --region REGION

Especifica el. Región de AWS para usar. Debe especificarse la región, ya sea mediante el comandoAWS_DEFAULT_REGIONLa variable de entorno--regionParámetro de. --status {START_REQUESTED,STOP_REQUESTED,ENABLED,DISABLED}

Especifica el estado aplicado a la flota informática del clúster. Estados de los EstadosSTART_REQUESTEDySTOP_REQUESTEDcorresponden al programador de slurm mientras que los estadosENABLEDyDISABLEDCorresponde con elAWS BatchProgramador de.

81 AWS ParallelCluster Guía del usuario de AWS ParallelCluster AWS ParallelClusterComandos CLI de versión 3

--debug

Habilita el registro de depuración. --query QUERY

Especifica la consulta JMesPath que se va a realizar en la salida. pcluster dcv-connect

Permite conectarse al nodo principal a través de una sesión interactiva mediante NICE DCV. pcluster dcv-connect [-h] [--debug] [--region REGION] --cluster-name CLUSTER_NAME [--key-path KEY_PATH] [--show-url]

Argumentos con

-h, --help

Muestra el texto de ayuda parapcluster dcv-connect. --debug

Habilita el registro de depuración. --region REGION

Especifica el. Región de AWS para usar. Debe especificarse la región, ya sea mediante el comandoAWS_DEFAULT_REGIONLa variable de entorno--regionParámetro de. --cluster-name CLUSTER_NAME

Especifica el nombre del clúster. --key-path KEY_PATH

Especifica la ruta de la clave SSH que se utilizará para la conexión. --show-url

Imprime la dirección URL que se usaría para la conexión DCV y sale. pcluster delete-cluster-instances

Inicie la terminación forzada de todos los nodos de computación del clúster. Esto no funciona conAWS Batchclústeres. pcluster delete-cluster-instances [-h] --cluster-name CLUSTER_NAME [--region REGION] [--force FORCE] [--debug] [--query QUERY]

Argumentos con

-h, --help

Muestra el texto de ayuda parapcluster delete-cluster-instances. --cluster-name CLUSTER_NAME

Especifica el nombre del clúster.

82 AWS ParallelCluster Guía del usuario de AWS ParallelCluster AWS ParallelClusterComandos CLI de versión 3

--region REGION

Especifica el. Región de AWS para usar. Debe especificarse la región, ya sea mediante el comandoAWS_DEFAULT_REGIONLa variable de entorno--regionParámetro de. --force FORCE

Fuerza la actualización ignorando los errores de validación de actualización. El valor predeterminado esfalse.) --debug

Habilita el registro de depuración. --query QUERY

Especifica la consulta JMesPath que se va a realizar en la salida. pcluster delete-cluster

Inicia la eliminación de un clúster. pcluster delete-cluster [-h] --cluster-name CLUSTER_NAME [--region REGION] [--debug] [--query QUERY]

Argumentos con

-h, --help

Muestra el texto de ayuda parapcluster delete-cluster. --cluster-name CLUSTER_NAME

Especifica el nombre del clúster. --region REGION

Especifica el. Región de AWS para usar. Debe especificarse la región, ya sea mediante el comandoAWS_DEFAULT_REGIONLa variable de entorno--regionParámetro de. --debug

Habilita el registro de depuración. --query QUERY

Especifica la consulta JMesPath que se va a realizar en la salida. pcluster delete-image

Inicia la eliminación de laAWS ParallelClusterimagen. pcluster delete-image [-h] --image-id IMAGE_ID [--region REGION] [--force FORCE] [--debug] [--query QUERY]

Argumentos con

-h, --help

Muestra el texto de ayuda parapcluster delete-image.

83 AWS ParallelCluster Guía del usuario de AWS ParallelCluster AWS ParallelClusterComandos CLI de versión 3

--image-id IMAGE_ID

Especifica el identificador de la imagen que se eliminará. --region REGION

Especifica el. Región de AWS para usar. Debe especificarse la región, ya sea mediante el comandoAWS_DEFAULT_REGIONLa variable de entorno--regionParámetro de. --force FORCE

Fuerza la eliminación en caso de que haya instancias usando la AMI o si la AMI es compartida. El valor predeterminado esfalse.) --debug

Habilita el registro de depuración. --query QUERY

Especifica la consulta JMesPath que se va a realizar en la salida. pcluster describe-cluster-instances

Describir las instancias de un clúster. pcluster describe-cluster-instances [-h] --cluster-name CLUSTER_NAME [--region REGION] [--next-token NEXT_TOKEN] [--node-type {HeadNode,ComputeNode}] [--queue-name QUEUE_NAME] [--debug] [--query QUERY]

Argumentos con

-h, --help

Muestra el texto de ayuda parapcluster describe-cluster-instances. --cluster-name CLUSTER_NAME

Especifica el nombre del clúster. --region REGION

Especifica el. Región de AWS para usar. Debe especificarse la región, ya sea mediante el comandoAWS_DEFAULT_REGIONLa variable de entorno--regionParámetro de. --next-token NEXT_TOKEN

Especifica el token que se va a utilizar para las solicitudes paginadas. --node-type {HeadNode,ComputeNode}

Especifica los tipos de nodo que se van a enumerar. Los valores admitidos son HeadNode y ComputeNode. Si no se especifica este parámetro, ambosHeadNodeyComputeNodese describen las instancias. --queue-name QUEUE_NAME

Especifica el nombre de la cola que se va a enumerar. Si no se especifica este parámetro, se describen las instancias de todas las colas. --debug

Habilita el registro de depuración.

84 AWS ParallelCluster Guía del usuario de AWS ParallelCluster AWS ParallelClusterComandos CLI de versión 3

--query QUERY

Especifica la consulta JMesPath que se va a realizar en la salida. pcluster describe-cluster

Obtiene información detallada sobre un clúster. pcluster describe-cluster [-h] --cluster-name CLUSTER_NAME [--region REGION] [--debug] [--query QUERY]

Argumentos con

-h, --help

Muestra el texto de ayuda parapcluster describe-cluster. --cluster-name CLUSTER_NAME

Especifica el nombre del clúster. --region REGION

Especifica el. Región de AWS para usar. Debe especificarse la región, ya sea mediante el comandoAWS_DEFAULT_REGIONLa variable de entorno--regionParámetro de. --debug

Habilita el registro de depuración. --query QUERY

Especifica la consulta JMesPath que se va a realizar en la salida. pcluster describe-compute-fleet

Describe el estado de la flota informática. pcluster describe-compute-fleet [-h] --cluster-name CLUSTER_NAME [--region REGION] [--debug] [--query QUERY]

Argumentos con

-h, --help

Muestra el texto de ayuda parapcluster describe-compute-fleet. --cluster-name CLUSTER_NAME

Especifica el nombre del clúster. --region REGION

Especifica el. Región de AWS para usar. Debe especificarse la región, ya sea mediante el comandoAWS_DEFAULT_REGIONLa variable de entorno--regionParámetro de. --debug

Habilita el registro de depuración. --query QUERY

Especifica la consulta JMesPath que se va a realizar en la salida.

85 AWS ParallelCluster Guía del usuario de AWS ParallelCluster AWS ParallelClusterComandos CLI de versión 3 pcluster describe-image

Obtiene información detallada sobre una imagen. pcluster describe-image [-h] --image-id IMAGE_ID [--region REGION] [--debug] [--query QUERY]

Argumentos con

-h, --help

Muestra el texto de ayuda parapcluster describe-image. --image-id IMAGE_ID

Especifica el ID de la imagen. --region REGION

Especifica el. Región de AWS para usar. Debe especificarse la región, ya sea mediante el comandoAWS_DEFAULT_REGIONLa variable de entorno--regionParámetro de. --debug

Habilita el registro de depuración. --query QUERY

Especifica la consulta JMesPath que se va a realizar en la salida. pcluster list-official-images

Describir oficialAWS ParallelClusterAMI. pcluster list-official-images [-h] [--region REGION] [--os OS] [--architecture ARCHITECTURE] [--debug] [--query QUERY]

Argumentos con

-h, --help

Muestra el texto de ayuda parapcluster list-official-images. --region REGION

Especifica el. Región de AWS para usar. --os OS

Especifica el sistema operativo que se utilizará para filtrar los resultados. Si no se especifica este parámetro, se devuelven todos los sistemas operativos. --architecture ARCHITECTURE

Especifica la arquitectura que se utilizará para filtrar los resultados. Si no se especifica este parámetro, se devuelven todas las archiecturas. --debug

Habilita el registro de depuración.

86 AWS ParallelCluster Guía del usuario de AWS ParallelCluster AWS ParallelClusterComandos CLI de versión 3

--query QUERY

Especifica la consulta JMesPath que se va a realizar en la salida. pcluster export-cluster-logs

Exportar los registros del clúster a untar.gzpasando por un depósito de Amazon S3. pcluster export-cluster-logs [-h] [--debug] [--region REGION] --cluster-name CLUSTER_NAME --bucket BUCKET [--output-file OUTPUT_FILE] [--bucket-prefix BUCKET_PREFIX] [--keep-s3-objects KEEP_S3_OBJECTS] [--start-time START_TIME] [--end-time END_TIME] [--filters FILTER [FILTER ...]]

Argumentos con

-h, --help

Muestra el texto de ayuda parapcluster export-cluster-logs. --debug

Habilita el registro de depuración. --region REGION

Especifica el. Región de AWS para usar. Debe especificarse la región, ya sea mediante el comandoAWS_DEFAULT_REGIONLa variable de entorno--regionParámetro de. --cluster-name CLUSTER_NAME

Especifica el nombre del clúster. --bucket BUCKET

Especifica el bucket de Amazon S3 al que se exportará los datos de registros de clúster. Debe estar en la misma región que el clúster. --output-file OUTPUT_FILE

Especifica la ruta del archivo en la que se guardará el archivo de registro. Si se proporciona esto, los registros se guardan localmente. De lo contrario, se cargarán en Amazon S3 con la URL devuelta en la salida. El valor predeterminado es cargarlo en Amazon S3. --bucket-prefix BUCKET_PREFIX

Especifica el prefijo para la ruta bajo la que se almacenan los datos de registros exportados en el bucket de Amazon S3. --keep-s3-objects KEEP_S3_OBJECTS

Sitrue, se conservan los objetos exportados exportados a Amazon S3. El valor predeterminado esfalse.) --start-time START_TIME

Especifica el inicio del intervalo de tiempo, expresado en formato ISO 8601 (YYYY-MM- DDThh:mm:ssZPor ejemplo:2021-01-01T20:00:00Z). Se incluyen eventos de registro con una marca de tiempo igual a esta hora o posterior a esta hora. Si no se especifica, el valor predeterminado es la hora a la que se creó el clúster.

87 AWS ParallelCluster Guía del usuario de AWS ParallelCluster AWS ParallelClusterComandos CLI de versión 3

--end-time END_TIME

Especifica el final del intervalo de tiempo para recopilar eventos de registro, expresados en formato ISO 8601 (YYYY-MM-DDThh:mm:ssZPor ejemplo:2021-01-01T20:00:00Z'). Los eventos con una marca de tiempo igual o posterior a esta hora no se incluyen. Los elementos de tiempo (por ejemplo, minutos y segundos) pueden omitirse. El valor predeterminado es la hora actual. --filters FILTER [FILTER ...]

Especifica los filtros para el registro. Formato: Name=a,Values=1 Name=b,Values=2,3. Los filtros admitidos son: private-dns-name

Especifica la forma corta del nombre de DNS privado de la instancia (por ejemplo,ip-10-0-0-101). node-type

Especifica el tipo nodo, el único valor aceptado para este filtro esHeadNode. pcluster export-image-logs

Exportar los registros de la pila del generador de imágenes a untar.gzpasando por un depósito de Amazon S3. pcluster export-image-logs [-h] [--debug] [--region REGION] [--output-file OUTPUT_FILE] [--bucket-prefix BUCKET_PREFIX] [--keep-s3-objects KEEP_S3_OBJECTS] [--start-time START_TIME] [--end-time END_TIME] --image-id IMAGE_ID --bucket BUCKET

Argumentos con

-h, --help

Muestra el texto de ayuda parapcluster export-image-logs. --debug

Habilita el registro de depuración. --region REGION

Especifica el. Región de AWS para usar. Debe especificarse la región, ya sea mediante el comandoAWS_DEFAULT_REGIONLa variable de entorno--regionParámetro de. --output-file OUTPUT_FILE

Especifica la ruta del archivo en la que se guardará el archivo de registro. Si se proporciona esto, los registros se guardan localmente. De lo contrario, se cargarán en Amazon S3 con la URL devuelta en la salida. El valor predeterminado es cargarlo en Amazon S3. --bucket-prefix BUCKET_PREFIX

Especifica el prefijo para la ruta bajo la que se almacenan los datos de registros exportados en el bucket de Amazon S3. --keep-s3-objects KEEP_S3_OBJECTS

Sitrue, se conservan los objetos exportados exportados a Amazon S3. El valor predeterminado esfalse.)

88 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Archivos de configuración

--start-time START_TIME

Especifica el inicio del intervalo de tiempo, expresado en formato ISO 8601 (YYYY-MM- DDThh:mm:ssZPor ejemplo:2021-01-01T20:00:00Z). Se incluyen eventos de registro con una marca de tiempo igual a esta hora o posterior a esta hora. Si no se especifica, el valor predeterminado es la hora a la que se creó el clúster. --end-time END_TIME

Especifica el final del intervalo de tiempo para recopilar eventos de registro, expresados en formato ISO 8601 (YYYY-MM-DDThh:mm:ssZPor ejemplo:2021-01-01T20:00:00Z'). Los eventos con una marca de tiempo igual o posterior a esta hora no se incluyen. Los elementos de tiempo (por ejemplo, minutos y segundos) pueden omitirse. El valor predeterminado es la hora actual. --image-id IMAGE_ID

El ID de imagen cuyos registros se exportarán. --bucket BUCKET

Especifica el bucket de Amazon S3 al que se exportará registros de creación de imágenes. Debe estar en la misma región que la imagen. pcluster version

Muestra la versión de AWS ParallelCluster. pcluster version [-h] [--debug]

Argumentos con

-h, --help

Muestra el texto de ayuda parapcluster version. --debug

Habilita el registro de depuración.

Archivos de configuración

AWS ParallelClusterversión 3 utiliza archivos YAML 1.1 para los parámetros de configuración.

Temas • Archivo de configuración de clúster (p. 89) • Crear archivos de configuración de imágenes (p. 127)

Archivo de configuración de clúster

AWS ParallelClusterversión 3 utiliza archivos de configuración independientes para controlar la definición de infraestructura de clúster y la definición de AMI personalizadas. Todos los archivos de configuración usan archivos YAML 1.1. A continuación se enlaza información detallada para cada uno de estos archivos de configuración. Para ver algunas configuraciones de ejemplo, consultehttps://github.com/aws/aws- parallelcluster/tree/release-3.0/cli/tests/pcluster/example_configs.

Estos objetos se utilizan para elAWS ParallelClusterconfiguración del clúster de la versión 3.

Temas

89 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Archivos de configuración

• Propiedades del archivo de configuración del clúster (p. 90) • Sección Image (p. 90) • Sección HeadNode (p. 91) • Sección Scheduling (p. 100) • Sección SharedStorage (p. 116) • Sección Iam (p. 125) • Sección Monitoring (p. 125) • Sección Tags (p. 126) • Sección AdditionalPackages (p. 127)

Propiedades del archivo de configuración del clúster

Region(Opcional,String)

Especifica la región del clúster. Por ejemplo, us-east-2.

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 68) CustomS3Bucket(Opcional,String)

Especifica el nombre de un bucket de Amazon S3 existente que puede utilizar el clúster. Por defecto,AWS ParallelClusterCreará un nuevo bucketparallelcluster-hash-v1-DO-NOT- DELETE.

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. Si fuerza la actualización, el nuevo valor se ignorará y se usará el valor anterior. (p. 68) AdditionalResources(Opcional,String)

Define una plantilla de AWS CloudFormation adicional que se lanzará junto con el clúster. Esta plantilla adicional se utiliza para crear recursos que se encuentran fuera del clúster pero que forman parte del ciclo de vida de este.

El valor tiene que ser una dirección URL HTTPS a una plantilla pública, con todos los parámetros incluidos.

No hay valor predeterminado.

Política de actualización: Esta configuración se puede cambiar durante una actualización. (p. 68)

Sección Image

(Obligatorio)Define el sistema operativo del clúster.

Image: Os: string CustomAmi: string

ImagePropiedades

Os(Obligatorio,String)

Especifica el sistema operativo que se utilizará para el clúster. Los valores admitidos sonalinux2,centos7,ubuntu1804, yubuntu2004

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 68)

90 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Archivos de configuración

CustomAmi(Opcional,String)

Especifica el ID de una AMI personalizada que puede utilizar para los nodos de cabeza y computación en lugar de la AMI predeterminada.

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 68)

Sección HeadNode

(Obligatorio)Especifica la configuración del nodo director.

HeadNode: InstanceType: string Networking: SubnetId: string ElasticIp: string/boolean SecurityGroups: - string - string AdditionalSecurityGroups: - string - string Proxy: HttpProxyAddress: string DisableSimultaneousMultithreading: boolean Ssh: KeyName: string AllowedIps: string LocalStorage: RootVolume: Size: integer Encrypted: boolean VolumeType: string Iops: integer Throughput: integer DeleteOnTermination: boolean KmsKeyId: string EphemeralVolume: MountDir: string Dcv: Enabled: boolean Port: integer AllowedIps: string CustomActions: OnNodeStart: Script: string Args: - string - string OnNodeConfigured: Script: string Args: - string - string Iam: InstanceRole: string InstanceProfile: string S3Access: - BucketName: string EnableWriteAccess: boolean KeyName: string AdditionalIamPolicies: - Policy: string

91 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Archivos de configuración

Imds: Secured: boolean

Temas • HeadNodePropiedades (p. 92) • Networking (p. 92) • Ssh (p. 93) • LocalStorage (p. 94) • Dcv (p. 96) • CustomActions (p. 97) • Iam (p. 98) • Imds (p. 99)

HeadNodePropiedades

InstanceType(Obligatorio,String)

Especifica el tipo de instancia para el nodo director.

Especifica el tipo de Amazon EC2 de instancia que se utiliza para el nodo director. La arquitectura del tipo de instancia debe ser la misma que la utilizada para elAWS Batch InstanceType (p. 104)orSlurm InstanceType (p. 109)configuración de.

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 68) DisableSimultaneousMultithreading(Opcional,Boolean)

Sitrue, deshabilita el hipersubproceso en el nodo director. El valor predeterminado es false.

No todos los tipos de instancias pueden deshabilitar la tecnología Hyper-Threading. Para obtener una lista de los tipos de instancias que admiten la deshabilitación de hipersubprocesos, consulteNúcleos de CPU y subprocesos para cada núcleo de CPU por tipo de instanciaen laGuía del usuario de Amazon EC2 para instancias de Linux.

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 68)

Networking

(Obligatorio)Define la configuración de red para el nodo principal.

Networking: SubnetId: string ElasticIp: string/boolean SecurityGroups: - string - string AdditionalSecurityGroups: - string - string Proxy: HttpProxyAddress: string

NetworkingPropiedades

SubnetId(Obligatorio,String)

Especifica el ID de una subred existente en la que se va a aprovisionar el nodo principal.

92 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Archivos de configuración

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 68) ElasticIp(Opcional,String)

Crea o asigna una dirección IP elástica al nodo director. Los valores admitidos sontrue,falseo el ID de una dirección IP elástica existente. El valor predeterminado es false.

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 68) SecurityGroups(Opcional,[String])

Lista de identificadores de grupo de seguridad de Amazon VPC que se utilizarán para el nodo principal. Estos sustituyen a los grupos de seguridad queAWS ParallelClustercrearía.

Política de actualización: Esta configuración se puede cambiar durante una actualización. (p. 68) AdditionalSecurityGroups(Opcional,[String])

Lista de identificadores de grupo de seguridad de Amazon VPC adicionales que se utilizarán para el nodo principal.

Política de actualización: Esta configuración se puede cambiar durante una actualización. (p. 68) Proxy(Opcional)

Especifica los detalles de cualquier volumen de almacén de instancias. Para obtener más información, consulteVolúmenes de almacén de instanciasen laGuía del usuario de Amazon EC2 para instancias de Linux.

Proxy: HttpProxyAddress: string

HttpProxyAddress(Opcional,String)

Define un servidor proxy HTTP o HTTPS, normalmente https://x.x.x.x:8080.

No hay valor predeterminado.

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 68)

Ssh

(Opcional) Define la configuración del acceso SSH al nodo director.

Ssh: KeyName: string AllowedIps: string

Política de actualización: Esta configuración se puede cambiar durante una actualización. (p. 68)

SshPropiedades

KeyName(Opcional,String)

Asigna un nombre a un key pair de Amazon EC2 existente con el que se va a habilitar el acceso de SSH al nodo principal.

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 68) AllowedIps(Opcional,String)

Especifica el intervalo de direcciones IP con formato CIDR para las conexiones SSH al nodo director. El valor predeterminado es 0.0.0.0/0.

93 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Archivos de configuración

Política de actualización: Esta configuración se puede cambiar durante una actualización. (p. 68)

LocalStorage

(Opcional)Define la configuración de almacenamiento local para el nodo principal.

LocalStorage: RootVolume: Size: integer Encrypted: boolean VolumeType: string Iops: integer Throughput: integer DeleteOnTermination: boolean KmsKeyId: string EphemeralVolume: MountDir: string

Política de actualización: Esta configuración se puede cambiar durante una actualización. (p. 68)

LocalStoragePropiedades

RootVolume(Obligatorio)

Especifica el almacenamiento del volumen raíz para el nodo principal.

RootVolume: Size: integer Encrypted: boolean VolumeType: string Iops: integer Throughput: integer DeleteOnTermination: boolean KmsKeyId: string

Política de actualización: Esta configuración se puede cambiar durante una actualización. (p. 68) Size(Opcional,Integer)

Especifica el tamaño del volumen de raíz del nodo principal en gibibytes (GiB). El tamaño predeterminado proviene de la AMI. El uso de un tamaño diferente requiere que la AMI admitagrowroot.

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 68) Encrypted(Opcional,Boolean)

Especifica si el volumen raíz está cifrado. El valor predeterminado es false.

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 68) VolumeType(Opcional,String)

Especifica el.Tipo de volumen de Amazon EBS. Los valores admitidos songp2,gp3,io1,io2,sc1,stl, ystandard. El valor predeterminado es gp2.

Para obtener más información, consulte Tipos de volumen de Amazon EBS en la Guía del usuario de Amazon EC2 para instancias de Linux.

94 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Archivos de configuración

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 68) Iops(Opcional,Integer)

Define el número de IOPS paraio1,io2, ygp3Tipo de volúmenes de.

El valor predeterminado, los valores admitidos yvolume_iopsDe avolume_sizerelación varía segúnVolumeTypeySize. VolumeType = io1

Valor predeterminadoIops= 100

Valores admitidosIops= 100—64000 †

MáximoIopsDe aSizerelación = 50 IOPS por GiB. 5000 IOPS requiere unSizede al menos 100 GiB. VolumeType = io2

Valor predeterminadoIops= 100

Valores admitidosIops= 100—64000 (256000 paraio2Bloque de volúmenes Express) †

MáximoIopsDe aSizerelación = 500 IOPS por GiB. 5000 IOPS requiere unSizede al menos 10 GiB. VolumeType = gp3

Valor predeterminadoIops= 3000

Valores admitidosIops= 3000—16000

MáximoIopsDe aSizerelación = 500 IOPS por GiB. 5000 IOPS requiere unSizede al menos 10 GiB.

† El máximo de IOPS está garantizado solo enInstancias integradas en el sistema Nitroaprovisionada con más de 32 000 IOPS. Otras instancias garantizan hasta 32,000 IOPS. Viejo antiguoio1Puede que los volúmenes no alcancen el rendimiento máximo a menos queModificar el volumen.io2 Compatibilidad con volúmenes de bloque ExpressIopsvalores de hasta 256000 enR5bTipos de instancia. Para obtener más información, consulteio2Bloque de volúmenes Expressen laGuía del usuario de Amazon EC2 para instancias de Linux.

Política de actualización: Esta configuración se puede cambiar durante una actualización. (p. 68) Throughput(Opcional,Integer)

Define el rendimiento degp3Tipos de volumen, en MiB/s. Este valor solo es válido cuandoVolumeTypeesgp3. El valor predeterminado es 125. Valores admitidos: 125 —1000 MiB/s

La relación deThroughputDe aIopsNo puede tener más de 0.25. El rendimiento máximo de 1000 Mib/s requiere que elIopses de al menos 4000.

Política de actualización: Esta configuración se puede cambiar durante una actualización. (p. 68) DeleteOnTermination(Opcional,Boolean)

Especifica si el volumen raíz se debe eliminar cuando se termina el nodo principal. El valor predeterminado es true.

Política de actualización: Esta configuración se puede cambiar durante una actualización. (p. 68)

95 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Archivos de configuración

KmsKeyId(Opcional,String)

Especifica el ARN delAWS KMSLa clave que se usa para cifrar el volumen. El formato es el siguiente.arn:Partition:kms:Region:Account:key/KeyId.

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 68) EphemeralVolume(Opcional)

Especifica los detalles de cualquier volumen de almacén de instancias. Para obtener más información, consulteVolúmenes de almacén de instanciasen laGuía del usuario de Amazon EC2 para instancias de Linux.

EphemeralVolume: MountDir: string

MountDir(Opcional,String)

Especifica el directorio de montaje para el volumen del almacén de instancias. El valor predeterminado es /scratch.

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 68)

Dcv

(Opcional)Define los parámetros de configuración para el servidor NICE DCV que se ejecuta en el nodo principal.

Dcv: Enabled: boolean Port: integer AllowedIps: string

Important

De forma predeterminada, la configuración del puerto NICE DCV porAWS ParallelClusterEste valor está abierto a todas las direcciones IPv4. Sin embargo, sólo puede conectarse a un puerto NICE DCV si tiene la dirección URL de la sesión NICE DCV y se conecta a la sesión NICE DCV en un plazo de 30 segundos a partir del momento en que se devuelve la URL desdepcluster dcv connect. UsarAllowedIpsPara restringir aún más el acceso al puerto DCV de NICE con un intervalo de direcciones IP con formato de CIDR y utilice elPortpara establecer un puerto no estándar.

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 68)

DcvPropiedades

Enabled(Obligatorio,Boolean)

Especifica si NICE DCV está habilitado en el nodo principal. El valor predeterminado es false.

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 68) Note

NICE DCV genera automáticamente un certificado autofirmado que se utiliza para proteger el tráfico entre el cliente de NICE DCV y el servidor NICE DCV que se ejecuta en el

96 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Archivos de configuración

nodo principal. Para configurar su propio certificado, consulte Certificado NICE DCV HTTPS (p. 220). Port(Opcional,Integer)

Especifica el puerto para NICE DCV. El valor predeterminado es 8443.

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 68) AllowedIps(Opcional, recomendado,String)

Especifica el intervalo de direcciones IP con formato CIDR para las conexiones al DCV NICE. Este parámetro solo se utiliza cuando AWS ParallelCluster crea el grupo de seguridad. El valor predeterminado es 0.0.0.0/0, que permite el acceso desde cualquier dirección de Internet.

Política de actualización: Esta configuración se puede cambiar durante una actualización. (p. 68)

CustomActions (Opcional)Especifica secuencias de comandos personalizadas que se ejecutarán en el nodo principal.

CustomActions: OnNodeStart: Script: string Args: - string - string OnNodeConfigured: Script: string Args: - string - string

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 68)

CustomActionsPropiedades

OnNodeStart(Opcional,String)

Especifica una secuencia de comandos que se ejecutará en el nodo principal antes de cualquiera de losboot_as_*se ejecutan secuencias de comandos. Para obtener más información, consulte Acciones de arranque personalizadas (p. 170).. Script(Obligatorio,String)

Especifica el archivo que se va a utilizar. La ruta del archivo puede comenzar conhttps://ors3://. Args(Opcional,[String])

Lista de argumentos que se pasan al script. OnNodeConfigured(Opcional,String)

Especifica un script que se ejecuta en el nodo principal después de que se ejecuten todos losboot_as_*se ejecutan secuencias de comandos. Para obtener más información, consulte Acciones de arranque personalizadas (p. 170).. Script(Obligatorio,String)

Especifica el archivo que se va a utilizar. La ruta del archivo puede comenzar conhttps://,s3://, o bienfile://. Args(Opcional,[String])

Lista de argumentos que se pasan al script.

97 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Archivos de configuración

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 68)

Iam

(Opcional)Especifica un rol de instancia o un perfil de instancia que se va a utilizar en el nodo principal para anular el rol de instancia predeterminado o el perfil de instancia del clúster.

Iam: InstanceRole: string InstanceProfile: string S3Access: - BucketName: string EnableWriteAccess: boolean KeyName: string AdditionalIamPolicies: - Policy: string

Política de actualización: Esta configuración se puede cambiar durante una actualización. (p. 68)

IamPropiedades

InstanceProfile(Opcional,String)

Especifica un perfil de instancia para anular el perfil de instancia de nodo principal predeterminado. No puede especificar ambosInstanceProfileyInstanceRole. El formato es el siguiente arn:Partition:iam::Account:instance-profile/InstanceProfileName.

Si esto se especifica, elS3AccessyAdditionalIamPoliciesLos valores se omiten. Le recomendamos que utiliceAdditionalIamPoliciesporque las características agregadas aAWS ParallelClustera menudo requieren nuevos permisos.

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 68) InstanceRole(Opcional,String)

Especifica un rol de instancia para anular el rol de instancia de nodo principal predeterminado. No puede especificar ambosInstanceProfileyInstanceRole. El formato es el siguiente arn:Partition:iam::Account:role/RoleName.

Si esto se especifica, elS3AccessyAdditionalIamPoliciesLos valores se omiten. Le recomendamos que utiliceAdditionalIamPoliciesporque las características agregadas aAWS ParallelClustera menudo requieren nuevos permisos.

Política de actualización: Esta configuración se puede cambiar durante una actualización. (p. 68)

S3Access

S3Access(Opcional)

Especifica un bucket de. Esto se utiliza para generar políticas que otorguen el acceso especificado al depósito. Si el archivo deInstanceProfileorInstanceRoleEsta configuración se especifica, se ignora. Le recomendamos que utiliceAdditionalIamPoliciesporque las características agregadas aAWS ParallelClustera menudo requieren nuevos permisos.

S3Access: - BucketName: string EnableWriteAccess: boolean KeyName: string

98 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Archivos de configuración

Política de actualización: Esta configuración se puede cambiar durante una actualización. (p. 68) BucketName(Obligatorio,String)

Nombre del bucket de .

Política de actualización: Esta configuración se puede cambiar durante una actualización. (p. 68) KeyName(Opcional,String)

La llave para el cubo. El valor predeterminado es "*".

Política de actualización: Esta configuración se puede cambiar durante una actualización. (p. 68) EnableWriteAccess(Opcional,Boolean)

Indica si el acceso de escritura está habilitada para el bucket. El valor predeterminado es false.

Política de actualización: Esta configuración se puede cambiar durante una actualización. (p. 68)

AdditionalIamPolicies

AdditionalIamPolicies(Opcional)

Especifica una lista de nombres de recursos de Amazon (ARN) de políticas de IAM para Amazon EC2. Esta lista se asocia al rol raíz utilizado para el nodo principal además de los permisos requeridos porAWS ParallelCluster.

El nombre de una política de IAM y su ARN son diferentes. No se pueden utilizar los nombres.Si elInstanceProfileorInstanceRoleEsta configuración se especifica, se ignora. Le recomendamos que utiliceAdditionalIamPoliciesYa queAdditionalIamPoliciesse agregan a los permisos queAWS ParallelClusterrequiere, y elInstanceRoledebe incluir todos los permisos necesarios. Los permisos necesarios a menudo cambian de versión a versión a medida que se añaden características.

No hay valor predeterminado.

AdditionalIamPolicies: - Policy: string

Policy(Opcional,[String])

Lista de directivas de IAM.

Política de actualización: Esta configuración se puede cambiar durante una actualización. (p. 68)

Imds

(Opcional)Especifica las propiedades del servicio de metadatos de instancia (IMDS). Para obtener más información, consulteCómo funciona el servicio de metadatos de instancia versión 2en laGuía del usuario de Amazon EC2 para instancias de Linux.

Imds: Secured: string

Política de actualización: Esta configuración se puede cambiar durante una actualización. (p. 68)

99 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Archivos de configuración

ImdsPropiedades

Secured(Opcional,Boolean)

Sitrue, restringir el acceso a IMDS (y, por lo tanto, a las credenciales de instancia) a los usuarios con permisos de superusuario. El valor predeterminado es true.

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 68)

Sección Scheduling

(Obligatorio)Define el programador de trabajos que se va a utilizar en el clúster junto con las características de las instancias de cálculo administradas por el programador de trabajos. Los dos programadores de trabajos que se pueden utilizar sonSlurmyAWS Batch, cada uno de los cuales admite configuraciones y propiedades distintas.

Temas • SchedulingPropiedades (p. 102) • AwsBatchQueues (p. 102) • SlurmQueues (p. 105) • SlurmSettings (p. 115)

Scheduling: Scheduler: slurm SlurmSettings: ScaledownIdletime: integer Dns: DisableManagedDns: boolean HostedZoneId: string SlurmQueues: - Name: string ComputeSettings: LocalStorage: RootVolume: Size: integer Encrypted: boolean VolumeType: string Iops: integer Throughput: string KmsKeyId: string EphemeralVolume: MountDir: string CapacityType: string Networking: SubnetIds: - string AssignPublicIp: boolean SecurityGroups: - string AdditionalSecurityGroups: - string PlacementGroup: Enabled: boolean Id: string Proxy: HttpProxyAddress: string ComputeResources: - Name: string InstanceType: string - Name: string

100 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Archivos de configuración

InstanceType: string MinCount: integer MaxCount: integer SpotPrice: float DisableSimultaneousMultithreading: boolean Efa: Enabled: boolean GdrSupport: boolean CustomActions: OnNodeStart: Script: string Args: - string - string OnNodeConfigured: Script: string Args: - string - string Iam: InstanceProfile: string InstanceRole: string S3Access: - BucketName: string EnableWriteAccess: boolean KeyName: boolean AdditionalIamPolicies: - Policy: string Image: CustomAmi: string - Name: string ComputeSettings: LocalStorage: RootVolume: Size: integer Encrypted: boolean VolumeType: string Iops: integer Throughput: string KmsKeyId: string EphemeralVolume: MountDir: string Networking: SubnetIds: - string AssignPublicIp: boolean SecurityGroups: - string AdditionalSecurityGroups: - string PlacementGroup: Enabled: boolean Id: string Proxy: HttpProxyAddress: string ComputeResources: - Name: string InstanceType: string - Name: string InstanceType: string MinCount: integer MaxCount: integer SpotPrice: float DisableSimultaneousMultithreading: boolean Efa: Enabled: boolean

101 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Archivos de configuración

GdrSupport: boolean Iam: InstanceProfile: string Image: CustomAmi: string

Scheduling: Scheduler: awsbatch AwsBatchQueues: - Name: string CapacityType: string Networking: SubnetIds: - string AssignPublicIp: boolean SecurityGroups: - string AdditionalSecurityGroups: - string ComputeResources: # this maps to a Batch compute environment (initially we support only 1) - Name: string InstanceTypes: - string - string - string MinvCpus: integer DesiredvCpus: integer MaxvCpus: integer SpotBidPercentage: float

SchedulingPropiedades

Scheduler(Obligatorio,String)

Especifica el programador utilizado. Los valores admitidos son slurm y awsbatch.

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 68)

AwsBatchQueues

(Opcional)Configuración deAWS Batchqueue. Solo se admite una cola. Esta sección es obligatoria cuandoScheduler (p. 102)esawsbatch.

AwsBatchQueues: - Name: string CapacityType: string Networking: SubnetIds: - string AssignPublicIp: boolean SecurityGroups: - string AdditionalSecurityGroups: - string ComputeResources: # this maps to a Batch compute environment (initially we support only 1) - Name: string InstanceTypes: - string - string - string

102 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Archivos de configuración

MinvCpus: integer DesiredvCpus: integer MaxvCpus: integer SpotBidPercentage: float

Política de actualización: Esta configuración se puede cambiar durante una actualización. (p. 68)

Temas • AwsBatchQueuesPropiedades (p. 103)

AwsBatchQueuesPropiedades

Name(Obligatorio,String)

El nombre de la propiedadAWS Batchqueue.

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 68) CapacityType(Opcional,String)

El tipo de recursos informáticos utilizados en laAWS Batchqueue. Los valores admitidos son ONDEMAND o SPOT. El valor predeterminado es ONDEMAND.

Política de actualización: La flota informática debe detenerse para que esta configuración se cambie para una actualización. (p. 68)

Networking

(Obligatorio)Define la configuración de red para elAWS Batchqueue.

Networking: SubnetIds: - string AssignPublicIp: boolean SecurityGroups: - string AdditionalSecurityGroups: - string

NetworkingPropiedades

SubnetIds(Obligatorio,[String])

Especifica el ID de una subred existente en la que se va a aprovisionar elAWS Batchqueue. En la actualidad, solo se admite una subred.

Política de actualización: La flota informática debe detenerse para que esta configuración se cambie para una actualización. (p. 68) AssignPublicIp(Opcional,String)

Crea o asigna una dirección IP pública a los nodos delAWS Batchqueue. Los valores admitidos son true y false. El valor predeterminado depende de la subred especificada.

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 68) SecurityGroups(Opcional,[String])

Lista de grupos de seguridad que se utilizarán para elAWS Batchqueue. Si no se especifican grupos de seguridad,AWS ParallelClustercreará otros nuevos.

103 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Archivos de configuración

Política de actualización: Esta configuración se puede cambiar durante una actualización. (p. 68) AdditionalSecurityGroups(Opcional,[String])

Lista de grupos de seguridad que se utilizarán para elAWS Batchqueue.

Política de actualización: Esta configuración se puede cambiar durante una actualización. (p. 68)

ComputeResources

(Obligatorio)Define la configuración de ComputeResources para elAWS Batchqueue.

ComputeResources: # this maps to a Batch compute environment (initially we support only 1) - Name: string InstanceTypes: - string - string - string MinvCpus: integer DesiredvCpus: integer MaxvCpus: integer SpotBidPercentage: float

ComputeResourcesPropiedades

Name(Obligatorio,String)

: el nombre del entorno informático de lasAWS Batchqueue.

Política de actualización: La flota informática debe detenerse para que esta configuración se cambie para una actualización. (p. 68) InstanceTypes(Obligatorio,[String])

Matriz de tipos de instancia que se incluirán en esteAWS Batchentorno informático. Todos los tipos de instancia deben utilizar la propiedadx86_64Arquitectura de

Política de actualización: La flota informática debe detenerse para que esta configuración se cambie para una actualización. (p. 68) MinVcpus(Opcional,Integer)

El número mínimo de vCPU para elAWS Batchentorno informático.

Política de actualización: Esta configuración se puede cambiar durante una actualización. (p. 68) DesiredVcpus(Opcional,Integer)

El número deseado de vCPU en elAWS Batchentorno informático.AWS Batchajustará este valor entreMinVcpusyMaxVcpus, en función de la demanda en la cola de trabajos.

Política de actualización: Esta configuración no se analiza durante una actualización. (p. 221) MaxVcpus(Opcional,Integer)

El número máximo de vCPU de lasAWS Batchentorno informático. Esto no se puede establecer en un valor inferior aDesiredVcpus.

Política de actualización: Esta configuración no puede reducirse durante una actualización. (p. 68) SpotBidPercentage(Opcional,Float)

El porcentaje máximo del precio de spot de EC2 que puede tener ese tipo de instancia al compararlo con su precio bajo demanda antes de que las instancias se lancen. El valor predeterminado es1(100%).

104 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Archivos de configuración

Política de actualización: Esta configuración se puede cambiar durante una actualización. (p. 68)

SlurmQueues

(Opcional)Configuración deSlurmqueue. Esta sección es obligatoria cuandoScheduler (p. 102)esslurm.

SlurmQueues: - Name: string CapacityType: string Networking: SubnetIds: - string ComputeResources: - Name: string InstanceType: string - Name: string InstanceType: string MinCount: integer MaxCount: integer SpotPrice: float DisableSimultaneousMultithreading: boolean Efa: Enabled: boolean GdrSupport: boolean CustomActions: OnNodeStart: Script: string Args: - string - string OnNodeConfigured: Script: string Args: - string - string Iam: InstanceProfile: string InstanceRole: string S3Access: - BucketName: string EnableWriteAccess: boolean KeyName: boolean AdditionalIamPolicies: - Policy: string Image: CustomAmi: string - Name: string ComputeSettings: LocalStorage: RootVolume: Size: integer Encrypted: boolean VolumeType: string Iops: integer Throughput: string KmsKeyId: string EphemeralVolume: MountDir: string Networking: SubnetIds: - string AssignPublicIp: boolean SecurityGroups:

105 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Archivos de configuración

- string PlacementGroup: Enabled: boolean Id: string Proxy: HttpProxyAddress: string ComputeResources: - Name: string InstanceType: string - Name: string InstanceType: string MinCount: integer MaxCount: integer SpotPrice: float DisableSimultaneousMultithreading: boolean Efa: Enabled: boolean GdrSupport: boolean Iam: InstanceProfile: string Image: CustomAmi: string

Política de actualización: La flota informática debe detenerse para que esta configuración se cambie para una actualización. (p. 68)

Temas • SlurmQueuesPropiedades (p. 106)

SlurmQueuesPropiedades

Name(Obligatorio,String)

El nombre de la propiedadSlurmqueue.

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 68) CapacityType(Opcional,String)

El tipo de recursos informáticos utilizados en laSlurmqueue. Los valores admitidos son ONDEMAND o SPOT. El valor predeterminado es ONDEMAND.

Política de actualización: La flota informática debe detenerse para que esta configuración se cambie para una actualización. (p. 68)

Networking

(Obligatorio)Define la configuración de red para elSlurmqueue.

Networking: SubnetIds: - string AssignPublicIp: boolean SecurityGroups: - string PlacementGroup: Enabled: boolean Id: string Proxy: HttpProxyAddress: string

106 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Archivos de configuración

NetworkingPropiedades

SubnetIds(Obligatorio,[String])

Especifica el ID de una subred existente en la que se va a aprovisionar elSlurmqueue. Actualmente solo se admite una subred y todos losSlurmlas colas deben utilizar la misma subred.

Política de actualización: La flota informática debe detenerse para que esta configuración se cambie para una actualización. (p. 68) AssignPublicIp(Opcional,String)

Crea o asigna una dirección IP pública a los nodos delSlurmqueue. Los valores admitidos son true y false. El valor predeterminado depende de la subred especificada; una subred con IP públicas asignará direcciones IP públicas de forma predeterminada.

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 68) SecurityGroups(Opcional,[String])

Lista de grupos de seguridad que se utilizarán para elSlurmqueue. Si no se especifican grupos de seguridad,AWS ParallelClustercreará otros nuevos.

Política de actualización: Esta configuración se puede cambiar durante una actualización. (p. 68) AdditionalSecurityGroups(Opcional,[String])

Lista de grupos de seguridad adicionales que se utilizarán para elSlurmqueue.

Política de actualización: Esta configuración se puede cambiar durante una actualización. (p. 68) PlacementGroup(Opcional)

Especifica la configuración del grupo de ubicación para elSlurmqueue.

PlacementGroup: Enabled: boolean Id: string

Política de actualización: La flota informática debe detenerse para que esta configuración se cambie para una actualización. (p. 68) Enabled(Opcional,Boolean)

Indica si se utiliza un grupo de ubicación para elSlurmqueue. Si no se especifica esto, el valor predeterminado esfalse.

Política de actualización: La flota informática debe detenerse para que esta configuración se cambie para una actualización. (p. 68) Id(Opcional,String)

El nombre del grupo de ubicación de un grupo de ubicación de clúster existente utilizado para elSlurmqueue. Si esto no se especifica,AWS ParallelClustercreará un nuevo grupo de ubicación de clúster para cada cola.

Política de actualización: La flota informática debe detenerse para que esta configuración se cambie para una actualización. (p. 68) Proxy(Opcional)

Especifica la configuración proxy de lasSlurmqueue.

Proxy:

107 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Archivos de configuración

HttpProxyAddress: string

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 68) HttpProxyAddress(Opcional,String)

Define un servidor proxy HTTP o HTTPS para elSlurmcola, típicamentehttps://x.x.x.x:8080.

No hay valor predeterminado.

Política de actualización: La flota informática debe detenerse para que esta configuración se cambie para una actualización. (p. 68)

Image

(Opcional)Especifica la imagen que se va a utilizar para elSlurmqueue. Para utilizar la misma AMI para todos los nodos, utilice el métodoCustomAmi (p. 91)en elImageSección (p. 90).

Image: CustomAmi: string

ImagePropiedades

CustomAmi(Opcional,String)

La AMI que se va a utilizar paraSlurmen lugar de la cola predeterminadapublicado AMI.

Política de actualización: La flota informática debe detenerse para que esta configuración se cambie para una actualización. (p. 68)

ComputeResources

(Obligatorio)Define la configuración de ComputeResources para elSlurmqueue.

ComputeResources: - Name: string InstanceType: string - Name: string InstanceType: string MinCount: integer MaxCount: integer SpotPrice: float DisableSimultaneousMultithreading: boolean Efa: Enabled: boolean GdrSupport: boolean

ComputeResourcesPropiedades

Name(Obligatorio,String)

: el nombre del entorno informático de lasSlurmqueue.

Política de actualización: La flota informática debe detenerse para que esta configuración se cambie para una actualización. (p. 68) DisableSimultaneousMultithreading(Opcional,Boolean)

Sitrue, deshabilita el hyperthreading en los nodos delSlurmqueue. El valor predeterminado es false.

108 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Archivos de configuración

No todos los tipos de instancias pueden deshabilitar la tecnología Hyper-Threading. Para obtener una lista de los tipos de instancias que admiten la deshabilitación de hipersubprocesos, consulteNúcleos de CPU y subprocesos para cada núcleo de CPU por tipo de instanciaen laGuía del usuario de Amazon EC2 para instancias de Linux.

Política de actualización: La flota informática debe detenerse para que esta configuración se cambie para una actualización. (p. 68) InstanceType(Obligatorio,String)

El tipo de instancia que se va a utilizar en esteSlurmRecurso de computación. Todos los tipos de instancia de un clúster deben utilizar la misma arquitectura de procesador, ya seax86_64orarm64.

Política de actualización: La flota informática debe detenerse para que esta configuración se cambie para una actualización. (p. 68) MinCount(Opcional,Integer)

El número mínimo de instancias para elSlurmRecurso de computación. El valor predeterminado es 0.

Política de actualización: La flota informática debe detenerse para que esta configuración se cambie para una actualización. (p. 68) MaxCount(Opcional,Integer)

El número máximo de instancias para elSlurmRecurso de computación. El valor predeterminado es 10.

Política de actualización: Reducir el tamaño de una cola por debajo del número actual de nodos requiere que se detenga primero la flota informática. (p. 68) SpotPrice(Opcional,Float)

El precio máximo que se pagará por una instancia puntual de EC2 antes de que se inicien las instancias. El valor predeterminado es precio bajo demanda.

Política de actualización: Esta configuración se puede cambiar durante una actualización. (p. 68) Efa(Opcional)

Especifica la configuración del Elastic Fabric Adapter (EFA) para los nodos delSlurmqueue.

Política de actualización: La flota informática debe detenerse para que esta configuración se cambie para una actualización. (p. 68)

Efa: Enabled: boolean GdrSupport: boolean

Enabled(Opcional,Boolean)

Especifica que Elastic Fabric Adapter (EFA) se ha habilitado. EFA es compatible con tipos de instancias específicos (c5n.18xlarge,c5n.metal,g4dn.metal,i3en.24xlarge,i3en.metal,m5dn.24xlarge,m5n.24xlarge,m5zn.12xlarge,m5zn.metal,r5dn.24xlarge,r5n.24xlarge,p3dn.24xlarge, yp4d.24xlargePara instancias x86-64 yc6gn.16xlargepara instancias Graviton2 basadas en ARM) en sistemas operativos específicosalinux2,centos7,ubuntu1804, o bienubuntu2004Para instancias x86-64 yalinux2,ubuntu1804, o bienubuntu2004para instancias Graviton2 basadas en ARM). Para obtener más información, consulte Elastic Fabric Adapter (p. 215). Se debe utilizar un grupo de ubicación del clúster para minimizar las latencias entre instancias. El valor predeterminado es false.

Política de actualización: La flota informática debe detenerse para que esta configuración se cambie para una actualización. (p. 68)

109 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Archivos de configuración

GdrSupport(Opcional,Boolean)

Especifica que la compatibilidad con GPUDirect RDMA (acceso directo a memoria remota) está habilitada para elSlurmRecurso de computación. El Support para GPUDirect RDMA es compatible con tipos de instancias específicos (p4d.24xlarge) en sistemas operativos específicos (Os (p. 90)esalinux2,centos7,ubuntu1804, o bienubuntu2004). El valor predeterminado es false.

Política de actualización: La flota informática debe detenerse para que esta configuración se cambie para una actualización. (p. 68)

ComputeSettings

(Obligatorio)Define elComputeSettingspara elSlurmqueue.

ComputeSettingsPropiedades

Especifica las propiedades deComputeSettingsde los nodos en elSlurmqueue.

ComputeSettings: LocalStorage: RootVolume: Size: integer Encrypted: boolean VolumeType: string Iops: integer Throughput: string KmsKeyId: string EphemeralVolume: MountDir: string

LocalStorage(Opcional)

Especifica las propiedades deLocalStoragede los nodos en elSlurmqueue.

LocalStorage: RootVolume: Size: integer Encrypted: boolean VolumeType: string Iops: integer Throughput: string KmsKeyId: string EphemeralVolume: MountDir: string

Política de actualización: La flota informática debe detenerse para que esta configuración se cambie para una actualización. (p. 68) RootVolume(Opcional)

Especifica los detalles del volumen raíz de los nodos en elSlurmqueue.

RootVolume: Size: integer Encrypted: boolean VolumeType: string Iops: integer Throughput: string KmsKeyId: string

110 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Archivos de configuración

Política de actualización: La flota informática debe detenerse para que esta configuración se cambie para una actualización. (p. 68) Size(Opcional,Integer)

Especifica el tamaño del volumen raíz en gibibytes (GiB) para las notas delSlurmqueue. El tamaño predeterminado proviene de la AMI. El uso de un tamaño diferente requiere que la AMI admitagrowroot.

Política de actualización: La flota informática debe detenerse para que esta configuración se cambie para una actualización. (p. 68) Encrypted(Opcional,Boolean)

Sitrue, el volumen raíz de los nodos en elSlurmestán cifradas. El valor predeterminado es false.

Política de actualización: La flota informática debe detenerse para que esta configuración se cambie para una actualización. (p. 68) KmsKeyId(Opcional,String)

Especifica el ARN delAWS KMSLa clave utilizada para cifrar el volumen raíz de los nodos de laSlurmqueue. El formato es el siguiente.arn:${Partition}:kms:${Region}: ${Account}:key/${KeyId}.

Política de actualización: La flota informática debe detenerse para que esta configuración se cambie para una actualización. (p. 68) VolumeType(Opcional,String)

Especifica el.Tipo de volumen de Amazon EBSde los nodos en elSlurmqueue. Los valores admitidos songp2,gp3,io1,io2,sc1,stl, ystandard. El valor predeterminado es gp2.

Para obtener más información, consulte Tipos de volumen de Amazon EBS en la Guía del usuario de Amazon EC2 para instancias de Linux.

Política de actualización: La flota informática debe detenerse para que esta configuración se cambie para una actualización. (p. 68) Iops(Opcional,Boolean)

Define el número de IOPS paraio1yio2Tipo de volúmenes de.

El valor predeterminado, los valores admitidos yvolume_iopsDe avolume_sizerelación varía segúnVolumeTypeySize. VolumeType = io1

Valor predeterminadoIops= 100

Valores admitidosIops= 100—64000 †

Máximovolume_iopsDe avolume_sizerelación = 50 IOPS por GiB. 5000 IOPS requiere unvolume_sizede al menos 100 GiB. VolumeType = io2

Valor predeterminadoIops= 100

Valores admitidosIops= 100—64000 (256000 paraio2Bloque de volúmenes Express) †

MáximoIopsDe aSizerelación = 500 IOPS por GiB. 5000 IOPS requiere unSizede al menos 10 GiB.

111 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Archivos de configuración

† El máximo de IOPS está garantizado solo enInstancias integradas en el sistema Nitroaprovisionada con más de 32 000 IOPS. Otras instancias garantizan hasta 32,000 IOPS. Viejo antiguoio1Puede que los volúmenes no alcancen el rendimiento máximo a menos queModificar el volumen.io2 Compatibilidad con volúmenes de bloque Expressvolume_iopsvalores de hasta 256000 enR5bTipos de instancia. Para obtener más información, consulteio2Bloque de volúmenes Expressen laGuía del usuario de Amazon EC2 para instancias de Linux.

Política de actualización: Esta configuración se puede cambiar durante una actualización. (p. 68) Throughput(Opcional,Integer)

Define el rendimiento degp3Tipos de volumen, en MiB/s. Este valor solo es válido cuandoVolumeTypeesgp3. El valor predeterminado es 125. Valores admitidos: 125 —1000 MiB/s

La relación deThroughputDe aIopsNo puede tener más de 0.25. El rendimiento máximo de 1000 Mib/s requiere que elIopses de al menos 4000.

Política de actualización: La flota informática debe detenerse para que esta configuración se cambie para una actualización. (p. 68) EphemeralVolume(Opcional,Boolean)

Especifica la configuración del volumen efímero. El volumen efímero se crea combinando todos los volúmenes de almacén de instancias en un único volumen lógico con el formatoext4sistema de archivos de. El valor predeterminado es /scratch. Si el tipo de instancia no tiene volúmenes de almacén de instancias, no se creará ningún volumen efímero. Para obtener más información, consulteVolúmenes de almacén de instanciasen laGuía del usuario de Amazon EC2 para instancias de Linux.

EphemeralVolume: MountDir: string

Política de actualización: La flota informática debe detenerse para que esta configuración se cambie para una actualización. (p. 68) MountDir(Opcional,String)

Especifica el directorio de montaje para el volumen efímero de cada nota en elSlurmqueue.

Política de actualización: La flota informática debe detenerse para que esta configuración se cambie para una actualización. (p. 68)

CustomActions

(Opcional)Especifica secuencias de comandos personalizadas que se ejecutarán en los nodos delSlurmqueue.

CustomActions: OnNodeStart: Script: string Args: - string - string OnNodeConfigured: Script: string Args: - string

112 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Archivos de configuración

- string

Política de actualización: La flota informática debe detenerse para que esta configuración se cambie para una actualización. (p. 68)

CustomActionsPropiedades

OnNodeStart(Opcional,String)

Especifica un script que se ejecuta en los nodos de laSlurmantes de cualquiera de lasboot_as_*se ejecutan secuencias de comandos. Para obtener más información, consulte Acciones de arranque personalizadas (p. 170).. Script(Obligatorio,String)

Especifica el archivo que se va a utilizar. La ruta del archivo puede comenzar conhttps://ors3://. Args(Opcional,[String])

Lista de argumentos que se pasan al script. OnNodeConfigured(Opcional,String)

Especifica un script que se ejecuta en los nodos de laSlurmdespués de todos losboot_as_*se ejecutan secuencias de comandos. Para obtener más información, consulte Acciones de arranque personalizadas (p. 170).. Script(Obligatorio,String)

Especifica el archivo que se va a utilizar. La ruta del archivo puede comenzar conhttps://ors3://. Args(Opcional,[String])

Lista de argumentos que se pasan al script.

Política de actualización: La flota informática debe detenerse para que esta configuración se cambie para una actualización. (p. 68)

Iam

(Opcional)Define la configuración opcional de IAM para elSlurmqueue.

Iam: S3Access: - BucketName: string EnableWriteAccess: boolean KeyName: boolean AdditionalIamPolicies: - Policy: string InstanceProfile: string InstanceRole: string

Política de actualización: Esta configuración se puede cambiar durante una actualización. (p. 68)

IamPropiedades

InstanceProfile(Opcional,String)

Especifica un perfil de instancia para anular el rol de instancia predeterminado o el perfil de instancia para elSlurmqueue. No puede especificar ambosInstanceProfileyInstanceRole. El formato es el siguiente arn:${Partition}:iam::${Account}:role/${RoleName}.

113 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Archivos de configuración

Si esto se especifica, elS3AccessyAdditionalIamPoliciesLos valores se omiten. Le recomendamos que utiliceAdditionalIamPoliciesporque las características agregadas aAWS ParallelClustera menudo requieren nuevos permisos.

Política de actualización: Esta configuración se puede cambiar durante una actualización. (p. 68) InstanceRole(Opcional,String)

Especifica un rol de instancia para anular el rol de instancia predeterminado o el perfil de instancia para elSlurmqueue. No puede especificar ambosInstanceProfileyInstanceRole. El formato es el siguiente arn:${Partition}:iam::${Account}:instance-profile/ ${InstanceProfileName}.

Si esto se especifica, elS3AccessyAdditionalIamPoliciesLos valores se omiten. Le recomendamos que utiliceAdditionalIamPoliciesporque las características agregadas aAWS ParallelClustera menudo requieren nuevos permisos.

Política de actualización: Esta configuración se puede cambiar durante una actualización. (p. 68) S3Access(Opcional)

Especifica un depósito para elSlurmqueue. Esto se utiliza para generar políticas que otorguen el acceso especificado al bucket en elSlurmqueue.

S3Access: - BucketName: string EnableWriteAccess: boolean KeyName: boolean

Política de actualización: Esta configuración se puede cambiar durante una actualización. (p. 68) BucketName(Obligatorio,String)

Nombre del bucket de .

Política de actualización: Esta configuración se puede cambiar durante una actualización. (p. 68) KeyName(Opcional,String)

La llave para el cubo. El valor predeterminado es *.

Política de actualización: Esta configuración se puede cambiar durante una actualización. (p. 68) EnableWriteAccess(Opcional,Boolean)

Indica si el acceso de escritura está habilitada para el bucket.

Política de actualización: Esta configuración se puede cambiar durante una actualización. (p. 68) AdditionalIamPolicies(Opcional)

Especifica una lista de nombres de recursos de Amazon (ARN) de políticas de IAM para Amazon EC2. Esta lista se asocia al rol raíz utilizado para elSlurmademás de los permisos requeridos porAWS ParallelCluster.

El nombre de una política de IAM y su ARN son diferentes. No se pueden utilizar los nombres.Si elInstanceProfileorInstanceRoleEsta configuración se especifica, se ignora. Le recomendamos que utiliceAdditionalIamPoliciesYa queAdditionalIamPoliciesse agregan a los permisos

114 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Archivos de configuración

queAWS ParallelClusterrequiere, y elInstanceRoledebe incluir todos los permisos necesarios. Los permisos necesarios a menudo cambian de versión a versión a medida que se añaden características.

No hay valor predeterminado.

AdditionalIamPolicies: - Policy: string

Policy(Obligatorio,[String])

Lista de directivas de IAM.

Política de actualización: Esta configuración se puede cambiar durante una actualización. (p. 68)

SlurmSettings

(Opcional)Define la configuración deSlurmque se apliquen a todo el clúster.

SlurmSettings: ScaledownIdletime: integer Dns: DisableManagedDns: boolean HostedZoneId: string

Temas • SlurmSettingsPropiedades (p. 115) • Dns (p. 115)

SlurmSettingsPropiedades

ScaledownIdletime(Opcional,Integer)

Define la cantidad de minutos sin realizar un trabajo, transcurridos los cuales elSlurmEl nodo termina.

El valor predeterminado es 10.

Política de actualización: La flota informática debe detenerse para que esta configuración se cambie para una actualización. (p. 68)

Dns

(Opcional)Define la configuración deSlurmque se apliquen a todo el clúster.

Dns: DisableManagedDns: boolean HostedZoneId: string

DnsPropiedades

DisableManagedDns(Opcional,Boolean)

SitrueNo se deben crear las entradas de DNS para el clúster. Por defecto,AWS ParallelClusterCrea una zona alojada de Route 53. El valor predeterminado es false. SiDisableManagedDnstoma el valortrue, la zona alojada no es creada porAWS ParallelCluster.

115 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Archivos de configuración

Warning

Se requiere un sistema de resolución de nombres para que el clúster funcione correctamente. SiDisableManagedDnstoma el valortrueTambién debe proporcionarse un sistema de resolución de nombres adicional.

Política de actualización: La flota informática debe detenerse para que esta configuración se cambie para una actualización. (p. 68) HostedZoneId(Opcional,String)

Define un identificador de zona alojada de Route 53 personalizado que se utilizará para la resolución de nombres DNS para el clúster.

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 68)

Sección SharedStorage

(Opcional)La configuración de almacenamiento compartido del clúster. Se pueden especificar hasta 5 sistemas de archivos de Amazon EBS, 1 Amazon EFS y 1 FSx for Lustre.

SharedStorage: - MountDir: string Name: string StorageType: Ebs EbsSettings: VolumeType: string Iops: integer Size: integer Encrypted: boolean KmsKeyId: string SnapshotId: string VolumeId: string DeletionPolicy: string Raid: Type: string NumberOfVolumes: integer - MountDir: string Name: string StorageType: Efs EfsSettings: ThroughputMode: string ProvisionedThroughput: integer Encrypted: boolean KmsKeyId: string PerformanceMode: string FileSystemId: string - MountDir: string Name: string StorageType: FsxLustre FsxLustreSettings: StorageCapacity: integer DeploymentType: string ImportedFileChunkSize: integer DataCompressionType: string ExportPath: string ImportPath: string WeeklyMaintenanceStartTime: string AutomaticBackupRetentionDays: integer CopyTagsToBackups: boolean DailyAutomaticBackupStartTime: string PerUnitStorageThroughput: integer BackupId: string

116 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Archivos de configuración

KmsKeyId: string FileSystemId: string AutoImportPolicy: string DriveCacheType: string StorageType: string

Política de actualización: Esta configuración se puede cambiar durante una actualización. (p. 68)

SharedStoragePropiedades

MountDir(Obligatorio,String)

La ruta donde se monta el almacenamiento de información compartido.

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 68) Name(Obligatorio,String)

El nombre del almacenamiento compartido. Este nombre se utiliza al actualizar la configuración.

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 68) StorageType(Obligatorio,String)

El tipo de almacenamiento compartido. Los valores admitidos son Ebs, Efs y FsxLustre.

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 68)

EbsSettings

(Opcional)La configuración de un volumen de Amazon EBS.

EbsSettings: VolumeType: string Iops: integer Size: integer Encrypted: boolean KmsKeyId: string SnapshotId: string VolumeId: string DeletionPolicy: string

Política de actualización: Esta configuración no se analiza durante una actualización. (p. 68)

EbsSettingsPropiedades

VolumeType(Opcional,String)

Especifica el.Tipo de volumen de Amazon EBS. Los valores admitidos songp2,gp3,io1,io2,sc1,stl, ystandard. El valor predeterminado es gp2.

Para obtener más información, consulte Tipos de volumen de Amazon EBS en la Guía del usuario de Amazon EC2 para instancias de Linux.

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 68) Iops(Opcional,Integer)

Define el número de IOPS paraio1,io2, ygp3Tipo de volúmenes de.

El valor predeterminado, los valores admitidos yvolume_iopsDe avolume_sizerelación varía segúnVolumeTypeySize.

117 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Archivos de configuración

VolumeType = io1

Valor predeterminadoIops= 100

Valores admitidosIops= 100—64000 †

Máximovolume_iopsDe avolume_sizerelación = 50 IOPS por GiB. 5000 IOPS requiere unvolume_sizede al menos 100 GiB. VolumeType = io2

Valor predeterminadoIops= 100

Valores admitidosIops= 100—64000 (256000 paraio2Bloque de volúmenes Express) †

MáximoIopsDe aSizerelación = 500 IOPS por GiB. 5000 IOPS requiere unSizede al menos 10 GiB. VolumeType = gp3

Valor predeterminadoIops= 3000

Valores admitidosIops= 3000—16000

MáximoIopsDe aSizerelación = 500 IOPS por GiB. 5000 IOPS requiere unSizede al menos 10 GiB.

† El máximo de IOPS está garantizado solo enInstancias integradas en el sistema Nitroaprovisionada con más de 32 000 IOPS. Otras instancias garantizan hasta 32,000 IOPS. Viejo antiguoio1Puede que los volúmenes no alcancen el rendimiento máximo a menos queModificar el volumen.io2 Compatibilidad con volúmenes de bloque Expressvolume_iopsvalores de hasta 256000 enR5bTipos de instancia. Para obtener más información, consulteio2Bloque de volúmenes Expressen laGuía del usuario de Amazon EC2 para instancias de Linux.

Política de actualización: Esta configuración se puede cambiar durante una actualización. (p. 68) Size(Opcional,Integer)

Especifica el tamaño de volumen en gibibytes (GiB). El valor predeterminado es 35.

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 68) Encrypted(Opcional,Boolean)

Especifica si el volumen de está cifrado. El valor predeterminado es true.

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 68) KmsKeyId(Opcional,String)

Especifica una clave de AWS KMS personalizada que se va a usar para el cifrado. Esta configuración requiere que elEncryptedEl valor detrue.

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 68) SnapshotId(Opcional,String)

Especifica el ID de instantánea de Amazon EBS si utiliza una instantánea como origen del volumen.

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 68) VolumeId(Opcional,String)

Especifica el ID de volumen de Amazon EBS. Cuando se especifica esto para unEbsSettings, solo la instanciaMountDirtambién se puede especificar.

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 68)

118 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Archivos de configuración

Throughput(Obligatorio,Integer) El rendimiento, en Mib/s para aprovisionar un volumen, con un máximo de 1.000 MIb/s.

Este valor solo es válido cuandoVolumeTypeesgp3. El rango admitido es 125 a 1000, con un valor predeterminado de 125.

Política de actualización: Esta configuración se puede cambiar durante una actualización. (p. 68) DeletionPolicy(Obligatorio,String) Especifica si el volumen debe conservarse, eliminarse o instantáneas cuando se elimina el clúster. Los valores admitidos sonDelete,Retain, ySnapshot. El valor predeterminado es Delete. Política de actualización: Esta configuración se puede cambiar durante una actualización. (p. 68)

Raid (Opcional)Define la configuración de un volumen de RAID.

Raid: Type: string NumberOfVolumes: integer

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 68)

RaidPropiedades

Type(Opcional,String) Define el tipo de matriz RAID. Los valores admitidos son «0" (rayado) y «1" (reflejado).

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 68) NumberOfVolumes(Opcional,Integer) Define el número de volúmenes de Amazon EBS que se utilizará para crear una matriz de RAID. El rango de valores admitido es 2-5. El valor predeterminado (cuando elRaidestá definido) es 2. Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 68)

EfsSettings (Opcional)La configuración de un sistema de archivos de Amazon EFS.

EfsSettings: Encrypted: boolean KmsKeyId: string PerformanceMode: string ThroughputMode: string ProvisionedThroughput: integer FileSystemId: string

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 68)

EfsSettingsPropiedades

Encrypted(Opcional,Boolean)

Especifica si el sistema de archivos de Amazon EFS está cifrado. El valor predeterminado es false. Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 68)

119 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Archivos de configuración

KmsKeyId(Opcional,String)

Especifica una clave de AWS KMS personalizada que se va a usar para el cifrado. Esta configuración requiere que elEncryptedEl valor detrue.

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 68) PerformanceMode(Opcional,String)

Especifica el modo de rendimiento del sistema de archivos de Amazon EFS. Los valores admitidos son generalPurpose y maxIO. El valor predeterminado es generalPurpose. Para obtener más información, consulteModos de rendimientoen laGuía del usuario de Amazon Elastic File System.

Recomendamos el modo de rendimiento generalPurpose para la mayoría de sistemas de archivos.

Los sistemas de archivos que usan el modo de rendimiento maxIO pueden escalar a mayores niveles de rendimiento de agregación y operaciones por segundo. Sin embargo, hay una compensación de latencias ligeramente más altas para la mayoría de las operaciones de archivos.

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 68) ThroughputMode(Opcional,String)

Especifica el modo de rendimiento del sistema de archivos de Amazon EFS. Los valores admitidos son bursting y provisioned. El valor predeterminado es bursting. Cuandoprovisionedse utiliza,ProvisionedThroughputDebe especificarse.

Política de actualización: Esta configuración se puede cambiar durante una actualización. (p. 68) ProvisionedThroughput(ObligatorioCuandoThroughputModeesprovisioned,Integer)

Define el rendimiento aprovisionado (en Mib/s) del sistema de archivos de Amazon EFS, medido en Mib/s. Esto se corresponde con laProvisionedThroughputInMibpsParámetro deReferencia de Amazon EFS.

Si usa este parámetro, debe establecer ThroughputMode en provisioned.

El rango admitido es1-1024. Para solicitar un aumento del límite, póngase en contacto con AWS Support.

Política de actualización: Esta configuración se puede cambiar durante una actualización. (p. 68) FileSystemId(Opcional,String)

Define el ID del sistema de archivos de Amazon EFS para un sistema de archivos ya existente.

Cuando se especifica esto, soloMountDirPuede especificarse. No hay otroEfsSettingsPuede especificarse.

Si establece esta opción, solo admite los sistemas de archivos: • Que no cuentan con un destino de montaje en la zona de disponibilidad de la pila

O BIEN • Que cuentan con un destino de montaje ya existente en la zona de disponibilidad de la pila, con tráfico NFS de entrada y salida permitido desde 0.0.0.0/0.

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 68)

FsxLustreSettings

(Opcional)La configuración de un sistema de archivos FSx for Lustre.

FsxLustreSettings:

120 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Archivos de configuración

StorageCapacity: integer DeploymentType: string ImportedFileChunkSize: integer DataCompressionType: string ExportPath: string ImportPath: string WeeklyMaintenanceStartTime: string AutomaticBackupRetentionDays: integer CopyTagsToBackups: boolean DailyAutomaticBackupStartTime: string PerUnitStorageThroughput: integer BackupId: string # BackupId cannot coexist with some of the fields KmsKeyId: string FileSystemId: string # FileSystemId cannot coexist with other fields AutoImportPolicy: string DriveCacheType: string StorageType: string

Política de actualización: Esta configuración se puede cambiar durante una actualización. (p. 68)

FsxLustreSettingsPropiedades

StorageCapacity(Obligatorio,Integer)

Establece la capacidad de almacenamiento del FSx para el sistema de archivos Lustre, en GiB.StorageCapacitySi está creando un nuevo sistema de archivos. No incluyaStorageCapacityifBackupIdorFileSystemIdEstá especificada. • Para los tipos de implementación SCRATCH_2 y PERSISTENT_1, los valores válidos son 1200 GiB, 2400 GiB e incrementos de 2400 GiB. • Para el tipo de implementación SCRATCH_1, los valores válidos son 1200 GiB, 2400 GiB e incrementos de 3600 GiB.

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 68) DeploymentType(Opcional,String)

Especifica el tipo de implementación del FSx para el sistema de archivos de Lustre. Los valores admitidos son SCRATCH_1, SCRATCH_2 y PERSISTENT_1. El valor predeterminado es SCRATCH_1.

Elija tipos de implementación SCRATCH_1 y SCRATCH_2 cuando necesite almacenamiento temporal y procesamiento de datos a corto plazo. El tipo de implementación SCRATCH_2 proporciona cifrado en tránsito de datos y mayor capacidad de rendimiento de ráfagas que SCRATCH_1.

Elija el tipo de implementación PERSISTENT_1 para el almacenamiento a largo plazo y las cargas de trabajo y el cifrado de datos en tránsito. Para obtener más información acerca de los tipos de implementación, consulteOpciones de implementación de FSx for Lustreen laGuía de usuario de FSx for Lustre.

El cifrado de datos en tránsito se habilita automáticamente cuando accede a un sistema de archivos SCRATCH_2 o PERSISTENT_1 desde instancias de Amazon EC2 que admiten esta característica. (Valor predeterminado = SCRATCH_1)

Cifrado de datos en tránsitoSCRATCH_2yPERSISTENT_1Se admite el tipo de implementación cuando se accede desde los tipos de instancia compatibles en Regiones de AWS . Para obtener más información,Cifrado de datos en tránsitoen laGuía de usuario de FSx for Lustre.

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 68) ImportedFileChunkSize(Opcional,Integer)

En el caso de los archivos que se importan desde un repositorio de datos, este valor determina la cantidad de fragmentos y la cantidad máxima de datos por archivo (en MiB) que se almacenan en un

121 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Archivos de configuración

único disco físico. El número máximo de discos en los que un único archivo se puede fraccionar está limitado por el número total de los discos que forman el sistema de archivos.

El valor predeterminado de fragmento es 1024 MiB (1 GiB) y puede llegar hasta 512 000 MiB (500 GiB). Los objetos de Amazon S3 tienen un tamaño máximo de 5 TB.

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 68) DataCompressionType(Opcional,String)

Establece la configuración de compresión de datos para el sistema de archivos FSx for Lustre. El valor admitido esLZ4, que indica que la compresión de datos está activada con el algoritmo LZ4. CuandoDataCompressionType, la compresión de datos se desactiva cuando se crea el sistema de archivos.

Para obtener más información, consulteCompresión de datos de lustre.

Política de actualización: Esta configuración se puede cambiar durante una actualización. (p. 68) ExportPath(Opcional,String)

La ruta en Amazon S3 a donde se exporta la raíz de su sistema de archivos FSx for Lustre. Esta configuración solo se admite cuando elImportPathse especifica. La ruta debe utilizar el mismo bucket de Amazon S3 tal y como se especifica enImportPath. Puede proporcionar un prefijo opcional a donde se van a exportar datos nuevos y modificados desde su sistema de archivos FSx for Lustre. Si unExportPathFSx for Lustre establece una ruta de exportación predeterminada,s3:// import-bucket/FSxLustre[creation-timestamp]. La marca temporal está en formato UTC. Por ejemplo s3://import-bucket/FSxLustre20181105T222312Z.

El bucket de exportación de Amazon S3 debe ser el mismo que el bucket de importación que especifica ImportPath. Si solo especifica un nombre de depósito, comos3://import-bucket, obtendrá una asignación 1:1 de objetos del sistema de archivos a los objetos bucket de Amazon S3. Esta asignación significa que los datos de entrada en Amazon S3 se sobrescriben al exportarse. Si proporciona un prefijo personalizado en la ruta de exportación, comos3://import-bucket/ [custom-optional-prefix], FSx for Lustre exporta el contenido de su sistema de archivos a ese prefijo de exportación en el bucket de Amazon S3.

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 68) ImportPath(Opcional,String)

La ruta al bucket de Amazon S3 (incluido el prefijo opcional) que está utilizando como repositorio de datos para el sistema de archivos FSx for Lustre. La raíz del sistema de archivos de FSx for Lustre se asignará a la raíz del bucket de Amazon S3 que seleccione. Un ejemplo es: s3://import-bucket/ optional-prefix. Si especifica un prefijo después del nombre del bucket de Amazon S3, solo se cargan en el sistema de archivos claves de objetos con ese prefijo.

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 68) WeeklyMaintenanceStartTime(Opcional,String)

La hora de inicio preferida para realizar el mantenimiento semanal, con formato"d:HH:MM"En la zona horaria UTC, dondedEsta cita es el número del día de la semana, del 1 al 7, empezando por el lunes y terminando con el domingos.

Política de actualización: Esta configuración se puede cambiar durante una actualización. (p. 68) AutomaticBackupRetentionDays(Opcional,Integer)

El número de días que se conservan las copias de seguridad automáticas. Al establecer este valor en 0, se deshabilitan las copias de seguridad automáticas. El rango admitido es de 0 a 90. El valor predeterminado es 0. Solo es válido para su uso con tipos de implementación PERSISTENT_1. Para obtener más información, consulteTrabajo con copias de seguridaden laGuía de usuario de FSx for Lustre.

122 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Archivos de configuración

Política de actualización: Esta configuración se puede cambiar durante una actualización. (p. 68) CopyTagsToBackups(Opcional,Boolean)

SitrueLas etiquetas del sistema de archivos FSx for Lustre deben copiarse a las copias de seguridad. Este valor se establece de forma predeterminada en false. Si está configurado entrue, todas las etiquetas del sistema de archivos se copian a todas las copias de seguridad automáticas e iniciadas por el usuario cuando el usuario no especifica etiquetas. Si este valor estrue, y se especifican una o varias etiquetas, solo se copian en las copias de seguridad las etiquetas especificadas. Si especifica una o varias etiquetas al crear una copia de seguridad iniciada por el usuario, no se copiará ninguna etiqueta del sistema de archivos independientemente de ese valor. Solo es válido para su uso con tipos de implementación PERSISTENT_1.

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 68) DailyAutomaticBackupStartTime(Opcional,String)

Un tiempo diario recurrente, en el formatoHH:MM.HHEs la hora de relleno cero del día (00-23), yMMEs el minuto de relleno cero de la hora (00-59). Por ejemplo,05:00especifica las 5 A.M. diarias. Solo es válido para su uso con tipos de implementación PERSISTENT_1.

Política de actualización: Esta configuración se puede cambiar durante una actualización. (p. 68) PerUnitStorageThroughput(Obligatorio paraPERSISTENT_1Tipos de implementación,Integer)

Describe la cantidad de rendimiento de lectura y escritura por cada 1 tebibyte de almacenamiento, en MB/s/TiB. La capacidad de rendimiento del sistema de archivos se calcula multiplicando la capacidad de almacenamiento del sistema (TiB) por PerUnitStorageThroughput (MB/s/TiB). Para un sistema de almacenamiento de 2,4 TiB, el aprovisionamiento de 50 MB/s/TiB PerUnitStorageThroughput produce una velocidad del sistema de archivos de 120 MB/s. Usted paga la cantidad de rendimiento aprovisionada. Esto se corresponde con laPerUnitStorageThroughputpropiedad.

Los valores posibles dependen del valor de laStorageTypeconfiguración de. StorageType = SSD

Los valores posibles son 50, 100 y 200. StorageType = HDD

Los valores posibles son 12, 40.

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 68) BackupId(Opcional,String)

Especifica el ID de la copia de seguridad que puede utilizar para restaurar el sistema de archivos FSx for Lustre desde una copia de seguridad existente. Cuando elBackupId, se especifica el parámetroAutoImportPolicy,DeploymentType,ExportPath,KmsKeyId,ImportPath,ImportedFileChunkSize,StorageCapacity, yPerUnitStorageThroughputNo se debe especificar. Estas configuraciones se leen en la copia de seguridad. Además, elAutoImportPolicy,ExportPath,ImportPath, yImportedFileChunkSizeNo se debe especificar. Esto se corresponde con laBackupIdpropiedad.

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 68) KmsKeyId(Opcional,String)

El ID de laAWS Key Management Service(AWS KMS() que se utiliza para cifrar los datos del sistema de archivos FSx for Lustre para los sistemas de archivos Lustre persistentes en reposo. Si no se especifica, se utiliza la clave administrada FSx for Lustre. LaSCRATCH_1ySCRATCH_2Los sistemas de archivos FSx for Lustre se cifran siempre en reposo mediante las claves administradas FSx for Lustre. Para obtener más información, consulteEncrypten laAWS Key Management ServiceReferencia de la API.

123 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Archivos de configuración

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 68) FileSystemId(Opcional,String)

Especifica el ID de un FSx existente para el sistema de archivos Lustre.

Si se especifica esta opción, solo se utilizarán los valores de MountDir y FileSystemId de la FsxLustreSettings, y se omitirán todos los demás valores de la FsxLustreSettings.

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 68) AutoImportPolicy(Opcional,String)

Cuando crea el sistema de archivos FSx for Lustre, los objetos de Amazon S3 existentes aparecen como descripciones de archivos y directorios. Utilice esta propiedad para elegir cómo mantiene actualizados FSx for Lustre las descripciones de archivos y directorios a medida que agrega o modifica objetos en el bucket de Amazon S3 vinculado.AutoImportPolicyPuede tener los siguientes valores: • NEW- La importación automática está activada. FSx for Lustre importa automáticamente descripciones de directorio de cualquier objeto nuevo agregado al bucket de Amazon S3 vinculado que no exista actualmente en el sistema de archivos FSx for Lustre. • NEW_CHANGED- La importación automática está activada. FSx for Lustre importa automáticamente descripciones de archivos y directorios de cualquier objeto nuevo agregado al bucket de Amazon S3 y de cualquier objeto existente que se cambie en el bucket de Amazon S3 después de elegir esta opción.

SiAutoImportPolicyno está especificado, la importación automática está desactivada. FSx for Lustre sólo actualiza las descripciones de archivos y directorios desde el bucket de Amazon S3 vinculado cuando se crea el sistema de archivos. FSx for Lustre no actualiza las descripciones de archivos y directorios para los objetos nuevos o modificados después de elegir esta opción.

Para obtener más información, consulteImportar actualizaciones automáticamente desde el bucket de S3en laGuía de usuario de FSx for Lustre.

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 68) DriveCacheType(Necesario cuandoStorageTypeesHDD,String)

Especifica que el sistema de archivos tiene una caché de unidad SSD. Este valor solo se puede establecer si elStorageTypeEl valor deHDD. Esto se corresponde con laDriveCacheTypepropiedad. Para obtener más información, consulteOpciones de implementación de FSx for Lustreen laGuía de usuario de FSx for Lustre.

El único valor válido es READ. Para deshabilitar la caché de la unidad SSD, no especifique la propiedadDriveCacheTypeconfiguración de.

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 68) StorageType(Opcional,String)

Establece el tipo de almacenamiento del FSx para el sistema de archivos Lustre que está creando. Los valores válidos son SSD y HDD. • Establezca en SSD para utilizar el almacenamiento de unidades de estado sólido. • Establezca elHDDPara utilizar el almacenamiento de la unidad de disco duro.HDDCompatible conPERSISTENTTipos de implementación.

El valor predeterminado es SSD. Para obtener más información, consulte Opciones de tipo de almacenamiento en la Guía del usuario de Amazon FSx para Windows y Opciones de almacenamiento múltiples en la Guía del usuario de Amazon FSx for Lustre.

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 68)

124 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Archivos de configuración

Sección Iam (Opcional)Especifica las propiedades de IAM para el clúster.

Iam: Roles: LambdaFunctionsRole: string PermissionsBoundary: string

Política de actualización: Esta configuración se puede cambiar durante una actualización. (p. 68)

IamPropiedades

PermissionsBoundary(Opcional,String) El ARN de la directiva de IAM que se utilizará como límite de permisos para todos los roles creados porAWS ParallelCluster. Para obtener más información, consulteLímites de permisos para las entidades de IAMen laIAM User Guide. El formato es el siguiente arn:${Partition}:iam:: ${Account}:policy/${PolicyName}. Política de actualización: Esta configuración se puede cambiar durante una actualización. (p. 68) Roles(Opcional) Especifica la configuración de las funciones de IAM utilizadas por el clúster.

Política de actualización: Esta configuración se puede cambiar durante una actualización. (p. 68) LambdaFunctionsRole(Opcional,String) El ARN del rol de IAM que se va a utilizar paraAWS Lambda. Esto anula el rol predeterminado asociado a todas las funciones de respaldo de Lambda AWS CloudFormation Recursos personalizados. Lambda necesita configurarse como el principal autorizado para asumir el rol. Esto no anulará el rol de las funciones de Lambda utilizadas paraAWS Batch. El formato es el siguiente arn:${Partition}:iam::${Account}:role/${RoleName}. Política de actualización: Esta configuración se puede cambiar durante una actualización. (p. 68)

Sección Monitoring (Opcional)Especifica la configuración de monitoreo del clúster.

Monitoring: DetailedMonitoring: boolean Logs: CloudWatch: Enabled: boolean RetentionInDays: integer DeletionPolicy: string Dashboards: CloudWatch: Enabled: boolean

Política de actualización: Esta configuración se puede cambiar durante una actualización. (p. 68)

MonitoringPropiedades

DetailedMonitoring(Opcional,Boolean)

SitruePara todos los nodos de clúster se ha habilitado la monitorización detallada. Permite realizar una monitorización de 1 minuto en la consola de Amazon EC2. El valor predeterminado es false.

125 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Archivos de configuración

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 68) Logs(Opcional)

La configuración del registro para el clúster.

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 68) CloudWatch(Opcional)

La configuración de los CloudWatch Logs para el clúster.

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 68) Enabled(Obligatorio,Boolean)

Sitrue, los registros del clúster se transmiten a CloudWatch Logs. El valor predeterminado es true.

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 68) RetentionInDays(Opcional,Integer)

El número de días durante el cual se conservan los eventos de registro en CloudWatch Logs. El valor predeterminado es 14. Los valores admitidos son 1, 3, 5, 7, 14, 30, 60, 90, 120, 150, 180, 365, 400, 545, 731, 1827 y 3653.

Política de actualización: Esta configuración se puede cambiar durante una actualización. (p. 68) DeletionPolicy(Opcional,String)

Indica si se eliminan los eventos de registro en CloudWatch Logs cuando se elimina el clúster. Los valores posibles son Delete y Retain. El valor predeterminado es Retain.

Política de actualización: Esta configuración se puede cambiar durante una actualización. (p. 68) Dashboards(Opcional)

La configuración del panel para el clúster.

Política de actualización: Esta configuración se puede cambiar durante una actualización. (p. 68) CloudWatch(Opcional)

Configuración del panel de CloudWatch para el clúster.

Política de actualización: Esta configuración se puede cambiar durante una actualización. (p. 68) Enabled(Obligatorio,Boolean)

Sitrue, el panel de CloudWatch está habilitado. El valor predeterminado es true.

Política de actualización: Esta configuración se puede cambiar durante una actualización. (p. 68)

Sección Tags

(Opcional), ArrayDefine las etiquetas que va a utilizar laAWS CloudFormationy se propagan a todos los recursos del clúster. Para obtener más información, consulteAWS CloudFormationetiqueta de recursoen laAWS CloudFormationGuía del usuario de.

126 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Archivos de configuración

Tags: - Key: string Value: string - Key: string Value: string

Política de actualización: Esta configuración se puede cambiar durante una actualización. (p. 68)

TagsPropiedades

Key(Obligatorio,String)

Define el nombre de la etiqueta.

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 68) Value(Obligatorio,String)

Define el valor de la etiqueta.

Política de actualización: Esta configuración se puede cambiar durante una actualización. (p. 68)

Sección AdditionalPackages

(Opcional)Se utiliza para identificar paquetes adicionales para instalar.

AdditionalPackages: IntelSoftware: IntelHpcPlatform: boolean

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 68)

IntelSoftware

(Opcional)Define la configuración de las soluciones seleccionadas de Intel.

IntelSoftware: IntelHpcPlatform: Boolean

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 68)

IntelSoftwarePropiedades

IntelHpcPlatform(Opcional,Boolean)

Sitrue, indica que elContrato de licencia para el usuario finalpara Intel Parallel Studio se acepta. Esto hace que Intel Parallel Studio se instale en el nodo principal y se comparta con los nodos de computación. Esto añade varios minutos al tiempo que tarda el nodo director en arrancar. LaIntelHpcPlatformSolo se admite enCentOS7.

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 68)

Crear archivos de configuración de imágenes

AWS ParallelClusterversión 3 utiliza archivos YAML 1.1 para los parámetros de configuración de imágenes de compilación. Confirme que la sangría es correcta para reducir los errores de configuración. Para obtener más información, consulte la especificación de YAML 1.1 enhttps://yaml.org/spec/1.1/.

127 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Archivos de configuración

Estos archivos de configuración se utilizan para definir cómo suAWS ParallelClusterLas AMI se crean con EC2 Image Builder. Los procesos de creación de AMI personalizados se activan mediante el comandopcluster build-image (p. 72)comando. Para ver archivos de configuración de ejemplo, consultehttps://github.com/aws/aws-parallelcluster/tree/release-3.0/cli/tests/pcluster/schemas/ test_imagebuilder_schema/test_imagebuilder_schema.

Temas • Crear propiedades del archivo de configuración de imagen (p. 128) • Sección Build (p. 128) • Sección Image (p. 131)

Crear propiedades del archivo de configuración de imagen

Region(Opcional,String)

Especifica la región para elbuild-image. Por ejemplo, us-east-2.

Sección Build (Obligatorio)Especifica la configuración en la que se generará la imagen.

Build: InstanceType: string SubnetId: string ParentImage: string Iam: InstanceRole: string InstanceProfile: string CleanupLambdaRole: string AdditionalIamPolicies: - Policy: string PermissionsBoundary: string Components: - Type: string Value: string - Type: string Value: string - Type: string Value: string Tags: - Key: string Value: string - Key: string Value: string SecurityGroupIds: - string - string UpdateOsPackages: Enabled: boolean

BuildPropiedades

InstanceType(Obligatorio,String)

Especifica el tipo de instancia para la instancia utilizada para crear la imagen. SubnetId(Opcional,String)

Especifica el ID de una subred existente en la que se va a aprovisionar la instancia para crear la imagen. La subred proporcionada requiere acceso a Internet.

128 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Archivos de configuración

ParentImage(Obligatorio,String)

Especifica la imagen base. La imagen principal puede ser una AMI no ParallelCluster o una AMI oficial de ParallelCluster para la misma versión. No puede utilizar una AMI oficial o personalizada de ParallelCluster desde una versión diferente de ParallelCluster. El formato debe ser el ARN de una imagenarn:Partition:imagebuilder:Region:Account:image/ImageName/ImageVersiono un ID de AMI IDami-12345678. SecurityGroupIds(Opcional,[String])

Especifica la lista de ID de grupo de seguridad para la imagen.

Iam

IamPropiedades (Opcional) Especifica los recursos de IAM para la generación de imagen.

Iam: InstanceRole: string InstanceProfile: string CleanupLambdaRole: string AdditionalIamPolicies: - Policy: string PermissionsBoundary: string

InstanceProfile(Opcional,String)

Especifica un perfil de instancia para reemplazar el perfil de instancia predeterminado para la instancia ImageBuilder de EC2.InstanceProfileyInstanceRoleyAdditionalIamPoliciesNo se puede especificar juntos. El formato es el siguiente arn:Partition:iam::Account:instance- profile/InstanceProfileName. InstanceRole(Opcional,String)

Especifica un rol de instancia para anular el rol de instancia predeterminado para la instancia ImageBuilder de EC2.InstanceProfileyInstanceRoleyAdditionalIamPoliciesNo se puede especificar juntos. El formato es el siguiente arn:Partition:iam::Account:role/RoleName. CleanupLambdaRole(Opcional,String)

El ARN del rol de IAM que se va a utilizar para elAWS Lambdaque respalda la funciónAWS CloudFormationrecurso personalizado que elimina los artefactos de compilación al finalizar la compilación. Lambda necesita configurarse como el principal autorizado para asumir el rol. El formato es el siguiente arn:Partition:iam::Account:role/RoleName. AdditionalIamPolicies(Opcional)

Especifica directivas de IAM adicionales que se adjuntarán a la instancia de EC2 ImageBuild utilizada para producir la AMI personalizada.

AdditionalIamPolicies: - Policy: string

Policy(Opcional,[String])

Lista de directivas de IAM. El formato es el siguiente arn:Partition:iam::Account:policy/PolicyName. PermissionsBoundary(Opcional,String)

El ARN de la directiva de IAM que se utilizará como límite de permisos para todos los roles creados porAWS ParallelCluster. Para obtener más información sobre los límites de permisos de IAM,

129 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Archivos de configuración

consulteLímites de permisos para las entidades de IAMen laIAM User Guide. El formato es el siguiente arn:Partition:iam::Account:policy/PolicyName.

Components

ComponentsPropiedades

(Opcional) Especifica los componentes de EC2 ImageBuilder que se utilizarán durante el proceso de compilación de AMI, además de los proporcionados de forma predeterminada porAWS ParallelCluster. Dichos componentes se pueden utilizar para personalizar el proceso de compilación de AMI.

Components: - Type: string Value: string - Type: string Value: string - Type: string Value: string

Type(Opcional,String)

Especifica el tipo del par tipo-valor del componente. El tipo puede serarnorscript. Value(Opcional,String)

Especifica el valor del par de tipo-valor del componente. Cuando el tipo esarn, este es el ARN de un componente EC2 ImageBuilder. Cuando el tipo esscript, este es el enlace https o s3 que apunta al script que se utilizará al crear el componente ImageBuilder de EC2.

Tags

TagsPropiedades

(Opcional) Especifica la lista de etiquetas que se establecerán en los recursos utilizados para generar la AMI.

Tags: - Key: string Value: string - Key: string Value: string

Key(Opcional,String)

Define el nombre de la etiqueta. Value(Opcional,String)

Define el valor de la etiqueta.

UpdateOsPackages

UpdateOsPackagesPropiedades

(Opcional) Especifica si el sistema operativo se actualiza antes de instalarAWS ParallelClusterpila de software.

UpdateOsPackages:

130 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Archivos de configuración

Enabled: boolean

Enabled(Opcional,Boolean)

Sitrue, el sistema operativo se actualiza y se reinicia antes de instalar elAWS ParallelClusterSoftware de. El valor predeterminado es false.

Sección Image

(Obligatorio)Define las propiedades de la imagen para la generación de imagen.

Image: Name: string RootVolume: Size: integer Encrypted: boolean KmsKeyId: string Tags: - Key: string Value: string - Key: string Value: string

ImagePropiedades

Name(Opcional,String)

Especifica el nombre de la AMI. Si no se especifica, se utiliza el nombre que se utiliza al llamar alpcluster build-image (p. 72)se utiliza.

Tags

TagsPropiedades

(Opcional) Especifica los pares clave-valor de la imagen.

Tags: - Key: string Value: string - Key: string Value: string

Key(Opcional,String)

Define el nombre de la etiqueta. Value(Opcional,String)

Define el valor de la etiqueta.

RootVolume

RootVolumePropiedades

(OpcionalEspecifica las propiedades del volumen raíz de la imagen.

RootVolume:

131 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Tutorials

Size: integer Encrypted: boolean KmsKeyId: string

Size(Opcional,Integer)

Especifica el tamaño del volumen raíz de la imagen, en GiB. El valor predeterminado es el tamaño predeterminado es el tamaño delParentIImage (p. 129)más 27 GiB. Encrypted(Opcional,Boolean)

Especifica si el volumen de está cifrado. El valor predeterminado es false. KmsKeyId(Opcional,String)

Especifica el ARN delAWS KMSLa clave que se usa para cifrar el volumen. El formato es el siguiente.arn:Partition:kms:Region:Account:key/KeyId.

Tutorials

En los siguientes tutoriales, se muestra cómo comenzar a usarAWS ParallelClusterVersión 3, y proporcionar orientación sobre prácticas recomendadas para algunas tareas comunes.

Temas • Ejecución del primer trabajo en AWS ParallelCluster (p. 132) • Creación de una AMI de AWS ParallelCluster personalizada (p. 134)

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. Si aún no ha completado la instalación deAWS ParallelClustery configuró su CLI, siga las instrucciones enConfiguración de AWS ParallelCluster (p. 2)antes de continuar con este tutorial. Comprobación de la instalación

En primer lugar, comprobamos queAWS ParallelClusterestá correctamente, incluida la dependencia Node.js, instalada y configurada.

$ node --version v16.8.0 $ pcluster version { "version": "3.0.0" }

Esto devuelve la versión en ejecución de AWS ParallelCluster. 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ústerhello-world.

132 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Ejecución del primer trabajo en AWS ParallelCluster

$ pcluster create-cluster \ --cluster-name hello-world \ --cluster-configuration hello-world.yaml

Si el resultado le muestra un mensaje sobre la configuración, debe ejecutar lo siguiente para configurarAWS ParallelCluster:

$ pcluster configure --config hello-world.yaml

Si el archivo depcluster create-cluster (p. 73)El comando se ejecuta correctamente, verá un resultado similar al siguiente:

{ "cluster": { "clusterName": "hello-world", "cloudformationStackStatus": "CREATE_IN_PROGRESS", "cloudformationStackArn": "arn:aws:cloudformation:xxx:stack/xxx", "region": "...", "version": "...", "clusterStatus": "CREATE_IN_PROGRESS" } }

Para supervisar la creación del clúster, utilice:

$ pcluster describe-cluster --cluster-name hello-world

LaclusterStatusInformes»CREATE_IN_PROGRESS«mientras se está creando el clúster. LaclusterStatusTransiciones a»CREATE_COMPLETE«cuando el clúster se crea correctamente. La salida también nos proporciona elpublicIpAddressyprivateIpAddressde nuestro nodo principal. Iniciar sesión en su nodo principal

Utilice el archivo pem de OpenSSH para iniciar sesión en el nodo principal.

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

Después de iniciar sesión, ejecute el comando sinfo para comprobar que sus nodos de computación se instalan y configuran.

$ sinfo PARTITION AVAIL TIMELIMIT NODES STATE NODELIST queue1* up infinite 10 idle~ queue1-dy-queue1t2micro-[1-10]

El resultado muestra que tenemos una cola en nuestro clúster, con hasta diez nodos. Ejecución del primer trabajo con Slurm

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

133 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Creación de una AMI de AWS ParallelCluster personalizada echo "Hello World from $(hostname)"

A continuación, envíe el trabajo mediante sbatch y compruebe que se ejecuta.

$ sbatch hellojob.sh Submitted batch job 2

Ahora puede ver la cola y comprobar el estado del trabajo. El aprovisionamiento de una instancia Amazon EC2 nueva se inicia en segundo plano. Puede monitorizar el estado de las instancias del clúster con elsinfocomando.

$ squeue JOBID PARTITION NAME USER ST TIME NODES NODELIST(REASON) 2 queue1 hellojob ec2-user CF 3:30 1 queue1-dy- queue1t2micro-1

El resultado muestra que el trabajo se ha enviado aqueue1. Espere 30 segundos a que el trabajo se termine y, a continuación, vuelva a ejecutar squeue.

$ squeue JOBID PARTITION NAME USER ST TIME NODES NODELIST(REASON)

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 57 Sep 1 14:25 hellojob.sh -rw-rw-r-- 1 ec2-user ec2-user 43 Sep 1 14:30 slurm-2.out

En la salida, vemos un»out«archivo. Podemos ver el resultado de nuestro trabajo:

$ cat slurm-2.out Hello World from queue1-dy-queue1t2micro-1

El resultado también muestra que nuestro trabajo se ha ejecutado correctamente en la instancia queue1- dy-queue1t2micro-1. Creación de una AMI de AWS ParallelCluster personalizada Important

Si crea una AMI personalizada, debe repetir los pasos que utilizó para crear la AMI personalizada con cada nuevaAWS ParallelClusterliberación.

Antes de seguir leyendo, le recomendamos que en primer lugar consulte laAcciones de arranque personalizadas (p. 45)Para determinar si las modificaciones que desea realizar se pueden incluir en un script y son compatibles con futurasAWS ParallelClusterlanzamientos.

Aunque crear una AMI personalizada no es lo ideal, todavía hay casos en los que crear una AMI personalizada paraAWS ParallelClusterEs necesaria. Este tutorial le guía a lo largo del proceso de creación de una AMI personalizada para estos escenarios.

134 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Creación de una AMI de AWS ParallelCluster personalizada Cómo personalizar la AMI de AWS ParallelCluster

Hay dos formas de crear unAWS ParallelClusterAMI. Uno de estos dos métodos es construir una nueva AMI usando elAWS ParallelClusterCLI. Otro método requiere que cree una nueva AMI que esté disponible en suAWSCuenta manualmente.

Métodos de personalización • Creación de una AMI de AWS ParallelCluster personalizada (p. 135) • Modificar una AMI de AWS ParallelCluster (p. 138)

Creación de una AMI de AWS ParallelCluster personalizada

Si ya tiene instalados una AMI personalizada y software, puede aplicar los cambios que necesitaAWS ParallelClusteren la parte superior de ella.AWS ParallelClusterconfía en el servicio EC2 Image Builder para crear AMI personalizadas. Para obtener más información, consulteImage Builder Guía del usuario

Puntos clave:

• El proceso tomará aproximadamente 1 hora. Este tiempo puede variar si hayBuild > Components (p. 130)que se instalará en tiempo de compilación. • La AMI se etiquetará con la versión de los componentes principales, por ejemplo, kernel, programador, controlador de EFA, etc., y un subconjunto de ellos también se informará en la descripción de la AMI. • A partir deAWS ParallelCluster3.0.0 se puede utilizar un nuevo conjunto de comandos CLI para administrar todo el ciclo de vida de las imágenes, conbuild-image,list-images,describe- imageydelete-imagecommands. • Este método es repetible, puede volver a ejecutarlo para mantener las AMI actualizadas (por ejemplo, actualizaciones de SO) y utilizar las nuevas imágenes durante una actualización del clúster existente.

Pasos:

1. Configure la Cuenta de AWS credenciales para queAWS ParallelClusterpuede hacer llamadas aAWSOperaciones de API en su nombre. El conjunto de permisos requeridos se documenta en elAWS Identity and Access Managementroles enAWS ParallelCluster3.x (p. 20). 2. Cree un archivo de configuración básico del generador de imágenes, especificandoInstanceTypeque se usará para construir la imagen y elParentImageque se utilizará como punto de partida para la creación de AMI (consulteConfiguración de imágenes (p. 127)para otros parámetros de compilación opcionales).

Build: InstanceType: {BUILD_INSTANCE_TYPE} ParentImage: {BASE_AMI_ID}

3. Use el comandopcluster build-image (p. 72)Para compilar unAWS ParallelClusterAMI a partir de la AMI que ha proporcionado como base:

pcluster build-image --image-id IMAGE_ID --image-configuration IMAGE_CONFIG.yaml -- region REGION

Para ver otros parámetros, consulte el comando pcluster build-image. El comando anterior hará lo siguiente: • Cree una pila de CloudFormation basada en la configuración de la imagen. La pila creará todos los recursos EC2 ImageBuilder necesarios para la compilación. • Entre los recursos creados, habrá el ImageBuilder oficialAWS ParallelClusteren la parte superior de los componentes personalizados de ImageBuilder se pueden especificar.

135 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Creación de una AMI de AWS ParallelCluster personalizada

• EC2 ImageBuilder lanza una instancia de compilación en la que aplicar elAWS ParallelClustere instale elAWS ParallelClustery realizar las tareas de configuración necesarias. • La instancia se detendrá y se creará una nueva AMI a partir de ella. • Se iniciarán otras instancias desde la AMI recién creada. Durante la fase de prueba, EC2 ImageBuilder ejecutará pruebas definidas en los componentes de ImageBuilder • Si la compilación es exitosa, se eliminará la pila. Si falla la compilación, la pila se conservará para que esté disponible para su inspección. 4. Puede supervisar el estado del proceso de compilación ejecutando el siguiente comando y recuperar el ID de AMI una vez completada la compilación.

pcluster describe-image --image-id IMAGE_ID --region REGION

5. Para crear el clúster, especifique el ID de AMI en el cuadro de diálogoCustomAmi (p. 108)Campo dentro de la configuración del clúster.

Solución de problemas y monitoreo del AMI de creación de

La creación de imágenes debe tardar aproximadamente 1 hora. Puede monitorizar el estado del proceso de compilación que ejecuta elpcluster describe-image (p. 86)o siga los progresos con los comandos de recuperación de registros. pcluster describe-image --image-id IMAGE_ID --region REGION

Como se mencionó anteriormente, elbuild-imagecrea un comando deAWS CloudFormationcon todos los recursos EC2 necesarios para crear la imagen e inicia un proceso EC2 Image Builder.

Inmediatamente después de la ejecución delbuild-image, es posible recuperar los eventos de pila de CloudFormation usandopcluster get-image-stack-events (p. 77)(puede filtrar los resultados con el--querypara ver los últimos eventos. Para obtener más información sobre cómo filtrar, consulteFiltradoAWS CLIsalidaen laAWS Command Line InterfaceGuía del usuario de.

$ pcluster get-image-stack-events --image-id IMAGE_ID --region REGION --query "events[0]" { "eventId": "ParallelClusterImage-CREATE_IN_PROGRESS-2021-07-28T08:41:46.626Z", "physicalResourceId": "arn:aws:imagebuilder:eu-west-1:xxx:image/parallelclusterimage- myimage/3.0.0/1", "resourceStatus": "CREATE_IN_PROGRESS", "resourceStatusReason": "Resource creation Initiated", "resourceProperties": "{\"InfrastructureConfigurationArn\":\"arn:aws:imagebuilder:eu- west-1:xxx:infrastructure-configuration/parallelclusterimage-3cbb8760-ef7f-11eb- a4c0-02abee05253b\",\"ImageRecipeArn\":\"arn:aws:imagebuilder:eu-west-1:xxx:image- recipe/parallelclusterimage-myimage/3.0.0\",\"DistributionConfigurationArn \":\"arn:aws:imagebuilder:eu-west-1:xxx:distribution-configuration/ parallelclusterimage-3cbb8760-ef7f-11eb-a4c0-02abee05253b\",\"Tags\": {\"parallelcluster:image_name\":\"myimage\",\"parallelcluster:image_id\":\"myimage\"}}", "stackId": "arn:aws:cloudformation:eu-west-1:xxx:stack/alinux2-image/3cbb8760-ef7f-11eb- a4c0-02abee05253b", "stackName": "myimage", "logicalResourceId": "ParallelClusterImage", "resourceType": "AWS::ImageBuilder::Image", "timestamp": "2021-07-28T08:41:46.626Z" }

Después de unos 15 minutos, los eventos de pila aparecerán en la entrada de eventos de registro relacionada con la creación del proceso de Image Builder. A partir de este momento es posible enumerar los flujos de registro de imágenes y monitorear los pasos del Image Builder usandopcluster list- image-log-streams (p. 79)ypcluster get-image-log-events (p. 76)commands.

136 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Creación de una AMI de AWS ParallelCluster personalizada

$ pcluster list-image-log-streams --image-id IMAGE_ID --region REGION \ --query 'logStreams[*].logStreamName' [ "3.0.0/1" ]

$ pcluster get-image-log-events --image-id IMAGE_ID --region REGION \ --log-stream-name 3.0.0/1 --limit { "nextToken": "f/36295977202298886557255241372854078762600452615936671762", "prevToken": "b/36295977196879805474012299949460899222346900769983430672", "events": [ { "message": "ExecuteBash: FINISHED EXECUTION", "timestamp": "2021-07-29T16:11:47.429Z" }, { "message": "Document arn:aws:imagebuilder:eu-west-1:xxx:component/ parallelclusterimage-test-c6200fa0-f072-11eb-b9ab-063c2565c5c1/3.0.0/1", "timestamp": "2021-07-29T16:11:47.570Z" }, { "message": "TOE has completed execution successfully", "timestamp": "2021-07-29T16:11:47.672Z" } ] }

Siga en consultar condescribe-imagehasta que vea el comandoBUILD_COMPLETEEstado.

$ pcluster describe-image --image-id IMAGE_ID --region REGION { "imageConfiguration": { "url": "https://parallelcluster-ae5a9f1a011e9d83-v1-do-not-delete.s3.eu- west-1.amazonaws.com/parallelcluster/3.0.0/images/alinux2-0729-r13st0t82cuwjvko/configs/ image-config.yaml?Signature=..." }, "imageId": "alinux2-0729", "imagebuilderImageStatus": "AVAILABLE", "imageBuildStatus": "BUILD_COMPLETE", ... "ec2AmiInfo": { "amiName": "alinux2-0729 2021-07-29T13-45-08.518Z", "amiId": "ami-05fc2f48ba82e643b", "description": "AWS ParallelCluster AMI for alinux2, kernel-4.14.238-182.422.amzn2.x86_64, lustre-2.10.8-5.amzn2.x86_64, efa-1.13.0-1.amzn2.x86_64, dcv-2021.1.10598-1.el7.x86_64, slurm-20-11-8-1", "state": "AVAILABLE", }

Si necesita ayuda para depurar el problema de creación de AMI, puede crear un archivo de registros de imagen. Consulte los siguientes pasos para iniciar este proceso de.

Es posible archivar los registros en S3 o en un archivo local (dependiendo de la--outputParámetro).

$ pcluster export-image-logs --image-id IMAGE_ID --region REGION \ --bucket BUCKET_NAME --bucket-prefix BUCKET_FOLDER { "url": "https://bucketname.s3.eu-west-1.amazonaws.com/BUCKET-FOLDER/myimage- logs-202109071136.tar.gz?AWSAccessKeyId=..." }

$ pcluster export-image-logs --image-id IMAGE_ID \

137 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Solución de problemas de AWS ParallelCluster

--region REGION --bucket BUCKET_NAME --bucket-prefix BUCKET_FOLDER --output-file /tmp/ archive.tar.gz { "path": "/tmp/archive.tar.gz" }

El archivo contiene las secuencias de CloudWatch Logs relacionadas con el proceso Image Builder yAWS CloudFormationeventos de pila. Tenga en cuenta que la ejecución del comando puede tardar algunos minutos.

Administración de AMI personalizadas

A partir deAWS ParallelCluster3.0.0 se ha agregado un nuevo conjunto de comandos en la CLI para compilar, supervisar y administrar el ciclo de vida de la imagen. Por favor, eche un vistazo acomandos de pcluster (p. 71)Para obtener más información sobre los comandos relacionados con la imagen. Modificar una AMI de AWS ParallelCluster

Este método consiste en modificar unAWS ParallelClusterAMI agregando personalización encima de ella. La baseAWS ParallelClusterLas AMI se actualizan con nuevas versiones, esta AMI tiene todos los componentes necesarios paraAWS ParallelClusterpara que funcione cuando esté instalado y configurado. Puede comenzar con esto como base.

Puntos clave:

• Este método es más rápido que elbuild-imagepero es un proceso manual y no se puede repetir. • Con este método perderá todas las ventajas de los comandos de recuperación de registros y administración del ciclo de vida de imágenes disponibles a través de la CLI.

Pasos:

1. Busque la AMI que corresponde a la región específica que utiliza. Para encontrarlo, puede usar el comandopcluster list-official-images (p. 86)con el comando--regionpara seleccionar la región específica y--osy--architecturepara filtrar la AMI deseada con el sistema operativo y la arquitectura que desea utilizar. A partir de la salida, puede recuperar el ID de imagen EC2. 2. En la consola de Amazon EC2/Images/AMIS, busque el ID de imagen de EC2 recuperado, haga clic enActionsy elijaLanzamiento de. 3. Elija el tipo de instancia y las propiedades, y lance la instancia. 4. Inicie sesión en la instancia mediante el usuario del sistema operativo y su clave de SSH. 5. Personalice su instancia según sea necesario. 6. Ejecute el siguiente comando para preparar su instancia para la creación de la AMI:

sudo /usr/local/sbin/ami_cleanup.sh

7. Detenga la instancia. 8. Cree una nueva AMI a partir de la instancia. 9. Introduzca la nueva ID de AMI en el cuadroCustomAmi (p. 108)Campo dentro de la configuración del clúster.

Solución de problemas de AWS ParallelCluster

LaAWS ParallelClustermantiene una página Wiki que proporciona muchos consejos de solución de problemas en elAWS ParallelClusterWiki de GitHub. Para obtener una lista de problemas conocidos, consulteProblemas conocidos.

138 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Recuperación y conservación de registros

Temas • Recuperación y conservación de registros (p. 139) • Solución de problemas de implementación de clúster (p. 139) • Solución de problemas de escalado (p. 143) • Grupos de ubicación y problemas de lanzamiento de instancias (p. 146) • Directorios que no se pueden reemplazar (p. 147) • Solución de problemas en NICE DCV (p. 147) • Solución de problemas de clústeres conAWS Batchintegration (p. 147) • Soporte adicional (p. 147)

Recuperación y conservación de registros

Las métricas de EC2 para el nodo principal y el almacenamiento, y los flujos de registro del nodo principal están disponibles en el panel de control de CloudWatch creado dentro del clúster: Panel de Amazon CloudWatch (p. 126).

Los registros son un recurso útil para solucionar problemas. Si desea eliminar un clúster con errores, primero debe crear un archivo de registros de clúster. Para iniciar este proceso, siga los siguientes pasos.

Es posible archivar los registros en S3 o en un archivo local (dependiendo de la--output-file).

$ pcluster export-cluster-logs --cluster-name mycluster --region eu-west-1 \ --bucket bucketname --bucket-prefix logs { "url": "https://bucketname.s3.eu-west-1.amazonaws.com/export-log/mycluster- logs-202109071136.tar.gz?..." }

# use the --output-file parameter to save the logs locally $ pcluster export-cluster-logs --cluster-name mycluster --region eu-west-1 \ --bucket bucketname --bucket-prefix logs --output-file /tmp/archive.tar.gz { "path": "/tmp/archive.tar.gz" }

El archivo contiene las secuencias Amazon CloudWatch Logs yAWS CloudFormationdesde el nodo principal y los nodos de cálculo durante los últimos 14 días, a menos que se especifique explícitamente en la configuración o en los parámetros para elexport-cluster-logscomando. Tenga en cuenta que la ejecución del comando puede tardar un tiempo en función del número de nodos en el clúster y las secuencias de registro disponibles en CloudWatch Logs. ConsulteIntegración con Amazon CloudWatch Logs (p. 214)Para obtener más información acerca de las secuencias de registro disponibles.

A partir de 3.0.0,AWS ParallelClusterconserva los CloudWatch Logs de forma predeterminada en la eliminación del clúster. Si desea eliminar un clúster y conservar sus registros, asegúrese de que la configuración del clúster no tieneMonitoring > Logs > CloudWatch > DeletionPolicySe establece enDelete. De lo contrario, cambie el campo aRetainy ejecutepcluster update- clustercomando. A continuación, ejecutepcluster delete-cluster --cluster-name para eliminar el clúster y conservar el grupo de registros almacenado en Amazon CloudWatch. Solución de problemas de implementación de clúster

Si el clúster no se puede crear y revierte la creación de la pila, puede revisar los archivos de registro para diagnosticar el problema. El mensaje de error debe ser similar a lo siguiente:

139 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Solución de problemas de implementación de clúster

$ pcluster create-cluster --cluster-name mycluster --region eu-west-1 \ --cluster-configuration cluster-config.yaml { "cluster": { "clusterName": "mycluster", "cloudformationStackStatus": "CREATE_IN_PROGRESS", "cloudformationStackArn": "arn:aws:cloudformation:eu-west-1:xxx:stack/ mycluster/1bf6e7c0-0f01-11ec-a3b9-024fcc6f3387", "region": "eu-west-1", "version": "3.0.0", "clusterStatus": "CREATE_IN_PROGRESS" } }

$ pcluster describe-cluster --cluster-name mycluster --region eu-west-1 { "creationTime": "2021-09-06T11:03:47.696Z", ... "cloudFormationStackStatus": "ROLLBACK_IN_PROGRESS", "clusterName": "mycluster", "computeFleetStatus": "UNKNOWN", "cloudformationStackArn": "arn:aws:cloudformation:eu-west-1:xxx:stack/ mycluster/1bf6e7c0-0f01-11ec-a3b9-024fcc6f3387", "lastUpdatedTime": "2021-09-06T11:03:47.696Z", "region": "eu-west-1", "clusterStatus": "CREATE_FAILED" }

Para diagnosticar el problema de creación de clústeres, puede usar la herramientapcluster get- cluster-stack-events (p. 75), filtrando paraCREATE_FAILEDEstado. Para obtener más información, consulteFiltradoAWS CLIsalidaen laAWS Command Line InterfaceGuía del usuario de.

$ pcluster get-cluster-stack-events --cluster-name mycluster --region eu-west-1 \ --query 'events[?resourceStatus==`CREATE_FAILED`]' [ { "eventId": "3ccdedd0-0f03-11ec-8c06-02c352fe2ef9", "physicalResourceId": "arn:aws:cloudformation:eu-west-1:xxx:stack/ mycluster/1bf6e7c0-0f02-11ec-a3b9-024fcc6f3387", "resourceStatus": "CREATE_FAILED", "resourceStatusReason": "The following resource(s) failed to create: [HeadNode]. ", "stackId": "arn:aws:cloudformation:eu-west-1:xxx:stack/mycluster/1bf6e7c0-0f02-11ec- a3b9-024fcc6f3387", "stackName": "mycluster", "logicalResourceId": "mycluster", "resourceType": "AWS::CloudFormation::Stack", "timestamp": "2021-09-06T11:11:51.780Z" }, { "eventId": "HeadNode-CREATE_FAILED-2021-09-06T11:11:50.127Z", "physicalResourceId": "i-04e91cc1f4ea796fe", "resourceStatus": "CREATE_FAILED", "resourceStatusReason": "Received FAILURE signal with UniqueId i-04e91cc1f4ea796fe", "resourceProperties": "{\"LaunchTemplate\":{\"Version\":\"1\",\"LaunchTemplateId\": \"lt-057d2b1e687f05a62\"}}", "stackId": "arn:aws:cloudformation:eu-west-1:xxx:stack/mycluster/1bf6e7c0-0f02-11ec- a3b9-024fcc6f3387", "stackName": "mycluster", "logicalResourceId": "HeadNode", "resourceType": "AWS::EC2::Instance", "timestamp": "2021-09-06T11:11:50.127Z" } ]

140 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Solución de problemas de implementación de clúster

En el ejemplo anterior, el error estaba en elHeadNode, para depurar este tipo de problema puede enumerar los flujos de registro disponibles desde el nodo principal con la opciónpcluster list- cluster-log-streams (p. 77)filtrando paranode-typey, a continuación, analizar el contenido de los flujos de registro.

$ pcluster list-cluster-log-streams --cluster-name mycluster --region eu-west-1 \ --filters 'Name=node-type,Values=HeadNode' { "logStreams": [ { "logStreamArn": "arn:aws:logs:eu-west-1:xxx:log-group:/aws/parallelcluster/ mycluster-202109061103:log-stream:ip-10-0-0-13.i-04e91cc1f4ea796fe.cfn-init", "logStreamName": "ip-10-0-0-13.i-04e91cc1f4ea796fe.cfn-init", ... }, { "logStreamArn": "arn:aws:logs:eu-west-1:xxx:log-group:/aws/parallelcluster/ mycluster-202109061103:log-stream:ip-10-0-0-13.i-04e91cc1f4ea796fe.chef-client", "logStreamName": "ip-10-0-0-13.i-04e91cc1f4ea796fe.chef-client", ... }, { "logStreamArn": "arn:aws:logs:eu-west-1:xxx:log-group:/aws/parallelcluster/ mycluster-202109061103:log-stream:ip-10-0-0-13.i-04e91cc1f4ea796fe.cloud-init", "logStreamName": "ip-10-0-0-13.i-04e91cc1f4ea796fe.cloud-init", ... }, ... ] }

Los dos flujos de registro principales que puede utilizar para identificar errores de inicialización son:

• cfn-inites el registro para elcfn-initUn script. En primer lugar, consulte esta secuencia de registros. Es probable que veas un error comoCommand chef faileden este registro. Mire las líneas inmediatamente antes de esta línea para obtener más detalles relacionados con el mensaje de error. Para obtener más información, consultecfn-init. • cloud-inites el registro decloud-init. Si no ve nada encfn-init, a continuación, intente verificar este registro.

Puede recuperar el contenido de la secuencia de registro mediante el comandopcluster get- cluster-log-events (p. 74)(Tenga en cuenta la--limit 5para limitar el número de eventos recuperados):

$ pcluster get-cluster-log-events --cluster-name mycluster \ --region eu-west-1 --log-stream-name ip-10-0-0-13.i-04e91cc1f4ea796fe.cfn-init \ --limit 5 { "nextToken": "f/36370880979637159565202782352491087067973952362220945409/s", "prevToken": "b/36370880752972385367337528725601470541902663176996585497/s", "events": [ { "message": "2021-09-06 11:11:39,049 [ERROR] Unhandled exception during build: Command runpostinstall failed", "timestamp": "2021-09-06T11:11:39.049Z" }, { "message": "Traceback (most recent call last):\n File \"/opt/aws/bin/cfn-init \", line 176, in \n worklog.build(metadata, configSets)\n File \"/usr/ lib/python3.7/site-packages/cfnbootstrap/construction.py\", line 135, in build\n Contractor(metadata).build(configSets, self)\n File \"/usr/lib/python3.7/site-packages/

141 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Solución de problemas de implementación de clúster cfnbootstrap/construction.py\", line 561, in build\n self.run_config(config, worklog)\n File \"/usr/lib/python3.7/site-packages/cfnbootstrap/construction.py\", line 573, in run_config\n CloudFormationCarpenter(config, self._auth_config).build(worklog)\n File \"/usr/lib/python3.7/site-packages/cfnbootstrap/construction.py\", line 273, in build \n self._config.commands)\n File \"/usr/lib/python3.7/site-packages/cfnbootstrap/ command_tool.py\", line 127, in apply\n raise ToolError(u\"Command %s failed\" % name)", "timestamp": "2021-09-06T11:11:39.049Z" }, { "message": "cfnbootstrap.construction_errors.ToolError: Command runpostinstall failed", "timestamp": "2021-09-06T11:11:39.049Z" }, { "message": "2021-09-06 11:11:49,212 [DEBUG] CloudFormation client initialized with endpoint https://cloudformation.eu-west-1.amazonaws.com", "timestamp": "2021-09-06T11:11:49.212Z" }, { "message": "2021-09-06 11:11:49,213 [DEBUG] Signaling resource HeadNode in stack mycluster with unique ID i-04e91cc1f4ea796fe and status FAILURE", "timestamp": "2021-09-06T11:11:49.213Z" } ] }

En el ejemplo anterior, el error se debe a unrunpostinstall, por lo que estrictamente relacionado con el contenido de la secuencia de comandos de arranque personalizada utilizada en elOnNodeConfiguredparámetro de configuración del parámetroCustomActions (p. 97). Los flujos de registro del nodo principal están disponibles en el panel de control de CloudWatch creado dentro del clúster: Panel de Amazon CloudWatch (p. 126). Si no hay flujos de registro disponibles, el error puede deberse aCustomActions (p. 97)script de arranque personalizado o problema relacionado con AMI. Para diagnosticar el problema de creación en este caso, vuelva a crear el clúster utilizandopcluster create-cluster (p. 73), incluido el--rollback-on-failureParámetro defalse. Luego, SSH en el clúster:

$ pcluster create-cluster --cluster-name mycluster --region eu-west-1 \ --cluster-configuration cluster-config.yaml --rollback-on-failure false { "cluster": { "clusterName": "mycluster", "cloudformationStackStatus": "CREATE_IN_PROGRESS", "cloudformationStackArn": "arn:aws:cloudformation:eu-west-1:xxx:stack/ mycluster/1bf6e7c0-0f01-11ec-a3b9-024fcc6f3387", "region": "eu-west-1", "version": "3.0.0", "clusterStatus": "CREATE_IN_PROGRESS" } }

$ pcluster ssh --cluster-name mycluster

Después de iniciar sesión en el nodo principal, debe encontrar tres archivos de registro principales que puede utilizar para identificar el error.

• /var/log/cfn-init.loges el registro para elcfn-initUn script. Primero revisa este registro. Es probable que veas un error comoCommand chef faileden este registro. Mire las líneas inmediatamente antes de esta línea para obtener más detalles relacionados con el mensaje de error. Para obtener más información, consultecfn-init. • /var/log/cloud-init.loges el registro decloud-init. Si no ve nada encfn-init.log, a continuación, intente verificar este registro.

142 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Solución de problemas de escalado

• /var/log/cloud-init-output.loges el resultado de los comandos ejecutados porcloud-init. Esto incluye la salida decfn-init. En la mayoría de los casos no necesita mirar este registro para solucionar este tipo de problema.

Solución de problemas de escalado

Esta sección es relevante para los clústeres que se instalaron usandoAWS ParallelClusterVersión 3.0.0 y posterior con el programador de trabajos Slurm. Para obtener más información acerca de la configuración de varias colas, consulteConfiguración de varias colas (p. 60).

Si uno de los clústeres en ejecución está experimentando problemas, debe colocar el clúster en unSTOPPEDejecutando el siguiente comando antes de comenzar a solucionar problemas. Esto evita incurrir en costes inesperados.

$ pcluster update-compute-fleet --cluster-name mycluster\ --status STOP_REQUESTED

Puede enumerar las secuencias de registro disponibles desde los nodos del clúster mediante la herramientapcluster list-cluster-log-streams (p. 77)y filtrado mediante el comandoprivate-dns-namede uno de los nodos que fallan o el nodo principal.

$ pcluster list-cluster-log-streams --cluster-name mycluster --region eu-west-1 \ --filters 'Name=private-dns-name,Values=ip-10-0-0-101'

A continuación, puede recuperar el contenido de la secuencia de registro para analizarlo mediante elpcluster get-cluster-log-events (p. 74)y pasando el comando--log-stream- namecorrespondiente a uno de los registros de claves mencionados en la siguiente sección.

$ pcluster get-cluster-log-events --cluster-name mycluster \ --region eu-west-1 --log-stream-name ip-10-0-0-13.i-04e91cc1f4ea796fe.cfn-init

Nota: Las secuencias de registro de nodo principal y de nodo de cálculo también están disponibles en el panel de control de CloudWatch creado dentro del clúster: Panel de Amazon CloudWatch (p. 126). Registros de claves para la depuración

La tabla siguiente ofrece información general de los registros clave del nodo principal:

• /var/log/cfn-init.log- Este es elAWS CloudFormationLogs de inicio. Contiene todos los comandos que se ejecutaron cuando se configura una instancia. Es útil para solucionar problemas de inicialización. • /var/log/chef-client.log- Este es el registro del cliente del Chef. Contiene todos los comandos que se ejecutaron a través de Chef/CINC. Es útil para solucionar problemas de inicialización. • /var/log/parallelcluster/slurm_resume.log- Este es unResumeProgramregistro. Inicia instancias para nodos dinámicos y es útil para solucionar problemas de inicio de nodos dinámicos. • /var/log/parallelcluster/slurm_suspend.log- Este es elSuspendProgramregistro. Se llama cuando se terminan instancias para nodos dinámicos, y es útil para solucionar problemas de terminación de nodos dinámicos. Cuando compruebe este registro, también debe marcar la casillaclustermgtdregistro. • /var/log/parallelcluster/clustermgtd- Este es elclustermgtdregistro. Se ejecuta como el demonio centralizado que administra la mayoría de las acciones de operación del clúster. Es útil para solucionar cualquier problema de inicio, terminación o operación de clúster. • /var/log/slurmctld.log- Este es el registro del demonio de control de Slurm.AWS ParallelClusterno toma decisiones de escalado. Más bien, sólo intenta lanzar recursos para satisfacer

143 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Solución de problemas de escalado

los requisitos de Slurm. Es útil para problemas de escalado y asignación, problemas relacionados con el trabajo y cualquier problema relacionado con el lanzamiento y la terminación del programador.

Estos son los registros clave para los nodos de computación:

• /var/log/cloud-init-output.log- Este es elcloud-initregistro. Contiene todos los comandos que se ejecutaron cuando se configura una instancia. Es útil para solucionar problemas de inicialización. • /var/log/parallelcluster/computemgtd- Este es elcomputemgtdregistro. Se ejecuta en cada nodo informático para supervisar el nodo en el raro evento queclustermgtdEl demonio en el nodo principal está sin conexión. Es útil para solucionar problemas de terminación inesperada. • /var/log/slurmd.log- Este es el registro del demonio de computación de Slurm. Es útil para solucionar problemas relacionados con la inicialización y la falla de cálculo.

Solución de problemas de inicialización de nodos

En esta sección se describe cómo puede solucionar problemas de inicialización de nodos. Esto incluye problemas en los que el nodo no puede iniciar, encender o unirse a un clúster. Nodo Head

Logs aplicables:

• /var/log/cfn-init.log • /var/log/chef-client.log • /var/log/parallelcluster/clustermgtd • /var/log/parallelcluster/slurm_resume.log • /var/log/slurmctld.log

Compruebe la/var/log/cfn-init.logy/var/log/chef-client.logregistros o flujos de registro correspondientes. Estos registros deben contener todas las acciones que se ejecutaron cuando se configuró el nodo principal. La mayoría de los errores que se producen durante la instalación deben tener mensajes de error ubicados en el/var/log/chef-client.logregistro. SiOnNodeStartorOnNodeConfiguredse especifican en la configuración del clúster, compruebe que el script se ejecuta correctamente a través de los mensajes de registro.

Cuando se crea un clúster, el nodo principal debe esperar a que los nodos de cálculo se unan al clúster antes de poder unirse al clúster. Como tal, si los nodos de computación no se unen al clúster, el nodo principal también produce un error. Para solucionar este tipo de problemas, puede seguir uno de estos procedimientos, dependiendo del tipo de notas de computación que utilice,: Nodos de computación

• Logs aplicables: • /var/log/cloud-init-output.log • /var/log/slurmd.log • Si se inicia el nodo de cálculo, primero compruebe/var/log/cloud-init-output.log, que debe contener los registros de configuración similares a los de/var/log/chef-client.logEn el nodo director. La mayoría de los errores que se producen durante la instalación deben tener mensajes de error ubicados en el/var/log/cloud-init-output.logregistro. Si se especifican scripts de preinstalación o posinstalación en la configuración del clúster, compruebe que se ejecutaron correctamente. • Si utiliza una AMI personalizada con modificación aSlurm, entonces podría haber unSlurmerror relacionado que impide que el nodo informático se une al clúster. Para errores relacionados con el programador, compruebe la casilla/var/log/slurmd.logregistro.

144 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Solución de problemas de escalado

Nodos de computación dinámicos:

• Busque elResumeProgramregistro (/var/log/parallelcluster/slurm_resume.log) para el nombre del nodo de computación para ver siResumeProgramcon el nodo. (SiResumeProgramNo se llamó nunca, puede marcar laslurmctldregistro (/var/log/slurmctld.log) para determinar si Slurm intentó llamar aResumeProgramcon el nodo). • Tenga en cuenta que los permisos incorrectos paraResumeProgrampodría causarResumeProgramfallar silenciosamente. Si utiliza una AMI personalizada con modificación aResumeProgram, compruebe que elResumeProgrames propiedad de laslurmy tiene el744(rwxr-- r--). • SiResumeProgram, compruebe si se inicia una instancia para el nodo. Si no se inició ninguna instancia, debería poder ver un mensaje de error que describe el error de inicio. • Si se inicia la instancia, es posible que haya habido un problema durante el proceso de instalación. Debería ver la dirección IP privada correspondiente y el ID de instancia en la páginaResumeProgramregistro. Además, puede consultar los registros de configuración correspondientes para la instancia específica. Para obtener más información acerca de resolución de problemas de instalación con un nodo de computación, consulte la siguiente sección.

Nodos de computación estáticos:

• Compruebe laclustermgtd(/var/log/parallelcluster/clustermgtd) para ver si se iniciaron instancias para el nodo. Si no se han iniciado, debe haber un mensaje de error claro que detalla el error de inicio. • Si se inicia la instancia, hay algún problema durante el proceso de instalación. Debería ver la dirección IP privada correspondiente y el ID de instancia en la páginaResumeProgramregistro. Además, puede consultar los registros de configuración correspondientes para la instancia específica.

Solución de problemas de reemplazos y terminaciones de nodos inesperados

Esta sección continúa explorando cómo puede solucionar problemas relacionados con el nodo, específicamente cuando un nodo se reemplaza o termina inesperadamente.

• Logs aplicables: • /var/log/parallelcluster/clustermgtd(nodo principal) • /var/log/slurmctld.log(nodo principal) • /var/log/parallelcluster/computemgtd(nodo informático)

Nodos reemplazados o terminados inesperadamente

• Compruebe en elclustermgtdregistro (/var/log/parallelcluster/clustermgtd) para ver siclustermgtdrealizó la acción para reemplazar o terminar un nodo. Tenga en cuenta queclustermgtdmaneja todas las acciones normales de mantenimiento del nodo. • Siclustermgtdreemplazó o terminó el nodo, debería haber un mensaje que detalla por qué se realizó esta acción en el nodo. Si el motivo está relacionado con el programador (por ejemplo, porque el nodo está enDOWN), facturarslurmctldPara obtener más información. Si el motivo está relacionado con Amazon EC2, debe haber un mensaje informativo en el que se detalla el problema relacionado con Amazon EC2 que requirió el reemplazo. • Siclustermgtdno ha terminado el nodo, primero compruebe si se trata de una terminación esperada por parte de Amazon EC2, más concretamente una terminación puntual.computemgtd, que se ejecuta en un nodo de cálculo, también puede realizar una acción para terminar un nodo siclustermgtdse determina como poco saludable. Checkcomputemgtdregistro (/var/log/parallelcluster/ computemgtd) para ver sicomputemgtdfinalizó el nodo.

145 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Grupos de ubicación y problemas de lanzamiento de instancias Nodos defectuosos

• Check In (slurmctldregistro (/var/log/slurmctld.log) para ver por qué falló un trabajo o un nodo. Tenga en cuenta que los trabajos se vuelven a poner en cola automáticamente si se produce un error en un nodo. • Sislurm_resumeinforma que el nodo se ha iniciado yclustermgtdinformes despuésvarios minutosque no hay ninguna instancia correspondiente en Amazon EC2 para ese nodo, es posible que el nodo falle durante la instalación. Para recuperar el registro de un proceso (/var/log/cloud-init- output.log), siga los pasos que se indican a continuación: • Enviar un trabajo para dejarSlurmgire un nuevo nodo. • Después de que se inicie el nodo, habilite la protección de terminación mediante este comando.

aws ec2 modify-instance-attribute --instance-id i-xyz --disable-api-termination

• Recupere el resultado de la consola desde el nodo con este comando.

aws ec2 get-console-output --instance-id i-xyz --output text

Sustitución, terminación o apagado de instancias y nodos problemáticos

• Logs aplicables: • /var/log/parallelcluster/clustermgtd(nodo principal) • /var/log/parallelcluster/slurm_suspend.log(nodo principal) • En la mayoría de los casos,clustermgtdcontrola todas las acciones de terminación de instancia esperadas. Compruebe en elclustermgtdpara ver por qué no se pudo reemplazar o terminar un nodo. • Para nodos dinámicos que fallanSlurmSettingsPropiedades (p. 115), compruebe en elSuspendProgramregistro para ver siSuspendProgramfue llamado porslurmctldcon el nodo específico como argumento. Tenga en cuenta queSuspendProgramEn realidad no realiza ninguna acción. Más bien, solo registra cuando se llama. Toda la terminación de instancia yNodeAddrEl restablecimiento se haceclustermgtd. Slurm vuelve a colocar los nodos en unPOWER_SAVINGestado despuésSuspendTimeoutDe forma automática.

Solución de problemas de trabajo y nodo conocidos

Otro tipo de problema conocido es queAWS ParallelClusterpodría no asignar trabajos o tomar decisiones de escalado. Con este tipo de problema,AWS ParallelClustersolo inicia, finaliza o mantiene recursos de acuerdo con las instrucciones de Slurm. Para estos problemas, compruebe laslurmctldpara solucionarlos. Grupos de ubicación y problemas de lanzamiento de instancias

Para obtener la menor latencia entre nodos, utilice ungrupo de ubicación. Un grupo de ubicación garantiza que las instancias estén en la misma red troncal. Si no hay suficientes instancias disponibles cuando se realiza una solicitud, unInsufficientInstanceCapacityse devuelve el error. Para reducir la posibilidad de recibir este error al utilizar grupos de ubicación en clúster, establezca la propiedadNetworkingPropiedades (p. 107)Parámetro detrue.

Si necesita un sistema de archivos compartido de alto rendimiento, considere la posibilidad de usarAmazon FSx for Lustre.

146 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Directorios que no se pueden reemplazar

Para obtener más información, consulteSolución de problemas de lanzamiento de instanciasyRoles y limitaciones de los grupos de ubicaciónen laGuía del usuario de Amazon EC2 para instancias de Linux Directorios que no se pueden reemplazar

Los siguientes directorios se comparten entre los nodos y no se pueden reemplazar.

• /homeEsto incluye la carpeta principal del usuario predeterminada (/home/ec2_useren Amazon Linux,/home/centosen CentOS,/home/ubuntuen Ubuntu). • /opt/intelEsto incluye Intel MPI, Intel Parallel Studio y archivos relacionados. • /opt/slurmEsto incluye Slurm Workload Manager y archivos relacionados. (Condicional, solo si Scheduler: slurm).

Solución de problemas en NICE DCV

Los registros de NICE DCV se escriben en los archivos de la/var/log/dcv/. Revisar estos registros puede ayudar a solucionar problemas.

El tipo de instancia debe tener al menos 1,7 gibibyte (GiB) de RAM para ejecutar NICE DCV. Los tipos de instancias nano y micro no tienen suficiente memoria para ejecutar NICE DCV.

Nota: Los flujos de registro NICE DCV están disponibles en el panel creado dentro del clúster: Panel de Amazon CloudWatch (p. 126) Solución de problemas de clústeres conAWS Batchintegration

Esta sección es relevante para clústeres conAWS Batchintegración del programador. Problemas del nodo director

Los problemas de configuración relacionados con el nodo principal se pueden solucionar de la misma manera que unSlurm(excepto paraSlurmregistros específicos). Para obtener más información acerca de estos problemas, consulteNodo Head (p. 144). Problemas de computación

AWS Batchadministra los aspectos de escalado y cálculo de sus servicios. Si encuentra problemas relacionados con el proceso, consulte laAWS Batch Solución de problemas conpara obtener ayuda. Fallos de Job

Si un trabajo falla, puede ejecutar el comandoawsbout (p. 211)para recuperar la salida del trabajo. También puede ejecutarawsbstat (p. 57)para obtener un vínculo a los registros de trabajo almacenados por Amazon CloudWatch. Soporte adicional

Para obtener una lista de problemas conocidos, consulte elWiki de GitHub oProblemas(Se ha creado el certificado). Para problemas más urgentes, póngase en contacto conAWS Supporto abraNuevo problema de GitHub.

147 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Configuración de AWS ParallelCluster

AWS ParallelClusterversión 2

Temas • Configuración de AWS ParallelCluster (p. 148) • Uso AWS ParallelCluster (p. 166) • Comandos de la CLI de AWS ParallelCluster (p. 222) • Configuration (p. 171) • Cómo funciona AWS ParallelCluster (p. 293) • Tutorials (p. 304) • Development (p. 324) • Solución de problemas de AWS ParallelCluster (p. 326)

Configuración de AWS ParallelCluster

Temas • Instalar AWS ParallelCluster (p. 148) • Configuración de AWS ParallelCluster (p. 158) • Prácticas recomendadas (p. 163) • Transferir desde CfnCluster hasta AWS ParallelCluster (p. 164) • Regiones admitidas (p. 165)

Instalar AWS ParallelCluster

AWS ParallelCluster se distribuye como un paquete de Python y se instala mediante pip, el administrador de paquetes de Python. Para obtener más información acerca de la instalación de paquetes de Python, consulteInstalación de paquetesen laGuía del usuario de paquetes de Python.

Formas de instalar AWS ParallelCluster:

• Mediante un entorno virtual (recomendado) (p. 148) • Uso de pip (p. 149)

Puede encontrar el número de versión de la CLI más reciente en la página de versiones de GitHub.

En esta guía, los comandos de ejemplo dan por hecho que tiene Python v3 instalado. Los comandos de ejemplo pip utilizan la versión pip3. InstalaciónAWS ParallelClusterEn un entorno virtual (recomendado)

Le recomendamos que instale AWS ParallelCluster en un entorno virtual. Si tiene problemas al intentar instalar AWS ParallelCluster con pip3, puede instalar AWS ParallelCluster en un entorno virtual (p. 150) para aislar la herramienta y sus dependencias. También puede utilizar una versión de Python diferente de la que usa habitualmente.

148 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Instalar AWS ParallelCluster InstalaciónAWS ParallelClusterEn un entorno no virtual utilizando pip

El método de distribución principal para AWS ParallelCluster en Linux, Windows y macOS es pip, que es un administrador de paquetes para Python. Proporciona una manera de instalar, actualizar y eliminar paquetes de Python y sus dependencias.

Versión actual de AWS ParallelCluster

La AWS ParallelCluster se actualiza periódicamente. Para saber si tiene la versión más reciente, consulte la página de versiones en GitHub.

Si ya tiene pip y una versión compatible de Python, puede instalar AWS ParallelCluster con el siguiente comando. Si tiene instalada la versión 3 o superior de Python, recomendamos que utilice el comando pip3.

$ pip3 install "aws-parallelcluster<3.0" --upgrade --user

Pasos a seguir después de la instalación

Una vez instalado AWS ParallelCluster, es posible que tenga que añadir la ruta del archivo ejecutable a su variable PATH. Si desea obtener instrucciones específicas de las distintas plataformas, consulte estos temas:

• Linux: Agregar el ejecutable de la AWS ParallelCluster a la ruta de la línea de comandos (p. 153) • macOS: Agregar el ejecutable de la AWS ParallelCluster a la ruta de la línea de comandos (p. 155) • Windows – Agregar el ejecutable de la AWS ParallelCluster a la ruta de la línea de comandos (p. 157)

Puede comprobar que AWS ParallelCluster se ha instalado correctamente ejecutando pcluster version.

$ pcluster version 2.11.2

La AWS ParallelCluster se actualiza periódicamente. Para actualizar a la última versión de AWS ParallelCluster, ejecute el comando de instalación de nuevo. Para obtener información detallada sobre la última versión de AWS ParallelCluster, consulte las notas de la versión de AWS ParallelCluster.

$ pip3 install "aws-parallelcluster<3.0" --upgrade --user

Para desinstalar AWS ParallelCluster, utilice pip uninstall.

$ pip3 uninstall "aws-parallelcluster<3.0"

Si no dispone de Python ni pip, utilice el procedimiento para su entorno. Instrucciones detalladas para cada entorno

• InstallAWS ParallelClusterEn un entorno virtual (recomendado) (p. 150) • Instalación del AWS ParallelCluster en Linux (p. 151) • Instalación de AWS ParallelCluster en macOS (p. 154) • Instalación de AWS ParallelCluster en Windows. (p. 156)

149 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Instalar AWS ParallelCluster InstallAWS ParallelClusterEn un entorno virtual (recomendado)

Recomendamos que instaleAWS ParallelClusteren un entorno virtual para evitar conflictos de versiones con otrospippaquetes de.

Prerequisites

• Compruebe que pip y Python están instalados. Recomendamospip3y Python 3 versión 3.8. Si utiliza Python 2, utilice pip en lugar de pip3 y virtualenv en lugar de venv.

Para instalar AWS ParallelCluster en un entorno virtual

1. Si virtualenv no está instalado, instale virtualenv mediante pip3. Si python3 -m virtualenv help muestra información de ayuda, vaya al paso 2.

Linux, macOS, or Unix

$ python3 -m pip install --upgrade pip $ python3 -m pip install --user --upgrade virtualenv

Ejecute exit para salir de la ventana de terminal actual y abrir una nueva para detectar los cambios del entorno. Windows

C:\>pip3 install --user --upgrade virtualenv

Ejecute exit para salir del símbolo del sistema actual y abrir uno nuevo para detectar los cambios del entorno. 2. Cree un entorno virtual y asígnele un nombre.

Linux, macOS, or Unix

$ python3 -m virtualenv ~/apc-ve

También puede usar la opción -p para especificar una versión específica de Python.

$ python3 -m virtualenv -p $(which python3) ~/apc-ve

Windows

C:\>virtualenv %USERPROFILE%\apc-ve

3. Active el entorno virtual nuevo.

Linux, macOS, or Unix

$ source ~/apc-ve/bin/activate

Windows

C:\>%USERPROFILE%\apc-ve\Scripts\activate

4. Instale AWS ParallelCluster en el entorno virtual. 150 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Instalar AWS ParallelCluster

Linux, macOS, or Unix

(apc-ve)~$ python3 -m pip install --upgrade "aws-parallelcluster<3.0"

Windows

(apc-ve) C:\>pip3 install --upgrade "aws-parallelcluster<3.0"

5. Compruebe que AWS ParallelCluster está instalado correctamente.

Linux, macOS, or Unix

$ pcluster version 2.11.2

Windows

(apc-ve) C:\>pcluster version 2.11.2

Puede utilizar el comando deactivate para salir del entorno virtual. Cada vez que inicie una sesión, debereactivar el entorno (p. 150).

Para actualizar a la versión más reciente de AWS ParallelCluster, ejecute el comando de instalación de nuevo.

Linux, macOS, or Unix

(apc-ve)~$ python3 -m pip install --upgrade "aws-parallelcluster<3.0"

Windows

(apc-ve) C:\>pip3 install --upgrade "aws-parallelcluster<3.0"

Instalación del AWS ParallelCluster en Linux

Puede instalar AWS ParallelCluster y sus dependencias en la mayoría de las distribuciones de Linux con pip, un administrador de paquetes para Python. En primer lugar, determine si Python y pip están instalados:

1. Para determinar si su versión de Linux incluye Python y pip, ejecute pip --version.

$ pip --version

Si tiene pip instalado, vaya al tema Instale AWS ParallelCluster con pip (p. 148). De lo contrario, prosiga con el paso 2. 2. Para determinar si Python está instalado, ejecute python --version.

$ python --version

151 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Instalar AWS ParallelCluster

Si tiene Python 3 versión 3.6+ o Python 2 versión 2.7 instalado, vaya al tema Instale AWS ParallelCluster con pip (p. 148). De lo contrario, instale Python (p. 153) y, a continuación, vuelva a este procedimiento para instalar pip. 3. Instale pip con el script proporcionado por Python Packaging Authority. 4. Utilice el comando curl para descargar el script de instalación.

$ curl -O https://bootstrap.pypa.io/get-pip.py

5. Ejecute el script con Python para descargar e instalar la versión más reciente de pip y otros paquetes de soporte necesarios.

$ python get-pip.py --user

o bien

$ python3 get-pip.py --user

Cuando se incluye el modificador --user, el script instala pip en la ruta ~/.local/bin. 6. Para comprobar que la carpeta que contienepipforma parte de suPATH, haga lo siguiente:

a. Busque el script de perfil de su shell en su carpeta de usuario. Si no está seguro de cuál es el shell que tiene, ejecute basename $SHELL.

$ ls -a ~ . .. .bash_logout .bash_profile .bashrc Desktop Documents Downloads

• Bash–.bash_profile,.profile, o bien.bash_login • Zsh: .zshrc • Tcsh–.tcshrc,.cshrcor.login b. Añada un comando de exportación al final del script de su perfil igual que en el siguiente ejemplo.

export PATH=~/.local/bin:$PATH

El comando de exportación inserta la ruta, que es ~/.local/bin en este ejemplo, delante de la variable PATH existente. c. Para que estos cambios surtan efecto, vuelva a cargar el perfil en la sesión actual.

$ source ~/.bash_profile

7. Compruebe que pip está instalado correctamente.

$ pip3 --version pip 21.2.4 from ~/.local/lib/python3.6/site-packages (python 3.6)

Secciones • Instale AWS ParallelCluster con pip (p. 153) • Agregar el ejecutable de la AWS ParallelCluster a la ruta de la línea de comandos (p. 153) • Instalación de Python en Linux (p. 153)

152 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Instalar AWS ParallelCluster

Instale AWS ParallelCluster con pip

Utilice pip para instalar AWS ParallelCluster.

$ python3 -m pip install "aws-parallelcluster<3.0" --upgrade --user

Cuando se utiliza el modificador --user, pip instala AWS ParallelCluster en ~/.local/bin.

Compruebe que AWS ParallelCluster está instalado correctamente.

$ pcluster version 2.11.2

Para actualizar a la versión más reciente, ejecute el comando de instalación de nuevo.

$ python3 -m pip install "aws-parallelcluster<3.0" --upgrade --user

Agregar el ejecutable de la AWS ParallelCluster a la ruta de la línea de comandos

Después de realizar la instalación con pip, es posible que necesite añadir el archivo ejecutable pcluster a la variable de entorno PATH del sistema operativo.

Para comprobar la carpeta en la que pip instaló AWS ParallelCluster, ejecute el siguiente comando.

$ which pcluster /home/username/.local/bin/pcluster

Si omitió el modificador --user cuando instaló AWS ParallelCluster, el archivo ejecutable podría estar en la carpeta bin de la instalación de Python. Si no sabe dónde se ha instalado Python, ejecute este comando.

$ which python /usr/local/bin/python

Tenga en cuenta que la salida puede ser la ruta a un symlink, no al archivo ejecutable real. Para ver adónde apunta el symlink, ejecute ls -al.

$ ls -al $(which python) /usr/local/bin/python -> ~/.local/Python/3.6/bin/python3.6

Si esta es la misma carpeta que ha añadido a la ruta en el paso 3 en Instalar AWS ParallelCluster (p. 148), ya ha terminado con la instalación. De lo contrario, debe realizar los pasos 3a — 3c de nuevo, añadiendo esta carpeta adicional a la ruta. Instalación de Python en Linux

Si la distribución no incluye Python, o incluye una versión anterior, instale Python antes de instalar pip y AWS ParallelCluster.

Para instalar Python 3 en Linux

1. Compruebe si Python ya está instalado.

$ python3 --version

153 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Instalar AWS ParallelCluster

o bien

$ python --version

Note

Si su distribución de Linux incluye Python, es posible que tenga que instalar el paquete de desarrollador de Python. En el paquete de desarrollador se incluyen los encabezados y las bibliotecas que son necesarios para compilar extensiones e instalar AWS ParallelCluster. Utilice el administrador de paquetes para instalar el paquete de desarrollador. Suele llamarse python-dev o python-devel. 2. Si no está instalado Python 2.7 o una versión posterior, instale Python con el administrador de paquetes de su distribución. El comando y el nombre del paquete varían:

• En derivados de Debian, como por ejemplo Ubuntu, use apt.

$ sudo apt-get install python3

• En Red Hat y sus derivados, use yum.

$ sudo yum install python3

• En SUSE y sus derivados, use zypper.

$ sudo zypper install python3

3. Para verificar que Python está instalado correctamente, abra un símbolo del sistema o shell y ejecute el siguiente comando.

$ python3 --version Python 3.8.11

Instalación de AWS ParallelCluster en macOS

Secciones • Prerequisites (p. 154) • InstallAWS ParallelClusterEn macOS con pip (p. 155) • Agregar el ejecutable de la AWS ParallelCluster a la ruta de la línea de comandos (p. 155)

Prerequisites

• Python 3 versión 3.6+ o Python 2 versión 2.7

Compruebe su instalación de Python.

$ python --version

Si aún no se ha instalado Python en el equipo o quiere instalar otra versión distinta, siga el procedimiento detallado en Instalación del AWS ParallelCluster en Linux (p. 151).

154 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Instalar AWS ParallelCluster

InstallAWS ParallelClusterEn macOS con pip

También puede utilizar pip directamente para instalar AWS ParallelCluster. Si no tiene pip, siga las instrucciones del tema de instalación (p. 148) principal. Ejecute pip3 --version para saber si su versión de macOS ya incluye Python y pip3.

$ pip3 --version

Para instalar AWS ParallelCluster en macOS

1. Descargue e instale la última versión de Python de la página de descargas de Python.org. 2. Descargue y ejecute el script de instalación de pip3 proporcionado por Python Packaging Authority.

$ curl -O https://bootstrap.pypa.io/get-pip.py $ python3 get-pip.py --user

3. Utilice el pip3 recién instalado para instalar AWS ParallelCluster. Si utiliza la versión 3 o superior de Python, recomendamos que utilice el comando pip3.

$ python3 -m pip install "aws-parallelcluster<3.0" --upgrade --user

4. Compruebe que AWS ParallelCluster está instalado correctamente.

$ pcluster version 2.11.2

Si no se encuentra el programa, añádalo a la ruta de la línea de comandos (p. 155).

Para actualizar a la versión más reciente, ejecute el comando de instalación de nuevo.

$ pip3 install "aws-parallelcluster<3.0" --upgrade --user

Agregar el ejecutable de la AWS ParallelCluster a la ruta de la línea de comandos

Después de realizar la instalación con pip, es posible que necesite añadir el programa pcluster a la variable de entorno PATH del sistema operativo. La ubicación del programa depende de dónde se haya instalado Python.

Example Ubicación de instalación de la AWS ParallelCluster: macOS con Python 3.6 y pip (modo usuario)

~/Library/Python/3.6/bin

Sustituya la versión de Python que tiene con la versión del ejemplo anterior.

Si no sabe dónde se ha instalado Python, ejecute which python.

$ which python3 /usr/local/bin/python3

La salida puede ser la ruta a un symlink, no la ruta al programa real. Ejecute ls -al para ver adónde apunta.

155 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Instalar AWS ParallelCluster

$ ls -al /usr/local/bin/python3 lrwxr-xr-x 1 username admin 36 Mar 12 12:47 /usr/local/bin/python3 -> ../Cellar/ python/3.6.8/bin/python3 pip instala los programas en la misma carpeta que contiene la aplicación de Python. Añada esta carpeta a la variable PATH.

Para modificar laPATHVariable (Linux, macOS o Unix)

1. Busque el script de perfil de su shell en su carpeta de usuario. Si no está seguro de cuál es el shell que tiene, ejecute echo $SHELL.

$ ls -a ~ . .. .bash_logout .bash_profile .bashrc Desktop Documents Downloads

• Bash–.bash_profile,.profile, o bien.bash_login • Zsh: .zshrc • Tcsh–.tcshrc,.cshrc, o bien.login 2. Añada un comando de exportación al script de su perfil.

export PATH=~/.local/bin:$PATH

Este comando añade una ruta, ~/.local/bin en este ejemplo, a la variable PATH actual. 3. Cargue el perfil en su sesión actual.

$ source ~/.bash_profile

Instalación de AWS ParallelCluster en Windows.

Puede instalar AWS ParallelCluster en Windows con pip, un administrador de paquetes para Python. Si ya tiene pip, siga las instrucciones del tema de instalación (p. 148) principal.

Secciones • InstallAWS ParallelClusterUso de Python ypipen Windows (p. 156) • Agregar el ejecutable de la AWS ParallelCluster a la ruta de la línea de comandos (p. 157)

InstallAWS ParallelClusterUso de Python ypipen Windows

La Python Software Foundation ofrece instaladores para Windows que incluyen pip.

Para instalar Python 3.6 y pip (Windows)

1. Descargue el instalador de Python para Windows x86-64 desde la página de descargas de Python.org. 2. Ejecute el instalador. 3. Elija Add Python 3 to PATH (Añadir Python3 a PATH). 4. Seleccione Install Now (Instalar ahora).

El instalador instala Python en la carpeta del usuario y añade sus carpetas de programas a la ruta del usuario.

156 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Instalar AWS ParallelCluster

Para instalar AWS ParallelCluster con pip3 (Windows)

Si usa la versión 3 o superior de Python, recomendamos que utilice el comando pip3.

1. Abra el Command Prompt (Símbolo del sistema) desde el menú Start (Inicio). 2. Utilice los siguientes comandos para comprobar que tanto Python como pip estén instalados correctamente.

C:\>py --version Python 3.8.11 C:\>pip3 --version pip 21.2.4 from c:\python38\lib\site-packages\pip (python 3.8)

3. Instale AWS ParallelCluster mediante pip.

C:\>pip3 install "aws-parallelcluster<3.0"

4. Compruebe que AWS ParallelCluster está instalado correctamente.

C:\>pcluster version 2.11.2

Para actualizar a la versión más reciente, ejecute el comando de instalación de nuevo.

C:\>pip3 install --user --upgrade "aws-parallelcluster<3.0"

Agregar el ejecutable de la AWS ParallelCluster a la ruta de la línea de comandos

Después de instalar la AWS ParallelCluster con pip, añada el programa pcluster a la variable de entorno PATH del sistema operativo.

Para encontrar dónde está instalado el programa de pcluster, ejecute el siguiente comando.

C:\>where pcluster C:\Python38\Scripts\pcluster.exe

Si ese comando no devuelve ningún resultado, debe añadir la ruta manualmente. Utilice la línea de comandos o el Explorador de Windows para averiguar dónde está instalado en el equipo. Las rutas típicas incluyen:

• Python 3 ypip3–C:\Python38\Scripts\ • Python 3 ypip3—user (opción)–%APPDATA%\Python\Python38\Scripts

Note

Los nombres de carpeta que incluyen los números de versión puede variar. En los ejemplos anteriores se muestra Python38. Sustitúyalos según sea necesario por el número de versión que está utilizando.

Para modificar su variable PATH (Windows)

1. Pulse la tecla de Windows y escriba environment variables. 2. Elija Editar las variables de entorno de esta cuenta. 3. Elija PATH y, a continuación, Editar.

157 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Configuración de AWS ParallelCluster

4. Añada la ruta al campo Variable value (Valor de variable). Por ejemplo: C:\new\path 5. Elija Aceptar dos veces para aplicar la nueva configuración. 6. Cierre los símbolos del sistema en ejecución y vuelva a abrir la ventana de símbolo del sistema.

Configuración de AWS ParallelCluster

Una vez que instale AWS ParallelCluster, realice los siguientes pasos de configuración.

En primer lugar, configure suAWSCredenciales de . Para obtener más información, consulte Configuración de AWS CLI en la Guía del usuario de AWS CLI.

$ aws configure AWS Access Key ID [None]: AKIAIOSFODNN7EXAMPLE AWS Secret Access Key [None]: wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY Default region name [us-east-1]: us-east-1 Default output format [None]:

La región en la que se lanzará el clúster debe tener al menos un key pair de Amazon EC2. Para obtener más información, consulte Pares de claves de Amazon EC2 en la Guía del usuario de Amazon EC2 para instancias Linux.

$ pcluster configure

El asistente de configuración le pedirá toda la información necesaria para crear su clúster. Los detalles de la secuencia difieren cuando se utiliza AWS Batch como programador en comparación con el uso de SGE, Slurm o Torque. Warning

A partir del 31 de diciembre de 2021,AWSya no incluiránSGEyTorquesoporte para todas las versiones publicadas deAWS ParallelCluster. Versiones anteriores deAWS ParallelClusterCompatibilidad con queSGEyTorqueseguirá estando disponible para su descarga y uso. Sin embargo, estas versiones no serán elegibles para futuras actualizaciones o asistencia para la solución de problemas delAWSyAWSEquipos de Support. Por otra parte, las futuras versiones deAWS ParallelClusterrealizado antes y después del 31 de diciembre de 2021 no incluirá soporte paraSGEorTorque.

SGE, Slurm, or Torque

De la lista de Región de AWS , elija la región de en la que desea que se ejecute el clúster. Note

La lista de Regiones que se muestra se basa en la partición de su cuenta y solo incluye Regiones habilitadas para su cuenta. Para obtener más información acerca de cómo habilitar Region (Region), consulteAdministración Regiones de AWS en laAWSReferencia general de. El ejemplo que se muestra es delAWSPartición global. Si su cuenta se encuentra en la AWS GovCloud (US) , solo se enumeran las regiones de esa partición (gov-us-east-1ygov-us- west-1). Del mismo modo, si su cuenta se encuentra en elAWSPartición de China, sólocn- north-1ycn-northwest-1se muestran. Para obtener una lista completa de las regiones que admiteAWS ParallelCluster, consulteRegiones admitidas (p. 165).

Allowed values for the Región de AWS ID: 1. af-south-1 2. ap-east-1

158 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Configuración de AWS ParallelCluster

3. ap-northeast-1 4. ap-northeast-2 5. ap-south-1 6. ap-southeast-1 7. ap-southeast-2 8. ca-central-1 9. eu-central-1 10. eu-north-1 11. eu-south-1 12. eu-west-1 13. eu-west-2 14. eu-west-3 15. me-south-1 16. sa-east-1 17. us-east-1 18. us-east-2 19. us-west-1 20. us-west-2

Región de AWS ID [ap-northeast-1]:

Elija el programador que desea utilizar con el clúster.

Allowed values for Scheduler: 1. sge 2. 3. slurm 4. awsbatch Scheduler [sge]:

Elija el sistema operativo.

Allowed values for Operating System: 1. alinux 2. alinux2 3. centos7 4. centos8 5. ubuntu1804 6. ubuntu2004 Operating System [alinux]:

Note

Compatibilidad conalinux2se ha añadido enAWS ParallelClusterversión 2.6.0.

Se especifica el tamaño mínimo y máximo del clúster de nodos de computación. Esto se mide en número de instancias.

Minimum cluster size (instances) [0]: Maximum cluster size (instances) [10]:

Se especifican los tipos de instancia de los nodos principal y de computación. Para los tipos de instancias, los límites de instancias de su cuenta son lo suficientemente grandes como para satisfacer sus requisitos. Para obtener más información, consulteLímites de instancia a peticiónen laGuía del usuario de Amazon EC2 para instancias de Linux.

Master instance type [t2.micro]: Compute instance type [t2.micro]:

159 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Configuración de AWS ParallelCluster

El key pair se selecciona entre los pares de claves registrados con Amazon EC2 en la región seleccionada.

Allowed values for EC2 Key Pair Name: 1. prod-uswest1-key 2. test-uswest1-key EC2 Key Pair Name [prod-uswest1-key]:

Una vez completados los pasos anteriores, decida si desea utilizar una VPC existente o dejar que AWS ParallelCluster cree una VPC por usted. Si no tiene una VPC configurada correctamente, AWS ParallelCluster puede crear una nueva. Utiliza tanto los nodos principal como de computación de la misma subred pública, o solo el nodo principal en una subred pública con todos los nodos en una subred privada. Es posible alcanzar el límite de número de VPC en una región. El límite predeterminado es de cinco VPC para cada región. Para obtener más información acerca de este límite y cómo solicitar un incremento, consulteVPC y subredesen laAmazon VPC User Guide.

Si le permiteAWS ParallelClustercree una VPC, debe decidir si todos los nodos deben estar en una subred pública. Important

VPC creadas porAWS ParallelClusterno habilitan los registros de flujo de VPC de forma predeterminada. Los registros de flujo de VPC permiten capturar información acerca del tráfico IP entrante y saliente de las interfaces de red de las VPC. Para obtener más información, consulte Logs de flujo de VPC en la Guía del usuario de Amazon VPC.

Automate VPC creation? (y/n) [n]: y Allowed values for Network Configuration: 1. Master in a public subnet and compute fleet in a private subnet 2. Master and compute fleet in the same public subnet Network Configuration [Master in a public subnet and compute fleet in a private subnet]: 1 Beginning VPC creation. Please do not leave the terminal until the creation is finalized

Si no crea una VPC nueva, debe seleccionar una existente.

Automate VPC creation? (y/n) [n]: n Allowed values for VPC ID: # id name number_of_subnets ------1 vpc-0b4ad9c4678d3c7ad ParallelClusterVPC-20200118031893 2 2 vpc-0e87c753286f37eef ParallelClusterVPC-20191118233938 5 VPC ID [vpc-0b4ad9c4678d3c7ad]: 1

Una vez seleccionada la VPC, debe decidir si desea utilizar subredes existentes o crear nuevas.

Automate Subnet creation? (y/n) [y]: y

Creating CloudFormation stack... Do not leave the terminal until the process has finished

AWS Batch

De la lista de Región de AWS , elija la región de en la que desea que se ejecute el clúster.

Allowed values for

160 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Configuración de AWS ParallelCluster

Región de AWS ID: 1. ap-northeast-1 2. ap-northeast-2 3. ap-south-1 4. ap-southeast-1 5. ap-southeast-2 6. ca-central-1 7. eu-central-1 8. eu-north-1 9. eu-west-1 10. eu-west-2 11. eu-west-3 12. sa-east-1 13. us-east-1 14. us-east-2 15. us-west-1 16. us-west-2

Región de AWS ID [ap-northeast-1]:

Elija el programador que desea utilizar con el clúster.

Allowed values for Scheduler: 1. sge 2. torque 3. slurm 4. awsbatch Scheduler [sge]:

Cuando awsbatch se selecciona como programador, alinux2 se utiliza como sistema operativo.

Se especifica el tamaño mínimo y máximo del clúster de nodos de computación. Esto se mide en número de vCPU.

Minimum cluster size (vcpus) [0]: Maximum cluster size (vcpus) [10]:

Se especifica el tipo de instancia del nodo principal. Cuando se utiliza el programador awsbatch, los nodos de computación utilizan el tipo de instancia optimal.

Master instance type [t2.micro]:

El key pair de Amazon EC2 se selecciona entre los pares de claves registrados con Amazon EC2 en la región seleccionada.

Allowed values for EC2 Key Pair Name: 1. prod-uswest1-key 2. test-uswest1-key EC2 Key Pair Name [prod-uswest1-key]:

Decida si desea utilizar VPC existentes o dejar que AWS ParallelCluster las cree por usted. Si no tiene una VPC configurada correctamente, AWS ParallelCluster puede crear una nueva. Utiliza tanto los nodos principal como de computación de la misma subred pública, o solo el nodo principal en una subred pública con todos los nodos en una subred privada. Es posible alcanzar el límite de número de VPC en una región. El número predeterminado de VPC es cinco. Para obtener más información acerca de este límite y cómo solicitar un incremento, consulteVPC y subredesen laAmazon VPC User Guide.

161 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Configuración de AWS ParallelCluster

Important

VPC creadas porAWS ParallelClusterno habilitan los registros de flujo de VPC de forma predeterminada. Los registros de flujo de VPC permiten capturar información acerca del tráfico IP entrante y saliente de las interfaces de red de las VPC. Para obtener más información, consulte Logs de flujo de VPC en la Guía del usuario de Amazon VPC.

Si le permiteAWS ParallelClusterPara crear una VPC, decida si todos los nodos deben estar en una subred pública.

Automate VPC creation? (y/n) [n]: y Allowed values for Network Configuration: 1. Master in a public subnet and compute fleet in a private subnet 2. Master and compute fleet in the same public subnet Network Configuration [Master in a public subnet and compute fleet in a private subnet]: 1 Beginning VPC creation. Please do not leave the terminal until the creation is finalized

Si no crea una VPC nueva, debe seleccionar una VPC existente

Automate VPC creation? (y/n) [n]: n Allowed values for VPC ID: # id name number_of_subnets ------1 vpc-0b4ad9c4678d3c7ad ParallelClusterVPC-20200118031893 2 2 vpc-0e87c753286f37eef ParallelClusterVPC-20191118233938 5 VPC ID [vpc-0b4ad9c4678d3c7ad]: 1

Una vez seleccionada la VPC, decida si desea utilizar subredes existentes o crear nuevas.

Automate Subnet creation? (y/n) [y]: y

Creating CloudFormation stack... Do not leave the terminal until the process has finished

Cuando haya completado los pasos anteriores, un clúster sencillo se lanzará en una VPC. La VPC utiliza una subred existente que admite direcciones IP públicas. La tabla de ruteo de la subred es0.0.0.0/0 => igw-xxxxxx. Tenga en cuenta las condiciones siguientes:

• La VPC debe tener DNS Resolution = yes y DNS Hostnames = yes. • La VPC también deben tener las opciones de DHCP con el domain-name correcto para la región. El conjunto de opciones de DHCP predeterminado ya especifica el AmazonProvidedDNS necesario. Si especifica más de un servidor de nombres de dominio, consulteConjuntos de opciones de DHCPen laAmazon VPC User Guide. Cuando utilice subredes privadas, utilice una gateway NAT o un proxy interno para habilitar el acceso web a los nodos de computación. Para obtener más información, consulte Configuraciones de red (p. 166).

Cuando todas las opciones tengan valores válidos, podrá lanzar el clúster ejecutando el comando create.

$ pcluster create mycluster

Una vez que el clúster llegue al estado "CREATE_COMPLETE", podrá conectarse a él utilizando su configuración del cliente de SSH normal. Para obtener más información acerca de cómo conectarse a

162 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Prácticas recomendadas instancias Amazon EC2, consulte laGuía del usuario de EC2en laGuía del usuario de Amazon EC2 para instancias de Linux.

Sipcluster configure (p. 223)creó una nueva VPC, puede eliminar esa VPC eliminando laAWS CloudFormationpila que creó. El nombre comenzará por»parallelclusternetworking-«y contienen el tiempo de creación en un formato «AAAAMMDDHHMMSS». Puede enumerar las pilas utilizando la herramientapilas de list-stackscomando.

$ aws --region us-east-2 cloudformation list-stacks \ --stack-status-filter "CREATE_COMPLETE" \ --query "StackSummaries[].StackName" | \ grep -e "parallelclusternetworking-" "parallelclusternetworking-pubpriv-20191029205804"

La pila se puede eliminar usando la herramientadelete-stackcomando.

$ aws --region us-west-2 cloudformation delete-stack \ --stack-name parallelclusternetworking-pubpriv-20191029205804

Prácticas recomendadas Prácticas recomendadas: selección de tipo de instancia maestra

Aunque el nodo maestro no ejecuta ningún trabajo, sus funciones y su tamaño son cruciales para el rendimiento general del clúster.

Al elegir el tipo de instancia que se va a utilizar para el nodo maestro, desea evaluar los siguientes elementos:

• Tamaño del clúster de:el nodo maestro orquesta la lógica de escalado del clúster y es responsable de adjuntar nuevos nodos al programador. Si necesita escalar hacia arriba y hacia abajo el clúster de una cantidad considerable de nodos, entonces desea darle al nodo maestro una capacidad de cálculo adicional. • Sistemas de archivos compartidos:al utilizar sistemas de archivos compartidos para compartir artefactos entre los nodos de cálculo y el nodo maestro, tenga en cuenta que el maestro es el nodo que expone el servidor NFS. Por este motivo, desea elegir un tipo de instancia con suficiente ancho de banda de red y suficiente ancho de banda dedicado de Amazon EBS para gestionar sus flujos de trabajo.

Prácticas recomendadas: rendimiento de la red

Hay tres consejos que abarcan toda la gama de posibilidades para mejorar la comunicación en red.

• Grupo de ubicación:Un grupo de ubicación en clúster es una agrupación lógica de instancias en una misma zona de disponibilidad. Para obtener más información acerca de los grupos de ubicación, consulteGrupos de ubicaciónen laGuía del usuario de Amazon EC2 para instancias de Linux. Puede configurar el clúster para que utilice su propio grupo de ubicación conplacement_group = your-placement-group-nameo dejeAWS ParallelClusterPara crear un grupo de ubicación con la"compute"Estrategia conplacement_group = DYNAMIC. Para obtener más información, consulteplacement_group (p. 283)para el modo de cola múltiple yplacement_group (p. 253)para el modo de cola única. • Redes mejoradas:considere elegir un tipo de instancia que admita la creación de redes mejoradas. Para obtener más información, consulteRedes mejoradas en Linuxen laGuía del usuario de Amazon EC2 para instancias de Linux. • Ancho de banda de instancia:el ancho de banda se escala con el tamaño de la instancia, considere elegir el tipo de instancia que mejor se adapte a sus necesidades, consulteInstancias optimizadas

163 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Transferir desde CfnCluster hasta AWS ParallelCluster

para Amazon EBSyTipos de volúmenes de Amazon EBSen laGuía del usuario de Amazon EC2 para instancias de Linux.

Transferir desde CfnCluster hasta AWS ParallelCluster

AWS ParallelCluster es una versión mejorada de CfnCluster.

Si utiliza actualmente CfnCluster, le recomendamos que utiliceAWS ParallelClusteren su lugar y crear nuevos clústeres con él. Aunque puede continuar usando CfnCluster, ya no se desarrolla y no se añadirá ninguna característica o funcionalidad nueva.

Las principales diferencias entre CfnCluster y AWS ParallelCluster se describen en las siguientes secciones.

La CLI de AWS ParallelCluster administra otro conjunto de clústeres

Los clústeres creados con elcfnclusterLa CLI no se puede administrar con elpclusterCLI Los siguientes comandos no funcionan en los clústeres que CfnCluster crea: pcluster list pcluster update cluster_name pcluster start cluster_name pcluster status cluster_name

Para administrar los clústeres que ha creado con CfnCluster, debe usar la CLI de cfncluster Si necesita un paquete de CfnCluster para administrar clústeres antiguos, le recomendamos que lo instale y lo utilice desde unaEntorno virtual de Python.

AWS ParallelClustery CfnCluster usan políticas personalizadas de IAM diferentes

Las políticas de IAM personalizadas que antes se utilizaban para la creación de clústeres de CfnCluster no se pueden utilizar conAWS ParallelCluster. Si requiere políticas personalizadas para AWS ParallelCluster, debe crear nuevas. Consulte laAWS ParallelClusterguía.

AWS ParallelCluster y CfnCluster usan archivos de configuración diferentes

El archivo de configuración de AWS ParallelCluster reside en la carpeta ~/.parallelcluster. El archivo de configuración de CfnCluster reside en la carpeta ~/.cfncluster. Si desea utilizar un archivo de configuración de CfnCluster ya existente conAWS ParallelCluster, debe cumplir las siguientes acciones:

1. Mueva el archivo de configuración de ~/.cfncluster/config a ~/.parallelcluster/config. 2. Si usa el parámetro de configuración extra_json (p. 249), cámbielo tal como se muestra.

Configuración de CfnCluster: extra_json = { "cfncluster" : { } }

Configuración de AWS ParallelCluster: extra_json = { "cluster" : { } }

En AWS ParallelCluster, Ganglia está deshabilitado de forma predeterminada

En AWS ParallelCluster, Ganglia está deshabilitado de forma predeterminada. Para habilitar los ganglios, siga estos pasos:

164 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Regiones admitidas

1. Establezca el parámetro extra_json (p. 249) tal como se muestra:

extra_json = { "cluster" : { "ganglia_enabled" : "yes" } }

2. Cambie el grupo de seguridad principal para permitir las conexiones al puerto 80.

El grupo de seguridad parallelcluster--MasterSecurityGroup- debe modificarse añadiendo una nueva regla de grupo de seguridad para permitir la conexión de entrada al puerto 80 desde su IP pública. Para obtener más información, consulteAgregar reglas a un grupo de seguridaden laGuía del usuario de Amazon EC2 para instancias de Linux.

Regiones admitidas

AWS ParallelClusterversión 2.x está disponible en el siguiente Regiones de AWS :

Nombre de la región Región

US East (Ohio) us-east-2

US East (N. Virginia) us-east-1

US West (N. California) us-west-1

US West (Oregon) us-west-2

Africa (Cape Town) af-south-1

Asia Pacific (Hong Kong) ap-east-1

Asia Pacific (Mumbai) ap-south-1

Asia Pacific (Seoul) ap-northeast-2

Asia Pacific (Singapore) ap-southeast-1

Asia Pacific (Sydney) ap-southeast-2

Asia Pacific (Tokyo) ap-northeast-1

Canada (Central) ca-central-1

China (Beijing) cn-north-1

China (Ningxia) cn-northwest-1

Europe (Frankfurt) eu-central-1

Europe (Ireland) eu-west-1

Europe (London) eu-west-2

Europe (Milan) eu-south-1

Europe (Paris) eu-west-3

Europe (Stockholm) eu-north-1

Medio Oriente (Baréin) me-south-1

South America (São Paulo) sa-east-1

165 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Uso AWS ParallelCluster

Nombre de la región Región

AWS GovCloud (EE. UU. Este) us-gov-east-1

AWS GovCloud (EE. UU. Oeste) us-gov-west-1

Uso AWS ParallelCluster

Temas • Configuraciones de red (p. 166) • Acciones de arranque personalizadas (p. 170) • Trabajo con Amazon S3 (p. 173) • Uso de Instancias de spot (p. 173) • AWS Identity and Access Managementroles enAWS ParallelCluster (p. 175) • Programadores admitidos por AWS ParallelCluster (p. 199) • Modo de cola múltiple (p. 213) • Panel de Amazon CloudWatch (p. 214) • Integración con Amazon CloudWatch Logs (p. 214) • Elastic Fabric Adapter (p. 215) • Soluciones Intel Select (p. 216) • Habilitar Intel MPI (p. 217) • Especificación de plataforma Intel HPC (p. 218) • Librerías de rendimiento de (p. 218) • Connect al nodo director a través de NICE DCV (p. 219) • Uso pcluster update (p. 220)

Configuraciones de red

AWS ParallelClusterutiliza Amazon Virtual Private Cloud (VPC) para crear redes. VPC proporciona una plataforma de red flexible y configurable en la que se implementan los clústeres.

La VPC debe tener DNS Resolution = yes, DNS Hostnames = yes y opciones de DHCP con el nombre de dominio correcto para la región. El conjunto de opciones de DHCP predeterminado ya especifica los AmazonProvidedDNS necesarios. Si especifica más de un servidor de nombres de dominio, consulteConjuntos de opciones de DHCPen laAmazon VPC User Guide.

AWS ParallelCluster admite las siguientes configuraciones de carácter general:

• Una sola subred para los nodos de cabeza y de computación. • Dos subredes: el nodo principal en una subred pública y los nodos de computación en una subred privada. Las subredes pueden ser nuevas o existentes.

Todas estas configuraciones pueden funcionar con o sin direcciones IP públicas.AWS ParallelClusterTambién puede implementarse para utilizar un proxy HTTP para todos losAWSsolicitudes. La combinaciones de estas configuraciones se traducen en muchos casos de implementación. Por ejemplo, puede configurar una sola subred pública conAcceder aA través de Internet. O bien, puede configurar una red completamente privada usandoAWS Direct Connecty proxy HTTP para todo el tráfico.

166 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Configuraciones de red

Consulte los siguientes diagramas de arquitectura para ver ilustraciones de algunos de estos casos: AWS ParallelCluster en una subred pública única

La configuración de esta arquitectura requiere los siguientes valores de configuración:

[vpc public] vpc_id = vpc-xxxxxx master_subnet_id = subnet- use_public_ips = true

El valor de use_public_ips (p. 290) no se puede establecer en false, porque la gateway de Internet requiere que todas las instancias tengan una dirección IP única globalmente. Para obtener más información, consulteHabilitar el acceso a InternetinAmazon VPC User Guide. AWS ParallelCluster con dos subredes

La configuración para crear una nueva subred privada para instancias de computación requiere los siguientes valores de configuración:

Tenga en cuenta que todos los valores solo se proporcionan como ejemplos.

[vpc public-private-new] vpc_id = vpc-xxxxxx master_subnet_id = subnet- compute_subnet_cidr = 10.0.1.0/24

167 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Configuraciones de red

La configuración para utilizar una red privada existente requiere los siguientes valores de configuración:

[vpc public-private-existing] vpc_id = vpc-xxxxxx master_subnet_id = subnet- compute_subnet_id = subnet-

Ambas configuraciones requieren ungateway NATO un proxy interno para habilitar el acceso web a instancias de computación. AWS ParallelCluster en una única subred privada conectada mediante AWS Direct Connect

La configuración de esta arquitectura requiere los siguientes valores de configuración:

[cluster private-proxy] proxy_server = http://proxy.corp.net:8080

[vpc private-proxy] vpc_id = vpc-xxxxxx master_subnet_id = subnet- use_public_ips = false

Cuando use_public_ips se establece en false, la VPC debe configurarse correctamente para utilizar el proxy para todo el tráfico. El acceso a la web es necesario para los nodos de computación y de la cabeza.

168 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Configuraciones de red AWS ParallelClusterporawsbatchprogramador

Al usar awsbatch como tipo de programador, AWS ParallelCluster crea un entorno informático administrado de AWS Batch. LaAWS Batchse encarga de la administración de instancias de contenedor de Amazon Elastic Container Service (Amazon ECS), que se lanzan en lacompute_subnet. ParaAWS BatchPara que funcione correctamente, las instancias de contenedor de Amazon ECS necesitan acceso de red externo para comunicarse con el punto de enlace de servicio de Amazon ECS. Esto se traduce en los siguientes casos:

• Lacompute_subnetutiliza una gateway NAT para obtener acceso a Internet. (Recomendamos este enfoque). • Las instancias que se lanzan en la compute_subnet tienen direcciones IP públicas y pueden llegar a Internet a través de una gateway de Internet.

Además, si está interesado en trabajos paralelos de múltiples nodos (desde laAWS Batchdocumentos):

AWS BatchLos trabajos paralelos de varios nodos utilizan Amazon ECSawsvpc, que otorga a los contenedores de trabajos paralelos de varios nodos las mismas propiedades de red que las instancias de Amazon EC2. Cada contenedor de trabajos paralelos de varios nodos obtiene su propia interfaz de red elástica, una dirección IP privada principal y un nombre de host DNS interno. La interfaz de red se crea en la misma subred de Amazon VPC como su recurso informático de host. Los grupos de seguridad que se hayan aplicado a los recursos informáticos se aplicarán también a ella.

Cuando se utiliza Amazon ECS Task Networking, elawsvpcEl modo de red no proporciona interfaces de red elástica con direcciones IP públicas para tareas que utilizan el tipo de lanzamiento de Amazon EC2. Para obtener acceso a Internet, las tareas que utilizan el tipo de lanzamiento de Amazon EC2 se deben lanzar en una subred privada configurada para utilizar una gateway NAT.

Debe configurar una gateway NAT para habilitar el clúster para que ejecute trabajos paralelos de varios nodos.

169 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Acciones de arranque personalizadas

Para obtener más información, consulte los siguientes temas:

• AWS Batchentornos informáticos administrados • AWS BatchTrabajo paralelo de varios nodos • Creación de redes de tareas de Amazon ECS con laawsvpcModo de red

Acciones de arranque personalizadas

AWS ParallelClusterpuede ejecutar código arbitrario ya sea antes (preinstalación) o después (posinstalación) de la acción de arranque principal cuando se crea el clúster. En la mayoría de los casos, este código se almacena en Amazon Simple Storage Service (Amazon S3) y se accede a él a través de una conexión HTTPS. El código se ejecuta como raíz (root) y puede estar en cualquier lenguaje de script compatible con el sistema operativo del clúster. A menudo, el código está enBashorPython.

Se llama a las acciones previas a la instalación antes de que se inicie cualquier acción de arranque de implementación de clúster, como la configuración de NAT, Amazon Elastic Block Store (Amazon EBS) o el programador. Algunas acciones de preinstalación incluyen modificar el almacenamiento de información, agregar usuarios adicionales y agregar paquetes.

Las acciones posteriores a la instalación se llaman después de completar los procesos de arranque del clúster. Las acciones posteriores a la instalación sirven para las últimas acciones que se producen antes de que se considere que una instancia está completamente configurada y completa. Algunas acciones posteriores a la instalación incluyen cambiar la configuración del programador, modificar el almacenamiento y modificar paquetes.

170 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Acciones de arranque personalizadas

Puede transferir argumentos a los scripts especificándolos durante la configuración. Para esto, los pasa con comillas dobles a las acciones de preinstalación o posinstalación.

Si una acción de preinstalación o posinstalación produce un error, el arranque de instancia también falla. El éxito se indica con un código de salida de cero (0). Cualquier otro código de salida indica que el arranque de la instancia ha fallado.

Puede diferenciar entre el cabezal en ejecución y los nodos informáticos. Origen las/etc/ parallelcluster/cfnconfigy evalúe el archivocfn_node_typevariable de entorno que tienen un valor de»MasterServer" y "ComputeFleet«para los nodos de cabeza y de cálculo, respectivamente.

#!/bin/bash

. "/etc/parallelcluster/cfnconfig" case "${cfn_node_type}" in MasterServer) echo "I am the head node" >> /tmp/head.txt ;; ComputeFleet) echo "I am a compute node" >> /tmp/compute.txt ;; *) ;; esac

Configuration

Se utilizan las siguientes opciones de configuración para definir acciones de preinstalación o posinstalación y argumentos.

# URL to a preinstall script. This is run before any of the boot_as_* scripts are run # (no default) pre_install = https://.s3.amazonaws.com/my-pre-install-script.sh # Arguments to be passed to preinstall script # (no default) pre_install_args = argument-1 argument-2 # URL to a postinstall script. This is run after any of the boot_as_* scripts are run # (no default) post_install = https://.s3.amazonaws.com/my-post-install-script.sh # Arguments to be passed to postinstall script # (no default) post_install_args = argument-3 argument-4

Arguments

Los dos primeros argumentos, $0 y $1, se reservan para el nombre del script y la dirección url.

$0 => the script name $1 => s3 url $n => args set by pre/post_install_args

Example

Los siguientes pasos crean un script de posinstalación sencillo que instala los paquetes R en un clúster.

1. Cree un script.

171 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Acciones de arranque personalizadas

#!/bin/bash

echo "post-install script has $# arguments" for arg in "$@" do echo "arg: ${arg}" done

yum -y install "${@:2}"

2. Cargue el script con los permisos correctos en Amazon S3. Si los permisos de lectura pública no son apropiados para usted, uses3_read_resource (p. 256)ors3_read_write_resource (p. 256)para conceder acceso. Para obtener más información, consulte Trabajo con Amazon S3 (p. 173).

$ aws s3 cp --acl public-read /path/to/myscript.sh s3:///myscript.sh

Important

Si el script se editó en Windows, los finales de línea se deben cambiar de CRLF a LF antes de cargar el script en Amazon S3. 3. Actualice la configuración de AWS ParallelCluster para incluir la nueva acción de posinstalación.

[cluster default] ... post_install = https://.s3.amazonaws.com/myscript.sh post_install_args = 'R curl wget'

Si el bucket no tiene permiso de lectura pública, utilices3como protocolo de URL.

[cluster default] ... post_install = s3:///myscript.sh post_install_args = 'R curl wget'

4. Lance el clúster.

$ pcluster create mycluster

5. Verifique el resultado.

$ less /var/log/cfn-init.log 2019-04-11 10:43:54,588 [DEBUG] Command runpostinstall output: post-install script has 4 arguments arg: s3:///test.sh arg: R arg: curl arg: wget Loaded plugins: dkms-build-requires, priorities, update-motd, upgrade-helper Package R-3.4.1-1.52.amzn1.x86_64 already installed and latest version Package curl-7.61.1-7.91.amzn1.x86_64 already installed and latest version Package wget-1.18-4.29.amzn1.x86_64 already installed and latest version Nothing to do

172 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Trabajo con Amazon S3 Trabajo con Amazon S3

Puede acceder a Amazon S3 desdeAWS ParallelCluster. Controla el acceso a Amazon S3 a través des3_read_resource (p. 256)ys3_read_write_resource (p. 256)parámetros en elAWS ParallelClusterConfiguración de .

# Specify Amazon S3 resource which AWS ParallelCluster nodes will be granted read-only access # (no default) s3_read_resource = arn:aws:s3:::my_corporate_bucket* # Specify Amazon S3 resource which AWS ParallelCluster nodes will be granted read-write access # (no default) s3_read_write_resource = arn:aws:s3:::my_corporate_bucket/*

Ambos parámetros aceptan*o un ARN válido de Amazon S3. Para obtener más información acerca de cómo utilizar ARN de Amazon S3, consulteFormato ARN de Amazon S3en laAWSReferencia general de Examples

En el siguiente ejemplo, se le ofrece acceso de lectura a cualquier objeto del bucket de Amazon S3mi_corporate_bucket. s3_read_resource = arn:aws:s3:::my_corporate_bucket/*

En el siguiente ejemplo, se le ofrece acceso de lectura al bucket, pero no se le permite leer elementos del bucket. s3_read_resource = arn:aws:s3:::my_corporate_bucket

En este último ejemplo, se le ofrece acceso de lectura al bucket y a los elementos almacenados en el bucket. s3_read_resource = arn:aws:s3:::my_corporate_bucket*

Uso de Instancias de spot

AWS ParallelCluster utiliza instancias de spot si la configuración del clúster ha definido cluster_type (p. 243) = spot. Las instancias puntuales son más rentables que las instancias bajo demanda, pero pueden verse interrumpidas. El efecto de la interrupción varía según el programador específico utilizado. Podría ayudar a aprovecharAvisos de interrupción de instancias de spot.En la que se incluye una advertencia dos minutos antes de que Amazon EC2 tenga que detener o terminar su instancia de spot. Para obtener más información, consulteInterrupciones de instancias de spotinGuía del usuario de Amazon EC2 para instancias de Linux. En las secciones siguientes se describen tres escenarios en los que las instancias de spot pueden interrumpirse. Note

El uso de instancias de spot requiere que laAWSpotexiste un rol vinculado al servicio de en su cuenta. Para crear este rol en su cuenta mediante laAWS CLI, ejecute el siguiente comando:

aws iam create-service-linked-role --aws-service-name spot.amazonaws.com

173 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Uso de Instancias de spot

Para obtener más información, consulteRol vinculado al servicio para solicitudes de instancias de spoten laGuía del usuario de Amazon EC2 para instancias de Linux. Escenario 1: Se interrumpe una instancia de spot sin trabajos en ejecución

Cuando se produce esta interrupción, AWS ParallelCluster intenta reemplazar la instancia si la cola del programador tiene trabajos pendientes que requieren instancias adicionales o si el número de instancias activas es menor que el valor de initial_queue_size (p. 250). SiAWS ParallelClusterNo puede aprovisionar nuevas instancias, se repite periódicamente una solicitud de nuevas instancias. Escenario 2: Se interrumpe una instancia spot que ejecuta trabajos de un solo nodo

El comportamiento de esta interrupción depende del programador que se esté utilizando.

Slurm

El trabajo falla con un código de estado deNODE_FAIL, y el trabajo se vuelve a poner en cola (a menos que--no-requeuese especifica cuando se envía el trabajo). Si el nodo es un nodo estático, se reemplaza. Si el nodo es un nodo dinámico, el nodo se termina y se restablece. Para obtener más información acerca desbatch, incluido el--no-requeueparámetro, consultesbatchen laDocumentación de Slurm. Note

Este comportamiento ha cambiado enAWS ParallelClusterversión 2.9.0. Las versiones anteriores terminaron el trabajo con un código de estado deNODE_FAILy el nodo se eliminó de la cola del programador. SGE

Se termina el trabajo. Si el trabajo ha habilitado el indicador "rerun" (medianteqsub -r yes o qalter -r yes) o la cola tiene el valor de rerun establecido en TRUE, el trabajo se reprograma. La instancia de computación se elimina de la cola del programador. Este comportamiento proviene de estos parámetros de configuración de SGE: • reschedule_unknown 00:00:30 • ENABLE_FORCED_QDEL_IF_UNKNOWN • ENABLE_RESCHEDULE_KILL=1 Torque

El trabajo se elimina del sistema y el nodo se elimina del programador. El trabajo no se vuelve a ejecutar. Si se están ejecutando varios trabajos en la instancia cuando se interrumpe, se puede agotar el tiempo de espera de Torque durante la eliminación del nodo. Es posible que aparezca un error en elsqswatcher (p. 295)archivo de registro. Esto no afecta a la lógica de escalado, y los posteriores reintentos realizan una limpieza adecuada.

Escenario 3: Se interrumpe una instancia spot que ejecuta trabajos de varios nodos

El comportamiento de esta interrupción depende del programador que se esté utilizando.

Slurm

El trabajo falla con un código de estado deNODE_FAIL, y el trabajo se vuelve a poner en cola (a menos que--no-requeuese especificó cuando se envió el trabajo). Si el nodo es un nodo estático,

174 AWS ParallelCluster Guía del usuario de AWS ParallelCluster AWS Identity and Access Managementroles enAWS ParallelCluster se reemplaza. Si el nodo es un nodo dinámico, el nodo se termina y se restablece. Otros nodos que estaban ejecutando los trabajos terminados podrían asignarse a otros trabajos pendientes, o escalarse una vez configurado elscaledown_idletime (p. 288)el tiempo ha pasado. Note

Este comportamiento ha cambiado enAWS ParallelClusterversión 2.9.0. Las versiones anteriores terminaron el trabajo con un código de estado deNODE_FAILy el nodo se eliminó de la cola del programador. Otros nodos que estaban ejecutando los trabajos terminados podrían escalarse después de que se configurara lascaledown_idletime (p. 288)el tiempo ha pasado. SGE

El trabajo no se termina y continúa ejecutándose en los nodos restantes. El nodo de computación se elimina de la cola del programador, pero aparecerá en la lista de hosts como un nodo huérfano y no disponible.

El usuario debe eliminar el trabajo cuando esto ocurra (qdel ). El nodo aún se muestra en la lista de hosts (qhost), aunque esto no afectaAWS ParallelCluster. Para quitar el host de la lista, ejecute el comando siguiente después de reemplazar la instancia.

sudo -- bash -c 'source /etc/profile.d/sge.sh; qconf -dattr hostgroup hostlist @allhosts; qconf -de '

Torque

El trabajo se elimina del sistema y el nodo se elimina del programador. El trabajo no se vuelve a ejecutar. Si se están ejecutando varios trabajos en la instancia cuando se interrumpe, se puede agotar el tiempo de espera de Torque durante la eliminación del nodo. Es posible que aparezca un error en elsqswatcher (p. 295)archivo de registro. Esto no afecta a la lógica de escalado, y los posteriores reintentos realizan una limpieza adecuada.

Para obtener más información acerca de las instancias de spot, consulte Instancias de spot en la Guía del usuario de Amazon EC2 para instancias Linux. AWS Identity and Access Managementroles enAWS ParallelCluster

AWS ParallelClusterutilizaAWS Identity and Access ManagementRoles de Amazon EC2 (IAM) para permitir a las instancias acceder aAWSpara implementar y utilizar un clúster. De forma predeterminada, la función de IAM para Amazon EC2 se crea cuando se crea el clúster. Esto significa que el usuario que crea el clúster debe tener el nivel de permisos adecuado, tal como se describe en las siguientes secciones.

AWS ParallelClusterutiliza múltiplesAWSpara implementar y utilizar un clúster. Vea la lista completa en elAWSServicios que se utilizan enAWS ParallelCluster (p. 298)sección. Configuración predeterminada para la creación de clústeres

Al usar la configuración predeterminada para la creación del clúster, el clúster crea un rol de IAM para Amazon EC2. El usuario que crea el clúster debe tener el nivel de permisos adecuado para crear todos los recursos necesarios para lanzar el clúster. Esto incluye una función de IAM para Amazon EC2. Normalmente, el usuario de IAM debe tener los permisos de unAdministratorAccessLa política administrada de. Para obtener información acerca de las políticas administradas por, consulteAWSPolíticas administradas deen laIAM User Guide.

175 AWS ParallelCluster Guía del usuario de AWS ParallelCluster AWS Identity and Access Managementroles enAWS ParallelCluster Uso de un rol de IAM ya existente para Amazon EC2

Puede utilizar un rol de IAM ya existente para Amazon EC2 al crear un clúster, pero primero debe definir la política y el rol de IAM antes de intentar lanzar el clúster. Normalmente, elige un rol de IAM ya existente para Amazon EC2 para reducir los permisos concedidos a los usuarios a medida que lanzan clústeres. En el siguiente ejemplo se muestra una política de IAM y un rol Amazon EC2 para como paraAWS ParallelCluster. Debe crear ambas como políticas individuales en IAM y luego asociarlas a los recursos adecuados. En las directivas, reemplace,y cadenas similares con los valores adecuados. AWS ParallelClusterejemplo de instancias y directivas de usuario

En las políticas de ejemplo siguientes se incluyen nombres de recursos de Amazon (ARN) para los recursos. Si trabaja en el AWS GovCloud (US) orAWSChina particiones, los ARN deben ser cambiados. Específicamente, deben cambiarse de «arn:aws» a «arn:aws-us-gov» para el AWS GovCloud (US) o «arn:aws-cn» para elAWSPartición de China. Para obtener más información, consulteNombres de recursos de Amazon (ARN) en AWS GovCloud (US) Regiones deen la AWS GovCloud (US) Guía del usuario deyARN paraAWSServicios en ChinainIntroducción aAWSServicios en China.

Temas • ParallelClusterInstancePolicyconSGE,Slurm, o bienTorque (p. 176) • ParallelClusterInstancePolicy con awsbatch (p. 179) • ParallelClusterUserPolicy con Slurm (p. 181) • ParallelClusterUserPolicyconSGEorTorque (p. 186) • ParallelClusterUserPolicy con awsbatch (p. 191) • ParallelClusterLambdaPolicyconSGE,Slurm, o bienTorque (p. 197) • ParallelClusterLambdaPolicy con awsbatch (p. 198) • ParallelClusterUserPolicypara usuarios (p. 199)

ParallelClusterInstancePolicyconSGE,Slurm, o bienTorque

En el siguiente ejemplo se establece la propiedadParallelClusterInstancePolicyconSGE,Slurm, o bienTorquecomo el programador.

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "ec2:DescribeVolumes", "ec2:AttachVolume", "ec2:DescribeInstanceAttribute", "ec2:DescribeInstanceStatus", "ec2:DescribeInstanceTypes", "ec2:DescribeInstances", "ec2:DescribeRegions", "ec2:TerminateInstances", "ec2:DescribeLaunchTemplates", "ec2:CreateTags" ], "Resource": [ "*" ], "Effect": "Allow", "Sid": "EC2"

176 AWS ParallelCluster Guía del usuario de AWS ParallelCluster AWS Identity and Access Managementroles enAWS ParallelCluster }, { "Action": "ec2:RunInstances", "Resource": [ "arn:aws:ec2:::subnet/", "arn:aws:ec2:::network-interface/*", "arn:aws:ec2:::instance/*", "arn:aws:ec2:::volume/*", "arn:aws:ec2:::image/", "arn:aws:ec2:::key-pair/", "arn:aws:ec2:::security-group/*", "arn:aws:ec2:::launch-template/*", "arn:aws:ec2:::placement-group/*" ], "Effect": "Allow", "Sid": "EC2RunInstances" }, { "Action": [ "dynamodb:ListTables" ], "Resource": [ "*" ], "Effect": "Allow", "Sid": "DynamoDBList" }, { "Action": [ "sqs:SendMessage", "sqs:ReceiveMessage", "sqs:ChangeMessageVisibility", "sqs:DeleteMessage", "sqs:GetQueueUrl" ], "Resource": [ "arn:aws:sqs:::parallelcluster-*" ], "Effect": "Allow", "Sid": "SQSQueue" }, { "Action": [ "autoscaling:DescribeAutoScalingGroups", "autoscaling:TerminateInstanceInAutoScalingGroup", "autoscaling:SetDesiredCapacity", "autoscaling:UpdateAutoScalingGroup", "autoscaling:DescribeTags", "autoscaling:SetInstanceHealth" ], "Resource": [ "*" ], "Effect": "Allow", "Sid": "Autoscaling" }, { "Action": [ "cloudformation:DescribeStacks", "cloudformation:DescribeStackResource", "cloudformation:SignalResource" ], "Resource": [ "arn:aws:cloudformation:::stack/parallelcluster-*/ *" ],

177 AWS ParallelCluster Guía del usuario de AWS ParallelCluster AWS Identity and Access Managementroles enAWS ParallelCluster "Effect": "Allow", "Sid": "CloudFormation" }, { "Action": [ "dynamodb:PutItem", "dynamodb:Query", "dynamodb:GetItem", "dynamodb:BatchWriteItem", "dynamodb:DeleteItem", "dynamodb:DescribeTable" ], "Resource": [ "arn:aws:dynamodb:::table/parallelcluster-*" ], "Effect": "Allow", "Sid": "DynamoDBTable" }, { "Action": [ "s3:GetObject" ], "Resource": [ "arn:aws:s3:::-aws-parallelcluster/*" ], "Effect": "Allow", "Sid": "S3GetObj" }, { "Action": [ "sqs:ListQueues" ], "Resource": [ "*" ], "Effect": "Allow", "Sid": "SQSList" }, { "Action": [ "iam:PassRole" ], "Resource": [ "*" ], "Effect": "Allow", "Sid": "IAMPassRole" }, { "Action": [ "s3:GetObject" ], "Resource": [ "arn:aws:s3:::dcv-license./*" ], "Effect": "Allow", "Sid": "DcvLicense" }, { "Action": [ "s3:GetObject", "s3:GetObjectVersion" ], "Resource": [ "arn:aws:s3:::parallelcluster-*/*" ],

178 AWS ParallelCluster Guía del usuario de AWS ParallelCluster AWS Identity and Access Managementroles enAWS ParallelCluster "Effect": "Allow", "Sid": "GetClusterConfig" }, { "Action": [ "fsx:DescribeFileSystems" ], "Resource": [ "*" ], "Effect": "Allow", "Sid": "FSx" }, { "Action": [ "logs:CreateLogStream", "logs:PutLogEvents" ], "Resource": [ "*" ], "Effect": "Allow", "Sid": "CWLogs" }, { "Action": [ "route53:ChangeResourceRecordSets" ], "Resource": [ "arn:aws:route53:::hostedzone/*" ], "Effect": "Allow", "Sid": "Route53" } ] }

ParallelClusterInstancePolicy con awsbatch

En el siguiente ejemplo se establece la propiedadParallelClusterInstancePolicyconawsbatchcomo el programador. Debe incluir las mismas políticas que se asignan al BatchUserRole que se define en la pila anidada de AWS CloudFormation de AWS Batch. El ARN de BatchUserRole se proporciona como una salida de la pila. En este ejemplo,»» es el valor delcluster_resource_bucket (p. 242)configuración; sicluster_resource_bucket (p. 242)no se especifica entonces»» es «paralelcluster-*». En el siguiente ejemplo se incluye información general acerca de los permisos necesarios:

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "batch:RegisterJobDefinition", "logs:GetLogEvents" ], "Resource": [ "*" ], "Effect": "Allow" }, { "Action": [

179 AWS ParallelCluster Guía del usuario de AWS ParallelCluster AWS Identity and Access Managementroles enAWS ParallelCluster "batch:SubmitJob", "cloudformation:DescribeStacks", "ecs:ListContainerInstances", "ecs:DescribeContainerInstances", "logs:FilterLogEvents", "s3:PutObject", "s3:Get*", "s3:DeleteObject", "iam:PassRole" ], "Resource": [ "arn:aws:batch:::job-definition/:1", "arn:aws:batch:::job-definition/*", "arn:aws:batch:::job-queue/", "arn:aws:cloudformation:::stack//*", "arn:aws:s3:::/batch/*", "arn:aws:iam:::role/", "arn:aws:ecs:::cluster/", "arn:aws:ecs:::container-instance/*", "arn:aws:logs:::log-group:/aws/batch/job:log- stream:*" ], "Effect": "Allow" }, { "Action": [ "s3:List*" ], "Resource": [ "arn:aws:s3:::" ], "Effect": "Allow" }, { "Action": [ "batch:DescribeJobQueues", "batch:TerminateJob", "batch:DescribeJobs", "batch:CancelJob", "batch:DescribeJobDefinitions", "batch:ListJobs", "batch:DescribeComputeEnvironments" ], "Resource": "*", "Effect": "Allow" }, { "Action": [ "ec2:DescribeInstances", "ec2:AttachVolume", "ec2:DescribeVolumes", "ec2:DescribeInstanceAttribute" ], "Resource": "*", "Effect": "Allow", "Sid": "EC2" }, { "Action": [ "cloudformation:DescribeStackResource", "cloudformation:SignalResource" ], "Resource": "*",

180 AWS ParallelCluster Guía del usuario de AWS ParallelCluster AWS Identity and Access Managementroles enAWS ParallelCluster "Effect": "Allow", "Sid": "CloudFormation" }, { "Action": [ "fsx:DescribeFileSystems" ], "Resource": [ "*" ], "Effect": "Allow", "Sid": "FSx" }, { "Action": [ "logs:CreateLogGroup", "logs:CreateLogStream" ], "Resource": [ "*" ], "Effect": "Allow", "Sid": "CWLogs" } ] }

ParallelClusterUserPolicy con Slurm

En el ejemplo siguiente se establece ParallelClusterUserPolicy, utilizando Slurm como programador. En este ejemplo,»» es el valor delcluster_resource_bucket (p. 242)configuración; sicluster_resource_bucket (p. 242)no se especifica entonces»» es «paralelcluster-*». Note

Si utiliza un rol personalizado,ec2_iam_role (p. 247) = Para que incluya el nombre de ese rol, debe cambiar el recurso de IAM de: "Resource": "arn:aws:iam:::role/parallelcluster-*" Para: "Resource": "arn:aws:iam:::role/"

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "ec2:DescribeKeyPairs", "ec2:DescribeRegions", "ec2:DescribeVpcs", "ec2:DescribeSubnets", "ec2:DescribeSecurityGroups", "ec2:DescribePlacementGroups", "ec2:DescribeImages", "ec2:DescribeInstances", "ec2:DescribeInstanceStatus", "ec2:DescribeInstanceTypes", "ec2:DescribeInstanceTypeOfferings", "ec2:DescribeSnapshots", "ec2:DescribeVolumes", "ec2:DescribeVpcAttribute", "ec2:DescribeAddresses", "ec2:CreateTags",

181 AWS ParallelCluster Guía del usuario de AWS ParallelCluster AWS Identity and Access Managementroles enAWS ParallelCluster "ec2:DescribeNetworkInterfaces", "ec2:DescribeAvailabilityZones" ], "Resource": "*", "Effect": "Allow", "Sid": "EC2Describe" }, { "Action": [ "ec2:CreateVpc", "ec2:ModifyVpcAttribute", "ec2:DescribeNatGateways", "ec2:CreateNatGateway", "ec2:DescribeInternetGateways", "ec2:CreateInternetGateway", "ec2:AttachInternetGateway", "ec2:DescribeRouteTables", "ec2:CreateRoute", "ec2:CreateRouteTable", "ec2:AssociateRouteTable", "ec2:CreateSubnet", "ec2:ModifySubnetAttribute" ], "Resource": "*", "Effect": "Allow", "Sid": "NetworkingEasyConfig" }, { "Action": [ "ec2:CreateVolume", "ec2:RunInstances", "ec2:AllocateAddress", "ec2:AssociateAddress", "ec2:AttachNetworkInterface", "ec2:AuthorizeSecurityGroupEgress", "ec2:AuthorizeSecurityGroupIngress", "ec2:CreateNetworkInterface", "ec2:CreateSecurityGroup", "ec2:ModifyVolumeAttribute", "ec2:ModifyNetworkInterfaceAttribute", "ec2:DeleteNetworkInterface", "ec2:DeleteVolume", "ec2:TerminateInstances", "ec2:DeleteSecurityGroup", "ec2:DisassociateAddress", "ec2:RevokeSecurityGroupIngress", "ec2:RevokeSecurityGroupEgress", "ec2:ReleaseAddress", "ec2:CreatePlacementGroup", "ec2:DeletePlacementGroup" ], "Resource": "*", "Effect": "Allow", "Sid": "EC2Modify" }, { "Action": [ "autoscaling:CreateAutoScalingGroup", "ec2:CreateLaunchTemplate", "ec2:CreateLaunchTemplateVersion", "ec2:ModifyLaunchTemplate", "ec2:DeleteLaunchTemplate", "ec2:DescribeLaunchTemplates", "ec2:DescribeLaunchTemplateVersions" ], "Resource": "*",

182 AWS ParallelCluster Guía del usuario de AWS ParallelCluster AWS Identity and Access Managementroles enAWS ParallelCluster "Effect": "Allow", "Sid": "ScalingModify" }, { "Action": [ "dynamodb:DescribeTable", "dynamodb:ListTagsOfResource" ], "Resource": "*", "Effect": "Allow", "Sid": "DynamoDBDescribe" }, { "Action": [ "dynamodb:CreateTable", "dynamodb:DeleteTable", "dynamodb:GetItem", "dynamodb:PutItem", "dynamodb:Query", "dynamodb:TagResource" ], "Resource": "*", "Effect": "Allow", "Sid": "DynamoDBModify" }, { "Action": [ "route53:ChangeResourceRecordSets", "route53:ChangeTagsForResource", "route53:CreateHostedZone", "route53:DeleteHostedZone", "route53:GetChange", "route53:GetHostedZone", "route53:ListResourceRecordSets", "route53:ListQueryLoggingConfigs" ], "Resource": "*", "Effect": "Allow", "Sid": "Route53HostedZones" }, { "Action": [ "cloudformation:DescribeStackEvents", "cloudformation:DescribeStackResource", "cloudformation:DescribeStackResources", "cloudformation:DescribeStacks", "cloudformation:ListStacks", "cloudformation:GetTemplate" ], "Resource": "*", "Effect": "Allow", "Sid": "CloudFormationDescribe" }, { "Action": [ "cloudformation:CreateStack", "cloudformation:DeleteStack", "cloudformation:UpdateStack" ], "Effect": "Allow", "Resource": "*", "Sid": "CloudFormationModify" }, { "Action": [ "s3:*"

183 AWS ParallelCluster Guía del usuario de AWS ParallelCluster AWS Identity and Access Managementroles enAWS ParallelCluster ], "Resource": [ "arn:aws:s3:::" ], "Effect": "Allow", "Sid": "S3ResourcesBucket" }, { "Action": [ "s3:Get*", "s3:List*" ], "Resource": [ "arn:aws:s3:::-aws-parallelcluster*" ], "Effect": "Allow", "Sid": "S3ParallelClusterReadOnly" }, { "Action": [ "s3:DeleteBucket", "s3:DeleteObject", "s3:DeleteObjectVersion" ], "Resource": [ "arn:aws:s3:::" ], "Effect": "Allow", "Sid": "S3Delete" }, { "Action": [ "iam:PassRole", "iam:CreateRole", "iam:CreateServiceLinkedRole", "iam:DeleteRole", "iam:GetRole", "iam:TagRole", "iam:SimulatePrincipalPolicy" ], "Resource": [ "arn:aws:iam:::role/", "arn:aws:iam:::role/parallelcluster-*", "arn:aws:iam:::role/aws-service-role/*" ], "Effect": "Allow", "Sid": "IAMModify" }, { "Action": [ "iam:CreateInstanceProfile", "iam:DeleteInstanceProfile" ], "Resource": "arn:aws:iam:::instance-profile/*", "Effect": "Allow", "Sid": "IAMCreateInstanceProfile" }, { "Action": [ "iam:AddRoleToInstanceProfile", "iam:RemoveRoleFromInstanceProfile", "iam:GetRolePolicy", "iam:GetPolicy", "iam:AttachRolePolicy", "iam:DetachRolePolicy", "iam:PutRolePolicy",

184 AWS ParallelCluster Guía del usuario de AWS ParallelCluster AWS Identity and Access Managementroles enAWS ParallelCluster "iam:DeleteRolePolicy" ], "Resource": "*", "Effect": "Allow", "Sid": "IAMInstanceProfile" }, { "Action": [ "elasticfilesystem:DescribeMountTargets", "elasticfilesystem:DescribeMountTargetSecurityGroups", "ec2:DescribeNetworkInterfaceAttribute" ], "Resource": "*", "Effect": "Allow", "Sid": "EFSDescribe" }, { "Action": [ "ssm:GetParametersByPath" ], "Resource": "*", "Effect": "Allow", "Sid": "SSMDescribe" }, { "Action": [ "fsx:*" ], "Resource": "*", "Effect": "Allow", "Sid": "FSx" }, { "Action": [ "elasticfilesystem:*" ], "Resource": "*", "Effect": "Allow", "Sid": "EFS" }, { "Action": [ "logs:DeleteLogGroup", "logs:PutRetentionPolicy", "logs:DescribeLogGroups", "logs:CreateLogGroup" ], "Resource": "*", "Effect": "Allow", "Sid": "CloudWatchLogs" }, { "Action": [ "lambda:CreateFunction", "lambda:DeleteFunction", "lambda:GetFunctionConfiguration", "lambda:GetFunction", "lambda:InvokeFunction", "lambda:AddPermission", "lambda:RemovePermission" ], "Resource": [ "arn:aws:lambda:::function:parallelcluster-*", "arn:aws:lambda:::function:pcluster-*" ], "Effect": "Allow",

185 AWS ParallelCluster Guía del usuario de AWS ParallelCluster AWS Identity and Access Managementroles enAWS ParallelCluster "Sid": "Lambda" }, { "Sid": "CloudWatch", "Effect": "Allow", "Action": [ "cloudwatch:PutDashboard", "cloudwatch:ListDashboards", "cloudwatch:DeleteDashboards", "cloudwatch:GetDashboard" ], "Resource": "*" } ] }

ParallelClusterUserPolicyconSGEorTorque

En el siguiente ejemplo se establece la propiedadParallelClusterUserPolicy, usandoSGEorTorquecomo el programador. En este ejemplo,»» es el valor delcluster_resource_bucket (p. 242)configuración; sicluster_resource_bucket (p. 242)no se especifica entonces»» es «paralelcluster-*». Note

Si utiliza un rol personalizado,ec2_iam_role (p. 247) = Para que incluya el nombre de ese rol, debe cambiar el recurso de IAM de: "Resource": "arn:aws:iam:::role/parallelcluster-*" Para: "Resource": "arn:aws:iam:::role/"

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "ec2:DescribeKeyPairs", "ec2:DescribeRegions", "ec2:DescribeVpcs", "ec2:DescribeSubnets", "ec2:DescribeSecurityGroups", "ec2:DescribePlacementGroups", "ec2:DescribeImages", "ec2:DescribeInstances", "ec2:DescribeInstanceStatus", "ec2:DescribeInstanceTypes", "ec2:DescribeInstanceTypeOfferings", "ec2:DescribeSnapshots", "ec2:DescribeVolumes", "ec2:DescribeVpcAttribute", "ec2:DescribeAddresses", "ec2:CreateTags", "ec2:DescribeNetworkInterfaces", "ec2:DescribeAvailabilityZones" ], "Resource": "*", "Effect": "Allow", "Sid": "EC2Describe" }, { "Action": [ "ec2:CreateVpc", "ec2:ModifyVpcAttribute",

186 AWS ParallelCluster Guía del usuario de AWS ParallelCluster AWS Identity and Access Managementroles enAWS ParallelCluster "ec2:DescribeNatGateways", "ec2:CreateNatGateway", "ec2:DescribeInternetGateways", "ec2:CreateInternetGateway", "ec2:AttachInternetGateway", "ec2:DescribeRouteTables", "ec2:CreateRoute", "ec2:CreateRouteTable", "ec2:AssociateRouteTable", "ec2:CreateSubnet", "ec2:ModifySubnetAttribute" ], "Resource": "*", "Effect": "Allow", "Sid": "NetworkingEasyConfig" }, { "Action": [ "ec2:CreateVolume", "ec2:RunInstances", "ec2:AllocateAddress", "ec2:AssociateAddress", "ec2:AttachNetworkInterface", "ec2:AuthorizeSecurityGroupEgress", "ec2:AuthorizeSecurityGroupIngress", "ec2:CreateNetworkInterface", "ec2:CreateSecurityGroup", "ec2:ModifyVolumeAttribute", "ec2:ModifyNetworkInterfaceAttribute", "ec2:DeleteNetworkInterface", "ec2:DeleteVolume", "ec2:TerminateInstances", "ec2:DeleteSecurityGroup", "ec2:DisassociateAddress", "ec2:RevokeSecurityGroupIngress", "ec2:RevokeSecurityGroupEgress", "ec2:ReleaseAddress", "ec2:CreatePlacementGroup", "ec2:DeletePlacementGroup" ], "Resource": "*", "Effect": "Allow", "Sid": "EC2Modify" }, { "Action": [ "autoscaling:DescribeAutoScalingGroups", "autoscaling:DescribeAutoScalingInstances" ], "Resource": "*", "Effect": "Allow", "Sid": "AutoScalingDescribe" }, { "Action": [ "autoscaling:CreateAutoScalingGroup", "ec2:CreateLaunchTemplate", "ec2:CreateLaunchTemplateVersion", "ec2:ModifyLaunchTemplate", "ec2:DeleteLaunchTemplate", "ec2:DescribeLaunchTemplates", "ec2:DescribeLaunchTemplateVersions", "autoscaling:PutNotificationConfiguration", "autoscaling:UpdateAutoScalingGroup", "autoscaling:PutScalingPolicy", "autoscaling:DescribeScalingActivities",

187 AWS ParallelCluster Guía del usuario de AWS ParallelCluster AWS Identity and Access Managementroles enAWS ParallelCluster "autoscaling:DeleteAutoScalingGroup", "autoscaling:DeletePolicy", "autoscaling:DisableMetricsCollection", "autoscaling:EnableMetricsCollection" ], "Resource": "*", "Effect": "Allow", "Sid": "AutoScalingModify" }, { "Action": [ "dynamodb:DescribeTable", "dynamodb:ListTagsOfResource" ], "Resource": "*", "Effect": "Allow", "Sid": "DynamoDBDescribe" }, { "Action": [ "dynamodb:CreateTable", "dynamodb:DeleteTable", "dynamodb:GetItem", "dynamodb:PutItem", "dynamodb:Query", "dynamodb:TagResource" ], "Resource": "*", "Effect": "Allow", "Sid": "DynamoDBModify" }, { "Action": [ "sqs:GetQueueAttributes" ], "Resource": "*", "Effect": "Allow", "Sid": "SQSDescribe" }, { "Action": [ "sqs:CreateQueue", "sqs:SetQueueAttributes", "sqs:DeleteQueue", "sqs:TagQueue" ], "Resource": "*", "Effect": "Allow", "Sid": "SQSModify" }, { "Action": [ "sns:ListTopics", "sns:GetTopicAttributes" ], "Resource": "*", "Effect": "Allow", "Sid": "SNSDescribe" }, { "Action": [ "sns:CreateTopic", "sns:Subscribe", "sns:Unsubscribe", "sns:DeleteTopic" ],

188 AWS ParallelCluster Guía del usuario de AWS ParallelCluster AWS Identity and Access Managementroles enAWS ParallelCluster "Resource": "*", "Effect": "Allow", "Sid": "SNSModify" }, { "Action": [ "cloudformation:DescribeStackEvents", "cloudformation:DescribeStackResource", "cloudformation:DescribeStackResources", "cloudformation:DescribeStacks", "cloudformation:ListStacks", "cloudformation:GetTemplate" ], "Resource": "*", "Effect": "Allow", "Sid": "CloudFormationDescribe" }, { "Action": [ "cloudformation:CreateStack", "cloudformation:DeleteStack", "cloudformation:UpdateStack" ], "Effect": "Allow", "Resource": "*", "Sid": "CloudFormationModify" }, { "Action": [ "s3:*" ], "Resource": [ "arn:aws:s3:::" ], "Effect": "Allow", "Sid": "S3ResourcesBucket" }, { "Action": [ "s3:Get*", "s3:List*" ], "Resource": [ "arn:aws:s3:::-aws-parallelcluster*" ], "Effect": "Allow", "Sid": "S3ParallelClusterReadOnly" }, { "Action": [ "s3:DeleteBucket", "s3:DeleteObject", "s3:DeleteObjectVersion" ], "Resource": [ "arn:aws:s3:::" ], "Effect": "Allow", "Sid": "S3Delete" }, { "Action": [ "iam:PassRole", "iam:CreateRole", "iam:CreateServiceLinkedRole", "iam:DeleteRole",

189 AWS ParallelCluster Guía del usuario de AWS ParallelCluster AWS Identity and Access Managementroles enAWS ParallelCluster "iam:GetRole", "iam:TagRole", "iam:SimulatePrincipalPolicy" ], "Resource": [ "arn:aws:iam:::role/", "arn:aws:iam:::role/parallelcluster-*", "arn:aws:iam:::role/aws-service-role/*" ], "Effect": "Allow", "Sid": "IAMModify" }, { "Action": [ "iam:CreateInstanceProfile", "iam:DeleteInstanceProfile" ], "Resource": "arn:aws:iam:::instance-profile/*", "Effect": "Allow", "Sid": "IAMCreateInstanceProfile" }, { "Action": [ "iam:AddRoleToInstanceProfile", "iam:RemoveRoleFromInstanceProfile", "iam:GetRolePolicy", "iam:GetPolicy", "iam:AttachRolePolicy", "iam:DetachRolePolicy", "iam:PutRolePolicy", "iam:DeleteRolePolicy" ], "Resource": "*", "Effect": "Allow", "Sid": "IAMInstanceProfile" }, { "Action": [ "elasticfilesystem:DescribeMountTargets", "elasticfilesystem:DescribeMountTargetSecurityGroups", "ec2:DescribeNetworkInterfaceAttribute" ], "Resource": "*", "Effect": "Allow", "Sid": "EFSDescribe" }, { "Action": [ "ssm:GetParametersByPath" ], "Resource": "*", "Effect": "Allow", "Sid": "SSMDescribe" }, { "Action": [ "fsx:*" ], "Resource": "*", "Effect": "Allow", "Sid": "FSx" }, { "Action": [ "elasticfilesystem:*" ],

190 AWS ParallelCluster Guía del usuario de AWS ParallelCluster AWS Identity and Access Managementroles enAWS ParallelCluster "Resource": "*", "Effect": "Allow", "Sid": "EFS" }, { "Action": [ "logs:DeleteLogGroup", "logs:PutRetentionPolicy", "logs:DescribeLogGroups", "logs:CreateLogGroup" ], "Resource": "*", "Effect": "Allow", "Sid": "CloudWatchLogs" }, { "Action": [ "lambda:CreateFunction", "lambda:DeleteFunction", "lambda:GetFunctionConfiguration", "lambda:GetFunction", "lambda:InvokeFunction", "lambda:AddPermission", "lambda:RemovePermission" ], "Resource": [ "arn:aws:lambda:::function:parallelcluster-*", "arn:aws:lambda:::function:pcluster-*" ], "Effect": "Allow", "Sid": "Lambda" }, { "Sid": "CloudWatch", "Effect": "Allow", "Action": [ "cloudwatch:PutDashboard", "cloudwatch:ListDashboards", "cloudwatch:DeleteDashboards", "cloudwatch:GetDashboard" ], "Resource": "*" } ] }

ParallelClusterUserPolicy con awsbatch

En el siguiente ejemplo se establece la propiedadParallelClusterUserPolicyconawsbatchcomo el programador. En este ejemplo,»» es el valor delcluster_resource_bucket (p. 242)configuración; sicluster_resource_bucket (p. 242)no se especifica entonces»» es «paralelcluster-*».

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "ec2:DescribeKeyPairs", "ec2:DescribeRegions", "ec2:DescribeVpcs", "ec2:DescribeSubnets", "ec2:DescribeSecurityGroups", "ec2:DescribePlacementGroups",

191 AWS ParallelCluster Guía del usuario de AWS ParallelCluster AWS Identity and Access Managementroles enAWS ParallelCluster "ec2:DescribeImages", "ec2:DescribeInstances", "ec2:DescribeInstanceStatus", "ec2:DescribeInstanceTypes", "ec2:DescribeInstanceTypeOfferings", "ec2:DescribeSnapshots", "ec2:DescribeVolumes", "ec2:DescribeVpcAttribute", "ec2:DescribeAddresses", "ec2:CreateTags", "ec2:DescribeNetworkInterfaces", "ec2:DescribeAvailabilityZones" ], "Resource": "*", "Effect": "Allow", "Sid": "EC2Describe" }, { "Action": [ "ec2:CreateLaunchTemplate", "ec2:CreateLaunchTemplateVersion", "ec2:ModifyLaunchTemplate", "ec2:DeleteLaunchTemplate", "ec2:DescribeLaunchTemplates", "ec2:DescribeLaunchTemplateVersions" ], "Resource": "*", "Effect": "Allow", "Sid": "EC2LaunchTemplate" }, { "Action": [ "ec2:CreateVpc", "ec2:ModifyVpcAttribute", "ec2:DescribeNatGateways", "ec2:CreateNatGateway", "ec2:DescribeInternetGateways", "ec2:CreateInternetGateway", "ec2:AttachInternetGateway", "ec2:DescribeRouteTables", "ec2:CreateRoute", "ec2:CreateRouteTable", "ec2:AssociateRouteTable", "ec2:CreateSubnet", "ec2:ModifySubnetAttribute" ], "Resource": "*", "Effect": "Allow", "Sid": "NetworkingEasyConfig" }, { "Action": [ "ec2:CreateVolume", "ec2:RunInstances", "ec2:AllocateAddress", "ec2:AssociateAddress", "ec2:AttachNetworkInterface", "ec2:AuthorizeSecurityGroupEgress", "ec2:AuthorizeSecurityGroupIngress", "ec2:CreateNetworkInterface", "ec2:CreateSecurityGroup", "ec2:ModifyVolumeAttribute", "ec2:ModifyNetworkInterfaceAttribute", "ec2:DeleteNetworkInterface", "ec2:DeleteVolume", "ec2:TerminateInstances",

192 AWS ParallelCluster Guía del usuario de AWS ParallelCluster AWS Identity and Access Managementroles enAWS ParallelCluster "ec2:DeleteSecurityGroup", "ec2:DisassociateAddress", "ec2:RevokeSecurityGroupIngress", "ec2:RevokeSecurityGroupEgress", "ec2:ReleaseAddress", "ec2:CreatePlacementGroup", "ec2:DeletePlacementGroup" ], "Resource": "*", "Effect": "Allow", "Sid": "EC2Modify" }, { "Action": [ "dynamodb:DescribeTable", "dynamodb:CreateTable", "dynamodb:DeleteTable", "dynamodb:GetItem", "dynamodb:PutItem", "dynamodb:Query", "dynamodb:TagResource" ], "Resource": "arn:aws:dynamodb:::table/parallelcluster- *", "Effect": "Allow", "Sid": "DynamoDB" }, { "Action": [ "cloudformation:DescribeStackEvents", "cloudformation:DescribeStackResource", "cloudformation:DescribeStackResources", "cloudformation:DescribeStacks", "cloudformation:ListStacks", "cloudformation:GetTemplate", "cloudformation:CreateStack", "cloudformation:DeleteStack", "cloudformation:UpdateStack" ], "Resource": "arn:aws:cloudformation:::stack/ parallelcluster-*", "Effect": "Allow", "Sid": "CloudFormation" }, { "Action": [ "route53:ChangeResourceRecordSets", "route53:ChangeTagsForResource", "route53:CreateHostedZone", "route53:DeleteHostedZone", "route53:GetChange", "route53:GetHostedZone", "route53:ListResourceRecordSets" ], "Resource": "arn:aws:route53:::hostedzone/*", "Effect": "Allow", "Sid": "Route53HostedZones" }, { "Action": [ "sqs:GetQueueAttributes", "sqs:CreateQueue", "sqs:SetQueueAttributes", "sqs:DeleteQueue", "sqs:TagQueue" ],

193 AWS ParallelCluster Guía del usuario de AWS ParallelCluster AWS Identity and Access Managementroles enAWS ParallelCluster "Resource": "*", "Effect": "Allow", "Sid": "SQS" }, { "Action": [ "sqs:SendMessage", "sqs:ReceiveMessage", "sqs:ChangeMessageVisibility", "sqs:DeleteMessage", "sqs:GetQueueUrl" ], "Resource": "arn:aws:sqs:::parallelcluster-*", "Effect": "Allow", "Sid": "SQSQueue" }, { "Action": [ "sns:ListTopics", "sns:GetTopicAttributes", "sns:CreateTopic", "sns:Subscribe", "sns:Unsubscribe", "sns:DeleteTopic" ], "Resource": "*", "Effect": "Allow", "Sid": "SNS" }, { "Action": [ "iam:PassRole", "iam:CreateRole", "iam:DeleteRole", "iam:GetRole", "iam:TagRole", "iam:SimulatePrincipalPolicy" ], "Resource": [ "arn:aws:iam:::role/parallelcluster-*", "arn:aws:iam:::role/" ], "Effect": "Allow", "Sid": "IAMRole" }, { "Action": [ "iam:CreateInstanceProfile", "iam:DeleteInstanceProfile", "iam:GetInstanceProfile", "iam:PassRole" ], "Resource": "arn:aws:iam:::instance-profile/*", "Effect": "Allow", "Sid": "IAMInstanceProfile" }, { "Action": [ "iam:AddRoleToInstanceProfile", "iam:RemoveRoleFromInstanceProfile", "iam:GetRolePolicy", "iam:PutRolePolicy", "iam:DeleteRolePolicy", "iam:GetPolicy", "iam:AttachRolePolicy", "iam:DetachRolePolicy"

194 AWS ParallelCluster Guía del usuario de AWS ParallelCluster AWS Identity and Access Managementroles enAWS ParallelCluster ], "Resource": "*", "Effect": "Allow", "Sid": "IAM" }, { "Action": [ "s3:*" ], "Resource": [ "arn:aws:s3:::" ], "Effect": "Allow", "Sid": "S3ResourcesBucket" }, { "Action": [ "s3:Get*", "s3:List*" ], "Resource": [ "arn:aws:s3:::-aws-parallelcluster/*" ], "Effect": "Allow", "Sid": "S3ParallelClusterReadOnly" }, { "Action": [ "s3:DeleteBucket", "s3:DeleteObject", "s3:DeleteObjectVersion" ], "Resource": [ "arn:aws:s3:::" ], "Effect": "Allow", "Sid": "S3Delete" }, { "Action": [ "lambda:CreateFunction", "lambda:DeleteFunction", "lambda:GetFunction", "lambda:GetFunctionConfiguration", "lambda:InvokeFunction", "lambda:AddPermission", "lambda:RemovePermission" ], "Resource": [ "arn:aws:lambda:::function:parallelcluster-*", "arn:aws:lambda:::function:pcluster-*" ], "Effect": "Allow", "Sid": "Lambda" }, { "Action": [ "logs:*" ], "Resource": "arn:aws:logs:::*", "Effect": "Allow", "Sid": "Logs" }, { "Action": [ "codebuild:*"

195 AWS ParallelCluster Guía del usuario de AWS ParallelCluster AWS Identity and Access Managementroles enAWS ParallelCluster ], "Resource": "arn:aws:codebuild:::project/ parallelcluster-*", "Effect": "Allow", "Sid": "CodeBuild" }, { "Action": [ "ecr:*" ], "Resource": "*", "Effect": "Allow", "Sid": "ECR" }, { "Action": [ "batch:*" ], "Resource": "*", "Effect": "Allow", "Sid": "Batch" }, { "Action": [ "events:*" ], "Effect": "Allow", "Resource": "*", "Sid": "AmazonCloudWatchEvents" }, { "Action": [ "ecs:DescribeContainerInstances", "ecs:ListContainerInstances" ], "Resource": "*", "Effect": "Allow", "Sid": "ECS" }, { "Action": [ "elasticfilesystem:CreateFileSystem", "elasticfilesystem:CreateMountTarget", "elasticfilesystem:DeleteFileSystem", "elasticfilesystem:DeleteMountTarget", "elasticfilesystem:DescribeFileSystems", "elasticfilesystem:DescribeMountTargets" ], "Resource": "*", "Effect": "Allow", "Sid": "EFS" }, { "Action": [ "fsx:*" ], "Resource": "*", "Effect": "Allow", "Sid": "FSx" }, { "Sid": "CloudWatch", "Effect": "Allow", "Action": [ "cloudwatch:PutDashboard", "cloudwatch:ListDashboards",

196 AWS ParallelCluster Guía del usuario de AWS ParallelCluster AWS Identity and Access Managementroles enAWS ParallelCluster "cloudwatch:DeleteDashboards", "cloudwatch:GetDashboard" ], "Resource": "*" } ] }

ParallelClusterLambdaPolicyconSGE,Slurm, o bienTorque

En el ejemplo siguiente se establece ParallelClusterLambdaPolicy, utilizando SGE, Slurm o Torque como programador.

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "logs:CreateLogStream", "logs:PutLogEvents" ], "Resource": "arn:aws:logs:*:*:*", "Effect": "Allow", "Sid": "CloudWatchLogsPolicy" }, { "Action": [ "s3:DeleteBucket", "s3:DeleteObject", "s3:DeleteObjectVersion", "s3:ListBucket", "s3:ListBucketVersions" ], "Resource": [ "arn:aws:s3:::*" ], "Effect": "Allow", "Sid": "S3BucketPolicy" }, { "Action": [ "ec2:DescribeInstances" ], "Resource": "*", "Effect": "Allow", "Sid": "DescribeInstances" }, { "Action": [ "ec2:TerminateInstances" ], "Resource": "*", "Effect": "Allow", "Sid": "FleetTerminatePolicy" }, { "Action": [ "dynamodb:GetItem", "dynamodb:PutItem" ], "Resource": "arn:aws:dynamodb:::table/parallelcluster-*", "Effect": "Allow", "Sid": "DynamoDBTable" },

197 AWS ParallelCluster Guía del usuario de AWS ParallelCluster AWS Identity and Access Managementroles enAWS ParallelCluster { "Action": [ "route53:ListResourceRecordSets", "route53:ChangeResourceRecordSets" ], "Resource": [ "arn:aws:route53:::hostedzone/*" ], "Effect": "Allow", "Sid": "Route53DeletePolicy" } ] }

ParallelClusterLambdaPolicy con awsbatch

En el siguiente ejemplo se establece la propiedadParallelClusterLambdaPolicyconawsbatchcomo el programador.

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "logs:CreateLogStream", "logs:PutLogEvents" ], "Effect": "Allow", "Resource": "arn:aws:logs:*:*:*", "Sid": "CloudWatchLogsPolicy" }, { "Action": [ "ecr:BatchDeleteImage", "ecr:ListImages" ], "Effect": "Allow", "Resource": "*", "Sid": "ECRPolicy" }, { "Action": [ "codebuild:BatchGetBuilds", "codebuild:StartBuild" ], "Effect": "Allow", "Resource": "*", "Sid": "CodeBuildPolicy" }, { "Action": [ "s3:DeleteBucket", "s3:DeleteObject", "s3:DeleteObjectVersion", "s3:ListBucket", "s3:ListBucketVersions" ], "Effect": "Allow", "Resource": "*", "Sid": "S3BucketPolicy" } ] }

198 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Programadores admitidos por AWS ParallelCluster

ParallelClusterUserPolicypara usuarios

En el siguiente ejemplo se establece la propiedadParallelClusterUserPolicyPara los usuarios que no necesitan crear o actualizar clústeres. Se admiten los comandos siguientes.

• pcluster dcv (p. 227) • pcluster instances (p. 229) • pcluster list (p. 230) • pcluster ssh (p. 230) • pcluster start (p. 231) • pcluster status (p. 232) • pcluster stop (p. 232) • pcluster version (p. 234)

{ "Version": "2012-10-17", "Statement": [ { "Sid": "MinimumModify", "Action": [ "autoscaling:UpdateAutoScalingGroup", "batch:UpdateComputeEnvironment", "cloudformation:DescribeStackEvents", "cloudformation:DescribeStackResources", "cloudformation:GetTemplate", "dynamodb:GetItem", "dynamodb:PutItem" ], "Effect": "Allow", "Resource": [ "arn:aws:autoscaling:::autoScalingGroup:*:autoScalingGroupName/parallelcluster-*", "arn:aws:batch:::compute-environment/*", "arn:aws:cloudformation:::stack//*", "arn:aws:dynamodb:::table/" ] }, { "Sid": "Describe", "Action": [ "cloudformation:DescribeStacks", "ec2:DescribeInstances", "ec2:DescribeInstanceStatus" ], "Effect": "Allow", "Resource": "*" } ] }

Programadores admitidos por AWS ParallelCluster

AWS ParallelCluster admite varios programadores, establecidos mediante el valor scheduler (p. 257). Warning

A partir del 31 de diciembre de 2021,AWSya no incluiráSGEyTorquesoporte para todas las versiones publicadas deAWS ParallelCluster. Versiones anteriores deAWS ParallelClusterque

199 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Programadores admitidos por AWS ParallelCluster

apoyenSGEyTorqueseguirá estando disponible para su descarga y uso. Sin embargo, estas versiones no serán elegibles para futuras actualizaciones o asistencia para la solución de problemas delAWSyAWSEquipos de Support. Por otra parte, las futuras versiones deAWS ParallelClusterrealizado antes y después del 31 de diciembre de 2021 no incluirá soporte paraSGEorTorque.

Temas • Son of Grid Engine (sge) (p. 200) • Slurm Workload Manager (slurm) (p. 200) • Torque Resource Manager (torque) (p. 207) • AWS Batch (awsbatch) (p. 208)

Son of Grid Engine (sge) Warning

A partir del 31 de diciembre de 2021,AWSya no incluiráSGEsoporte para todas las versiones publicadas deAWS ParallelCluster. Versiones anteriores deAWS ParallelClusterque apoyenSGEseguirá estando disponible para su descarga y uso. Sin embargo, estas versiones no serán elegibles para futuras actualizaciones o asistencia para la solución de problemas delAWSyAWS Supportequipos. Por otra parte, las futuras versiones deAWS ParallelClusterrealizado antes y después del 31 de diciembre de 2021 no incluirá soporte paraSGE.

AWS ParallelCluster utiliza Son of Grid Engine 8.1.9. Para obtener información sobre este programador, consulte https://arc.liv.ac.uk/trac/SGE. Para obtener descargas, consulte https://arc.liv.ac.uk/downloads/ SGE/releases/8.1.9/. Para obtener el código fuente, consulte https://arc.liv.ac.uk/trac/SGE/browser/sge. Slurm Workload Manager (slurm)

AWS ParallelClusterLa versión 2.11.2 utilizaSlurm20.11.7. Para obtener más información sobre Slurm, consulte https://slurm.schedmd.com/. Para obtener descargas, consulte https://www.schedmd.com/ downloads.php. Para obtener el código fuente, consulte https://github.com/SchedMD/slurm. Important

AWS ParallelClusterse prueba conSlurm, que se proporcionan de forma predeterminada. Cualquier cambio que realice a estosSlurmLos parámetros de configuración se realizan por su cuenta y riesgo. Estos se apoyan sólo en la medida de lo posible.

AWS ParallelClusterLa versión 2.10.4 utilizaSlurm20.02.7.AWS ParallelClusterusan versiones entre 2.9.0 y 2.10.3Slurm20.02.4.AWS ParallelClusterusan versiones entre 2.6 y 2.8.1Slurm19.05.5.AWS ParallelClusterutilizan las versiones 2.5.0 y 2.5.1Slurm19.05.3-2.AWS ParallelClusterutilizan versiones entre 2.3.1 y 2.4.1Slurm18.08.6-2.AWS ParallelClusterVersiones anteriores a 2.3.1Slurm16.05.3-1. Slurmguía para el modo de cola múltiple

AWS ParallelClusterLa versión 2.9.0 introdujo el modo de cola múltiple y una nueva arquitectura de escalado paraSlurm Workload Manager(Slurm).

En las secciones siguientes se incluye información general acerca del uso de unSlurmcon la arquitectura de escalado recién introducida.

Overview

La nueva arquitectura de escalado se basa enSlurm'sGuía de programación en la nubey el complemento de ahorro de energía. Para obtener más información acerca del complemento de ahorro de energía,

200 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Programadores admitidos por AWS ParallelCluster consulteSlurmGuía de ahorro de energía. En la nueva arquitectura, los recursos que potencialmente pueden estar disponibles para un clúster suelen estar predefinidos en elSlurmcomo nodos en la nube.

Ciclo de vida del nodo de la nube

A lo largo de su ciclo de vida, los nodos de la nube introducen varios, si no todos, los siguientes estados:POWER_SAVING,POWER_UP(pow_up),ALLOCATED(alloc), yPOWER_DOWN(pow_dn). En algunos casos, un nodo en la nube puede entrar en elOFFLINEEstado. La siguiente lista detalla varios aspectos de estos estados en el ciclo de vida de los nodos de la nube.

• Un nodo en unPOWER_SAVINGaparece con un~sufijo (por ejemploidle~) ensinfo. En este estado, no hay ninguna instancia EC2 que respalde el nodo. Sin embargo,Slurmtodavía puede asignar trabajos al nodo. • Un nodo que pasa a unPOWER_UPaparece con un#sufijo (por ejemploidle#) ensinfo. • CuandoSlurmasigna el trabajo a un nodo en unPOWER_SAVING, el nodo se transfiere automáticamente a unPOWER_UPEstado. De lo contrario, los nodos se pueden colocar en elPOWER_UPde forma manual mediante el comandoscontrol update nodename=nodename state=power_upcomando. En esta etapa, elResumeProgramy las instancias de EC2 se inician y configuran para respaldar unPOWER_UPnodo. • Un nodo que está disponible actualmente para su uso aparece sin ningún sufijo (por ejemploidle) ensinfo. Una vez configurado el nodo y se ha unido al clúster, estará disponible para ejecutar trabajos. En esta etapa, el nodo está configurado correctamente y listo para su uso. Como regla general, se recomienda que el número de instancias en EC2 sea el mismo que el número de nodos disponibles. En la mayoría de los casos, los nodos estáticos siempre están disponibles después de crear el clúster. • Un nodo que está en transición a unPOWER_DOWNaparece con un%sufijo (por ejemploidle%) ensinfo. Entrar nodos dinámicos automáticamentePOWER_DOWNestado despuésscaledown_idletime (p. 288). Por el contrario, los nodos estáticos en la mayoría de los casos no están apagados. Sin embargo, los nodos se pueden colocar en elPOWER_DOWNde forma manual mediante el comandoscontrol update nodename=nodename state=powering_downcomando. En este estado, la instancia asociada a un nodo finaliza y el nodo se restablece de nuevo alPOWER_SAVINGestado para uso futuro después descaledown_idletime (p. 288). Lascaledown-idletimese guarda en elSlurmcomo la configuraciónSuspendTimeoutconfiguración de Configuración de • Un nodo que está sin conexión aparece con un*sufijo (por ejemplodown*) ensinfo. Un nodo se desconecta siSlurmno puede ponerse en contacto con el nodo o si los nodos estáticos están deshabilitados y las instancias de respaldo se terminan.

Ahora considere los estados de nodo que se muestran en el siguientesinfoEjemplo de de .

$ sinfo PARTITION AVAIL TIMELIMIT NODES STATE NODELIST efa up infinite 4 idle~ efa-dy-c5n18xlarge-[1-4] efa up infinite 1 idle efa-st-c5n18xlarge-1 gpu up infinite 1 idle% gpu-dy-g38xlarge-1 gpu up infinite 9 idle~ gpu-dy-g38xlarge-[2-10] ondemand up infinite 2 mix# ondemand-dy-c52xlarge-[1-2] ondemand up infinite 18 idle~ ondemand-dy-c52xlarge-[3-10],ondemand-dy-t2xlarge- [1-10] spot* up infinite 13 idle~ spot-dy-c5xlarge-[1-10],spot-dy-t2large-[1-3] spot* up infinite 2 idle spot-st-t2large-[1-2]

Laspot-st-t2large-[1-2]yefa-st-c5n18xlarge-1ya tienen instancias de respaldo configuradas y están disponibles para su uso. Laondemand-dy-c52xlarge-[1-2]se encuentran en elPOWER_UPestado, y deberían estar disponibles en unos minutos. Lagpu-dy-g38xlarge-1se encuentra en elPOWER_DOWNestado, y pasará aPOWER_SAVINGestado despuésscaledown_idletime (p. 288)(el valor predeterminado es 120 segundos).

201 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Programadores admitidos por AWS ParallelCluster

Todos los demás nodos están enPOWER_SAVINGsin instancias EC2 que las respalden. Trabajar con un nodo disponible

Un nodo disponible está respaldado por una instancia EC2. De forma predeterminada, el nombre del nodo se puede usar para SSH directamente en la instancia (por ejemplossh efa-st-c5n18xlarge-1). La dirección IP privada de la instancia se puede recuperar mediante el comandoscontrol show nodes nodenamey comprobando el comandoNodeAddr. En el caso de los nodos que no están disponibles,NodeAddrno debería apuntar a una instancia de EC2 en ejecución. Por el contrario, debería ser el mismo que el nombre del nodo.

Estados del Job y presentación

Los trabajos enviados en la mayoría de los casos se asignan inmediatamente a los nodos del sistema, o se colocan en pendientes si se asignan todos los nodos.

Si los nodos asignados para un trabajo incluyen nodos en unPOWER_SAVING, el trabajo comienza con unCF, o bienCONFIGURINGEstado. En este momento, el trabajo espera a los nodos en elPOWER_SAVINGa la transición aPOWER_UPestado y estar disponible.

Después de que todos los nodos asignados para un trabajo estén disponibles, el trabajo ingresa elRUNNING(R) Estado.

De forma predeterminada, todos los trabajos se envían a la cola predeterminada (conocida como partición enSlurm). Esto es significado por una*después del nombre de la cola. Puede seleccionar una cola utilizando la herramienta-popción de envío de trabajos.

Todos los nodos están configurados con las siguientes características, que se pueden utilizar en los comandos de envío de trabajos:

• Un tipo de instancia (por ejemploc5.xlarge) • Un tipo de nodo (Esto esdynamicorstatic.)

Puede ver todas las funciones disponibles para un nodo concreto mediante la herramientascontrol show nodes nodenamey comprobando el comandoAvailableFeatureslista.

Otra consideración son los puestos de trabajo. En primer lugar, considere el estado inicial del clúster, que puede ver ejecutando elsinfocomando.

$ sinfo PARTITION AVAIL TIMELIMIT NODES STATE NODELIST efa up infinite 4 idle~ efa-dy-c5n18xlarge-[1-4] efa up infinite 1 idle efa-st-c5n18xlarge-1 gpu up infinite 10 idle~ gpu-dy-g38xlarge-[1-10] ondemand up infinite 20 idle~ ondemand-dy-c52xlarge-[1-10],ondemand-dy-t2xlarge- [1-10] spot* up infinite 13 idle~ spot-dy-c5xlarge-[1-10],spot-dy-t2large-[1-3] spot* up infinite 2 idle spot-st-t2large-[1-2]

Tenga en cuenta quespotes la cola predeterminada. Se indica con la acción*sufijo.

Envíe un trabajo a un nodo estático a la cola predeterminada (spot).

$ sbatch --wrap "sleep 300" -N 1 -C static

Envíe un trabajo a un nodo dinámico alEFAqueue.

$ sbatch --wrap "sleep 300" -p efa -C dynamic

202 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Programadores admitidos por AWS ParallelCluster

Enviar un trabajo a ocho (8)c5.2xlargenodos y dos (2)t2.xlargea laondemandqueue.

$ sbatch --wrap "sleep 300" -p ondemand -N 10 -C "[c5.2xlarge*8&t2.xlarge*2]"

Envíe un trabajo a un nodo de GPU a lagpuqueue.

$ sbatch --wrap "sleep 300" -p gpu -G 1

Ahora considere el estado de los trabajos utilizando lasqueuecomando.

$ squeue JOBID PARTITION NAME USER ST TIME NODES NODELIST(REASON) 12 ondemand wrap ubuntu CF 0:36 10 ondemand-dy-c52xlarge- [1-8],ondemand-dy-t2xlarge-[1-2] 13 gpu wrap ubuntu CF 0:05 1 gpu-dy-g38xlarge-1 7 spot wrap ubuntu R 2:48 1 spot-st-t2large-1 8 efa wrap ubuntu R 0:39 1 efa-dy-c5n18xlarge-1

Trabajos 7 y 8 (en elspotyefaya se están ejecutando (R). Los trabajos 12 y 13 todavía se están configurando (CF), probablemente esperando a que las instancias estén disponibles.

# Nodes states corresponds to state of running jobs $ sinfo PARTITION AVAIL TIMELIMIT NODES STATE NODELIST efa up infinite 3 idle~ efa-dy-c5n18xlarge-[2-4] efa up infinite 1 mix efa-dy-c5n18xlarge-1 efa up infinite 1 idle efa-st-c5n18xlarge-1 gpu up infinite 1 mix~ gpu-dy-g38xlarge-1 gpu up infinite 9 idle~ gpu-dy-g38xlarge-[2-10] ondemand up infinite 10 mix# ondemand-dy-c52xlarge-[1-8],ondemand-dy-t2xlarge- [1-2] ondemand up infinite 10 idle~ ondemand-dy-c52xlarge-[9-10],ondemand-dy-t2xlarge- [3-10] spot* up infinite 13 idle~ spot-dy-c5xlarge-[1-10],spot-dy-t2large-[1-3] spot* up infinite 1 mix spot-st-t2large-1 spot* up infinite 1 idle spot-st-t2large-2

Estado y características del nodo

En la mayoría de los casos, los estados de nodo son completamente administrados porAWS ParallelClustersegún los procesos específicos del ciclo de vida de los nodos de la nube descritos anteriormente en este tema.

Sin embargo,AWS ParallelClustertambién reemplaza o termina nodos no saludables enDOWNyDRAINEDestados y nodos que tienen instancias de respaldo en mal estado. Para obtener más información, consulte clustermgtd (p. 297).

Estados de partición

AWS ParallelClusteradmite los siguientes estados de partición. ASlurmpartición es una cola enAWS ParallelCluster.

• UP: Indica que la partición está en estado activo. Este es el estado predeterminado de una partición. En este estado, todos los nodos de la partición están activos y disponibles para su uso. • INACTIVE: Indica que la partición está en estado inactivo. En este estado, se terminan todas las instancias que respaldan nodos de una partición inactiva. No se inician nuevas instancias para nodos en una partición inactiva.

203 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Programadores admitidos por AWS ParallelCluster

Pcluster iniciar y detener

Cuandopcluster stop (p. 232), todas las particiones se colocan en elINACTIVE, y elAWS ParallelClustermantienen las particiones en elINACTIVEEstado.

Cuandopcluster start (p. 231)En primer lugar, todas las particiones se colocan inicialmente en laUPEstado. Sin embargo,AWS ParallelClusterno mantienen la partición en unUPEstado. Necesita cambiar los estados de partición manualmente. Todos los nodos estáticos estarán disponibles al cabo de unos minutos. Tenga en cuenta que establecer una partición enUPno enciende ninguna capacidad dinámica. Siinitial_count (p. 260)es mayor quemax_count (p. 261), luegoinitial_count (p. 260)puede no estar satisfecho cuando el estado de la partición se cambia a laUPEstado.

Cuandopcluster start (p. 231)ypcluster stop (p. 232)se están ejecutando, puede comprobar el estado del clúster ejecutando el comandopcluster status (p. 232)y comprobando el comandoComputeFleetStatus. A continuación se enumeran los estados posibles:

• STOP_REQUESTED: Elpcluster stop (p. 232)se envía al clúster. • STOPPING: Elpclusterestá deteniendo actualmente el clúster. • STOPPED: Elpclusterterminó el proceso de detención, todas las particiones están enINACTIVE, y todas las instancias de cálculo se terminan. • START_REQUESTED: Elpcluster start (p. 231)se envía al clúster. • STARTING: Elpclusterestá comenzando actualmente el clúster • RUNNING: Elpclusterterminó el proceso de inicio, todas las particiones están enUPEl estado de, y los nodos estáticos estarán disponibles al cabo de unos minutos.

Control manual en las colas

En algunos casos, es posible que desee tener algún control manual sobre los nodos o la cola (conocida como partición enSlurm) en un clúster. Puede administrar nodos en un clúster mediante los siguientes procedimientos comunes.

• Encienda los nodos dinámicos enPOWER_SAVINGEstado: Ejecute lascontrol update nodename=nodename state=power_upcomando oenviar un marcador de posiciónsleep 1solicitud de trabajo para un cierto número de nodos y confiar enSlurmpara encender el número necesario de nodos. • Apaga los nodos dinámicos antesscaledown_idletime (p. 288): Establecer nodos dinámicos enDOWNconscontrol update nodename=nodename state=downcomando.AWS ParallelClusterfinaliza y restablece automáticamente los nodos dinámicos caídos. En general, no recomendamos configurar nodos enPOWER_DOWNdirectamente a través de la acciónscontrol update nodename=nodename state=power_downcomando. Esto se debe a queAWS ParallelClustermaneja automáticamente el proceso de apagado. No es necesaria ninguna intervención manual. Por lo tanto, le recomendamos que intente establecer los nodos enDOWNsiempre que sea posible. • Deshabilite una cola (partición) o detenga todos los nodos estáticos en una partición específica: Establezca la cola específica enINACTIVEconscontrol update partition=queue name state=inactivecomando. Al hacerlo, se terminan todas las instancias que respaldan nodos en la partición. • Habilitar una cola (partición): Establezca la cola específica enINACTIVEconscontrol update partition=queue name state=upcomando.

Comportamiento y ajustes de escala

A continuación se muestra un ejemplo del flujo de trabajo de escala normal:

• El programador recibe un trabajo que requiere dos nodos.

204 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Programadores admitidos por AWS ParallelCluster

• El programador transita dos nodos a unPOWER_UPestado, y llamaResumeProgramcon los nombres de los nodos (por ejemploqueue1-dy-c5xlarge-[1-2]). • ResumeProgramlanza dos instancias EC2 y asigna las direcciones IP privadas y los nombres de host dequeue1-dy-c5xlarge-[1-2], a la espera deResumeTimeout(el período predeterminado es de 60 minutos (1 hora)) antes de restablecer los nodos. • Las instancias se configuran y se unen al clúster. El Job comienza a ejecutarse en instancias. • El Job ha terminado. • Después de la configuraciónSuspendTimeha transcurrido (que se establece enscaledown_idletime (p. 288)), las instancias se colocan en elPOWER_SAVINGpor el programador. Plazas programadasqueue1-dy-c5xlarge-[1-2]enPOWER_DOWNestado y llamadasSuspendProgramcon los nombres de los nodos. • SuspendProgramse llama para dos nodos. Los nodos permanecen en elPOWER_DOWNestado, por ejemplo, quedandoidle%para unSuspendTimeout(el período predeterminado es 120 segundos (2 minutos)). Despuésclustermgtddetecta que los nodos se están apagando, finaliza las instancias de respaldo. Luego, configuraqueue1-dy-c5xlarge-[1-2]en estado inactivo y restablece la dirección IP privada y el nombre de host para que puedan volver a encenderse para futuros trabajos.

Ahora, si las cosas salen mal y una instancia para un nodo en particular no se puede iniciar por alguna razón, entonces sucede lo siguiente.

• El programador recibe un trabajo que requiere dos nodos. • El programador coloca dos nodos de fragmentación de nube enPOWER_UPestado y llamadasResumeProgramcon los nodenames, (por ejemploqueue1-dy-c5xlarge-[1-2]). • ResumeProgramlanza solo una (1) instancia EC2 y configuraqueue1-dy-c5xlarge-1, pero no ha podido lanzar una instancia paraqueue1-dy-c5xlarge-2. • queue1-dy-c5xlarge-1no se verá afectado y se conectará después de llegar aPOWER_UPEstado. • queue1-dy-c5xlarge-2se coloca enPOWER_DOWN, y el trabajo se vuelve a poner en cola automáticamente porqueSlurmdetecta un error del nodo. • queue1-dy-c5xlarge-2vuelve a estar disponible después deSuspendTimeout(el valor predeterminado es 120 segundos (2 minutos)). Mientras tanto, el trabajo se vuelve a poner en cola y puede comenzar a ejecutarse en otro nodo. • El proceso anterior se repite hasta que el trabajo puede ejecutarse en un nodo disponible sin que ocurra un error.

Hay dos parámetros de temporización que se pueden ajustar si es necesario.

• ResumeTimeout(el valor predeterminado es 60 minutos (1 hora)):ResumeTimeoutcontrola la horaSlurmespera antes de poner el nodo en el estado inactivo. • Podría ser útil extender esto si su proceso de instalación anterior y posterior lleva casi tanto tiempo. • Este es también el tiempo máximo queAWS ParallelClusterespera antes de reemplazar o restablecer un nodo si hay un problema. Los nodos de computación se terminan automáticamente si se produce algún error durante el inicio o la configuración. A continuación,AWS ParallelClustertambién reemplaza el nodo cuando ve que la instancia está terminada. • SuspendTimeout(el valor predeterminado es 120 segundos (2 minutos)):SuspendTimeoutcontrola la rapidez con que los nodos se colocan de nuevo en el sistema y están listos para su uso de nuevo. • Un más cortoSuspendTimeoutsignificaría que los nodos se restablecerán más rápidamente, ySlurmpuede intentar iniciar instancias con más frecuencia. • A másSuspendTimeouthace que los nodos fallidos se restablezcan Mientras tanto,Slurmneumáticos para usar otros nodos. SiSuspendTimeoutes más de unos pocos minutos,Slurmintenta recorrer todos los nodos del sistema. A másSuspendTimeoutpodría ser beneficioso para sistemas a gran escala (más de 1.000 nodos) para reducir el estrés enSlurmvolviendo a poner en cola trabajos fallidos con frecuencia.

205 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Programadores admitidos por AWS ParallelCluster

• Tenga en cuenta queSuspendTimeoutno se refiere al tiempoAWS ParallelClusteresperó para terminar una instancia de respaldo para un nodo. Instancias de copia de seguridad depower downse terminan inmediatamente. El proceso de finalización generalmente termina unos minutos. Sin embargo, durante este tiempo, el nodo permanece en estado de apagado y no está disponible para su uso en el programador.

Registros para la nueva arquitectura

La siguiente lit contiene los registros de claves para la arquitectura de colas múltiples. El nombre del flujo de registro utilizado con Amazon CloudWatch Logs tiene el formato{hostname}.{instance_id}.{logIdentifier}, dondeLogIdentifiersigue los nombres de registro. Para obtener más información, consulte Integración con Amazon CloudWatch Logs (p. 214).

• ResumeProgram:

/var/log/parallelcluster/slurm_resume.log (slurm_resume) • SuspendProgram:

/var/log/parallelcluster/slurm_suspend.log (slurm_suspend) • clustermgtd:

/var/log/parallelcluster/clustermgtd.log (clustermgtd) • computemgtd:

/var/log/parallelcluster/computemgtd.log (computemgtd) • slurmctld:

/var/log/slurmctld.log (slurmctld) • slurmd:

/var/log/slurmd.log (slurmd)

Problemas comunes y cómo depurar:

Nodos que no pudieron iniciar, encender o unirse al clúster:

• Nodos dinámicos: • Compruebe lasResumeProgramregistro para ver siResumeProgramnunca fue llamado con el nodo. Si no es así, compruebe laslurmctldregistro para determinar siSlurmalguna vez trató de llamarResumeProgramcon el nodo. Tenga en cuenta que los permisos incorrectos enResumeProgrampodría hacer que falle silenciosamente. • SiResumeProgram, compruebe si se ha iniciado una instancia para el nodo. Si la instancia no se puede iniciar, debería haber un mensaje de error claro sobre por qué la instancia no se pudo iniciar. • Si se inició una instancia, puede haber habido algún problema durante el proceso de arranque. Busque la dirección IP privada y el ID de instancia correspondientes en laResumeProgramy busque los registros de arranque correspondientes para la instancia específica en CloudWatch Logs. • Nodos estáticos: • Compruebe lasclustermgtdpara ver si se iniciaron instancias para el nodo. De lo contrario, debería haber errores claros sobre por qué las instancias no se iniciaron. • Si se ha iniciado una instancia, hay algún problema durante el proceso de arranque. Busque la IP privada y el ID de instancia correspondientes en la pestañaclustermgtdy busque los registros de arranque correspondientes para la instancia específica en CloudWatch Logs.

Nodos reemplazados o terminados inesperadamente, errores de nodo

206 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Programadores admitidos por AWS ParallelCluster

• Nodos reemplazados/terminados inesperadamente • En la mayoría de los casos,clustermgtdcontrola todas las operaciones de mantenimiento de nodos. Para comprobar si lasclustermgtdreemplazó o terminó un nodo, marque la casillaclustermgtdregistro. • Siclustermgtdreemplazó o terminó el nodo, debe haber un mensaje indicando el motivo de la acción. Si el motivo está relacionado con el programador (por ejemplo, el nodo fueDOWN), compruebe laslurmctldPara obtener más detalles. Si la razón está relacionada con EC2,utilizar herramientas para comprobar el estado o los registros de esa instancia. Por ejemplo, puede comprobar si la instancia tenía eventos programados o errores en las comprobaciones de estado de EC2. • Siclustermgtdno terminó el nodo, compruebe sicomputemgtdha terminado el nodo o si EC2 ha terminado la instancia para recuperar una instancia puntual. • Error en el nodo • En la mayoría de los casos, los trabajos se vuelven a poner en cola automáticamente si se produce un error en un nodo. Busque elslurmctldpara ver por qué falló un trabajo o un nodo y analizar la situación desde allí.

Error al reemplazar o terminar instancias, error al apagar nodos

• En general,clustermgtdgestiona todas las acciones de terminación de instancia esperadas. Busque elclustermgtdpara ver por qué no se pudo reemplazar o terminar un nodo. • Para nodos dinámicos que fallanscaledown_idletime (p. 288), busque en elSuspendProgrampara ver si un programa deslurmctldcon el nodo específico como argumento. NotaSuspendProgramen realidad no realiza ninguna acción específica. Más bien, solo registra cuando se llama. Toda la terminación de instancia yNodeAddrrestablecimiento se completan medianteclustermgtd.Slurmpone nodos enIDLEAFTERSuspendTimeout.

Otros problemas.

• AWS ParallelClusterno toma decisiones de asignación de trabajos o escalado. Simple intenta lanzar, terminar y mantener los recursos de acuerdo conSlurmde las instrucciones.

Para problemas relacionados con las asignaciones de trabajos, la asignación de nodos y la decisión de escalado, consulte laslurmctldRegistro de errores.

Torque Resource Manager (torque) Warning

A partir del 31 de diciembre de 2021,AWSya no incluiráTorquesoporte para todas las versiones publicadas deAWS ParallelCluster. Versiones anteriores deAWS ParallelClusterque apoyenTorqueseguirá estando disponible para su descarga y uso. Sin embargo, estas versiones no serán elegibles para futuras actualizaciones o asistencia para la solución de problemas delAWSy servicios deAWS Supportequipos. Por otra parte, las futuras versiones deAWS ParallelClusterrealizado antes y después del 31 de diciembre de 2021 no incluirá soporte paraTorque.

AWS ParallelCluster utiliza Torque Resource Manager 6.1.2. Para obtener más información acerca de Torque Resource Manager 6.1.2, consulte http://docs.adaptivecomputing.com/torque/6-1-2/releaseNotes/ torquerelnote.htm. Para obtener la documentación, consulte http://docs.adaptivecomputing.com/ torque/6-1-2/adminGuide/torque.htm. Para obtener el código fuente, consulte https://github.com/ adaptivecomputing/torque/tree/6.1.2.

Las versiones de AWS ParallelCluster 2.4.0 y anteriores utilizan Torque Resource Manager 6.0.2. Para ver las notas de la versión, consulte http://docs.adaptivecomputing.com/torque/6-0-2/

207 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Programadores admitidos por AWS ParallelCluster releaseNotes/torqueReleaseNotes6.0.2.pdf. Para obtener la documentación, consulte http:// docs.adaptivecomputing.com/torque/6-0-2/adminGuide/help.htm. Para obtener el código fuente, consulte https://github.com/adaptivecomputing/torque/tree/6.0.2.

AWS Batch (awsbatch)

Para obtener más información sobre AWS Batch, consulte AWS Batch. Para obtener la documentación, consulte laAWS BatchGuía del usuario de.

AWS ParallelClusterComandos de la CLI paraAWS Batch Important

Cuando se utilizaAWS Batch, los trabajos de GPU no son compatibles.

Cuando utiliza la acciónawsbatch, el programadorAWS ParallelClusterComandos de la CLI deAWS Batchse instalan automáticamente en elAWS ParallelClusternodo principal. La CLI utilizaAWS Batchy permite las siguientes operaciones:

• Enviar y administrar trabajos • Monitorear trabajos, colas y hosts • Crear un reflejo de los comandos del programador tradicionales

Temas • awsbsub (p. 208) • awsbstat (p. 210) • awsbout (p. 211) • awsbkill (p. 211) • awsbqueues (p. 212) • awsbhosts (p. 212) awsbsub

Envía trabajos a la cola de trabajo del clúster. awsbsub [-h] [-jn JOB_NAME] [-c CLUSTER] [-cf] [-w WORKING_DIR] [-pw PARENT_WORKING_DIR] [-if INPUT_FILE] [-p VCPUS] [-m MEMORY] [-e ENV] [-eb ENV_DENYLIST] [-r RETRY_ATTEMPTS] [-t TIMEOUT] [-n NODES] [-a ARRAY_SIZE] [-d DEPENDS_ON] [command] [arguments [arguments ...]]

Argumentos de posición command

Envía el trabajo (el comando especificado debe estar disponible en las instancias de computación) o el nombre de archivo que se va a transferir. Véase también --command-file. arguments

(Opcional) Especifica argumentos para el comando o el archivo de comandos.

208 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Programadores admitidos por AWS ParallelCluster

Argumentos con nombre

-jn JOB_NAME, --job-name JOB_NAME

Asigna un nombre al trabajo. El primer carácter debe ser una letra o un número. El nombre de trabajo puede contener letras (mayúsculas y minúsculas), números, guiones y caracteres de subrayado, y tener una longitud de hasta 128 caracteres. -c CLUSTER, --cluster CLUSTER

Especifica el clúster que se va a utilizar. -cf, --command-file

Indica que el comando es una archivo que se va a transferir a las instancias de informática.

Valor predeterminado: Falso -w WORKING_DIR, --working-dir WORKING_DIR

Especifica la carpeta que se va a usar como directorio de trabajo del trabajo. Si no se especifica un directorio de trabajo, el trabajo se ejecuta en eljob-subcarpeta del directorio de inicio del usuario. Puede utilizar este parámetro o el parámetro --parent-working-dir. -pw PARENT_WORKING_DIR, --parent-working-dir PARENT_WORKING_DIR

Especifica la carpeta principal del directorio de trabajo del trabajo. Si no se especifica un directorio de trabajo principal, el valor predeterminado es el directorio de inicio del usuario. Una subcarpeta llamada job- se crea en el directorio de trabajo principal. Puede utilizar este parámetro o el parámetro --working-dir. -if INPUT_FILE, --input-file INPUT_FILE

Especifica el archivo que se va a transferir a las instancias de computación, en el directorio de trabajo de la tarea. Puede especificar varios parámetros de archivo de entrada. -p VCPUS, --vcpus VCPUS

Especifica la cantidad de CPU virtuales que quiere reservar para el contenedor. Cuando se utiliza junto con–nodes, identifica la cantidad de vCPUs de cada nodo.

Valor predeterminado: 1 -m MEMORY, --memory MEMORY

Especifica el límite máximo de memoria (en MiB) que se va a proporcionar para el trabajo. Si su trabajo intenta superar el límite de memoria especificado aquí, se termina el trabajo.

Valor predeterminado: 128 -e ENV, --env ENV

Especifica una lista de nombres de variable de entorno separados por comas que se van a exportar al entorno de trabajo. Para exportar todas las variables de entorno, especifique "todas". Tenga en cuenta que una lista de «todas» las variables de entorno no incluyen aquellas que figuren en la–env- blacklist, o variables que comienzan con el parámetroPCLUSTER_*orAWS_*prefijo. -eb ENV_DENYLIST, --env-blacklist ENV_DENYLIST

Especifica una lista de nombres de variable de entorno separados por comas que no se van a exportar al entorno de trabajo. De forma predeterminada, no se exportan HOME, PWD, USER, PATH, LD_LIBRARY_PATH, TERM ni TERMCAP. -r RETRY_ATTEMPTS, --retry-attempts RETRY_ATTEMPTS

Especifica el número de veces que toma pasar un trabajo alRUNNABLEEstado. Puede especificar entre 1 y 10 intentos. Si el valor de los intentos es superior a 1, el trabajo se reintenta si produce un error, hasta que haya pasado a unRUNNABLEEl estado del número especificado de veces.

209 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Programadores admitidos por AWS ParallelCluster

Valor predeterminado: 1 -t TIMEOUT, --timeout TIMEOUT

Especifica la duración en segundos (medida a partir de lastartedAt) después de lo cualAWS Batchfinaliza tu trabajo si no ha terminado. El valor del tiempo de inactividad debe ser al menos 60 segundos. -n NODES, --nodes NODES

Especifica el número de nodos que quiere reservar para el trabajo. Especifique un valor para que este parámetro habilite el envío paralelo de varios nodos. Note

Los trabajos paralelos de varios nodos no se admiten cuando elcluster_type (p. 243)El parámetro se establece enspot. -a ARRAY_SIZE, --array-size ARRAY_SIZE

Indica el tamaño de la matriz. Puede especificar un valor comprendido entre 2 y 10 000. Si especifica las propiedades de matriz para un trabajo, pasa a ser un trabajo de matriz. -d DEPENDS_ON, --depends-on DEPENDS_ON

Especifica una lista de dependencias separadas por puntos y coma para un trabajo. Un trabajo puede depender de un máximo de 20 trabajos. Puede especificar unSEQUENTIALSin especificar un ID de trabajo para los trabajos de matriz. Una dependencia SEQUENTIAL permite que cada trabajo de matriz secundario se complete de forma secuencial, a partir del índice 0. También puede especificar una dependencia de tipo N_TO_N con un ID de trabajo para los trabajos de matriz. Una dependencia N_TO_N conlleva que cada índice secundario de este trabajo deba esperar a que se complete el índice secundario correspondiente de cada dependencia antes de comenzar. La sintaxis de este parámetro es «jobId=, tipo=;...». awsbstat

Muestra los trabajos que se envían en la cola de trabajos del clúster. awsbstat [-h] [-c CLUSTER] [-s STATUS] [-e] [-d] [job_ids [job_ids ...]]

Argumentos de posición job_ids

Especifica la lista de ID de trabajo separados por espacios que se van a mostrar en la salida. Si el trabajo es una matriz de trabajo, se muestran todos los trabajos secundarios. Si se solicita un solo trabajo, se muestra en una versión detallada.

Argumentos con nombre

-c CLUSTER, --cluster CLUSTER

Indica el clúster que se va a utilizar. -s STATUS, --status STATUS

Especifica una lista de estados de los trabajos separados por comas que se van a incluir. El estado del trabajo predeterminado es "activo". Los valores aceptados son: SUBMITTED, PENDING, RUNNABLE, STARTING, RUNNING, SUCCEEDED, FAILED y ALL.

Valor predeterminado: “SUBMITTED,PENDING,RUNNABLE,STARTING y RUNNING”

210 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Programadores admitidos por AWS ParallelCluster

-e, --expand-children

Amplía los trabajos con elementos secundarios (tanto los de matriz como los paralelos de varios nodos).

Valor predeterminado: Falso -d, --details

Muestra detalles de los trabajos.

Valor predeterminado: Falso awsbout

Muestra la salida de un trabajo especificado. awsbout [ - h ] [ - c CLUSTER ] [ - hd HEAD ] [ - t TAIL ] [ - s ] [ - sp STREAM_PERIOD ] job_id

Argumentos de posición job_id

Especifica el ID de trabajo.

Argumentos con nombre

-c CLUSTER, --cluster CLUSTER

Indica el clúster que se va a utilizar. -hd HEAD, --head HEAD

Obtiene las primeras líneas HEAD de la salida del trabajo. -t TAIL, --tail TAIL

Obtiene las últimas líneas de la salida del trabajo. -s, --stream

Obtiene la salida del trabajo y, a continuación, espera a que se produzca una salida adicional. Este argumento puede usarse junto a –tail para comenzar desde las últimas líneas de la salida del trabajo.

Valor predeterminado: Falso -sp STREAM_PERIOD, --stream-period STREAM_PERIOD

Establece el periodo de streaming.

Valor predeterminado: 5 awsbkill

Cancela o termina trabajos enviados en el clúster. awsbkill [ - h ] [ - c CLUSTER ] [ - r REASON ] job_ids [ job_ids ... ]

211 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Programadores admitidos por AWS ParallelCluster

Argumentos de posición job_ids

Especifica la lista de ID de trabajo separados por espacios que se deben cancelar o terminar.

Argumentos con nombre

-c CLUSTER, --cluster CLUSTER

Indica el nombre del clúster que se va a utilizar. -r REASON, --reason REASON

Indica el mensaje que se asociará a un trabajo, en el cual se explica el motivo de su cancelación.

Valor predeterminado: “Terminated by the user” awsbqueues

Muestra la cola de trabajos que se asocia al clúster. awsbqueues [ - h ] [ - c CLUSTER ] [ - d ] [ job_queues [ job_queues ... ]]

Argumentos de posición job_queues

Especifica la lista de nombres de colas separados por espacios que se van a mostrar. Si se solicita una sola cola, se muestra en una versión detallada.

Los argumentos con nombre

-c CLUSTER, --cluster CLUSTER

Especifica el nombre del clúster que se va a utilizar. -d, --details

Indica si se deben mostrar los detalles de las colas.

Valor predeterminado: Falso awsbhosts

Muestra los hosts que pertenecen al entorno informático del clúster. awsbhosts [ - h ] [ - c CLUSTER ] [ - d ] [ instance_ids [ instance_ids ... ]]

Argumentos de posición instance_ids

Especifica una lista de ID de instancias separados por espacios. Si se solicita una sola instancia, se muestra en una versión detallada.

212 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Modo de cola múltiple

Argumentos con nombre

-c CLUSTER, --cluster CLUSTER

Especifica el nombre del clúster que se va a utilizar. -d, --details

Indica si se deben mostrar los detalles de los hosts.

Valor predeterminado: Falso

Modo de cola múltiple

AWS ParallelClusterLa versión 2.9.0 introdujo el modo de cola múltiple. El modo de cola múltiple es compatible cuandoscheduler (p. 257)toma el valorslurmy laqueue_settings (p. 255)está definido. Este modo permite que coexistan diferentes tipos de instancias en los nodos de cálculo. Los recursos informáticos que contienen los diferentes tipos de instancias se pueden escalar hacia arriba o hacia abajo según sea necesario. En el modo de cola, se admiten hasta cinco (5) colas y cada[queue]Sección (p. 281)puede referirse a hasta tres (3)[compute_resource]Secciones (p. 259). Cada una de estas[queue]Secciones (p. 281)es una partición enSlurm Workload Manager. Para obtener más información, consulte Slurmguía para el modo de cola múltiple (p. 200) y Modo de cola múltiple tutorial (p. 316).

EACH[compute_resource]Sección (p. 259)en una cola debe tener un tipo de instancia diferente, y cada uno de estos[compute_resource]se divide además en nodos estáticos y dinámicos. Nodos estáticos para cada[compute_resource]se numeran de 1 al valor demin_count (p. 261). Nodos dinámicos para cada[compute_resource]están numerados de uno (1) a (max_count (p. 261)-min_count). Por ejemplo, simin_countes 2 ymax_countes 10, los nodos dinámicos para ese[compute_resource]están numerados del uno (1) al ocho (8). En cualquier momento, puede haber entre cero (0) y el número máximo de nodos dinámicos en un[compute_resource].

Las instancias que se inician en la flota informática se asignan dinámicamente. Para ayudar a administrar esto, se generan nombres de host para cada nodo. El formato del nombre de host es el siguiente:

$HOSTNAME=$QUEUE-$STATDYN-$INSTANCE_TYPE-$NODENUM

• $QUEUEes el nombre de la cola. Por ejemplo, si se inicia la sección[queue queue- name]entonces»$QUEUE» es»nombre de cola». • $STATDYNesstpara nodos estáticos odypara nodos dinámicos. • $INSTANCE_TYPEes el tipo de instancia del[compute_resource], desde lasinstance_type (p. 260)configuración de Configuración de • $NODENUMes el número del nodo.$NODENUMestá entre uno (1) y el valor demin_count (p. 261)para nodos estáticos y entre uno (1) y (max_count (p. 261)-min_count) para nodos dinámicos.

Tanto los nombres de host como los nombres de dominio completos (FQDN) se crean mediante zonas alojadas de Amazon Route 53. El FQDN es$HOSTNAME.$CLUSTERNAME.pcluster, donde$CLUSTERNAMEes el nombre del[cluster]Sección (p. 239)utilizado para el clúster.

Para convertir la configuración a un modo de cola, utilice la herramientapcluster- config convert (p. 235)comando. Escribe una configuración actualizada con un único[queue]Sección (p. 281)llamado[queue compute]. Esa cola contiene un[compute_resource]Sección (p. 259)que se denomina[compute_resource default]. La[queue compute]y[compute_resource default]tiene la configuración migrada desde el[cluster]Sección (p. 239).

213 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Panel de Amazon CloudWatch Panel de Amazon CloudWatch

A partir deAWS ParallelClusterversión 2.10.0, se crea un panel de Amazon CloudWatch cuando se crea el clúster. Esto facilita la supervisión de los nodos del clúster y la revisión de los registros almacenados en los registros de Amazon CloudWatch Logs. El nombre del panel esparallelcluster-ClusterName-Region. ClusterNamees el nombre de su clúster yRegiónes el Región de AWS del clúster. Puede acceder al panel de la consola o abriendohttps://console.aws.amazon.com/cloudwatch/home? region=Region#dashboards:name=parallelcluster-ClusterName.

Para obtener más información acerca de los paneles de Amazon CloudWatch, consulteUso de paneles de Amazon CloudWatchen laGuía del usuario de Amazon CloudWatch.

Si no desea crear el panel de Amazon CloudWatch, debe completar estos pasos: En primer lugar, agregue un[dashboard]Sección (p. 262)a su archivo de configuración y, a continuación, agregue el nombre de esa sección como el valor de ladashboard_settings (p. 244)Configuración de la[cluster]Sección (p. 239). En las[dashboard]Sección (p. 262), estableceenable (p. 263) = false.

Por ejemplo, si su[dashboard]Sección (p. 262)se denominamyDashboardy las[cluster]Sección (p. 239)se denominamyCluster, sus cambios se asemejan a esto.

[cluster MyCluster] dashboard_settings = MyDashboard ...

[dashboard MyDashboard] enable = false

Integración con Amazon CloudWatch Logs

A partir deAWS ParallelClusterDe forma predeterminada, los registros comunes se almacenan en CloudWatch Logs. Para obtener más información acerca de CloudWatch Logs, consulteGuía del usuario de Amazon CloudWatch Logs. Para configurar la integración de CloudWatch Logs, consulte la[cw_log]Sección (p. 261)y lacw_log_settings (p. 244)configuración de Configuración de

Se crea un grupo de registros para cada clúster con un nombre/aws/parallelcluster/cluster- name(por ejemplo,/aws/parallelcluster/testCluster). Cada registro (o conjunto de registros si la ruta contiene un*) en cada nodo tiene un flujo de registro llamado{hostname}.{instance_id}.{logIdentifier}. (Por ejemplo,ip-172-31-10-46.i-02587cf29cc3048f3.nodewatcher.) Los datos de registro se envían a CloudWatch por laAgente de CloudWatch, que se ejecuta comorooten todas las instancias de clúster.

A partir deAWS ParallelClusterversión 2.10.0, se crea un panel de Amazon CloudWatch cuando se crea el clúster. Este panel facilita la revisión de los registros almacenados en CloudWatch Logs. Para obtener más información, consulte Panel de Amazon CloudWatch (p. 214).

Esta lista contiene la ruta de acceso de los registros y el logIdentifier utilizado para dichos registros.

• /opt/sge/default/spool/qmaster/messages (sge-qmaster) • /var/log/cfn-init.log (cfn-init) • /var/log/chef-client.log (chef-client) • /var/log/cloud-init.log (cloud-init) • /var/log/cloud-init-output.log (cloud-init-output) • /var/log/dcv/agent.*.log (dcv-agent) • /var/log/dcv/dcv-xsession.*.log (dcv-xsession)

214 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Elastic Fabric Adapter

• /var/log/dcv/server.log (dcv-server) • /var/log/dcv/sessionlauncher.log (dcv-session-launcher) • /var/log/dcv/Xdcv.*.log (Xdcv) • /var/log/jobwatcher (jobwatcher) • /var/log/messages (system-messages) • /var/log/nodewatcher (nodewatcher) • /var/log/parallelcluster/clustermgtd (clustermgtd) • /var/log/parallelcluster/computemgtd (computemgtd) • /var/log/parallelcluster/pcluster_dcv_authenticator.log (dcv-authenticator) • /var/log/parallelcluster/pcluster_dcv_connect.log (dcv-ext-authenticator) • /var/log/parallelcluster/slurm_resume.log (slurm_resume) • /var/log/parallelcluster/slurm_suspend.log (slurm_suspend) • /var/log/slurmctld.log (slurmctld) • /var/log/slurmd.log (slurmd) • /var/log/sqswatcher (sqswatcher) • /var/log/supervisord.log (supervisord) • /var/log/syslog (syslog) • /var/spool/sge/*/messages (sge-exec-) • /var/spool/torque/client_logs/* (torque-client) • /var/spool/torque/server_logs/* (torque-server)

Trabajos en clústeres que usanAWS Batchalmacenar la salida de los trabajos que alcanzaron unRUNNING,SUCCEEDED, o bienFAILEDen los CloudWatch Logs. El grupo de registros es/aws/batch/ joby el formato del nombre del flujo de registros esjobDefinitionName/default/ecs_task_id. De forma predeterminada, estos registros están configurados para no caducar, pero se puede modificar el periodo de retención. Para obtener más información, consulteCambiar la retención de datos de registros en CloudWatch Logsen laGuía del usuario de Amazon CloudWatch Logs. Note

chef-client,cloud-init-output,clustermgtd,computemgtd,slurm_resume, yslurm_suspendse agregaron enAWS ParallelClusterversión 2.9.0. ParaAWS ParallelClusterversión 2.6.0,/var/log/cfn-init-cmd.log(cfn-init-cmd) y/var/log/ cfn-wire.log(cfn-wire) también se almacenaron en CloudWatch Logs. Elastic Fabric Adapter

Elastic Fabric Adapter (EFA) es un dispositivo de red que tiene funciones de omisión del sistema operativo para las comunicaciones en red de baja latencia con otras instancias en la misma subred. EFA se expone mediante Libfabric, y lo pueden utilizar las aplicaciones que utilizan Messaging Passing Interface (MPI). Para usar EFA conAWS ParallelCluster, agregue la líneaenable_efa = computea la[cluster]Sección (p. 239)EFA es compatible con tipos de instancias específicos (compute_instance_type (p. 243)son a uno de losc5n.18xlarge,c5n.metal,g4dn.metal,i3en.24xlarge,i3en.metal,m5dn.24xlarge,m5n.24xlarge,m5zn.12xlarge,m5zn.metal,r5dn.24xlarge,r5n.24xlarge,p3dn.24xlarge, yp4d.24xlargePara instancias x86-64 yc6gn.16xlargepara instancias Graviton2 basadas en ARM) en sistemas operativos específicos (base_os (p. 241)esalinux2,centos7,centos8,ubuntu1804, o bienubuntu2004Para instancias x86-64 yalinux2,ubuntu1804, o bienubuntu2004para instancias Graviton2 basadas en ARM). Para obtener más información acerca de la opción enable_efa, consulte enable_efa (p. 247). Se debe utilizar un grupo de ubicación del clúster para minimizar las latencias entre instancias. Para obtener más información, consulte placement (p. 253) y placement_group (p. 253).

215 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Soluciones Intel Select

Para obtener más información, consulteElastic Fabric Adapteren laGuía del usuario de Amazon EC2 para instancias de LinuxyEscale cargas de trabajo HPC con adaptador de estructura elástica yAWS ParallelClusteren laAWSBlog de código abierto. Note

De forma predeterminada, las distribuciones de Ubuntu habilitan la protección ptrace (seguimiento de procesos). A partir de AWS ParallelCluster 2,6.0, la protección ptrace está deshabilitada para que Libfabric funcione correctamente. Para obtener más información, consulteDeshabilitar la protección Ptraceen laGuía del usuario de Amazon EC2 para instancias de Linux. Note

Support con EFA en instancias Graviton2 basadas en ARM se agregó enAWS ParallelClusterversión 2.10.1. Soluciones Intel Select

AWS ParallelClusterestá disponible como una solución Intel Select para simulación y modelado. Las configuraciones se verifican para cumplir con los estándares establecidos por elEspecificación de plataforma Intel HPC, utilice tipos de instancia específicos de Intel y estén configurados para utilizar elElastic Fabric Adapter (p. 215)(EFA).AWS ParallelClusteres la primera solución en la nube que cumple con los requisitos del programa Intel Select Solutions. Los tipos de instancias admitidos incluyenc5n.18xlarge,m5n.24xlarge, yr5n.24xlarge. A continuación se proporciona una configuración de ejemplo compatible con el estándar Intel Select Solutions.

Example Configuración de Intel Select Solutions

[global] update_check = true sanity_check = true cluster_template = intel-select-solutions

[aws] aws_region_name =

[scaling demo] scaledown_idletime = 5

[cluster intel-select-solutions] key_name = base_os = centos7 scheduler = slurm enable_intel_hpc_platform = true master_instance_type = c5.xlarge vpc_settings = scaling_settings = demo queue_settings = c5n,m5n,r5n master_root_volume_size = 200 compute_root_volume_size = 80

[queue c5n] compute_resource_settings = c5n_i1 enable_efa = true placement_group = DYNAMIC

[compute_resource c5n_i1] instance_type = c5n.18xlarge max_count = 5

216 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Habilitar Intel MPI

[queue m5n] compute_resource_settings = m5n_i1 enable_efa = true placement_group = DYNAMIC

[compute_resource m5n_i1] instance_type = m5n.24xlarge max_count = 5

[queue r5n] compute_resource_settings = r5n_i1 enable_efa = true placement_group = DYNAMIC

[compute_resource r5n_i1] instance_type = r5n.24xlarge max_count = 5

Para obtener más información acerca deAWS ParallelClusterPara obtener más información acerca de la plataforma Intel HPC, consulteEspecificación de plataforma Intel HPC (p. 218). Habilitar Intel MPI

Intel MPI está disponible en las AMI de AWS ParallelCluster para los valores alinux2, centos7, centos8, ubuntu1804 y ubuntu2004 de la opción base_os (p. 241). Para utilizar Intel MPI, debe reconocer y aceptar los términos de laLicencia de software simplificada de Intel. Open MPI se instala de forma predeterminada en la ruta de. Para habilitar Intel MPI en lugar de Open MPI, primero debe cargar el módulo Intel MPI. A continuación, debe instalar la última versión mediantemodule load intelmpi. El nombre exacto del módulo cambia con cada actualización. Para saber qué módulos están disponibles, ejecute module avail. El resultado es el siguiente.

$ module avail

------/usr/share/Modules/modulefiles ------dot libfabric-aws/1.8.1amzn1.3 module-info null use.own module-git modules openmpi/4.0.2

------/etc/modulefiles ------

------/opt/intel/impi/2019.7.217/intel64/modulefiles ------intelmpi

Para cargar un módulo, ejecute module load modulename. Puede añadir esto al script utilizado para ejecutar mpirun.

$ module load intelmpi

Para saber qué módulos están cargados, ejecute module list.

$ module list Currently Loaded Modulefiles: 1) intelmpi

Para comprobar que Intel MPI está habilitado, ejecute mpirun --version.

217 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Especificación de plataforma Intel HPC

$ mpirun --version Intel(R) MPI Library for Linux* OS, Version 2019 Update 7 Build 20200312 (id: 5dc2dd3e9) Copyright 2003-2020, Intel Corporation.

Una vez cargado el módulo Intel MPI, se cambian varias rutas para utilizar las herramientas de Intel MPI. Para ejecutar código compilado por las herramientas de Intel MPI, cargue primero el módulo Intel MPI. Note

Intel MPI no es compatible conAWSInstancias basadas en gravitones. Note

AntesAWS ParallelClusterversión 2.5.0, Intel MPI no estaba disponible en laAWS ParallelClusterLas AMI en las regiones China (Ningxia) y China (Pekín). Especificación de plataforma Intel HPC

AWS ParallelCluster es compatible con la especificación de plataforma Intel HPC. La especificación de la plataforma HPC de Intel proporciona un conjunto de requisitos informáticos, de red, de memoria, de almacenamiento y de software para ayudar a lograr un alto nivel de calidad y compatibilidad con cargas de trabajo HPC. Para obtener más información, consulteEspecificación de plataforma Intel HPCyCompatible con la especificación de plataforma Intel HPC.

Para cumplir con la especificación de la plataforma HPC de Intel, se deben cumplir los siguientes requisitos:

• El sistema operativo debe ser CentOS 7 (base_os (p. 241) = centos7). • El tipo de instancia de los nodos de computación debe tener una CPU Intel y al menos 64 GB de memoria. Para el registroc5De tipos de instancias, esto significa que el tipo de instancia debe ser al menos unc5.9xlarge(compute_instance_type (p. 243) = c5.9xlarge). • El nodo principal debe tener al menos 200 GB de almacenamiento. • Debe aceptarse el acuerdo de licencia de usuario final para Intel Parallel Studio (enable_intel_hpc_platform (p. 248) = true). • Cada nodo de computación debe tener al menos 80 GB de almacenamiento (compute_root_volume_size (p. 244) = 80).

El almacenamiento puede ser local o en red (NFS compartido desde el nodo principal, Amazon EBS o FSx for Lustre) y se puede compartir. Librerías de rendimiento de

A partir deAWS ParallelClusterEn la versión 2.10.1, las bibliotecas de rendimiento de Arm están disponibles en laAWS ParallelClusterAMI dealinux2,centos8,ubuntu1804, yubuntu2004para la propiedadbase_os (p. 241)configuración de Configuración de Las bibliotecas de rendimiento de Arm proporcionan bibliotecas matemáticas básicas estándar optimizadas para aplicaciones informáticas de alto rendimiento en procesadores Arm. Para utilizar Arm Performance Libraries, debe reconocer y aceptar los términos de laBibliotecas de rendimiento de brazo (versión gratuita) - Contrato de licencia de usuario final. Para obtener más información sobre las bibliotecas de rendimiento de Arm, consulteBibliotecas de rendimiento de brazo libre.

Para habilitar las bibliotecas de rendimiento de Arm, primero debe cargar el módulo Bibliotecas de rendimiento de Arm.Armpl-21.0.0necesita GCC-9.3 como requisito, cuando carga elarmpl/21.0.0, elgcc/9.3también se cargará. El nombre exacto del módulo cambia con cada actualización. Para saber qué módulos están disponibles, ejecute module avail. A continuación, debe instalar la última versión mediantemodule load armplLa salida es la siguiente.

218 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Connect al nodo director a través de NICE DCV

$ module avail

------/usr/share/Modules/modulefiles ------armpl/21.0.0 dot libfabric-aws/1.11.1amzn1.0 module- git module-info modules null openmpi/4.1.0 use.own

Para cargar un módulo, ejecute module load modulename. Puede añadir esto al script utilizado para ejecutar mpirun.

$ module load armpl

Use of the free of charge version of Arm Performance Libraries is subject to the terms and conditions of the Arm Performance Libraries (free version) - End User License Agreement (EULA). A copy of the EULA can be found in the '/opt/arm/armpl/21.0.0/arm-performance-libraries_21.0_gcc-9.3/license_terms' folder

Para saber qué módulos están cargados, ejecute module list.

$ module list Currently Loaded Modulefiles: 1) /opt/arm/armpl/21.0.0/modulefiles/armpl/gcc-9.3 2) /opt/arm/armpl/21.0.0/modulefiles/armpl/21.0.0_gcc-9.3 3) armpl/21.0.0

Para comprobar que las bibliotecas de rendimiento de brazo están habilitadas, ejecute pruebas de ejemplo.

$ sudo chmod 777 /opt/arm/armpl/21.0.0/armpl_21.0_gcc-9.3/examples $ cd /opt/arm/armpl/21.0.0/armpl_21.0_gcc-9.3/examples $ make ... Testing: no example difference files were generated. Test passed OK

Una vez cargado el módulo de bibliotecas de rendimiento de brazo, se cambian varias rutas para utilizar las herramientas de bibliotecas de rendimiento de brazo. Para ejecutar código compilado por las herramientas de Arm Performance Libraries, cargue primero el módulo Arm Performance Libraries. Note

AWS ParallelClusterusan versiones entre 2.10.1 y 2.10.4armpl/20.2.1. Connect al nodo director a través de NICE DCV

NICE DCV es una tecnología de visualización remota que permite a los usuarios conectarse de forma segura a aplicaciones 3D con gráficos avanzados alojadas en un servidor remoto de alto desempeño. Para obtener más información, consulteNICE DCV.

El software NICE DCV se instala automáticamente en el nodo principal cuando se utilizabase_os (p. 241) = alinux2,base_os (p. 241) = centos7, o bienbase_os (p. 241) = ubuntu1804.

Para habilitar NICE DCV en el nodo principal,dcv_settings (p. 245)debe contener el nombre de un[dcv]Sección (p. 263)que haenable (p. 264) = masterybase_os (p. 241)se debe establecer enalinux2,centos7,centos8, o bienubuntu1804.

219 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Uso pcluster update

[cluster custom-cluster] ... dcv_settings = custom-dcv ... [dcv custom-dcv] enable = master

Para obtener más información acerca de los parámetros de configuración de NICE DCV, consultedcv_settings (p. 245). Para conectarse a la sesión de NICE DCV, utilice elpcluster dcv (p. 227)comando. Note

Support para NICE DCV encentos8se ha añadido enAWS ParallelClusterCompatibilidad con NICE DCVAWSLas instancias basadas en gravitones se agregaron enAWS ParallelClusterversión 2.9.0. Support para NICE DCV enalinux2yubuntu1804se ha añadido enAWS ParallelClusterversión 2.6.0. Support para NICE DCV encentos7se ha añadido enAWS ParallelClusterversión 2.5.0. Note

NICE DCV no es compatible conAWSInstancias basadas en gravitones enAWS ParallelClusterVersiones 2.8.0 y 2.8.1. Certificado NICE DCV HTTPS

NICE DCV genera automáticamente un certificado autofirmado para proteger el tráfico entre el cliente NICE DCV y el servidor NICE DCV.

Para reemplazar el certificado NICE DCV autofirmado de predeterminado por otro certificado, conéctese primero al nodo principal. A continuación, copie el certificado y la clave en la carpeta /etc/dcv antes de ejecutar el comando pcluster dcv (p. 227).

Para obtener más información, consulteCambio del certificado TLSen laGuía del administrador de NICE DCV. Licencia de NICE DCV

El servidor NICE DCV no requiere un servidor de licencias cuando se ejecuta en instancias de Amazon EC2. Sin embargo, el servidor de DCV de NICE debe conectarse periódicamente a un bucket de Amazon S3 para determinar si hay disponible alguna licencia válida.

AWS ParallelCluster añade automáticamente los permisos necesarios a ParallelClusterInstancePolicy. Al usar una política de instancias de IAM personalizada, use los permisos descritos enNICE DCV en Amazon EC2en laGuía del administrador de NICE DCV.

Para obtener sugerencias acerca de la solución de problemas, consulte Solución de problemas en NICE DCV (p. 333). Uso pcluster update

A partir deAWS ParallelClusterversión 2.8.0,pcluster update (p. 233)analiza la configuración utilizada para crear el clúster actual y la configuración del archivo de configuración en busca de problemas. Si se detecta algún problema, se notifican y se muestran los pasos a seguir para solucionarlos. Por ejemplo, si elcompute_instance_type (p. 243)se cambia a un tipo de instancia diferente, la flota informática debe detenerse antes de que pueda continuar una actualización. Este problema se notifica cuando se detecta. Si no se informa de ningún problema de bloqueo, se le preguntará si desea aplicar los cambios.

220 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Uso pcluster update

La documentación de cada configuración define la directiva de actualización para esa configuración.

Política de actualización: Estos ajustes se pueden cambiar durante una actualización., Política de actualización: Esta configuración se puede cambiar durante una actualización.

Estos ajustes se pueden cambiar y el clúster se puede actualizar mediantepcluster update (p. 233). Política de actualización: Si se cambia esta configuración, la actualización no está permitida.

Esta configuración no se puede cambiar si el clúster existente no se ha eliminado. El cambio debe revertirse o el clúster debe eliminarse (usandopcluster delete (p. 228)) y, a continuación, se crea un nuevo clúster (usandopcluster create (p. 224)) en el lugar del antiguo clúster. Política de actualización: Esta configuración no se analiza durante una actualización.

Estos ajustes se pueden cambiar y el clúster se actualiza mediantepcluster update (p. 233). Política de actualización: La flota informática debe detenerse para que esta configuración se cambie para una actualización.

Esta configuración no se puede cambiar mientras exista la flota informática. O bien se debe revertir el cambio o se debe detener la flota informática (usandopcluster stop (p. 232)), actualizado (usandopcluster update (p. 233)) y, a continuación, se crea una nueva flota informática (usandopcluster start (p. 231)). Política de actualización: Esta configuración no se puede reducir durante una actualización.

Estos ajustes se pueden cambiar, pero no se pueden reducir. Si se debe disminuir esta configuración, es necesario eliminar el clúster (usandopcluster delete (p. 228)) y cree un nuevo clúster (usandopcluster create (p. 224)). Política de actualización: Reducir el tamaño de una cola por debajo del número actual de nodos requiere que se detenga primero la flota informática.

Estos ajustes se pueden cambiar, pero si el cambio reduciría el tamaño de la cola por debajo del tamaño actual, se debe detener la flota informática (usandopcluster stop (p. 232)), actualizado (usandopcluster update (p. 233)) y, a continuación, se crea una nueva flota informática (usandopcluster start (p. 231)). Política de actualización: Reducir el número de nodos estáticos en una cola requiere que la flota informática se detenga primero.

Estos ajustes se pueden cambiar, pero si el cambio reduciría el número de nodos estáticos en la cola por debajo del tamaño actual, la flota informática debe detenerse (usandopcluster stop (p. 232)), actualizado (usandopcluster update (p. 233)) y, a continuación, se crea una nueva flota informática (usandopcluster start (p. 231)). Política de actualización: Si se cambia esta configuración, la actualización no está permitida. No se puede forzar la actualización de esta configuración.

Esta configuración no se puede cambiar si el clúster existente no se ha eliminado. El cambio debe revertirse o el clúster debe eliminarse (usandopcluster delete (p. 228)) y, a continuación, se crea un nuevo clúster (usandopcluster create (p. 224)) en el lugar del antiguo clúster.

En este ejemplo se demuestra unapcluster update (p. 233)con algunos cambios que bloquean la actualización.

$ pcluster update Validating configuration file /home/username/.parallelcluster/config... Retrieving configuration from CloudFormation for cluster test-1... Found Changes:

221 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Comandos de la CLI de AWS ParallelCluster

# section/parameter old value new value ------[cluster default] 01* compute_instance_type t2.micro c4.xlarge 02* ebs_settings ebs2 -

[vpc default] 03 additional_sg sg-0cd61884c4ad16341 sg-0cd61884c4ad11234

[ebs ebs2] 04* shared_dir shared my/very/very/long/sha...

Validating configuration update... The requested update cannot be performed. Line numbers with an asterisk indicate updates requiring additional actions. Please look at the details below:

#01 Compute fleet must be empty to update "compute_instance_type" How to fix: Make sure that there are no jobs running, then run the following command: pcluster stop -c $CONFIG_FILE $CLUSTER_NAME

#02 Cannot add/remove EBS Sections How to fix: Revert "ebs_settings" value to "ebs2"

#04 Cannot change the mount dir of an existing EBS volume How to fix: Revert "my/very/very/long/shared/dir" to "shared"

In case you want to override these checks and proceed with the update please use the --force flag. Note that the cluster could end up in an unrecoverable state.

Update aborted.

Comandos de la CLI de AWS ParallelCluster

pclusterypcluster-configson losAWS ParallelClusterComandos de la CLI. Usted usapclusterPara lanzar y administrar clústeres de HPC en Nube de AWS ypcluster-configpara actualizar la configuración

pcluster [ -h ] ( create | update | delete | start | stop | status | list | instances | ssh | dcv | createami | configure | version ) ... pcluster-config [-h] (convert) ...

Temas • pcluster (p. 222) • pcluster-config (p. 235)

pcluster

pclusteres el principalAWS ParallelClusterCommand de la CLI Usted usapclusterPara lanzar y administrar clústeres de HPC en Nube de AWS .

222 AWS ParallelCluster Guía del usuario de AWS ParallelCluster pcluster pcluster [ -h ] ( create | update | delete | start | stop | status | list | instances | ssh | dcv | createami | configure | version ) ...

Arguments pcluster command

Posibles opciones: configure (p. 223), create (p. 224), createami (p. 225), dcv (p. 227), delete (p. 228), instances (p. 229), list (p. 230), ssh (p. 230), start (p. 231), status (p. 232), stop (p. 232), update (p. 233), version (p. 234)

Subcomandos:

Temas • pcluster configure (p. 223) • pcluster create (p. 224) • pcluster createami (p. 225) • pcluster dcv (p. 227) • pcluster delete (p. 228) • pcluster instances (p. 229) • pcluster list (p. 230) • pcluster ssh (p. 230) • pcluster start (p. 231) • pcluster status (p. 232) • pcluster stop (p. 232) • pcluster update (p. 233) • pcluster version (p. 234) pcluster configure

Empieza una configuración de AWS ParallelCluster. pcluster configure [ -h ] [ -c CONFIG_FILE ] [ -r REGION ]

Argumentos con

-h, --help

Muestra el texto de ayuda parapcluster configure. -c CONFIG_FILE, --config CONFIG_FILE

Especifica la ruta completa del archivo de configuración alternativo que se va a utilizar.

El valor predeterminado es ~/.parallelcluster/config.

Para obtener más información, consulte Configuración de AWS ParallelCluster (p. 158).

223 AWS ParallelCluster Guía del usuario de AWS ParallelCluster pcluster

-r REGION, --region REGION

Especifica el Región de AWS para usar. Si se especifica esto, la configuración omite la detección de región.

Sipcluster configure (p. 223)creó una nueva VPC, puede eliminar esa VPC eliminando laAWS CloudFormationpila que creó. El nombre comenzará por»parallelclusternetworking-«y contienen el tiempo de creación en un formato «AAAAMMDDHHMMSS». Puede enumerar las pilas utilizando la herramientalist-stackscomando.

$ aws --region us-east-2 cloudformation list-stacks \ --stack-status-filter "CREATE_COMPLETE" \ --query "StackSummaries[].StackName" | \ grep -e "parallelclusternetworking-" "parallelclusternetworking-pubpriv-20191029205804"

La pila se puede eliminar usando el comandodelete-stackcomando.

$ aws --region us-west-2 cloudformation delete-stack \ --stack-name parallelclusternetworking-pubpriv-20191029205804 pcluster create

Crea un nuevo clúster. pcluster create [ -h ] [ -c CONFIG_FILE ] [ -r REGION ] [ -nw ] [ -nr ] [ -u TEMPLATE_URL ] [ -t CLUSTER_TEMPLATE ] [ -p EXTRA_PARAMETERS ] [ -g TAGS ] cluster_name

Argumentos de posición cluster_name

Define el nombre del clúster. El nombre de la pila de AWS CloudFormation es parallelcluster-cluster_name.

Argumentos con

-h, --help

Muestra el texto de ayuda parapcluster create. -c CONFIG_FILE, --config CONFIG_FILE

Especifica el archivo de configuración alternativo que se va a utilizar.

El valor predeterminado es ~/.parallelcluster/config. -r REGION, --region REGION

Especifica el Región de AWS para usar. El orden de prioridad utilizado para seleccionar la región para un nuevo clúster es el siguiente: 1. -ror--regionparámetro apcluster create (p. 224). 2. AWS_DEFAULT_REGIONvariable de entorno

224 AWS ParallelCluster Guía del usuario de AWS ParallelCluster pcluster

3. aws_region_nameconfiguración de en[aws]sección deAWS ParallelClusterArchivo de configuración (la ubicación predeterminada es~/.parallelcluster/config.) Esta es la ubicación actualizada por elpcluster configure (p. 223)comando. 4. regionconfiguración de en[default]sección deAWS CLIarchivo de configuración (~/.aws/ config.) -nw, --nowait

Indica que no se deben esperar eventos de pila después de ejecutar un comando de pila.

El valor predeterminado es False. -nr, --norollback

Deshabilita la restauración de pila al producirse un error.

El valor predeterminado es False. -u TEMPLATE_URL, --template-url TEMPLATE_URL

: especifica una URL para elAWS CloudFormationsi se utilizó cuando se creó. -t CLUSTER_TEMPLATE, --cluster-template CLUSTER_TEMPLATE

Indica la plantilla de clúster que se va a utilizar. -p EXTRA_PARAMETERS, --extra-parameters EXTRA_PARAMETERS

Añade parámetros adicionales para crear la pila. -g TAGS, --tags TAGS

Especifica etiquetas adicionales que se van a añadir a la pila.

Cuando se llama al comando y comienza a sondear el estado de dicha llamada, es seguro utilizar «Ctrl-C» para salir. Puede volver a visualizar el estado actual llamando a pcluster status mycluster.

Ejemplos:

$ pcluster create mycluster $ pcluster create mycluster --tags '{ "Key1" : "Value1" , "Key2" : "Value2" }' pcluster createami (Linux/macOS) Crea una AMI personalizada para utilizarla con AWS ParallelCluster. pcluster createami [ -h ] -ai BASE_AMI_ID -os BASE_AMI_OS [ -ap CUSTOM_AMI_NAME_PREFIX ] [ -c CONFIG_FILE ] [ -cc CUSTOM_AMI_COOKBOOK ] [ -i INSTANCE_TYPE ] [ -post-install POST_INSTALL_SCRIPT ] [ -r REGION ]

Dependencias requeridas

Además de laAWS ParallelClusterCLI, se requiere la siguiente dependencia para ejecutarpcluster createami:

• Packer: descargue la versión más reciente de https://www.packer.io/downloads.html.

Note

AntesAWS ParallelClusterversión 2.8.0,Berkshelf(instalado mediantegem install berkshelf) fue requerido para usarpcluster createami.

225 AWS ParallelCluster Guía del usuario de AWS ParallelCluster pcluster

Argumentos con

-h, --help

Muestra el texto de ayuda parapcluster createami. -ai BASE_AMI_ID, --ami-id BASE_AMI_ID

Especifica la AMI Base que se usará para crear la AMI de AWS ParallelCluster. -os BASE_AMI_OS, --os BASE_AMI_OS

Especifica el sistema operativo de la AMI Base. Las opciones válidas son: alinux2, ubuntu1804, ubuntu2004, centos7 y centos8. Note

Cambios de soporte del sistema operativo en diferentesAWS ParallelClusterVersiones de • Compatibilidad concentos8, y soporte paracentos6se eliminó enAWS ParallelClusterversión 2.10.0. • Se agregó Support para alinux2 enAWS ParallelClusterversión 2.6.0. • El Support para ubuntu1804 se agregó enAWS ParallelClusterversión 2.5.0. -ap CUSTOM_AMI_NAME_PREFIX, --ami-name-prefix CUSTOM_AMI_NAME_PREFIX

Especifica el nombre del prefijo de la AMI de AWS ParallelCluster obtenida.

El valor predeterminado es custom-ami-. -cc CUSTOM_AMI_COOKBOOK, --custom-cookbook CUSTOM_AMI_COOKBOOK

Especifica el libro de recetas que se usará para crear la AMI de AWS ParallelCluster. -c CONFIG_FILE, --config CONFIG_FILE

Especifica el archivo de configuración alternativo que se va a utilizar.

El valor predeterminado es ~/.parallelcluster/config. -i INSTANCE_TYPE, --instance-type INSTANCE_TYPE

Especifica el tipo de instancia que se va a utilizar para crear la AMI.

El valor predeterminado es t2.xlarge. Note

Support con--instance-typese agregó enAWS ParallelClusterversión 2.4.1. --post-install POST_INSTALL_SCRIPT

: especifica la ruta de la secuencia de comandos de post-instalación. Las rutas deben utilizar uns3://,https://, o bienfile://esquema de URL. Algunos ejemplos son los siguientes: • https://bucket-name.s3.region.amazonaws.com/path/post_install.sh • s3://bucket-name/post_install.sh • file:///opt/project/post_install.sh

Note

Support con--post-installse agregó enAWS ParallelClusterversión 2.10.0.

226 AWS ParallelCluster Guía del usuario de AWS ParallelCluster pcluster

-r REGION, --region REGION

Especifica el Región de AWS para usar. El valor predeterminado es la región especificada mediante el comando pcluster configure (p. 223). pcluster dcv

Interactúa con el servidor NICE DCV que se ejecuta en el nodo principal. pcluster dcv [ -h ] ( connect ) pcluster dcv command

Opciones posibles: connect (p. 227)

Note

Cambios de compatibilidad con el SO para elpcluster dcvcomando en diferentesAWS ParallelClusterVersiones de

• Support conpcluster dcvcomando encentos8se ha añadido enAWS ParallelClusterversión 2.10.0. • Support conpcluster dcvcomando enAWSLas instancias basadas en gravitones se agregaron enAWS ParallelClusterversión 2.9.0. • Support conpcluster dcvcomando enubuntu1804se ha añadido enAWS ParallelClusterversión 2.6.0. • Support conpcluster dcvcomando encentos7se ha añadido enAWS ParallelClusterversión 2.5.0.

Argumentos con

-h, --help

Muestra el texto de ayuda parapcluster dcv.

Subcomandos pcluster dcv connect pcluster dcv connect [ -h ] [ -k SSH_KEY_PATH ] [ -r REGION ] cluster_name

Important

La URL caduca 30 segundos después de emitirse. Si la conexión no se realiza antes de que la URL caduque, ejecutepcluster dcv connectde nuevo para generar una nueva URL.

Argumentos de posición cluster_name

Especifica el nombre del clúster al que hay que conectarse.

227 AWS ParallelCluster Guía del usuario de AWS ParallelCluster pcluster

Los argumentos con nombre

-h, --help

Muestra el texto de ayuda parapcluster dcv connect. -k SSH_KEY_PATH, --key-path SSH_KEY_PATH

Ruta de la clave SSH que se utilizará para la conexión.

La clave debe ser la misma que se especificó en el parámetro de configuración key_name (p. 250) al crear el clúster. Este argumento es opcional, pero, si no se especifica, la clave debe estar disponible de forma predeterminada para el cliente SSH. Por ejemplo, agréguela al ssh-agent con ssh-add. -r REGION, --region REGION

Especifica el Región de AWS para usar. El valor predeterminado es la región especificada mediante el comando pcluster configure (p. 223). -s, --show-url

Muestra una URL de un solo uso para conectarse a la sesión de NICE DCV. El navegador predeterminado no se abre cuando se especifica esta opción. Note

Support con--show-urlse agregó enAWS ParallelClusterversión 2.5.1.

Ejemplo:

$ pcluster dcv connect -k ~/.ssh/id_rsa

Abre el navegador predeterminado para conectarse a la sesión de NICE DCV de que se ejecuta en el nodo principal.

Se crea una nueva sesión de NICE DCV si aún no se ha iniciado una. pcluster delete

Elimina un clúster. pcluster delete [ -h ] [ -c CONFIG_FILE ] [ -r REGION ] [ -nw ] cluster_name

Argumentos de posición cluster_name

Especifica el nombre del clúster que se va a eliminar.

Los argumentos con nombre

-h, --help

Muestra el texto de ayuda parapcluster delete. -c CONFIG_FILE, --config CONFIG_FILE

Especifica el archivo de configuración alternativo que se va a utilizar.

El valor predeterminado es ~/.parallelcluster/config.

228 AWS ParallelCluster Guía del usuario de AWS ParallelCluster pcluster

--keep-logs

Conserva los datos de CloudWatch Logs después de eliminar el clúster. Establece el grupo de registros hasta que se elimina manualmente, pero los eventos del registro caducarán según elretention_days (p. 262)configuración de. El valor predeterminado es 14 días. Note

Support con--keep-logsse agregó enAWS ParallelClusterversión 2.6.0.

-r REGION, --region REGION

Especifica el Región de AWS para usar. El valor predeterminado es la región especificada mediante el comando pcluster configure (p. 223).

Cuando se llama al comando y comienza a sondear el estado de dicha llamada, es seguro utilizar «Ctrl-C» para salir. Puede volver a visualizar el estado actual llamando a pcluster status mycluster.

Sipcluster configure (p. 223)creó una nueva VPC, puede eliminar esa VPC eliminando laAWS CloudFormationpila que creó. El nombre comenzará por»parallelclusternetworking-«y contienen el tiempo de creación en un formato «AAAAMMDDHHMMSS». Puede enumerar las pilas utilizando la herramientalist-stackscomando.

$ aws --region us-east-2 cloudformation list-stacks \ --stack-status-filter "CREATE_COMPLETE" \ --query "StackSummaries[].StackName" | \ grep -e "parallelclusternetworking-" "parallelclusternetworking-pubpriv-20191029205804"

La pila se puede eliminar usando el comandodelete-stackcomando.

$ aws --region us-west-2 cloudformation delete-stack \ --stack-name parallelclusternetworking-pubpriv-20191029205804 pcluster instances

Muestra una lista de todas las instancias de un clúster. pcluster instances [ -h ] [ -c CONFIG_FILE ] [ -r REGION ] cluster_name

Argumentos de posición cluster_name

Muestra las instancias para el clúster con el nombre proporcionado.

Los argumentos con nombre

-h, --help

Muestra el texto de ayuda parapcluster instances. -c CONFIG_FILE, --config CONFIG_FILE

Especifica el archivo de configuración alternativo que se va a utilizar.

229 AWS ParallelCluster Guía del usuario de AWS ParallelCluster pcluster

El valor predeterminado es ~/.parallelcluster/config. -r REGION, --region REGION

Especifica el Región de AWS para usar. El valor predeterminado es la región especificada mediante el comando pcluster configure (p. 223). pcluster list

Muestra una lista de las pilas que están asociadas a AWS ParallelCluster. pcluster list [ -h ] [ -c CONFIG_FILE ] [ -r REGION ]

Los argumentos con nombre

-h, --help

Muestra el texto de ayuda parapcluster list. --color

Muestra el estado del clúster en color.

El valor predeterminado es False. -c CONFIG_FILE, --config CONFIG_FILE

Especifica el archivo de configuración alternativo que se va a utilizar.

El valor predeterminado es c. -r REGION, --region REGION

Especifica el Región de AWS para usar. El valor predeterminado es la región especificada mediante el comando pcluster configure (p. 223).

Genera una lista con el nombre de todas las pilas de AWS CloudFormation denominadas parallelcluster-*. pcluster ssh

Ejecuta un comando ssh con el nombre de usuario y la dirección IP del clúster completados previamente. Se adjuntan argumentos arbitrarios al final del comando ssh. Este comando se puede personalizar en la sección de alias del archivo de configuración. pcluster ssh [ -h ] [ -d ] [ -r REGION ] cluster_name

Argumentos de posición cluster_name

Especifica el nombre del clúster al que hay que conectarse.

Los argumentos con nombre

-h, --help

Muestra el texto de ayuda parapcluster ssh.

230 AWS ParallelCluster Guía del usuario de AWS ParallelCluster pcluster

-d, --dryrun

Muestra el comando que se va a ejecutar y termina.

El valor predeterminado es False. -r REGION, --region REGION

Especifica el Región de AWS para usar. El valor predeterminado es la región especificada mediante el comando pcluster configure (p. 223).

Ejemplo:

$ pcluster ssh -d mycluster -i ~/.ssh/id_rsa

Devuelve un comando ssh con el nombre de usuario y la dirección IP del clúster completados previamente:

$ ssh [email protected] -i ~/.ssh/id_rsa

El comando ssh se define en el archivo de configuración global en Sección [aliases] (p. 238). Se puede personalizar tal y como se indica a continuación.

[ aliases ] ssh = ssh {CFN_USER}@{MASTER_IP} {ARGS}

Variables sustituidas:

CFN_USER

El nombre de usuario para la instancia de base_os (p. 241) que se ha seleccionado. MASTER_IP

La dirección IP del nodo principal. ARGS

Argumentos opcionales que se pasan al comando ssh. pcluster start

Comienza la flota de computación de un clúster que se ha detenido. pcluster start [ -h ] [ -c CONFIG_FILE ] [ -r REGION ] cluster_name

Argumentos de posición cluster_name

Comienza la flota de computación del nombre de clúster proporcionado.

Argumentos con

-h, --help

Muestra el texto de ayuda parapcluster start.

231 AWS ParallelCluster Guía del usuario de AWS ParallelCluster pcluster

-c CONFIG_FILE, --config CONFIG_FILE

Especifica el archivo de configuración alternativo que se va a utilizar.

El valor predeterminado es ~/.parallelcluster/config. -r REGION, --region REGION

Especifica el Región de AWS para usar. El valor predeterminado es la región especificada mediante el comando pcluster configure (p. 223).

Este comando establece los parámetros del grupo de Auto Scaling en uno de los siguientes valores:

• Los valores de configuración inicial (max_queue_size y initial_queue_size) de la plantilla que se utilizó para crear el clúster. • Los valores de configuración que se utilizaron para actualizar el clúster desde que se creó por primera vez. pcluster status

Extrae el estado actual del clúster. pcluster status [ -h ] [ -c CONFIG_FILE ] [ -r REGION ] [ -nw ] cluster_name

Argumentos de posición cluster_name

Muestra el estado del clúster con el nombre proporcionado.

Argumentos con

-h, --help

Muestra el texto de ayuda parapcluster status. -c CONFIG_FILE, --config CONFIG_FILE

Especifica el archivo de configuración alternativo que se va a utilizar.

El valor predeterminado es ~/.parallelcluster/config. -r REGION, --region REGION

Especifica el Región de AWS para usar. El valor predeterminado es la región especificada mediante el comando pcluster configure (p. 223). -nw, --nowait

Indica que no se deben esperar eventos de pila después de procesar un comando de pila.

El valor predeterminado es False. pcluster stop

Detiene la flota de computación y deja el nodo principal en ejecución.

232 AWS ParallelCluster Guía del usuario de AWS ParallelCluster pcluster pcluster stop [ -h ] [ -c CONFIG_FILE ] [ -r REGION ] cluster_name

Argumentos de posición cluster_name

Detiene la flota de computación del nombre de clúster proporcionado.

Argumentos con

-h, --help

Muestra el texto de ayuda parapcluster stop. -c CONFIG_FILE, --config CONFIG_FILE

Especifica el archivo de configuración alternativo que se va a utilizar.

El valor predeterminado es ~/.parallelcluster/config. -r REGION, --region REGION

Especifica el Región de AWS para usar. El valor predeterminado es la región especificada mediante el comando pcluster configure (p. 223).

Establece los parámetros del grupo de Auto Scaling en mínimo/máximo/deseado = 0/0/0 y termina la flota de computación. La cabeza permanece corriendo. Para terminar todos los recursos de EC2 y evitar los cargos por EC2, considere la posibilidad de eliminar el clúster. pcluster update

Analiza el archivo de configuración para determinar si el clúster se puede actualizar de forma segura. Si el análisis determina que el clúster se puede actualizar, se le pedirá que confirme el cambio. Si el análisis muestra que el clúster no se puede actualizar, los valores de configuración que son el origen de los conflictos se enumeran con detalles. Para obtener más información, consulte Uso pcluster update (p. 220). pcluster update [ -h ] [ -c CONFIG_FILE ] [ --force ] [ -r REGION ] [ -nr ] [ -nw ] [ -t CLUSTER_TEMPLATE ] [ -p EXTRA_PARAMETERS ] [ -rd ] [ --yes ] cluster_name

Argumentos de posición cluster_name

Especifica el nombre del clúster que se va a actualizar.

Argumentos con

-h, --help

Muestra el texto de ayuda parapcluster update. -c CONFIG_FILE, --config CONFIG_FILE

Especifica el archivo de configuración alternativo que se va a utilizar.

233 AWS ParallelCluster Guía del usuario de AWS ParallelCluster pcluster

El valor predeterminado es ~/.parallelcluster/config. --force

Habilita una actualización incluso si una o más configuracionestiene un cambio de bloqueoo si se requiere una acción pendiente (como detener la flota informática) antes de que pueda continuar la actualización. Esto no debe combinarse con el--yesargumento. -r REGION, --region REGION

Especifica el Región de AWS para usar. El valor predeterminado es la región especificada mediante el comando pcluster configure (p. 223). -nr, --norollback

Deshabilita la restauración de pila AWS CloudFormation al producirse un error.

El valor predeterminado es False. -nw, --nowait

Indica que no se deben esperar eventos de pila después de procesar un comando de pila.

El valor predeterminado es False. -t CLUSTER_TEMPLATE, --cluster-template CLUSTER_TEMPLATE

Especifica la sección de la plantilla del clúster que se va a utilizar. -p EXTRA_PARAMETERS, --extra-parameters EXTRA_PARAMETERS

Añade parámetros adicionales para actualizar una pila. -rd, --reset-desired

Restablece la capacidad actual de un grupo de Auto Scaling a los valores de configuración inicial.

El valor predeterminado es False. --yes

Supone automáticamente que la respuesta a todas las peticiones es afirmativa. Esto no debe combinarse con el--forceargumento.

Cuando se llama al comando y comienza a sondear el estado de dicha llamada, es seguro utilizar «Ctrl-C» para salir. Puede volver a visualizar el estado actual llamando a pcluster status mycluster. pcluster version

Muestra la versión de AWS ParallelCluster. pcluster version [ -h ]

Para obtener información de marcadores específicos de comandos, ejecute: pcluster [command] –- help.

Argumentos con

-h, --help

Muestra el texto de ayuda parapcluster version.

234 AWS ParallelCluster Guía del usuario de AWS ParallelCluster pcluster-config

Cuando se llama al comando y comienza a sondear el estado de dicha llamada, es seguro utilizar «Ctrl-C» para salir. Puede volver a visualizar el estado actual llamando a pcluster status mycluster. pcluster-config

Actualiza elAWS ParallelClusterArchivo de configuración. pcluster-config [ -h ] [convert]

Para obtener información de marcadores específicos de comandos, ejecute: pcluster-config [command] –h. Argumentos con

-h, --help

Muestra el texto de ayuda parapcluster-config.

Note

Lapcluster-configse agregó enAWS ParallelClusterversión 2.9.0. Subcomandos pcluster-config convert pcluster-config convert [ -h ] [ -c CONFIG_FILE ] [ -t CLUSTER_TEMPLATE ] [ -o OUTPUT_FILE ]

Argumentos con

-h, --help

Muestra el texto de ayuda parapcluster-config convert. -c CONFIG_FILE, --config-file CONFIG_FILE

Especifica la ruta del archivo de configuración que se va a leer.

El valor predeterminado es ~/.parallelcluster/config.

Para obtener más información, consulte Configuración de AWS ParallelCluster (p. 158). -t CLUSTER_TEMPLATE, --cluster-template CLUSTER_TEMPLATE

Indica elSección [cluster] (p. 239)para usar. Si no se especifica este argumento,pcluster- config convertusará la funcióncluster_template (p. 237)en el cuadro de diálogoSección [global] (p. 237). Si no se especifica, el[cluster default]se utiliza. -o OUTPUT_FILE, --output OUTPUT_FILE

: especifica la ruta del archivo de configuración convertido que se va a escribir. De forma predeterminada, la salida se escribe enSTDOUT.

Ejemplo:

235 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Configuration

$ pcluster-config convert -t alpha -o ~/.parallelcluster/multiinstance

Convierte la configuración de clúster especificada en el cuadro de diálogo[cluster alpha]sección de~/.parallelcluster/config, escribiendo el archivo de configuración convertido en~/.parallelcluster/multiinstance.

Configuration

Temas • Layout (p. 236) • Sección [global] (p. 237) • Sección [aws] (p. 238) • Sección [aliases] (p. 238) • Sección [cluster] (p. 239) • Sección [compute_resource] (p. 259) • Sección [cw_log] (p. 261) • Sección [dashboard] (p. 262) • Sección [dcv] (p. 263) • Sección [ebs] (p. 264) • Sección [efs] (p. 268) • Sección [fsx] (p. 271) • Sección [queue] (p. 281) • Sección [raid] (p. 283) • Sección [scaling] (p. 288) • Sección [vpc] (p. 288) • Examples (p. 173)

Por defecto,AWS ParallelClusterutiliza el~/.parallelcluster/configpara todos los parámetros de configuración. Se puede especificar un archivo de configuración personalizado mediante la herramienta- cor--configLa opción de línea de comandos o laAWS_PCLUSTER_CONFIG_FILEvariable de entorno.

Encontrará un archivo de configuración de ejemplo instalado con AWS ParallelCluster, en el directorio Python, en site-packages/aws-parallelcluster/examples/config. El archivo de configuración de ejemplo también está disponible en GitHub, en https://github.com/aws/aws-parallelcluster/blob/v2.11.2/ cli/src/pcluster/examples/config. Layout

Una configuración AWS ParallelCluster se define en varias secciones.

Las siguientes secciones son obligatorias:[global]Sección (p. 237)y[aws]Sección (p. 238).

También debe incluir al menos un[cluster]Sección (p. 239)y una[vpc]Sección (p. 288).

Las secciones comienzan con el nombre de sección entre corchetes, seguido de los parámetros y la configuración.

236 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Sección [global]

[global] cluster_template = default update_check = true sanity_check = true

Sección [global]

Temas • cluster_template (p. 237) • update_check (p. 237) • sanity_check (p. 237)

Especifica opciones de configuración globales relacionadas con pcluster.

[global] cluster_template

Define el nombre delclusterque se usa para el clúster de forma predeterminada. Para obtener información adicional sobreclustersecciones, consulte[cluster]Sección (p. 239). El nombre de clúster debe comenzar con una letra, no puede tener más de 60 caracteres y solo puede contener letras, números y guiones (-).

Por ejemplo, la siguiente configuración especifica que la sección que comienza [cluster default] se utilice de forma predeterminada. cluster_template = default

Política de actualización: Esta configuración no se analiza durante una actualización. (p. 221) update_check

(Opcional)Comprueba si hay actualizaciones depcluster.

El valor predeterminado es true. update_check = true

Política de actualización: Esta configuración no se analiza durante una actualización. (p. 221) sanity_check

(Opcional)Intenta validar la configuración de los recursos que se definen en los parámetros de clúster.

El valor predeterminado es true. Warning

Sisanity_checktoma el valorfalse, se omiten las comprobaciones importantes. Esto puede provocar que la configuración no funcione como se esperaba.

237 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Sección [aws] sanity_check = true

Note

AntesAWS ParallelClusterversión 2.5.0,sanity_check (p. 237)Predeterminadafalse.

Política de actualización: Esta configuración no se analiza durante una actualización. (p. 221) Sección [aws]

(Opcional)Se utiliza para seleccionar el Región de AWS .

La creación de clústeres utiliza este orden de prioridad para seleccionar la región para un nuevo clúster:

1. -ror--regionparámetro parapcluster create (p. 224). 2. AWS_DEFAULT_REGIONvariable de entorno. 3. aws_region_nameconfiguración de Configuración de[aws]sección deAWS ParallelClusterArchivo de configuración (la ubicación predeterminada es~/.parallelcluster/config.) Esta es la ubicación actualizada por elpcluster configure (p. 223)comando. 4. regionconfiguración de Configuración de[default]sección deAWS CLIarchivo de configuración (~/.aws/config.)

Note

AntesAWS ParallelClusterversión 2.10.0, esta configuración se requirió y se aplicó a todos los clústeres.

Para almacenar las credenciales, puede utilizar el entorno, roles de IAM para Amazon EC2 o laAWS CLI, en lugar de guardar credenciales enAWS ParallelClusterarchivo de configuración.

[aws] aws_region_name = Region

Política de actualización: Esta configuración no se analiza durante una actualización. (p. 221) Sección [aliases]

Especifica los alias y le permite personalizar el comando ssh.

Tenga en cuenta la configuración predeterminada siguiente:

• CFN_USERse establece en el nombre de usuario predeterminado para el sistema operativo • MASTER_IPse establece en la dirección IP del nodo principal • ARGSSe establece en los argumentos que el usuario proporciona después depcluster ssh cluster_name

[aliases] # This is the aliases section, you can configure # ssh alias here ssh = ssh {CFN_USER}@{MASTER_IP} {ARGS}

Política de actualización: Esta configuración no se analiza durante una actualización. (p. 221)

238 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Sección [cluster] Sección [cluster]

Temas • additional_cfn_template (p. 240) • additional_iam_policies (p. 240) • base_os (p. 241) • cluster_resource_bucket (p. 242) • cluster_type (p. 243) • compute_instance_type (p. 243) • compute_root_volume_size (p. 244) • custom_ami (p. 244) • cw_log_settings (p. 244) • dashboard_settings (p. 244) • dcv_settings (p. 245) • desired_vcpus (p. 245) • disable_cluster_dns (p. 245) • disable_hyperthreading (p. 246) • ebs_settings (p. 246) • ec2_iam_role (p. 247) • efs_settings (p. 247) • enable_efa (p. 247) • enable_efa_gdr (p. 248) • enable_intel_hpc_platform (p. 248) • encrypted_ephemeral (p. 248) • ephemeral_dir (p. 249) • extra_json (p. 249) • fsx_settings (p. 249) • iam_lambda_role (p. 250) • initial_queue_size (p. 250) • key_name (p. 250) • maintain_initial_size (p. 251) • master_instance_type (p. 251) • master_root_volume_size (p. 251) • max_queue_size (p. 252) • max_vcpus (p. 252) • min_vcpus (p. 252) • placement (p. 253) • placement_group (p. 253) • post_install (p. 254) • post_install_args (p. 254) • pre_install (p. 254) • pre_install_args (p. 254)

239 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Sección [cluster]

• proxy_server (p. 255) • queue_settings (p. 255) • raid_settings (p. 255) • s3_read_resource (p. 256) • s3_read_write_resource (p. 256) • scaling_settings (p. 256) • scheduler (p. 257) • shared_dir (p. 257) • spot_bid_percentage (p. 258) • spot_price (p. 258) • tags (p. 258) • template_url (p. 259) • vpc_settings (p. 259)

Define una plantilla de clúster que se puede utilizar para crear un clúster. Un archivo de configuración puede contener varios[cluster]Secciones.

La misma plantilla de clúster se puede utilizar para crear varios clústeres.

El formato es el siguiente [cluster cluster-template-name]. La[cluster]Sección (p. 239)nombrado por elcluster_template (p. 237)en el[global]Sección (p. 237)se utiliza de forma predeterminada, pero se puede anular en elpcluster (p. 222)Línea de comandos. cluster-template nameDebe comenzar con una letra, no tener más de 30 caracteres y solo puede contener letras, números, guiones (-) y guiones bajos (_).

[cluster default] additional_cfn_template

(Opcional)Define unAWS CloudFormationpara lanzarse junto con el clúster. Esta plantilla adicional se utiliza para crear recursos que están fuera del clúster pero que forman parte del ciclo de vida de este.

El valor tiene que ser una dirección URL HTTP a una plantilla pública con todos los parámetros incluidos.

No hay valor predeterminado. additional_cfn_template = https://.s3.amazonaws.com/my-cfn-template.yaml

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 221) additional_iam_policies

(Opcional)Especifica una lista de nombres de recursos de Amazon (ARN) de políticas de IAM para Amazon EC2. Esta lista se asocia al rol raíz utilizado en el clúster, además de los permisos requeridos porAWS ParallelClusterSeparado por comas. El nombre de una política de IAM y su ARN son diferentes. Los nombres no se pueden usar como argumento paraadditional_iam_policies (p. 240).additional_iam_policies (p. 240)se debe usar en lugar de laec2_iam_role (p. 247). Esto se debe a que las additional_iam_policies (p. 240) se añaden a los permisos que requiere AWS ParallelCluster y ec2_iam_role (p. 247) debe incluir todos

240 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Sección [cluster] los permisos necesarios. Los permisos necesarios a menudo cambian de versión a versión a medida que se añaden características.

No hay valor predeterminado. additional_iam_policies = arn:aws:iam::aws:policy/AdministratorAccess

Note

Compatibilidad conadditional_iam_policies (p. 240)se ha añadido enAWS ParallelClusterversión 2.5.0

Política de actualización: Esta configuración se puede cambiar durante una actualización. (p. 221) base_os

(Obligatorio) Especifica qué tipo de sistema operativo se utiliza en el clúster.

Las opciones disponibles son:

• alinux2 • centos7 • centos8 • ubuntu1804 • ubuntu2004

Note

ParaAWSInstancias basadas en gravitación, soloalinux2,centos8,ubuntu1804, o bienubuntu2004Compatible con. Note

Compatibilidad conubuntu2004se agregó y soporte paraalinuxyubuntu1604se eliminó enAWS ParallelClusterversión 2.11.0 Compatibilidad concentos8se agregó y soporte paracentos6se eliminó enAWS ParallelClusterversión 2.10.0 Compatibilidad conalinux2se ha añadido enAWS ParallelClusterversión 2.6.0 Compatibilidad conubuntu1804, y soporte paraubuntu1404se eliminó enAWS ParallelClusterversión 2.5.0

Aparte de las regiones específicas mencionadas en la tabla siguiente que no admitencentos7ycentos8. Todos los demásAWSLas regiones comerciales admiten todos los siguientes sistemas operativos

Partition (regiones) alinux2 centos7 y ubuntu1804 y centos8 ubuntu2004

Commercial (Todas las regiones no True True True mencionadas específicamente)

AWS GovCloud (EE. UU. Este) (us- True Falso True gov-east-1)

AWS GovCloud (EE. UU. Oeste) (us- True Falso True gov-west-1)

China (Pekín) (cn-north-1) True Falso True

241 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Sección [cluster]

Partition (regiones) alinux2 centos7 y ubuntu1804 y centos8 ubuntu2004

China (Ningxia) (cn-northwest-1) True Falso True

Note

Labase_os (p. 241)También determina el nombre de usuario que se utiliza para iniciar sesión en el clúster.

• centos7 y centos8: centos • ubuntu1804 y ubuntu2004: ubuntu • alinux2: ec2-user

Note

AntesAWS ParallelClusterversión 2.7.0, elbase_os (p. 241)Este parámetro era opcional y el valor predeterminado eraalinux. A partir deAWS ParallelClusterversión 2.7.0, elbase_os (p. 241)El parámetro es obligatorio. Note

Si el parámetro scheduler (p. 257) es awsbatch, solo se admite alinux2. base_os = alinux2

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 221) cluster_resource_bucket

(Opcional)Especifica el nombre del bucket de Amazon S3 que se utiliza para alojar recursos que se generan cuando se crea el clúster. El bucket debe tener habilitado el control de versiones. Para obtener más información, consulteUsar el control de versionesen laAmazon Simple Storage Service Developer Guide. Este depósito se puede utilizar para varios clústeres. El bucket debe encontrarse en la misma región de que el clúster.

Si no se especifica este parámetro, se crea un nuevo bucket cuando se crea el clúster. El nuevo depósito tiene el nombre deparallelcluster-random_string. En este nombre,cadena aleatoria_es una cadena aleatoria de caracteres alfanuméricos. Todos los recursos del clúster se almacenan en este bucket en una ruta con el formulariobucket_name/resource_directory.resource_directorytiene el formulariostack_name-random_string, dondestack_nameEs el nombre de uno de losAWS CloudFormationpilas utilizadas porAWS ParallelCluster. El valor debucket_namese pueden encontrar en elResourcesS3Bucketen la salida de la propiedadparallelcluster-clusternamepila. El valor dedirectorio_recursose puede encontrar en el valor de laArtifactS3RootDirectorysalida de la misma pila.

El valor predeterminado es parallelcluster-random_string. cluster_resource_bucket = my-s3-bucket

Note

Compatibilidad concluster_resource_bucket (p. 242)se ha añadido enAWS ParallelClusterversión 2.10.0

242 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Sección [cluster]

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. No se puede forzar la actualización de esta configuración. (p. 221) cluster_type

(Opcional)Define el tipo de clúster que se va a lanzar. Si el archivo dequeue_settings (p. 255), esta configuración debe ser reemplazada por la opcióncompute_type (p. 281)configuración de Configuración de[queue]Secciones (p. 281).

Las opciones válidas son: ondemand y spot.

El valor predeterminado es ondemand.

Para obtener más información acerca de las instancias de Spot, consulte Uso de Instancias de spot (p. 173). Note

Uso de instancias de spot requiere queAWSServiceRoleFOREC2SpotEn su cuenta existe un rol vinculado al servicio de en su cuenta. Para crear este rol en su cuenta con elAWS CLIEn, ejecute el siguiente comando:

aws iam create-service-linked-role --aws-service-name spot.amazonaws.com

Para obtener más información, consulteRol vinculado al servicio para solicitudes de instancias de spoten laGuía del usuario de Amazon EC2 para instancias de Linux. cluster_type = ondemand

Política de actualización: La flota informática debe detenerse para que esta configuración se cambie para una actualización. (p. 221) compute_instance_type

(Opcional)Define el tipo de Amazon EC2 instance que se utiliza para los nodos de computación en clúster. La arquitectura del tipo de instancia debe ser la misma que la utilizada para elmaster_instance_type (p. 251)configuración de Configuración de Si el archivo dequeue_settings (p. 255), esta configuración debe ser reemplazada por la opcióninstance_type (p. 260)configuración de Configuración de[compute_resource]Secciones (p. 259).

Si utiliza elawsbatch, consulte la creación de entornos informáticos en elAWS BatchPara ver una lista de los tipos de instancias admitidos.

El valor predeterminado es t2.micro, optimal cuando el programador es awsbatch. compute_instance_type = t2.micro

Note

Compatibilidad conAWSInstancias basadas en gravitación (incluidas lasA1yC6g) se agregó enAWS ParallelClusterversión 2.8.0

Política de actualización: La flota informática debe detenerse para que esta configuración se cambie para una actualización. (p. 221)

243 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Sección [cluster] compute_root_volume_size

(Opcional)Especifica el tamaño del volumen raíz de ComputeFleet en gibibytes (GiB). La AMI debe admitir growroot.

El valor predeterminado es 35. Note

ParaAWS ParallelClusterLas versiones de 2.5.0 y 2.10.4, el valor predeterminado era 25. AntesAWS ParallelClusterversión 2.5.0, el valor predeterminado era 20. compute_root_volume_size = 35

Política de actualización: La flota informática debe detenerse para que esta configuración se cambie para una actualización. (p. 221) custom_ami

(Opcional)Especifica el ID de una AMI personalizada que puede utilizar para los nodos de cabeza y computación en lugar de la predeterminadaPublicado AMI.

No hay valor predeterminado. custom_ami = ami-00d4efc81188687a0

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 221) cw_log_settings

(Opcional)Identifica el[cw_log]Con la configuración de CloudWatch Logs. El nombre de sección debe comenzar con una letra, no puede tener más de 30 caracteres y solo puede contener letras, números, guiones (-) y guiones bajos (_).

Para obtener más información, consulte la[cw_log]Sección (p. 261),Panel de Amazon CloudWatch (p. 214), yIntegración con Amazon CloudWatch Logs (p. 214).

Por ejemplo, la siguiente configuración especifica que la sección que comienza[cw_log custom- cw]Para la configuración de CloudWatch Logs. cw_log_settings = custom-cw

Note

Compatibilidad concw_log_settings (p. 244)se ha añadido enAWS ParallelClusterversión 2.6.0

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 221) dashboard_settings

(Opcional)Identifica el[dashboard]con la configuración del panel de CloudWatch. El nombre de sección debe comenzar con una letra, no puede tener más de 30 caracteres y solo puede contener letras, números, guiones (-) y guiones bajos (_).

244 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Sección [cluster]

Para obtener más información, consulte la[dashboard]Sección (p. 262).

Por ejemplo, la siguiente configuración especifica que la sección que comienza[dashboard custom- dashboardse utiliza para la configuración del panel de CloudWatch. dashboard_settings = custom-dashboard

Note

Compatibilidad condashboard_settings (p. 244)se ha añadido enAWS ParallelClusterversión 2.10.0

Política de actualización: Esta configuración se puede cambiar durante una actualización. (p. 221) dcv_settings

(Opcional)Identifica el[dcv]con la configuración de NICE DCV. El nombre de sección debe comenzar con una letra, no puede tener más de 30 caracteres y solo puede contener letras, números, guiones (-) y guiones bajos (_).

Para obtener más información, consulte la[dcv]Sección (p. 263).

Por ejemplo, la siguiente configuración especifica que la sección que comienza[dcv custom-dcv]se utiliza para la configuración de NICE DCV. dcv_settings = custom-dcv

Note

EnAWSInstancias basadas en gravitones, NICE DCV solo es compatible conalinux2. Note

Compatibilidad condcv_settings (p. 245)se ha añadido enAWS ParallelClusterversión 2.5.0

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 221) desired_vcpus

(Opcional)Especifica la cantidad deseada de vCPU para el entorno informático. Solo se utiliza si el programador es awsbatch.

El valor predeterminado es 4. desired_vcpus = 4

Política de actualización: Esta configuración no se analiza durante una actualización. (p. 221) disable_cluster_dns

(Opcional)Especifica si las entradas de DNS para el clúster no se deben crear. Por defecto,AWS ParallelClusterCrea una zona alojada de Route 53. Sidisable_cluster_dnstoma el valortrue, la zona alojada no se crea.

245 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Sección [cluster]

El valor predeterminado es false. disable_cluster_dns = true

Warning

Se requiere un sistema de resolución de nombres para que el clúster funcione correctamente. Sidisable_cluster_dnstoma el valortrueTambién debe proporcionarse un sistema de resolución de nombres adicional. Important

disable_cluster_dns (p. 245)=truesolo se admite si elqueue_settings (p. 255)se especifica. Note

Compatibilidad condisable_cluster_dns (p. 245)se ha añadido enAWS ParallelClusterversión 2.9.1

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 221) disable_hyperthreading

(Opcional)Deshabilita la tecnología Hyper-Threading en los nodos principal y de computación. No todos los tipos de instancias pueden deshabilitar la tecnología Hyper-Threading. Para obtener una lista de los tipos de instancias que admiten la desactivación de hipersubprocesos, consulteNúcleos de CPU y subprocesos de cada núcleo de CPU para cada tipo de instanciasen laGuía del usuario de Amazon EC2 para instancias de Linux. Si el archivo dequeue_settings (p. 255), esta configuración se puede definir o la opcióndisable_hyperthreading (p. 282)configuración de Configuración de[queue]Secciones (p. 281)se puede definir.

El valor predeterminado es false. disable_hyperthreading = true

Note

disable_hyperthreading (p. 246)solo afecta al nodo principal cuandoscheduler (p. 257) = awsbatch. Note

Compatibilidad condisable_hyperthreading (p. 246)se ha añadido enAWS ParallelClusterversión 2.5.0

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 221) ebs_settings

(Opcional)Identifica el[ebs]Con los volúmenes de Amazon EBS que se han montado en el nodo principal. Cuando utilice varios volúmenes de Amazon EBS, introduzca estos parámetros en una lista con cada uno separado por una coma. El nombre de sección debe comenzar con una letra, no puede tener más de 30 caracteres y solo puede contener letras, números, guiones (-) y guiones bajos (_).

Se admiten hasta cinco (5) volúmenes de Amazon EBS adicionales.

246 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Sección [cluster]

Para obtener más información, consulte la[ebs]Sección (p. 264).

Por ejemplo, la siguiente configuración especifica que las secciones que comienzan[ebs custom1]y[ebs custom2]Para los volúmenes de Amazon EBS. ebs_settings = custom1, custom2

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 221) ec2_iam_role

(Opcional)Define el nombre de un rol de IAM de existente para Amazon EC2 que se asocia a todas las instancias del clúster. Un nombre de rol de IAM y su Nombre de recurso de Amazon (ARN) son distintos. Los ARN no se pueden usar como argumento paraec2_iam_role (p. 247). Si se especifica esta opción, se omite el valor additional_iam_policies (p. 240). Le recomendamos que utiliceadditional_iam_policies (p. 240), en lugar deec2_iam_role (p. 247), porque las características agregadas aAWS ParallelClustera menudo requieren nuevos permisos.

No hay valor predeterminado. ec2_iam_role = ParallelClusterInstanceRole

Política de actualización: Esta configuración se puede cambiar durante una actualización. (p. 221) efs_settings

(Opcional)Especifica la configuración relacionada con el sistema de archivos de Amazon EFS. El nombre de sección debe comenzar con una letra, no puede tener más de 30 caracteres y solo puede contener letras, números, guiones (-) y guiones bajos (_).

Para obtener más información, consulte la[efs]Sección (p. 268).

Por ejemplo, la siguiente configuración especifica que la sección que comienza[efs customfs]se utiliza para la configuración del sistema de archivos de Amazon EFS. efs_settings = customfs

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 221) enable_efa

(Opcional)Si está presente, especifica que Elastic Fabric Adapter (EFA) se ha habilitado para los nodos de computación. EFA es compatible con tipos de instancias específicos (c5n.18xlarge,c5n.metal,g4dn.metal,i3en.24xlarge,i3en.metal,m5dn.24xlarge,m5n.24xlarge,m5zn.12xlarge,m5zn.metal,r5dn.24xlarge,r5n.24xlarge,p3dn.24xlarge, yp4d.24xlargePara instancias x86-64 yc6gn.16xlargepara instancias Graviton2 basadas en ARM) en sistemas operativos específicos (base_os (p. 241)esalinux2,centos7,centos8,ubuntu1804, o bienubuntu2004Para instancias x86-64 yalinux2,ubuntu1804, o bienubuntu2004para instancias Graviton2 basadas en ARM). Para obtener más información, consulte Elastic Fabric Adapter (p. 215). Si el archivo dequeue_settings (p. 255), esta configuración se puede definir o la opciónenable_efa (p. 282)configuración de Configuración de[queue]Secciones (p. 281)se puede definir. Se debe utilizar un grupo de ubicación del clúster para minimizar las latencias entre instancias. Para obtener más información, consulte placement (p. 253) y placement_group (p. 253). enable_efa = compute

247 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Sección [cluster]

Note

Se agregó Support para EFA en instancias Graviton2 basadas en ARM enAWS ParallelClusterversión 2.10.1.

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 221) enable_efa_gdr

(Opcional)SicomputePara especificar que Elastic Fabric Adapter (EFA) se ha habilitado para los nodos de computación (acceso directo a memoria remota). Estableciendo esta configuración encomputerequiere que elenable_efa (p. 247)configuración de tiene que estar establecida encompute. El soporte de EFA para GpuDirect RDMA es compatible con tipos de instancias específicos (p4d.24xlarge) en sistemas operativos específicos (base_os (p. 241)esalinux2,centos7,centos8,ubuntu1804, o bienubuntu2004). Si el archivo dequeue_settings (p. 255), esta configuración se puede definir o la opciónenable_efa_gdr (p. 283)configuración de Configuración de[queue]Secciones (p. 281)se puede definir. Se debe utilizar un grupo de ubicación del clúster para minimizar las latencias entre instancias. Para obtener más información, consulte placement (p. 253) y placement_group (p. 253). enable_efa_gdr = compute

Política de actualización: La flota informática debe detenerse para que esta configuración se cambie para una actualización. (p. 221) enable_intel_hpc_platform

(Opcional)Si está presente, indica que elContrato de licencia para el usuario finalpara Intel Parallel Studio se acepta. Esto hace que Intel Parallel Studio se instale en el nodo principal y se comparta con los nodos de computación. Esto añade varios minutos al tiempo que tarda el nodo principal en arrancar. Laenable_intel_hpc_platform (p. 248)solo se admite enCentOS7 (base_os (p. 241) = centos7) yCentOS8 (base_os (p. 241) = centos8).

El valor predeterminado es false. enable_intel_hpc_platform = true

Note

Laenable_intel_hpc_platform (p. 248)El parámetro no es compatible conAWSInstancias basadas en gravitones. Note

Compatibilidad conenable_intel_hpc_platform (p. 248)se ha añadido enAWS ParallelClusterversión 2.5.0.

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 221) encrypted_ephemeral

(Opcional)Cifra los volúmenes de almacenes de instancias efímeros con claves en memoria no recuperables, mediante LUKS (configuración de clave unificada de Linux).

Para obtener más información, consulte https://gitlab.com/cryptsetup/cryptsetup/blob/master/README.md.

248 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Sección [cluster]

El valor predeterminado es false. encrypted_ephemeral = true

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 221) ephemeral_dir

(Opcional)Define la ruta donde se montan los volúmenes de almacenes de instancias si se usan.

El valor predeterminado es /scratch. ephemeral_dir = /scratch

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 221) extra_json

(Opcional)Define el JSON adicional que se combina en elChef dna.json. Para obtener más información, consulte Creación de una AMI de AWS ParallelCluster personalizada (p. 306).

El valor predeterminado es {}. extra_json = {}

Note

A partir deAWS ParallelClusterVersión 2.6.1, la mayoría de las recetas de instalación se omiten de forma predeterminada al lanzar nodos para mejorar los tiempos de inicio. Para ejecutar todas las recetas de instalación para una mejor compatibilidad con versiones anteriores a costa de los tiempos de inicio, agregue"skip_install_recipes" : "no"a laclusteren el campoextra_json (p. 249)configuración de Configuración de Por ejemplo:

extra_json = { "cluster" : { "skip_install_recipes" : "no" } }

Política de actualización: La flota informática debe detenerse para que esta configuración se cambie para una actualización. (p. 221) fsx_settings

(Opcional)Especifica la sección que define la configuración de FSx for Lustre. El nombre de sección debe comenzar con una letra, no puede tener más de 30 caracteres y solo puede contener letras, números, guiones (-) y guiones bajos (_).

Para obtener más información, consulte la[fsx]Sección (p. 271).

Por ejemplo, la siguiente configuración especifica que la sección que comienza[fsx fs]se utiliza para el FSx para la configuración de Lustre. fsx_settings = fs

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 221)

249 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Sección [cluster] iam_lambda_role

(Opcional)Define el nombre de unAWS LambdaRol de ejecución. Este rol se adjunta a todas las funciones de Lambda del clúster. Para obtener más información, consulteAWS LambdaRol de ejecución deen laAWS LambdaGuía para desarrolladores.

Un nombre de rol de IAM y su Nombre de recurso de Amazon (ARN) son distintos. Los ARN no se pueden utilizar como argumento paraiam_lambda_role. Si ambosec2_iam_role (p. 247)yiam_lambda_roleestán definidos, y elscheduler (p. 257)essge,slurm, o bientorque, entonces no habrá roles creados. Si el archivo descheduler (p. 257)esawsbatch, entonces habrá roles creados durantepcluster start (p. 231). Para ver ejemplos de políticas de, consulteParallelClusterLambdaPolicyconSGE,Slurm, o bienTorque (p. 197)yParallelClusterLambdaPolicy con awsbatch (p. 198).

No hay valor predeterminado. iam_lambda_role = ParallelClusterLambdaRole

Note

Compatibilidad coniam_lambda_rolese ha añadido enAWS ParallelClusterversión 2.10.1

Política de actualización: Esta configuración se puede cambiar durante una actualización. (p. 221) initial_queue_size

(Opcional)Establece el número inicial de instancias de Amazon EC2 que lanzar como nodos de computación en el clúster. Si el archivo dequeue_settings (p. 255), esta configuración debe eliminarse y reemplazarse por la opcióninitial_count (p. 260)configuración de Configuración de[compute_resource]Secciones (p. 259).

Esta configuración solo se aplica a los programadores tradicionales (SGE, Slurm y Torque). Si el archivo demaintain_initial_size (p. 251)configuración de configuración estrue, a continuación, elinitial_queue_size (p. 250)El valor de debe ser al menos un (1).

Si el programador es awsbatch, utilice min_vcpus (p. 252) en su lugar.

El valor predeterminado es 2. initial_queue_size = 2

Política de actualización: Esta configuración se puede cambiar durante una actualización. (p. 221) key_name

(Opcional)Asigna un nombre a un key pair de Amazon EC2 con el que se va a habilitar el acceso de SSH a las instancias. key_name = mykey

Note

AntesAWS ParallelClusterversión 2.11.0,key_nameera una configuración requerida.

250 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Sección [cluster]

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 221) maintain_initial_size

(Opcional)Mantiene el tamaño inicial del grupo de Auto Scaling para programadores tradicionales (SGE,Slurm, yTorque).

Si el programador es awsbatch, utilice desired_vcpus (p. 245) en su lugar.

Esta configuración es un indicador booleano. Si se establece entrue, el grupo de Auto Scaling nunca tendrá menos miembros que el valor deinitial_queue_size (p. 250), y el valor deinitial_queue_size (p. 250)debe ser uno (1) o mayor. El clúster también se puede ampliar y escalar hasta el valor de max_queue_size (p. 252). Sicluster_type = spotA continuación, el grupo de Auto Scaling puede tener instancias interrumpidas y el tamaño puede ser inferior ainitial_queue_size (p. 250).

Si se establece enfalse, el grupo de Auto Scaling se puede reducir a cero (0) miembros para evitar que los recursos permanezcan inactivos cuando no sean necesarios.

Si el archivo dequeue_settings (p. 255), esta configuración debe ser eliminada y reemplazada por lainitial_count (p. 260)ymin_count (p. 261)configuración de Configuración de[compute_resource]Secciones (p. 259).

El valor predeterminado es false. maintain_initial_size = false

Política de actualización: Esta configuración se puede cambiar durante una actualización. (p. 221) master_instance_type

(Opcional)Define el tipo de Amazon EC2 instance que se utiliza para el nodo principal. La arquitectura del tipo de instancia debe ser la misma que la utilizada para elcompute_instance_type (p. 243)configuración de Configuración de

En las regiones que tienen una capa gratuita, el valor predeterminado es el tipo de instancia de capa gratuita (t2.microort3.micro). En las regiones que no tienen una capa gratuita, el valor predeterminado est3.micro. Para obtener más información acerca de laAWSCapa gratuita, consulteAWSPreguntas frecuentes de capa gratuita. master_instance_type = t2.micro

Note

AntesAWS ParallelClusterversión 2.10.1, de forma predeterminadat2.microen todas las regiones. EnAWS ParallelClusterversión 2.10.0, elp4d.24xlargeNo se admite para el nodo principal. Compatibilidad conAWSInstancias basadas en gravitones (comoA1yC6g) se ha añadido enAWS ParallelClusterversión 2.8.0

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 221) master_root_volume_size

(Opcional)Especifica el tamaño del volumen raíz del nodo principal en gibibytes (GiB). La AMI debe admitir growroot.

251 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Sección [cluster]

El valor predeterminado es 35. Note

ParaAWS ParallelClusterLas versiones de 2.5.0 y 2.10.4, el valor predeterminado era 25. AntesAWS ParallelClusterversión 2.5.0, el valor predeterminado era 20. master_root_volume_size = 35

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 221) max_queue_size

(Opcional)Establece el número máximo de instancias de Amazon EC2 que se pueden lanzar en el clúster. Si el archivo dequeue_settings (p. 255), esta configuración debe eliminarse y reemplazarse por la opciónmax_count (p. 261)configuración de Configuración de[compute_resource]Secciones (p. 259).

Esta configuración solo se aplica a los programadores tradicionales (SGE, Slurm y Torque).

Si el programador es awsbatch, utilice max_vcpus (p. 252) en su lugar.

El valor predeterminado es 10. max_queue_size = 10

Política de actualización: Esta configuración se puede cambiar durante una actualización, pero la flota informática debe detenerse si se reduce el valor. De lo contrario, los nodos existentes pueden ser terminados. max_vcpus

(Opcional)Especifica la cantidad máxima de vCPU para el entorno informático. Solo se utiliza si el programador es awsbatch.

El valor predeterminado es 20. max_vcpus = 20

Política de actualización: Esta configuración no se puede reducir durante una actualización. (p. 221) min_vcpus

(Opcional)Mantiene el tamaño inicial del grupo de Auto Scaling para laawsbatchprogramador.

Si el programador es SGE, Slurm o Torque, utilice maintain_initial_size (p. 251) en su lugar.

El entorno informático nunca tendrá menos miembros que el valor de min_vcpus (p. 252).

El valor predeterminado es 0. min_vcpus = 0

Política de actualización: Esta configuración se puede cambiar durante una actualización. (p. 221)

252 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Sección [cluster] placement

(Opcional)Define la lógica de los grupos de ubicación del clúster, lo que permite a todo el clúster o solo a las instancias de computación utilizar el grupo de ubicación.

Si el archivo dequeue_settings (p. 255), entonces esta configuración debe eliminarse y reemplazarse porplacement_group (p. 283)para cada una de las opciones[queue]Secciones (p. 281). Si se utiliza el mismo grupo de ubicación para diferentes tipos de instancias, es más probable que la solicitud pueda fallar debido a un error de capacidad insuficiente. Para obtener más información, consulteCapacidad de la instancia insuficienteen laGuía del usuario de Amazon EC2 para instancias de Linux. Varias colas solo pueden compartir un grupo de ubicación si se crea de antemano y se configura en elplacement_group (p. 283)para cada cola. Si cada[queue]Secciones (p. 281)define unplacement_group (p. 283), el nodo principal no puede estar en el grupo de ubicación de una cola.

Las opciones válidas son cluster o compute.

Este parámetro no se utiliza cuando el programador esawsbatch.

El valor predeterminado es compute. placement = compute

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 221) placement_group

(Opcional)Define el grupo de ubicación en clúster. Si el archivo dequeue_settings (p. 255), esta configuración debe eliminarse y reemplazarse por la opciónplacement_group (p. 283)configuración de Configuración de[queue]Secciones (p. 281).

Las opciones válidas son los siguientes valores:

• DYNAMIC • Un nombre de grupo de ubicación del clúster de Amazon EC2 existente

Cuando se establece en DYNAMIC, se crea y elimina un grupo de ubicación único como parte de la pila del clúster.

Este parámetro no se utiliza cuando el programador esawsbatch.

Para obtener más información acerca de los grupos de ubicación, consulteGrupos de ubicaciónen laGuía del usuario de Amazon EC2 para instancias de Linux. Si se utiliza el mismo grupo de ubicación para diferentes tipos de instancias, es más probable que la solicitud pueda fallar debido a un error de capacidad insuficiente. Para obtener más información, consulteCapacidad de la instancia insuficienteen laGuía del usuario de Amazon EC2 para instancias de Linux.

No hay valor predeterminado.

No todos los tipos de instancias admiten grupos de ubicación en clúster. Por ejemplo, el tipo de instancia predeterminado det3.microNo admite grupos de ubicación en clúster. Para obtener información acerca de la lista de tipos de instancias que admiten grupos de ubicación, consulteReglas y limitaciones de los grupos de ubicación en clústeren laGuía del usuario de Amazon EC2 para instancias de Linux. Consulte Grupos de ubicación y problemas de lanzamiento de instancias (p. 333) para obtener sugerencias al trabajar con grupos de ubicación. placement_group = DYNAMIC

253 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Sección [cluster]

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 221) post_install

(Opcional)Especifica la URL de un script de posinstalación que se ejecuta después de que lo hagan todos losboot_as_*se ejecutan secuencias de comandos. Para obtener más información, consulte Acciones de arranque personalizadas (p. 170).

Cuando se utilizaawsbatchComo programador, el script de posinstalación solo se ejecuta en el nodo principal.

El formato de los parámetros puede ser http://hostname/path/to/script.sh o s3://bucketname/path/to/script.sh.

No hay valor predeterminado. post_install = s3:///my-post-install-script.sh

Política de actualización: La flota informática debe detenerse para que esta configuración se cambie para una actualización. (p. 221) post_install_args

(Opcional)Especifica una lista de argumentos entre comillas que se pasará al script de posinstalación.

No hay valor predeterminado. post_install_args = "argument-1 argument-2"

Política de actualización: La flota informática debe detenerse para que esta configuración se cambie para una actualización. (p. 221) pre_install

(Opcional)Especifica la URL de un script de preinstalación que se ejecuta antes que cualquierboot_as_*se ejecutan secuencias de comandos. Para obtener más información, consulte Acciones de arranque personalizadas (p. 170).

Cuando se utilizaawsbatchComo programador, el script de preinstalación solo se ejecuta en el nodo principal.

El formato de los parámetros puede ser http://hostname/path/to/script.sh o s3://bucketname/path/to/script.sh.

No hay valor predeterminado. pre_install = s3:///my-pre-install-script.sh

Política de actualización: La flota informática debe detenerse para que esta configuración se cambie para una actualización. (p. 221) pre_install_args

(Opcional)Especifica una lista de argumentos entre comillas que se pasará al script de preinstalación.

254 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Sección [cluster]

No hay valor predeterminado. pre_install_args = "argument-3 argument-4"

Política de actualización: La flota informática debe detenerse para que esta configuración se cambie para una actualización. (p. 221) proxy_server

(Opcional)Define un servidor proxy HTTP o HTTPS, normalmentehttp://x.x.x.x:8080.

No hay valor predeterminado. proxy_server = http://10.11.12.13:8080

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 221) queue_settings

(Opcional)Especifica que el clúster utiliza colas en lugar de una flota informática homogénea y que[queue]Secciones (p. 281)se utilizan. La primera[queue]Sección (p. 281)listada es la cola predeterminada del programador. LaqueueLos nombres de sección deben comenzar con una letra en minúsculas, no tener más de 30 caracteres y solo puede contener letras en minúscula, números y guiones (-). Important

queue_settings (p. 255)Solo se admite cuandoscheduler (p. 257)toma el valorslurm. Lacluster_type (p. 243),compute_instance_type (p. 243),initial_queue_size (p. 250),maintain_initial_size (p. 251),max_queue_size (p. 252),placement (p. 253),placement_group (p. 253), yspot_price (p. 258)Los valores de configuración no se deben especificar. Ladisable_hyperthreading (p. 246)yenable_efa (p. 247)Las opciones de configuración se pueden especificar en el[cluster]Sección (p. 239)o el[queue]Secciones (p. 281), pero no ambos.

Hasta cinco (5)[queue]Secciones (p. 281)Se admiten.

Para obtener más información, consulte la[queue]Sección (p. 281).

Por ejemplo, la siguiente configuración especifica que las secciones que comienzan[queue q1]y[queue q2]se utilizan. queue_settings = q1, q2

Note

Compatibilidad conqueue_settings (p. 255)se ha añadido enAWS ParallelClusterversión 2.9.0

Política de actualización: La flota informática debe detenerse para que esta configuración se cambie para una actualización. (p. 221) raid_settings

(Opcional)Identifica el[raid]En la sección de configuración RAID de volumen de Amazon EBS. El nombre de sección debe comenzar con una letra, no puede tener más de 30 caracteres y solo puede contener letras, números, guiones (-) y guiones bajos (_).

255 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Sección [cluster]

Para obtener más información, consulte la[raid]Sección (p. 283).

Por ejemplo, la siguiente configuración especifica que la sección que comienza[raid rs]para la configuración Auto Scaling. raid_settings = rs

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 221) s3_read_resource

(Opcional)Especifica un recurso de Amazon S3 al queAWS ParallelClusterLos nodos tienen concedido acceso de solo lectura.

Por ejemplo,arn:aws:s3:::my_corporate_bucket*Proporciona acceso de solo lectura a lami_corporate_bucketbucket y a los objetos que incluye.

ConsulteTrabajo con Amazon S3 (p. 173)para obtener información detallada sobre el formato.

No hay valor predeterminado. s3_read_resource = arn:aws:s3:::my_corporate_bucket*

Política de actualización: Esta configuración se puede cambiar durante una actualización. (p. 221) s3_read_write_resource

(Opcional)Especifica un recurso de Amazon S3 queAWS ParallelClusterLos nodos tienen concedido acceso de lectura/escritura a.

Por ejemplo,arn:aws:s3:::my_corporate_bucket/Development/*Proporciona acceso de lectura/ escritura a todos los objetos de laDevelopmentde la carpetami_corporate_bucketcubo.

ConsulteTrabajo con Amazon S3 (p. 173)para obtener información detallada sobre el formato.

No hay valor predeterminado. s3_read_write_resource = arn:aws:s3:::my_corporate_bucket/*

Política de actualización: Esta configuración se puede cambiar durante una actualización. (p. 221) scaling_settings

Identifica el[scaling]con la configuración Auto Scaling. El nombre de sección debe comenzar con una letra, no puede tener más de 30 caracteres y solo puede contener letras, números, guiones (-) y guiones bajos (_).

Para obtener más información, consulte la[scaling]Sección (p. 288).

Por ejemplo, la siguiente configuración especifica que la sección que comienza[scaling custom]se utiliza para la configuración Auto Scaling. scaling_settings = custom

256 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Sección [cluster]

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 221) scheduler

(Obligatorio) Define el programador de clúster.

Las opciones válidas son los siguientes valores: awsbatch

AWS Batch sge

Son of Grid Engine (SGE) slurm

Slurm Workload Manager (Slurm) torque

Torque Resource Manager (Torque)

Warning

A partir del 31 de diciembre de 2021,AWSya no incluiráSGEyTorquesoporte para todas las versiones publicadas deAWS ParallelCluster. Versiones anteriores deAWS ParallelClusterQue apoyenSGEyTorqueseguirá estando disponible para su descarga y uso. Sin embargo, estas versiones no serán elegibles para futuras actualizaciones o asistencia para la solución de problemas delAWSy servicios deAWSEquipos de Support. Por otra parte, las futuras versiones deAWS ParallelClusterrealizado antes y después del 31 de diciembre de 2021 no incluirá soporte paraSGEorTorque.

Para obtener más información sobre el programador awsbatch, consulte la configuración de red (p. 169). Note

AntesAWS ParallelClusterversión 2.7.0, elschedulerEste parámetro era opcional y el valor predeterminado erasge. A partir deAWS ParallelClusterversión 2.7.0, elschedulerEl parámetro es obligatorio. scheduler = slurm

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 221) shared_dir

(Opcional)Define la ruta donde se monta el volumen de Amazon EBS compartido.

No use esta opción con varios volúmenes de Amazon EBS. En lugar de esto, proporcioneshared_dir (p. 257)valores bajo cada[ebs]Sección (p. 264).

Consulte la[ebs]Sección (p. 264)Para obtener información detallada sobre cómo trabajar con varios volúmenes de Amazon EBS.

El valor predeterminado es /shared.

257 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Sección [cluster]

En el ejemplo siguiente se muestra un volumen de Amazon EBS compartido montado en/myshared. shared_dir = myshared

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 221) spot_bid_percentage

(Opcional)Establece el porcentaje bajo demanda que se usa para calcular el precio de spot máximo de ComputeFleet, cuandoawsbatches el programador.

Si no se especifica, se selecciona el precio de mercado de spot actual con el precio bajo demanda como límite. spot_bid_percentage = 85

Política de actualización: Esta configuración se puede cambiar durante una actualización. (p. 221) spot_price

(Opcional)Establece el precio de spot máximo para ComputeFleet en programadores tradicionales (SGE,Slurm, yTorque). Solo se utiliza cuando la configuración cluster_type (p. 243) se establece en spot. Si no especifica ningún valor, se le cobrará el precio de spot, con el precio bajo demanda como límite máximo. Si el archivo dequeue_settings (p. 255), esta configuración debe eliminarse y reemplazarse por la opciónspot_price (p. 261)configuración de Configuración de[compute_resource]Secciones (p. 259).

Si el programador es awsbatch, utilice spot_bid_percentage (p. 258) en su lugar.

Para obtener ayuda para encontrar una instancia de spot que se ajuste a sus necesidades, consulte laAsesor de instancias de spot. spot_price = 1.50

Note

EnAWS ParallelClusterversión 2.5.0, sicluster_type = spotbutspot_price (p. 258)Si no se especifica, se produce un error en el inicio de instancias de ComputeFleet. Esto se corrigió enAWS ParallelClusterversión 2.5.1.

Política de actualización: Esta configuración se puede cambiar durante una actualización. (p. 221) tags

(Opcional)Define las etiquetas que va a utilizarAWS CloudFormation.

Si se especifican etiquetas de línea de comandos a través de --tags, se combinan con etiquetas de configuración.

Las etiquetas de la línea de comandos sobrescriben las etiquetas de configuración que tienen la misma clave.

Las etiquetas están en formato JSON. No utilice comillas fuera de las llaves.

258 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Sección [compute_resource]

Para obtener más información, consulteAWS CloudFormationEtiquetas de recursoen laAWS CloudFormationGuía del usuario de. tags = {"key" : "value", "key2" : "value2"}

Política de actualización: La flota informática debe detenerse para que esta configuración se cambie para una actualización. (p. 221) Note

La directiva de actualización no admite el cambio detagsconfiguración de Configuración deAWS ParallelClusterversión 2.8.0 a 2.9.1. template_url

(Opcional)Define la ruta de acceso alAWS CloudFormationque se utiliza para crear el clúster.

Actualiza la plantilla que se utilizó originalmente para crear la pila.

El valor predeterminado es https://aws_region_name-aws- parallelcluster.s3.amazonaws.com/templates/aws-parallelcluster-version.cfn.json. Warning

Este es un parámetro avanzado. Si usted lo cambia en esta configuración, será por su cuenta y riesgo. template_url = https://us-east-1-aws-parallelcluster.s3.amazonaws.com/templates/aws- parallelcluster-2.11.2.cfn.json

Política de actualización: Esta configuración no se analiza durante una actualización. (p. 221) vpc_settings

(Obligatorio)Identifica el[vpc]Con la configuración de Amazon VPC donde se implementa el clúster. El nombre de sección debe comenzar con una letra, no puede tener más de 30 caracteres y solo puede contener letras, números, guiones (-) y guiones bajos (_).

Para obtener más información, consulte la[vpc]Sección (p. 288).

Por ejemplo, la siguiente configuración especifica que la sección que comienza[vpc public]se utiliza para la configuración de Amazon VPC. vpc_settings = public

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 221) Sección [compute_resource]

Temas • initial_count (p. 260) • instance_type (p. 260) • max_count (p. 261) • min_count (p. 261)

259 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Sección [compute_resource]

• spot_price (p. 261)

Define los valores de configuración de un recurso de computación.[compute_resource]Secciones (p. 259)se hace referencia a lacompute_resource_settings (p. 281)en el[queue]Sección (p. 281).[compute_resource]Secciones (p. 259)sólo se admiten cuandoscheduler (p. 257)toma el valorslurm.

El formato es el siguiente.[compute_resource ].nombre-recurso de computaciónDebe comenzar con una letra, no tener más de 30 caracteres y solo puede contener letras, números, guiones (-) y guiones bajos (_).

[compute_resource cr1] instance_type = c5.xlarge min_count = 0 initial_count = 2 max_count = 10 spot_price = 0.5

Note

Support con[compute_resource]Sección (p. 259)se ha añadido enAWS ParallelClusterversión 2.9.0 initial_count

(Opcional)Establece el número inicial de instancias de Amazon EC2 que se lanzarán para este recurso informático. La creación de clústeres no se completa hasta que al menos estos nodos se hayan iniciado en el recurso informático. Si el archivo decompute_type (p. 281)para la cola esspoty no hay suficientes instancias puntuales disponibles, es posible que la creación del clúster se agote el tiempo de espera y falle. Cualquier recuento mayor que elmin_count (p. 261)es la capacidad dinámica sujeta a lascaledown_idletime (p. 288)configuración de Configuración de Esta configuración reemplaza la configuración initial_queue_size (p. 250).

El valor predeterminado es 0. initial_count = 2

Política de actualización: La flota informática debe detenerse para que esta configuración se cambie para una actualización. (p. 221) instance_type

(Obligatorio)Define el tipo de instancia de Amazon EC2 que se utiliza para este recurso informático. La arquitectura del tipo de instancia debe ser la misma que la utilizada para elmaster_instance_type (p. 251)configuración de Configuración de Lainstance_typedebe ser único para cada[compute_resource]Sección (p. 259)a la que se hace referencia en[queue]Sección (p. 281). Esta configuración reemplaza la configuración compute_instance_type (p. 243). instance_type = t2.micro

Política de actualización: La flota informática debe detenerse para que esta configuración se cambie para una actualización. (p. 221)

260 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Sección [cw_log] max_count

(Opcional)Establece el número máximo de instancias de Amazon EC2 que se pueden lanzar en este recurso de computación. Cualquier recuento mayor que elinitial_count (p. 260)se inicia en modo de apagado. Esta configuración reemplaza la configuración max_queue_size (p. 252).

El valor predeterminado es 10. max_count = 10

Política de actualización: Reducir el tamaño de una cola por debajo del número actual de nodos requiere que se detenga primero la flota informática. (p. 221) Note

La directiva de actualización no admite el cambio demax_counthasta que se detuvo la flota informática paraAWS ParallelClusterVersión 2.0.0 a la versión 2.9.1. min_count

(Opcional)Establece el número mínimo de instancias de Amazon EC2 que se pueden lanzar en este recurso de computación. Estos nodos son todos de capacidad estática. La creación del clúster no se completa hasta que se haya iniciado al menos este número de nodos en el recurso informático.

El valor predeterminado es 0. min_count = 1

Política de actualización: Reducir el número de nodos estáticos en una cola requiere que la flota informática se detenga primero. (p. 221) Note

La directiva de actualización no admite el cambio demin_counthasta que se detuvo la flota informática paraAWS ParallelClusterVersión 2.0.0 a la versión 2.9.1. spot_price

(Opcional)Establece el precio puntual máximo para este recurso informático. Solo se usa cuando elcompute_type (p. 281)para la cola que contiene estos recursos informáticos se establece enspot. Esta configuración reemplaza la configuración spot_price (p. 258).

Si no especifica ningún valor, se le cobrará el precio de spot, con el precio bajo demanda como límite máximo.

Para obtener ayuda para encontrar una instancia de spot que se ajuste a sus necesidades, consulte laAsesor de instancias de spot. spot_price = 1.50

Política de actualización: La flota informática debe detenerse para que esta configuración se cambie para una actualización. (p. 221) Sección [cw_log]

Define los valores de configuración de CloudWatch Logs.

261 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Sección [dashboard]

El formato es el siguiente.[cw_log cw-log-name].cw-log-nameDebe comenzar con una letra, no tener más de 30 caracteres y solo puede contener letras, números, guiones (-) y guiones bajos (_).

[cw_log custom-cw-log] enable = true retention_days = 14

Para obtener más información, consulte Integración con Amazon CloudWatch Logs (p. 214), Panel de Amazon CloudWatch (p. 214) y Integración con Amazon CloudWatch Logs (p. 214). Note

Compatibilidad concw_logse ha añadido enAWS ParallelClusterversión 2.6.0. enable

(Opcional)Indica si CloudWatch Logs está habilitado.

El valor predeterminado es true. Usarfalsepara deshabilitar los CloudWatch Logs.

En el ejemplo siguiente se habilita CloudWatch Logs. enable = true

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 221) retention_days

(Opcional)Indica cuántos días CloudWatch Logs conserva los eventos de registro individuales.

El valor predeterminado es 14. Los valores admitidos son 1, 3, 5, 7, 14, 30, 60, 90, 120, 150, 180, 365, 400, 545, 731, 1827 y 3653.

En el siguiente ejemplo se configura los CloudWatch Logs para que conserve los eventos de registro durante 30 días. retention_days = 30

Política de actualización: Esta configuración se puede cambiar durante una actualización. (p. 221) Sección [dashboard]

Define los valores de configuración del panel de CloudWatch.

El formato es el siguiente.[dashboard dashboard-name].Nombre del panelDebe comenzar con una letra, no tener más de 30 caracteres y solo puede contener letras, números, guiones (-) y guiones bajos (_).

[dashboard custom-dashboard] enable = true

Note

Compatibilidad condashboardse ha añadido enAWS ParallelClusterversión 2.10.0

262 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Sección [dcv] enable

(Opcional)Indica si el panel de CloudWatch está habilitado.

El valor predeterminado es true. Usarfalsepara deshabilitar el panel de CloudWatch.

En el ejemplo siguiente se habilita el panel de CloudWatch. enable = true

Política de actualización: Esta configuración se puede cambiar durante una actualización. (p. 221) Sección [dcv]

Define los parámetros de configuración para el servidor NICE DCV que se ejecuta en el nodo principal.

Para crear y configurar un servidor NICE DCV, especifique undcv_settings (p. 245)con el nombre de su sección, conenable (p. 264)establecido enmaster, y abase_os (p. 241)establecido enalinux2,centos7,centos8orubuntu1804.

El formato es el siguiente.[dcv dcv-name].dcv nameDebe comenzar con una letra, no tener más de 30 caracteres y solo puede contener letras, números, guiones (-) y guiones bajos (_).

[dcv custom-dcv] enable = master port = 8443 access_from = 0.0.0.0/0

Important

De forma predeterminada, la configuración del puerto NICE DCV porAWS ParallelClusterestá abierto a todas las direcciones IPv4. Sin embargo, sólo puede conectarse a un puerto NICE DCV si tiene la dirección URL de la sesión NICE DCV y se conecta a la sesión NICE DCV en un plazo de 30 segundos a partir del momento en que se devuelve la URL desdepcluster dcv connect. Usaraccess_from (p. 263)Para restringir aún más el acceso al puerto de NICE DCV con un intervalo de direcciones IP con formato de CIDR y utilice elport (p. 264)para establecer un puerto no estándar. Note

Support con[dcv]Sección (p. 263)encentos8se ha añadido enAWS ParallelClusterversión 2.10.0 Support con[dcv]Sección (p. 263)enAWSLas instancias basadas en gravitones se agregaron enAWS ParallelClusterversión 2.9.0 Support con[dcv]Sección (p. 263)enalinux2yubuntu1804se ha añadido enAWS ParallelClusterversión 2.6.0. Support con[dcv]Sección (p. 263)encentos7se ha añadido enAWS ParallelClusterversión 2.5.0. access_from

(opcional, recomendado)Especifica el intervalo de direcciones IP con formato CIDR para las conexiones al DCV NICE. Este parámetro solo se utiliza cuando AWS ParallelCluster crea el grupo de seguridad.

El valor predeterminado es 0.0.0.0/0, que permite el acceso desde cualquier dirección de Internet. access_from = 0.0.0.0/0

263 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Sección [ebs]

Política de actualización: Esta configuración se puede cambiar durante una actualización. (p. 221) enable

(Obligatorio)Indica si NICE DCV está habilitado en el nodo principal. Para habilitar NICE DCV en el nodo principal y configurar la regla de grupo de seguridad requerida, establezca la propiedadenableconfiguración de Configuración demaster.

El siguiente ejemplo habilita NICE DCV en el nodo principal. enable = master

Note

NICE DCV genera automáticamente un certificado autofirmado que se usa para proteger el tráfico entre el cliente NICE DCV y el servidor DCV de NICE que se ejecuta en el nodo principal. Para configurar su propio certificado, consulte Certificado NICE DCV HTTPS (p. 220).

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 221) port

(Opcional)Especifica el puerto para NICE DCV.

El valor predeterminado es 8443. port = 8443

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 221) Sección [ebs]

Temas • shared_dir (p. 265) • ebs_kms_key_id (p. 265) • ebs_snapshot_id (p. 265) • ebs_volume_id (p. 265) • encrypted (p. 266) • volume_iops (p. 266) • volume_size (p. 267) • volume_throughput (p. 267) • volume_type (p. 267)

Define los ajustes de configuración de volumen de Amazon EBS para los volúmenes que se han montado en el nodo principal y se comparten a través de NFS a los nodos de computación.

El formato es el siguiente.[ebs ebs-name].ebs-nameDebe comenzar con una letra, no tener más de 30 caracteres y solo puede contener letras, números, guiones (-) y guiones bajos (_).

[ebs custom1]

264 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Sección [ebs] shared_dir = vol1 ebs_snapshot_id = snap-xxxxx volume_type = io1 volume_iops = 200 ...

[ebs custom2] shared_dir = vol2 ...

... shared_dir

(Obligatorio)Especifica la ruta de a la que se monta el volumen de Amazon EBS compartido.

Este parámetro es obligatorio cuando se usan varios volúmenes de Amazon EBS.

Cuando se utiliza un (1) volumen de Amazon EBS, esta opción sobrescribe lashared_dir (p. 257)que se especifica en el[cluster]Sección (p. 239). En el siguiente ejemplo, el volumen se monta en /vol1. shared_dir = vol1

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 221) ebs_kms_key_id

(Opcional)Especifica unAWS KMSPara utilizar para el cifrado.

Este parámetro se debe usar junto con la opción encrypted = true. También debe tener un ec2_iam_role (p. 247) personalizado.

Para obtener más información, consulte Cifrado de disco con una clave KMS personalizada (p. 314). ebs_kms_key_id = xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 221) ebs_snapshot_id

(Opcional)Define el ID de instantánea de Amazon EBS de si utiliza una instantánea como origen del volumen.

No hay valor predeterminado. ebs_snapshot_id = snap-xxxxx

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 221) ebs_volume_id

(Opcional)Define el ID de un volumen de Amazon EBS ya existente que se asociará al nodo principal.

No hay valor predeterminado.

265 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Sección [ebs] ebs_volume_id = vol-xxxxxx

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 221) encrypted

(Opcional)Especifica si el volumen de Amazon EBS está cifrado. Nota: DOnoUso con instantáneas.

El valor predeterminado es false. encrypted = false

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 221) volume_iops

(Opcional)Define el número de IOPS paraio1,io2, ygp3Tipo de volumen.

El valor predeterminado, los valores admitidos yvolume_iopsDe avolume_sizerelación varía envolume_type (p. 287)yvolume_size (p. 267). volume_type = io1

Valor predeterminadovolume_iops= 100

Valores admitidosvolume_iops= 100—64000 †

Máximovolume_iopsDe avolume_sizerelación = 50 IOPS por GiB. 5000 IOPS requiere unvolume_sizede al menos 100 GiB. volume_type = io2

Valor predeterminadovolume_iops= 100

Valores admitidosvolume_iops= 100—64000 (256000 paraio2Bloque de volúmenes Express) †

Máximovolume_iopsDe avolume_sizerelación = 500 IOPS por GiB. 5000 IOPS requiere unvolume_sizede al menos 10 GiB. volume_type = gp3

Valor predeterminadovolume_iops= 3000

Valores admitidosvolume_iops= 3000—16000

Máximovolume_iopsDe avolume_sizerelación = 500 IOPS por GiB. 5000 IOPS requiere unvolume_sizede al menos 10 GiB.

volume_iops = 200

Política de actualización: Esta configuración se puede cambiar durante una actualización. (p. 221)

† El máximo de IOPS está garantizado solo enInstancias integradas en el sistema Nitroaprovisionadas con más de 32 000 IOPS. Otras instancias garantizan hasta 32,000 IOPS. Viejoio1Es posible que no alcancen el rendimiento máximo a menos queModificar el volumen.io2 Compatibilidad con volúmenes de bloque Expressvolume_iopsvalores de hasta 256000. Para obtener más información, consulteio2Volúmenes de bloque Express (en vista previa)en laGuía del usuario de Amazon EC2 para instancias de Linux.

266 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Sección [ebs] volume_size

(Opcional)Especifica el tamaño del volumen que se va a crear, en GiB (si no se utiliza una instantánea).

El valor predeterminado y los valores admitidos varían segúnvolume_type (p. 267). volume_type = standard

Valor predeterminadovolume_size20 GiB

Valores admitidosvolume_size= 1—1024 GiB volume_type=gp2,io1,io2, ygp3

Valor predeterminadovolume_size20 GiB

Valores admitidosvolume_size= 1—16384 GiB volume_type=sc1yst1

Valor predeterminadovolume_size= 500 GiB

Valores admitidosvolume_size= 500—16384 GiB

volume_size = 20

Note

AntesAWS ParallelClusterversión 2.10.1, el valor predeterminado para todos los tipos de volumen era 20 GiB.

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 221) volume_throughput

(Opcional)Define el rendimiento degp3Tipos de volumen, en MiB/s.

El valor predeterminado es 125.

Valores admitidosvolume_throughput= 125—1000 Mbit/s

La relación devolume_throughputDe avolume_iopsNo puede tener más de 0.25. El rendimiento máximo de 1000 Mib/s requiere que elvolume_iopses al menos 4000. volume_throughput = 1000

Note

Compatibilidad convolume_throughputse ha añadido enAWS ParallelClusterversión 2.10.1

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 221) volume_type

(Opcional)Especifica elTipo de volumen de Amazon EBSdel volumen que desea lanzar.

Las opciones válidas son los siguientes tipos de volumen:

267 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Sección [efs] gp2, gp3

General Purpose SSD io1, io2

Provisioned IOPS SSD st1

HDD con rendimiento optimizado sc1

HDD en frío standard

Generación magnética anterior

Para obtener más información, consulte Tipos de volumen de Amazon EBS en la Guía del usuario de Amazon EC2 para instancias de Linux.

El valor predeterminado es gp2. volume_type = io2

Note

Compatibilidad congp3yio2se ha añadido enAWS ParallelClusterversión 2.10.1

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 221) Sección [efs]

Temas • efs_fs_id (p. 269) • efs_kms_key_id (p. 269) • encrypted (p. 270) • performance_mode (p. 270) • provisioned_throughput (p. 270) • shared_dir (p. 271) • throughput_mode (p. 271)

Define los ajustes de configuración de Amazon EFS de Amazon que se ha montado en los nodos de computación y de cabeza. Para obtener más información, consulteCreateFileSystemen la documentación de Amazon EFS.

El formato es el siguiente.[efs efs-name].efs-nameDebe comenzar con una letra, no tener más de 30 caracteres y solo puede contener letras, números, guiones (-) y guiones bajos (_).

[efs customfs] shared_dir = efs encrypted = false performance_mode = generalPurpose

268 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Sección [efs] efs_fs_id

(Opcional)Define el ID del sistema de archivos de Amazon EFS para un sistema de archivos ya existente.

Al especificar esta opción, anula las demás opciones de Amazon EFS a excepción deshared_dir (p. 257).

Si establece esta opción, solo admite los sistemas de archivos:

• Que no cuentan con un destino de montaje en la zona de disponibilidad de la pila

O BIEN • Que cuentan con un destino de montaje ya existente en la zona de disponibilidad de la pila, con tráfico NFS de entrada y salida permitido desde 0.0.0.0/0.

La comprobación de estado para validar efs_fs_id (p. 269) requiere que el rol de IAM tenga los siguientes permisos:

• elasticfilesystem:DescribeMountTargets • elasticfilesystem:DescribeMountTargetSecurityGroups • ec2:DescribeSubnets • ec2:DescribeSecurityGroups • ec2:DescribeNetworkInterfaceAttribute

Para evitar errores, debe añadir los permisos siguientes a su rol de IAM o establecer sanity_check = false. Important

Cuando se establece un destino de montaje con tráfico NFS de entrada y salida permitido desde0.0.0.0/0, expone el sistema de archivos a solicitudes de montaje de NFS desde cualquier lugar en la zona de disponibilidad del destino de montaje.AWSrecomienda que lo haganoCrear un destino de montaje en la zona de disponibilidad de la pila. En su lugar, debe dejar queAWSmanejar este paso. Si todavía desea tener un destino de montaje en la zona de disponibilidad de la pila, considere la posibilidad de utilizar un grupo de seguridad personalizado proporcionando unvpc_security_group_id (p. 290)bajo la opción[vpc]Sección (p. 288). A continuación, añada dicho grupo de seguridad al destino de montaje y desactivesanity_checkpara crear el clúster.

No hay valor predeterminado. efs_fs_id = fs-12345

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 221) efs_kms_key_id

(Opcional)Identifica elAWS Key Management Service(AWS KMS) que se utilizará para proteger el sistema de archivos cifrado. Si se ha configurado esta opción, el ajuste encrypted (p. 270) debe establecerse en true. Esto se corresponde con laKmsKeyIden el parámetroReferencia del API de Amazon EFS.

No hay valor predeterminado. efs_kms_key_id = 1234abcd-12ab-34cd-56ef-1234567890ab

269 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Sección [efs]

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 221) encrypted

(Opcional)Indica si el sistema de archivos está cifrado. Esto se corresponde con laEncrypteden el parámetroReferencia del API de Amazon EFS.

El valor predeterminado es false. encrypted = true

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 221) performance_mode

(Opcional)Define el modo de rendimiento del sistema de archivos. Esto se corresponde con laPerformanceModeen el parámetroReferencia del API de Amazon EFS.

Las opciones válidas son los siguientes valores:

• generalPurpose • maxIO

Ambos valores distinguen entre mayúsculas y min

Recomendamos el modo de rendimiento generalPurpose para la mayoría de sistemas de archivos.

Los sistemas de archivos que usan el modo de rendimiento maxIO pueden escalar a mayores niveles de rendimiento de agregación y operaciones por segundo. Sin embargo, hay una compensación de latencias ligeramente más altas para la mayoría de las operaciones de archivos.

Este parámetro no se puede cambiar después de que se haya creado el sistema de archivos.

El valor predeterminado es generalPurpose. performance_mode = generalPurpose

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 221) provisioned_throughput

(Opcional)Define el rendimiento aprovisionado del sistema de archivos, medido en MiB/s. Esto se corresponde con laProvisionedThroughputInMibpsen el parámetroReferencia del API de Amazon EFS.

Si usa este parámetro, debe establecer throughput_mode (p. 271) en provisioned.

El límite del rendimiento es de 1024 MiB/s. Para solicitar un aumento del límite, póngase en contacto con AWS Support.

El valor mínimo es 0.0 MiB/s. provisioned_throughput = 1024

Política de actualización: Esta configuración se puede cambiar durante una actualización. (p. 221)

270 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Sección [fsx] shared_dir

(Obligatorio)Define el punto de montaje de Amazon EFS en los nodos de computación y cabeza.

Este parámetro es obligatorio. La sección Amazon EFS solo se utiliza sishared_dir (p. 257)se especifica.

No utiliceNONEor/NONEComo directorio compartido.

En el ejemplo siguiente se monta Amazon EFS en/efs. shared_dir = efs

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 221) throughput_mode

(Opcional)Define el modo de rendimiento del sistema de archivos. Esto se corresponde con laThroughputModeen el parámetroReferencia del API de Amazon EFS.

Las opciones válidas son los siguientes valores:

• bursting • provisioned

El valor predeterminado es bursting. throughput_mode = provisioned

Política de actualización: Esta configuración se puede cambiar durante una actualización. (p. 221) Sección [fsx]

Temas • auto_import_policy (p. 272) • automatic_backup_retention_days (p. 273) • copy_tags_to_backups (p. 273) • daily_automatic_backup_start_time (p. 274) • data_compression_type (p. 274) • deployment_type (p. 275) • drive_cache_type (p. 275) • export_path (p. 276) • fsx_backup_id (p. 276) • fsx_fs_id (p. 276) • fsx_kms_key_id (p. 277) • import_path (p. 277) • imported_file_chunk_size (p. 277) • per_unit_storage_throughput (p. 278) • shared_dir (p. 278)

271 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Sección [fsx]

• storage_capacity (p. 278) • storage_type (p. 279) • weekly_maintenance_start_time (p. 280)

Define las opciones de configuración de un FSx asociado para el sistema de archivos Lustre. Para obtener más información acerca de FSx for Lustre, consulteAmazon FSx CreateFileSystem.

FSx for Lustre es compatible si elbase_os (p. 241)esalinux2,centos7,centos8,ubuntu1804, o bienubuntu2004.

Al usar Amazon Linux, el kernel debe ser >=4.14.104-78.84.amzn1.x86_64. Para obtener instrucciones detalladas, consulte .Instalación del cliente de lustreen laGuía del usuario de FSx for Lustre. Note

Actualmente, FSx for Lustre no es compatible cuando se utilizaawsbatchcomo programador. Note

Support de FSx for Lustreubuntu2004se ha añadido enAWS ParallelClusterversión 2.11.0 Support de FSx for Lustrecentos8se ha añadido enAWS ParallelClusterversión 2.10.0 Support de FSx for Lustrealinux2,ubuntu1604, yubuntu1804se ha añadido enAWS ParallelClusterversión 2.6.0. Support de FSx for Lustrecentos7se ha añadido enAWS ParallelClusterversión 2.4.0.

Si se usa un sistema de archivos ya existente, debe asociarse a un grupo de seguridad que permita el tráfico TCP de entrada a través del puerto 988. Establezca el origen en0.0.0.0/0en una regla de grupo de seguridad proporciona acceso cliente desde todos los intervalos IP del grupo de seguridad de VPC para el protocolo y el intervalo de puertos de esa regla. Para limitar aún más el acceso a los sistemas de archivos, recomendamos utilizar orígenes más restrictivos para las reglas de grupo de seguridad. Por ejemplo, puede utilizar intervalos CIDR más específicos, direcciones IP o identificadores de grupo de seguridad. Esto se realiza automáticamente si no se usa vpc_security_group_id (p. 290).

Para utilizar un sistema de archivos de Amazon FSx, especifiquefsx_fs_id (p. 276).

El formato es el siguiente.[fsx fsx-name].fsx-nameDebe comenzar con una letra, no tener más de 30 caracteres y solo puede contener letras, números, guiones (-) y guiones bajos (_).

[fsx fs] shared_dir = /fsx fsx_fs_id = fs-073c3803dca3e28a6

Para crear y configurar un nuevo sistema de archivos, use los siguientes parámetros:

[fsx fs] shared_dir = /fsx storage_capacity = 3600 imported_file_chunk_size = 1024 export_path = s3://bucket/folder import_path = s3://bucket weekly_maintenance_start_time = 1:00:00 auto_import_policy

(Opcional)Especifica la directiva de importación automática para reflejar los cambios en el bucket S3 utilizado para crear el sistema de archivos FSx for Lustre. Los valores posibles son los siguientes:

272 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Sección [fsx]

NEW

Amazon FSx for Lustre importa automáticamente descripciones de directorios de cualquier objeto nuevo agregado al bucket de S3 vinculado que no exista actualmente en el sistema de archivos FSx for Lustre. NEW_CHANGED

Amazon FSx for Lustre importa automáticamente descripciones de archivos y directorios de cualquier objeto nuevo agregado al bucket de S3 y de cualquier objeto existente que se cambie en el bucket de S3.

Esto se corresponde con laAutoImportPolicypropiedad. Para obtener más información, consulteImportar actualizaciones automáticamente desde su bucket de S3en laGuía del usuario de FSx for LustreCuandoauto_import_policy (p. 272), se especifica el parámetroautomatic_backup_retention_days (p. 273),copy_tags_to_backups (p. 273),daily_automatic_backup_start_time (p. 274), yfsx_backup_id (p. 276)no se deben especificar parámetros.

Si el archivo deauto_import_policy, las importaciones automáticas están deshabilitadas. FSx for Lustre solo actualiza las listas de archivos y directorios desde el bucket de S3 vinculado cuando se crea el sistema de archivos. auto_import_policy = NEW_CHANGED

Note

Compatibilidad conauto_import_policy (p. 272)se ha añadido enAWS ParallelClusterversión 2.10.0

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 221) automatic_backup_retention_days

(Opcional)Especifica el número de días que se conservan las copias de seguridad automáticas. Esto solo es válido para su uso conPERSISTENT_1Tipos de implementación. Cuandoautomatic_backup_retention_days (p. 273), se especifica el parámetroauto_import_policy (p. 272),export_path (p. 276),import_path (p. 277), yimported_file_chunk_size (p. 277)no se deben especificar parámetros. Esto se corresponde con laAutomaticBackupRetentionDayspropiedad.

El valor predeterminado es 0. Esta configuración deshabilita las copias de seguridad automáticas. Los valores posibles son enteros entre 0 y 35, ambos inclusive. automatic_backup_retention_days = 35

Note

Compatibilidad conautomatic_backup_retention_days (p. 273)se ha añadido enAWS ParallelClusterversión 2.8.0

Política de actualización: Esta configuración se puede cambiar durante una actualización. (p. 221) copy_tags_to_backups

(Opcional)Especifica si las etiquetas del sistema de archivos se copian en las copias de seguridad. Esto solo es válido para su uso conPERSISTENT_1Tipos de

273 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Sección [fsx] implementación. Cuandocopy_tags_to_backups (p. 273), se especifica el parámetroautomatic_backup_retention_days (p. 273)Se debe especificar con un valor mayor que 0 y el valor deauto_import_policy (p. 272),export_path (p. 276),import_path (p. 277), yimported_file_chunk_size (p. 277)no se deben especificar parámetros. Esto se corresponde con laCopyTagsToBackupspropiedad.

El valor predeterminado es false. copy_tags_to_backups = true

Note

Compatibilidad concopy_tags_to_backups (p. 273)se ha añadido enAWS ParallelClusterversión 2.8.0

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 221) daily_automatic_backup_start_time

(Opcional)Especifica la hora del día (UTC) para iniciar las copias de seguridad automáticas. Esto solo es válido para su uso conPERSISTENT_1Tipos de implementación. Cuandodaily_automatic_backup_start_time (p. 274), se especifica el parámetroautomatic_backup_retention_days (p. 273)Se debe especificar con un valor mayor que 0 y el valor deauto_import_policy (p. 272),export_path (p. 276),import_path (p. 277), yimported_file_chunk_size (p. 277)no se deben especificar parámetros. Esto se corresponde con laDailyAutomaticBackupStartTimepropiedad.

El formato es el siguiente.HH:MM, dondeHHes la hora de relleno cero del día (0-23), yMMes el minuto de la hora acolchada cero. Por ejemplo, 1:03 A.M. UTC sería: daily_automatic_backup_start_time = 01:03

El valor predeterminado es un tiempo aleatorio entre00:00y23:59. Note

Compatibilidad condaily_automatic_backup_start_time (p. 274)se ha añadido enAWS ParallelClusterversión 2.8.0

Política de actualización: Esta configuración se puede cambiar durante una actualización. (p. 221) data_compression_type

(Opcional)Especifica el FSx para el tipo de compresión de datos Lustre. Esto se corresponde con laDataCompressionTypepropiedad. Para obtener más información, consulteCompresión de datos FSx for Lustreen laGuía del usuario de FSx for Lustre.

El único valor válido es LZ4. Para deshabilitar la compresión de datos, quite eldata_compression_type (p. 274)parámetro. data_compression_type = LZ4

Note

Compatibilidad condata_compression_type (p. 274)se ha añadido enAWS ParallelClusterversión 2.11.0

274 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Sección [fsx]

Política de actualización: Esta configuración se puede cambiar durante una actualización. (p. 221) deployment_type

(Opcional)Especifica el FSx para el tipo de implementación de Lustre. Esto se corresponde con laDeploymentTypepropiedad. Para obtener más información, consulteOpciones de implementación de FSx for Lustreen laGuía del usuario de FSx for Lustre. Elija un tipo de implementación de temporal para almacenamiento temporal y procesamiento de datos a corto plazo.SCRATCH_2es la última generación de sistemas de archivos temporales. Ofrece un mayor rendimiento de ráfagas sobre el rendimiento de línea base y el cifrado en tránsito de datos.

Los valores válidos son SCRATCH_1, SCRATCH_2 y PERSISTENT_1.

SCRATCH_1

El tipo de implementación predeterminado de FSx for Lustre. Con este tipo de implementación, los valores posibles de storage_capacity (p. 278) son 1200, 2400 y cualquier múltiplo de 3600. Compatibilidad conSCRATCH_1se ha añadido enAWS ParallelClusterversión 2.4.0. SCRATCH_2

La última generación de sistemas de archivos temporales. Admite hasta seis veces el rendimiento básico para cargas de trabajo exigentes. También admite el cifrado en tránsito de datos para los tipos de instancia admitidos en las regiones admitidas. Para obtener más información, consulteCifrado de datos en tránsitoen laGuía del usuario de FSx for Lustre. Con este tipo de implementación, los valores posibles de storage_capacity (p. 278) son 1200 y cualquier múltiplo de 2400. Compatibilidad conSCRATCH_2se ha añadido enAWS ParallelClusterversión 2.6.0 PERSISTENT_1

Diseñado para el almacenamiento a largo plazo. Los servidores de archivos están de alta disponibilidad y los datos se replican dentro de los sistemas de archivos deAWSZona de disponibilidad, Es compatible con el cifrado en tránsito de datos para los tipos de instancia admitidos. Con este tipo de implementación, los valores posibles de storage_capacity (p. 278) son 1200 y cualquier múltiplo de 2400. Compatibilidad conPERSISTENT_1se ha añadido enAWS ParallelClusterversión 2.6.0

El valor predeterminado es SCRATCH_1. deployment_type = SCRATCH_2

Note

Compatibilidad condeployment_type (p. 275)se ha añadido enAWS ParallelClusterversión 2.6.0

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 221) drive_cache_type

(Opcional)Especifica que el sistema de archivos tiene una caché de unidad SSD. Esto solo se puede establecer si elstorage_type (p. 279)configuración de tiene que estar establecida enHDD. Esto se corresponde con laDriveCacheTypepropiedad. Para obtener más información, consulteOpciones de implementación de FSx for Lustreen laGuía del usuario de FSx for Lustre.

El único valor válido es READ. Para deshabilitar la caché de la unidad SSD, no especifique la propiedaddrive_cache_typeconfiguración de Configuración de

275 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Sección [fsx] drive_cache_type = READ

Note

Compatibilidad condrive_cache_type (p. 275)se ha añadido enAWS ParallelClusterversión 2.10.0

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 221) export_path

(Opcional)Especifica la ruta de Amazon S3 donde se exporta la raíz del sistema de archivos. Cuandoexport_path (p. 276), se especifica el parámetroautomatic_backup_retention_days (p. 273),copy_tags_to_backups (p. 273),daily_automatic_backup_start_time (p. 274), yfsx_backup_id (p. 276)no se deben especificar parámetros. Esto se corresponde con laExportPathpropiedad. Los datos y metadatos de archivos no se exportan automáticamente a laexport_path. Para obtener información sobre la exportación de datos y metadatos, consulteUso de tareas del repositorio de datos para exportar cambios de datos y metadatosen laGuía del usuario de FSx for Lustre.

El valor predeterminado es s3://import-bucket/FSxLustre[creation-timestamp], donde import-bucket es el bucket que se proporciona en el parámetro import_path (p. 277). export_path = s3://bucket/folder

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 221) fsx_backup_id

(Opcional)Especifica el ID de la copia de seguridad que se va a utilizar para restaurar el sistema de archivos a partir de una copia de seguridad existente. Cuandofsx_backup_id (p. 276), se especifica el parámetroauto_import_policy (p. 272),deployment_type (p. 275),export_path (p. 276),fsx_kms_key_id (p. 277),import_path (p. 277),imported_file_chunk_size (p. 277),storage_capacity (p. 278), yper_unit_storage_throughput (p. 278)no se deben especificar parámetros. Estos parámetros se leen desde la copia de seguridad. Además, elauto_import_policy (p. 272),export_path (p. 276),import_path (p. 277), yimported_file_chunk_size (p. 277)no se deben especificar parámetros.

Esto se corresponde con laBackupIdpropiedad. fsx_backup_id = backup-fedcba98

Note

Compatibilidad confsx_backup_id (p. 276)se ha añadido enAWS ParallelClusterversión 2.8.0

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 221) fsx_fs_id

(Opcional)Se conecta un FSx existente para el sistema de archivos de Lustre.

Si se especifica esta opción, sólo elshared_dir (p. 278)yfsx_fs_id (p. 276)configuración de Configuración de[fsx]Sección (p. 271)y cualquier otra configuración en el[fsx]Sección (p. 271)se omiten.

276 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Sección [fsx] fsx_fs_id = fs-073c3803dca3e28a6

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 221) fsx_kms_key_id

(Opcional) Especifica el ID de clave de la clave administrada por el cliente de AWS Key Management Service (AWS KMS).

Esta clave se utiliza para cifrar los datos de su sistema de archivos en reposo.

Debe utilizarse con un ec2_iam_role (p. 247) personalizado. Para obtener más información, consulte Cifrado de disco con una clave KMS personalizada (p. 314). Esto se corresponde con laKmsKeyIden el parámetroReferencia de la API de Amazon FSx. fsx_kms_key_id = xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx

Note

Compatibilidad confsx_kms_key_id (p. 277)se ha añadido enAWS ParallelClusterversión 2.6.0

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 221) import_path

(Opcional)Especifica el bucket de S3 que se utiliza para cargar datos desde y hasta el sistema de archivos y sirve como bucket de exportación. Para obtener más información, consulte export_path (p. 276). Si especifica la propiedadimport_path (p. 277)parámetro, elautomatic_backup_retention_days (p. 273),copy_tags_to_backups (p. 273),daily_automatic_backup_start_time (p. 274), yfsx_backup_id (p. 276)no se deben especificar parámetros. Esto se corresponde con laImportPathen el parámetroReferencia de la API de Amazon FSx.

La importación se produce al crear el clúster. Para obtener más información, consulteImportación de datos desde el repositorio de datosen laGuía del usuario de FSx for Lustre. En la importación, sólo se importan los metadatos de archivo (nombre, propiedad, marca de hora y permisos). Los datos del archivo no se importan desde el depósito de S3 hasta que se accede por primera vez al archivo. Para obtener más información sobre la precarga del contenido del archivo, consulteCarga previa de archivos en su sistema de archivos deen laGuía del usuario de FSx for Lustre.

Si no se ha proporcionado un valor, el sistema de archivos está vacío. import_path = s3://bucket

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 221) imported_file_chunk_size

(Opcional)Determina la cantidad de fragmentos y la cantidad máxima de datos para cada archivo (en MiB) que se almacenan en un único disco físico para los archivos que se importan desde un repositorio de datos (conimport_path (p. 277)). El número máximo de discos en los que un único archivo se puede fraccionar está limitado por el número total de los discos que forman el sistema de archivos. Cuandoimported_file_chunk_size (p. 277), se especifica el parámetroautomatic_backup_retention_days (p. 273),copy_tags_to_backups (p. 273),daily_automatic_backup_start_time (p. 274),

277 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Sección [fsx] yfsx_backup_id (p. 276)no se deben especificar parámetros. Esto se corresponde con laImportedFileChunkSizepropiedad.

El tamaño predeterminado del fragmento es1024(1 GiB) y puede llegar hasta 512 000 MiB (500 GiB). Los objetos de Amazon S3 tienen un tamaño máximo de 5 TB. imported_file_chunk_size = 1024

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 221) per_unit_storage_throughput

(Necesario para los tipos de implementación PERSISTENT_1) Para el tipo de implementación deployment_type (p. 275) = PERSISTENT_1, describe el rendimiento de lectura y escritura por cada 1 tebibyte (TiB) de almacenamiento, en MB/s/TiB. La capacidad de rendimiento del sistema de archivos se calcula multiplicando la capacidad de almacenamiento del sistema (TiB) por per_unit_storage_throughput (p. 278) (MB/s/TiB). Para un sistema de almacenamiento de 2,4 TiB, el aprovisionamiento de 50 MB/s/TiB per_unit_storage_throughput (p. 278) produce una velocidad del sistema de archivos de 120 MB/s. Usted paga la cantidad de rendimiento aprovisionada. Esto se corresponde con laPerUnitStorageThroughputpropiedad.

Los valores posibles dependen del valor de lastorage_type (p. 279)configuración de Configuración de storage_type (p. 279) = SSD

Los valores posibles son 50, 100 y 200. storage_type (p. 279) = HDD

Los valores posibles son 12, 40.

per_unit_storage_throughput = 200

Note

Compatibilidad conper_unit_storage_throughput (p. 278)se ha añadido enAWS ParallelClusterversión 2.6.0

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 221) shared_dir

(Obligatorio)Define el punto de montaje del FSx para el sistema de archivos de Lustre en los nodos de cabeza y computación.

No utiliceNONEor/NONEComo directorio compartido.

En el siguiente ejemplo se monta el sistema de archivos en /fsx. shared_dir = /fsx

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 221) storage_capacity

(Obligatorio) Especifica la capacidad de almacenamiento del sistema de archivos, en GiB. Esto se corresponde con laStorageCapacitypropiedad.

278 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Sección [fsx]

Los valores posibles de capacidad de almacenamiento varían en función del valor de deployment_type (p. 275).

SCRATCH_1

Los valores posibles son 1200, 2400 y cualquier múltiplo de 3600. SCRATCH_2

Los valores posibles son 1200 y cualquier múltiplo de 2400. PERSISTENT_1

Los valores posibles varían en función de los valores de otros valores. storage_type (p. 279) = SSD

Los valores posibles son 1200 y cualquier múltiplo de 2400. storage_type (p. 279) = HDD

Los valores posibles varían en función del valor deper_unit_storage_throughput (p. 278)configuración de Configuración de per_unit_storage_throughput (p. 278) = 12

Los valores posibles son cualquier múltiplo de 6000. per_unit_storage_throughput (p. 278) = 40

Los valores posibles son cualquier múltiplo de 1800.

storage_capacity = 7200

Note

ParaAWS ParallelClusterVersión 2.5.0 y 2.5.1,storage_capacity (p. 278)Soporta los siguientes valores posibles: 1200, 2400 y cualquier múltiplo de 3600. Para versiones anteriores aAWS ParallelClusterversión 2.5.0,storage_capacity (p. 278)Tenía un tamaño mínimo de 3600.

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 221) storage_type

(Opcional)Especifica el tipo de almacenamiento del sistema de archivos. Esto se corresponde con laStorageTypepropiedad. Los valores posibles son SSD y HDD. El valor predeterminado es SSD.

El tipo de almacenamiento cambia los valores posibles de otras configuraciones. storage_type = SSD

Especifica un tipo de almacenamiento de unidad de estado de soldadura (SSD).

storage_type = SSDcambia los valores posibles de varias otras configuraciones. drive_cache_type (p. 275)

Esta configuración no se puede especificar. deployment_type (p. 275)

Esta configuración se puede establecer enSCRATCH_1,SCRATCH_2, o bienPERSISTENT_1.

279 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Sección [fsx]

per_unit_storage_throughput (p. 278)

Este valor debe especificarse sideployment_type (p. 275)toma el valorPERSISTENT_1. Los valores posibles son 50, 100 o 200. storage_capacity (p. 278)

Este valor debe especificarse. Los valores posibles varían en función deldeployment_type (p. 275). deployment_type = SCRATCH_1

storage_capacity (p. 278)Puede ser 1200, 2400 o cualquier múltiplo de 3600. deployment_type = SCRATCH_2 o deployment_type = PERSISTENT_1

storage_capacity (p. 278)Puede ser 1200 o cualquier múltiplo de 2400. storage_type = HDD

Especifica un tipo de almacenamiento de unidad de disco duro (HDD).

storage_type = HDDcambia los valores posibles de otras configuraciones. drive_cache_type (p. 275)

Esta configuración se puede especificar. deployment_type (p. 275)

Este valor debe establecerse enPERSISTENT_1. per_unit_storage_throughput (p. 278)

Este valor debe especificarse. Los valores posibles son 12 o 40. storage_capacity (p. 278)

Este valor debe especificarse. Los valores posibles varían en función delper_unit_storage_throughput (p. 278)configuración de Configuración de storage_capacity = 12

storage_capacity (p. 278)puede ser cualquier múltiplo de 6000. storage_capacity = 40

storage_capacity (p. 278)puede ser cualquier múltiplo de 1800.

storage_type = SSD

Note

Support constorage_type (p. 279)se agregó enAWS ParallelClusterversión 2.10.0

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 221) weekly_maintenance_start_time

(Opcional) Especifica una hora preferida para realizar el mantenimiento semanal, en la zona horaria UTC. Esto se corresponde con laWeeklyMaintenanceStartTimepropiedad.

El formato es [día de la semana]: [hora del día]: [minuto]. Por ejemplo, lunes a medianoche es:

280 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Sección [queue] weekly_maintenance_start_time = 1:00:00

Política de actualización: Esta configuración se puede cambiar durante una actualización. (p. 221) Sección [queue]

Temas • compute_resource_settings (p. 281) • compute_type (p. 281) • disable_hyperthreading (p. 282) • enable_efa (p. 282) • enable_efa_gdr (p. 283) • placement_group (p. 283)

Define los valores de configuración de una sola cola.[queue]Secciones (p. 281)sólo se admiten cuandoscheduler (p. 257)toma el valorslurm.

El formato es el siguiente.[queue ].nombre de colaDebe comenzar con una letra en minúsculas, no puede contener más de 30 caracteres y solo puede contener letras en minúscula, números y guiones (-).

[queue q1] compute_resource_settings = i1,i2 placement_group = DYNAMIC enable_efa = true disable_hyperthreading = false compute_type = spot

Note

Support con[queue]Sección (p. 281)se ha añadido enAWS ParallelClusterversión 2.9.0 compute_resource_settings

(Obligatorio)Identifica el[compute_resource]Secciones (p. 259)que contiene las configuraciones de recursos informáticos para esta cola. Los nombres de sección deben comenzar con una letra, no tener más de 30 caracteres y sólo contener letras, números, guiones (-) y guiones bajos (_).

Hasta tres (3)[compute_resource]Secciones (p. 259)son compatibles con cada[queue]Sección (p. 281).

Por ejemplo, la siguiente configuración especifica que las secciones que comienzan[compute_resource cr1]y[compute_resource cr2]se utilizan. compute_resource_settings = cr1, cr2

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 221) compute_type

(Opcional)Define el tipo de instancias que se iniciarán para esta cola. Esta configuración reemplaza la configuración cluster_type (p. 243).

Las opciones válidas son: ondemand y spot.

281 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Sección [queue]

El valor predeterminado es ondemand.

Para obtener más información acerca de las instancias de Spot, consulte Uso de Instancias de spot (p. 173). Note

Uso de instancias de spot requiere queAWSServiceRoleFOREC2SpotEn su cuenta existe un rol vinculado al servicio de en su cuenta. Para crear este rol en su cuenta con elAWS CLIEn, ejecute el siguiente comando:

aws iam create-service-linked-role --aws-service-name spot.amazonaws.com

Para obtener más información, consulteRol vinculado al servicio para solicitudes de instancias de spoten laGuía del usuario de Amazon EC2 para instancias de Linux.

En el ejemplo siguiente se utiliza SpotInstances para los nodos de cálculo de esta cola. compute_type = spot

Política de actualización: La flota informática debe detenerse para que esta configuración se cambie para una actualización. (p. 221) disable_hyperthreading

(Opcional)Deshabilita la tecnología Hyper-Threading en los nodos de esta cola. No todos los tipos de instancias pueden deshabilitar la tecnología Hyper-Threading. Para obtener una lista de los tipos de instancias que admiten la desactivación de hipersubprocesos, consulteNúcleos de CPU y subprocesos de cada núcleo de CPU por tipo de instanciasen laGuía del usuario de Amazon EC2 para instancias de Linux. Si el archivo dedisable_hyperthreading (p. 246)en el[cluster]Sección (p. 239), entonces esta configuración no se puede definir.

El valor predeterminado es false. disable_hyperthreading = true

Política de actualización: La flota informática debe detenerse para que esta configuración se cambie para una actualización. (p. 221) enable_efa

(Opcional)Si se establece entrue, especifica que Elastic Fabric Adapter (EFA) se ha habilitado para los nodos de esta cola. EFA es compatible con los siguientes tipos de instanciasc5n.18xlarge,c5n.metal,g4dn.metal,i3en.24xlarge,i3en.metal,m5dn.24xlarge,m5n.24xlarge,m5zn.12xlarge,m5zn.metal,r5dn.24xlarge,r5n.24xlarge,p3dn.24xlarge, yp4d.24xlargePara instancias x86-64 yc6gn.16xlargepara instancias Graviton2 basadas en ARM en estos sistemas operativos (alinux2,centos7,centos8,ubuntu1804, o bienubuntu2004). Para obtener más información, consulte Elastic Fabric Adapter (p. 215). Si el archivo deenable_efa (p. 247)en el[cluster]Sección (p. 239), entonces esta configuración no se puede definir. Se debe utilizar un grupo de ubicación del clúster para minimizar las latencias entre instancias. Para obtener más información, consulte placement (p. 253) y placement_group (p. 253). enable_efa = true

Política de actualización: La flota informática debe detenerse para que esta configuración se cambie para una actualización. (p. 221)

282 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Sección [raid] enable_efa_gdr

(Opcional)Sitrue, especifica que Elastic Fabric Adapter (EFA) GpuDirect RDMA (acceso directo a memoria remota) se ha habilitado para los nodos de esta cola. Estableciendo esto entruerequiere que elenable_efa (p. 282)configuración de tiene que estar establecida entrue.EFA GPUDirect RDMA es compatible con los siguientes tipos de instancia (p4d.24xlarge) en estos sistemas operativos (alinux2,centos7,centos8,ubuntu1804, o bienubuntu2004). Si el archivo deenable_efa_gdr (p. 248)en el[cluster]Sección (p. 239), entonces esta configuración no se puede definir. Se debe utilizar un grupo de ubicación del clúster para minimizar las latencias entre instancias. Para obtener más información, consulte placement (p. 253) y placement_group (p. 253).

El valor predeterminado es false. enable_efa_gdr = true

Política de actualización: La flota informática debe detenerse para que esta configuración se cambie para una actualización. (p. 221) placement_group

(Opcional)Si está presente, define el grupo de ubicación para esta cola. Esta configuración reemplaza la configuración placement_group (p. 253).

Las opciones válidas son los siguientes valores:

• DYNAMIC • Un nombre de grupo de ubicación del clúster de Amazon EC2 existente

Cuando se establece enDYNAMICComo parte de la pila de clúster, se crea y elimina un grupo de ubicación único para esta cola.

Para obtener más información acerca de los grupos de ubicación, consulteGrupos de ubicaciónen laGuía del usuario de Amazon EC2 para instancias de Linux. Si se utiliza el mismo grupo de ubicación para diferentes tipos de instancias, es más probable que la solicitud pueda fallar debido a un error de capacidad insuficiente. Para obtener más información, consulteCapacidad de la instancia insuficienteen laGuía del usuario de Amazon EC2 para instancias de Linux.

No hay valor predeterminado.

No todos los tipos de instancias admiten grupos de ubicación en clúster. Por ejemplo,t2.microNo admite grupos de ubicación en clúster. Para obtener información acerca de la lista de tipos de instancias que admiten grupos de ubicación, consulteReglas y limitaciones de los grupos de ubicación en clústeren laGuía del usuario de Amazon EC2 para instancias de Linux. Consulte Grupos de ubicación y problemas de lanzamiento de instancias (p. 333) para obtener sugerencias al trabajar con grupos de ubicación. placement_group = DYNAMIC

Política de actualización: La flota informática debe detenerse para que esta configuración se cambie para una actualización. (p. 221) Sección [raid]

Temas

283 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Sección [raid]

• shared_dir (p. 284) • ebs_kms_key_id (p. 284) • encrypted (p. 284) • num_of_raid_volumes (p. 285) • raid_type (p. 285) • volume_iops (p. 285) • volume_size (p. 286) • volume_throughput (p. 287) • volume_type (p. 287)

Define los ajustes de configuración de una matriz de RAID que se ha creado a partir de una serie de volúmenes de Amazon EBS idénticos. La unidad RAID se monta en el nodo principal y se exporta a nodos de computación con NFS.

El formato es el siguiente.[raid raid-name].nombre de raid-Debe comenzar con una letra, no tener más de 30 caracteres y solo puede contener letras, números, guiones (-) y guiones bajos (_).

[raid rs] shared_dir = raid raid_type = 1 num_of_raid_volumes = 2 encrypted = true shared_dir

(Obligatorio)Define el punto de montaje de la matriz de RAID en los nodos de computación y cabeza.

La unidad RAID solo se crea si se especifica este parámetro.

No utiliceNONEor/NONEComo directorio compartido.

En el siguiente ejemplo, se monta la matriz en /raid. shared_dir = raid

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 221) ebs_kms_key_id

(Opcional)Especifica unAWS KMSPara utilizar para el cifrado.

Este parámetro se debe usar junto con la opción encrypted = true y debe tener un ec2_iam_role (p. 247) personalizado.

Para obtener más información, consulte Cifrado de disco con una clave KMS personalizada (p. 314). ebs_kms_key_id = xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 221) encrypted

(Opcional)Especifica si el sistema de archivos está cifrado.

284 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Sección [raid]

El valor predeterminado es false. encrypted = false

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 221) num_of_raid_volumes

(Opcional)Define el número de volúmenes de Amazon EBS desde los que se montará la matriz de RAID.

Número mínimo de volúmenes es2.

Número máximo de volúmenes es5.

El valor predeterminado es 2. num_of_raid_volumes = 2

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 221) raid_type

(Obligatorio)Define el tipo de RAID para la matriz de RAID.

La unidad RAID solo se crea si se especifica este parámetro.

Las opciones válidas son los siguientes valores:

• 0 • 1

Para obtener más información acerca de tipos de RAID, consulteInformación RAIDen laGuía del usuario de Amazon EC2 para instancias de Linux.

El siguiente ejemplo crea una matriz de RAID 0: raid_type = 0

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 221) volume_iops

(Opcional)Define el número de IOPS paraio1,io2, ygp3Tipo de volumen.

El valor predeterminado, los valores admitidos yvolume_iopsDe avolume_sizerelación varía envolume_type (p. 287)yvolume_size (p. 286). volume_type = io1

Valor predeterminadovolume_iops= 100

Valores admitidosvolume_iops= 100—64000 †

Máximovolume_iopsDe avolume_sizerelación = 50 IOPS por GiB. 5000 IOPS requiere unvolume_sizede al menos 100 GiB.

285 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Sección [raid] volume_type = io2

Valor predeterminadovolume_iops= 100

Valores admitidosvolume_iops= 100—64000 (256000 paraio2Bloque de volúmenes Express) †

Máximovolume_iopsDe avolume_sizerelación = 500 IOPS por GiB. 5000 IOPS requiere unvolume_sizede al menos 10 GiB. volume_type = gp3

Valor predeterminadovolume_iops= 3000

Valores admitidosvolume_iops= 3000—16000

Máximovolume_iopsDe avolume_sizerelación = 500 IOPS por GiB. 5000 IOPS requiere unvolume_sizede al menos 10 GiB.

volume_iops = 3000

Política de actualización: Esta configuración se puede cambiar durante una actualización. (p. 221)

† El máximo de IOPS está garantizado solo enInstancias integradas en el sistema Nitroaprovisionadas con más de 32 000 IOPS. Otras instancias garantizan hasta 32,000 IOPS. Viejoio1Es posible que no alcancen el rendimiento máximo a menos queModificar el volumen.io2 Compatibilidad con volúmenes de bloque Expressvolume_iopsvalores de hasta 256000. Para obtener más información, consulteio2Volúmenes de bloque Express (en vista previa)en laGuía del usuario de Amazon EC2 para instancias de Linux. volume_size

(Opcional)Define el tamaño del volumen que se va a crear, en GiB.

El valor predeterminado y los valores admitidos varían segúnvolume_type (p. 287). volume_type = standard

Valor predeterminadovolume_size20 GiB

Valores admitidosvolume_size= 1—1024 GiB volume_type=gp2,io1,io2, ygp3

Valor predeterminadovolume_size20 GiB

Valores admitidosvolume_size= 1—16384 GiB volume_type=sc1yst1

Valor predeterminadovolume_size= 500 GiB

Valores admitidosvolume_size= 500—16384 GiB

volume_size = 20

Note

AntesAWS ParallelClusterversión 2.10.1, el valor predeterminado para todos los tipos de volumen era 20 GiB.

286 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Sección [raid]

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 221) volume_throughput

(Opcional)Define el rendimiento degp3Tipos de volumen, en MiB/s.

El valor predeterminado es 125.

Valores admitidosvolume_throughput= 125—1000 Mbit/s

La relación devolume_throughputDe avolume_iopsNo puede tener más de 0.25. El rendimiento máximo de 1000 Mib/s requiere que elvolume_iopses al menos 4000. volume_throughput = 1000

Note

Compatibilidad convolume_throughputse ha añadido enAWS ParallelClusterversión 2.10.1

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 221) volume_type

(Opcional)Define el tipo de volumen que se va a crear.

Las opciones válidas son los siguientes valores: gp2, gp3

General Purpose SSD io1, io2

Provisioned IOPS SSD st1

HDD con rendimiento optimizado sc1

HDD en frío standard

Generación magnética anterior

Para obtener más información, consulte Tipos de volumen de Amazon EBS en la Guía del usuario de Amazon EC2 para instancias de Linux.

El valor predeterminado es gp2. volume_type = io2

Note

Compatibilidad congp3yio2se ha añadido enAWS ParallelClusterversión 2.10.1

287 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Sección [scaling]

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 221) Sección [scaling]

Temas • scaledown_idletime (p. 288)

Especifica la configuración que define cómo se escalan los nodos de computación.

El formato es el siguiente.[scaling scaling-name].nombre de escalaDebe comenzar con una letra, no tener más de 30 caracteres y solo puede contener letras, números, guiones (-) y guiones bajos (_).

[scaling custom] scaledown_idletime = 10 scaledown_idletime

(Opcional)Especifica la cantidad de minutos sin realizar un trabajo, transcurridos los cuales el nodo de computación termina.

Este parámetro no se utiliza siawsbatches el programador.

El valor predeterminado es 10. scaledown_idletime = 10

Política de actualización: La flota informática debe detenerse para que esta configuración se cambie para una actualización. (p. 221) Sección [vpc]

Temas • additional_sg (p. 289) • compute_subnet_cidr (p. 289) • compute_subnet_id (p. 289) • master_subnet_id (p. 289) • ssh_from (p. 289) • use_public_ips (p. 290) • vpc_id (p. 290) • vpc_security_group_id (p. 290)

Especifica los ajustes de configuración de Amazon VPC. Para obtener más información acerca de VPC, consulte¿Qué es Amazon VPC?yPrácticas recomendadas de seguridad de la VPCen laAmazon VPC User Guide.

El formato es el siguiente.[vpc vpc-name].VPC nameDebe comenzar con una letra, no tener más de 30 caracteres y solo puede contener letras, números, guiones (-) y guiones bajos (_).

[vpc public] vpc_id = vpc-xxxxxx

288 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Sección [vpc] master_subnet_id = subnet-xxxxxx additional_sg

(Opcional)Proporciona un ID de grupo de seguridad de Amazon VPC para todas las instancias.

No hay valor predeterminado. additional_sg = sg-xxxxxx compute_subnet_cidr

(Opcional)Especifica un bloque de enrutamiento de interdominios sin clases (CIDR). Utilice este parámetro si desea que AWS ParallelCluster cree una subred de computación. compute_subnet_cidr = 10.0.100.0/24

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 221) compute_subnet_id

(Opcional)Especifica el ID de una subred existente en la que se van a aprovisionar los nodos de computación.

Si no se especifica, compute_subnet_id (p. 289) utiliza el valor de master_subnet_id (p. 289).

Si la subred es privada, debe configurar NAT para el acceso web. compute_subnet_id = subnet-xxxxxx

Política de actualización: La flota informática debe detenerse para que esta configuración se cambie para una actualización. (p. 221) master_subnet_id

(Obligatorio)Especifica el ID de una subred existente en la que se va a aprovisionar el nodo principal. master_subnet_id = subnet-xxxxxx

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 221) ssh_from

(Opcional)Especifica un intervalo de IP con formato de CIDR desde el que se permite el acceso de SSH.

Este parámetro solo se utiliza cuando AWS ParallelCluster crea el grupo de seguridad.

El valor predeterminado es 0.0.0.0/0. ssh_from = 0.0.0.0/0

Política de actualización: Esta configuración se puede cambiar durante una actualización. (p. 221)

289 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Examples use_public_ips

(Opcional)Define si se asignarán o no direcciones IP públicas a instancias de computación.

Si se establece entrue, una dirección IP elástica se asocia al nodo principal.

Si se establece enfalseEl nodo principal tiene una IP pública (o no) según el valor del parámetro de configuración de subred «Auto-assign Public IP pública Public IP» (Asignar automáticamente IP pública pública pública pública pública).

Para ver ejemplos, consulte la configuración de redes (p. 166).

El valor predeterminado es true. use_public_ips = true

Important

De forma predeterminada, todos los Cuentas de AWS Se limitan a cinco (5) direcciones IP elásticas para cada región. Para obtener más información, consulteLímite de direcciones IP elásticasinGuía del usuario de Amazon EC2 para instancias de Linux.

Política de actualización: La flota informática debe detenerse para que esta configuración se cambie para una actualización. (p. 221) vpc_id

(Obligatorio)Especifica el ID de Amazon VPC en el que se va a aprovisionar el clúster. vpc_id = vpc-xxxxxx

Política de actualización: Si se cambia esta configuración, la actualización no está permitida. (p. 221) vpc_security_group_id

(Opcional)Especifica el uso de un grupo de seguridad existente para todas las instancias.

No hay valor predeterminado. vpc_security_group_id = sg-xxxxxx

El grupo de seguridad creado porAWS ParallelClusterpermite el acceso SSH mediante el puerto 22 desde las direcciones especificadas en elssh_from (p. 289), o todas las direcciones IPv4 (0.0.0.0/0) si elssh_from (p. 289)no se ha especificado. Si NICE DCV está habilitado, entonces el grupo de seguridad permite el acceso a NICE DCV mediante el puerto 8443 (o cualquiera que sea elport (p. 264)especifica) de las direcciones especificadas en el parámetroaccess_from (p. 263), o todas las direcciones IPv4 (0.0.0.0/0) si elaccess_from (p. 263)no se ha especificado.

Política de actualización: Esta configuración se puede cambiar durante una actualización. (p. 221) Examples

En las siguientes configuraciones de ejemplo se muestra cómoAWS ParallelClusterconfiguraciones de uso deSlurm,Torque, yAWS Batchprogramadores.

290 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Examples

Contenido • Slurm Workload Manager (slurm) (p. 291) • Son of Grid Engine(sge) yTorque Resource Manager(torque) (p. 291) • AWS Batch (awsbatch) (p. 292)

Slurm Workload Manager (slurm)

El siguiente ejemplo lanza un clúster con el programador slurm. La configuración de ejemplo inicia 1 clúster con 2 colas de trabajos. La primera cola,spot, inicialmente tiene 2t3.microInstancias puntuales disponibles. Puede escalar hasta un máximo de 10 instancias y escalar hasta un mínimo de 1 instancia cuando no se han ejecutado trabajos durante 10 minutos (se puede ajustar mediante la opciónscaledown_idletime (p. 288)configuración). La segunda cola,ondemand, comienza sin instancias y puede escalar hasta un máximo de 5t3.microInstancias bajo demanda.

[global] update_check = true sanity_check = true cluster_template = slurm

[aws] aws_region_name =

[vpc public] master_subnet_id = vpc_id =

[cluster slurm] key_name = base_os = alinux2 # optional, defaults to alinux2 scheduler = slurm master_instance_type = t3.micro # optional, defaults to t3.micro vpc_settings = public queue_settings = spot,ondemand

[queue spot] compute_resource_settings = spot_i1 compute_type = spot # optional, defaults to ondemand

[compute_resource spot_i1] instance_type = t3.micro min_count = 1 # optional, defaults to 0 initial_count = 2 # optional, defaults to 0

[queue ondemand] compute_resource_settings = ondemand_i1

[compute_resource ondemand_i1] instance_type = t3.micro max_count = 5 # optional, defaults to 10

Son of Grid Engine(sge) yTorque Resource Manager(torque)

En el ejemplo siguiente se lanza un clúster con latorqueorsgeprogramador. Para utilizarSGE, cambiescheduler = torqueDe ascheduler = sge. La configuración de ejemplo le permite tener un máximo de 5 nodos simultáneos y baja a dos cuando no se ha ejecutado ningún trabajo durante un plazo de 10 minutos.

291 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Examples

[global] update_check = true sanity_check = true cluster_template = torque

[aws] aws_region_name =

[vpc public] master_subnet_id = vpc_id =

[cluster torque] key_name = base_os = alinux2 # optional, defaults to alinux2 scheduler = torque # optional, defaults to sge master_instance_type = t3.micro # optional, defaults to t3.micro vpc_settings = public initial_queue_size = 2 # optional, defaults to 0 maintain_initial_size = true # optional, defaults to false max_queue_size = 5 # optional, defaults to 10

Warning

A partir del 31 de diciembre de 2021,AWSya no incluiráSGEyTorquesoporte para todas las versiones publicadas deAWS ParallelCluster. Versiones anteriores deAWS ParallelClusterCompatibilidad conSGEyTorqueseguirá estando disponible para su descarga y uso. Sin embargo, estas versiones no serán elegibles para futuras actualizaciones o asistencia para la solución de problemas delAWSy servicios deAWSEquipos de Support. Por otra parte, las futuras versiones deAWS ParallelClusterrealizado antes y después del 31 de diciembre de 2021 no incluirá soporte paraSGEorTorque. AWS Batch (awsbatch)

El siguiente ejemplo lanza un clúster con el programador awsbatch. Se establece para seleccionar el mejor tipo de instancia en función de las necesidades de sus recursos de trabajo.

La configuración de ejemplo le permite tener un máximo de 40 vCPUs simultáneas y baja a cero cuando no se ha ejecutado ningún trabajo durante un plazo de 10 minutos (se puede ajustar con la opciónscaledown_idletime (p. 288)configuración).

[global] update_check = true sanity_check = true cluster_template = awsbatch

[aws] aws_region_name =

[vpc public] master_subnet_id = vpc_id =

[cluster awsbatch] scheduler = awsbatch compute_instance_type = optimal # optional, defaults to optimal min_vcpus = 0 # optional, defaults to 0

292 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Cómo funciona AWS ParallelCluster

desired_vcpus = 0 # optional, defaults to 4 max_vcpus = 40 # optional, defaults to 20 base_os = alinux2 # optional, defaults to alinux2, controls the base_os of # the head node and the docker image for the compute fleet key_name = vpc_settings = public

Cómo funciona AWS ParallelCluster

AWS ParallelClusterse creó no solo como una forma de administrar clústeres, sino también como referencia sobre cómo usarAWSpara crear su entorno HPC.

Temas • AWS ParallelClusterProcesos (p. 293) • AWSServicios utilizados porAWS ParallelCluster (p. 298) • Auto Scaling de AWS ParallelCluster (p. 302)

AWS ParallelClusterProcesos

Esta sección se aplica únicamente a clústeres de HPC que se implementan con uno de los programadores de trabajos tradicionales compatibles (SGE, Slurm o Torque). Cuando se utiliza con estos programadores,AWS ParallelClusteradministra el aprovisionamiento de nodos de computación y su eliminación interactuando con el grupo Auto Scaling y el programador de trabajos subyacente.

Para clústeres HPC que se basan enAWS Batch,AWS ParallelClusterse basa en las capacidades proporcionadas por elAWS Batchpara la administración de nodos de cómputos.

Temas • Información general (p. 293) • jobwatcher (p. 294) • sqswatcher (p. 295) • nodewatcher (p. 296) • clustermgtd (p. 297) • computemgtd (p. 298)

Información general

El ciclo de vida de un clúster comienza después de crearlo el usuario. Normalmente, un clúster se crea a partir de la interfaz de línea de comandos (CLI). Después de crearse, un clúster existe hasta que se elimina. Los demonios de AWS ParallelCluster se ejecutan en los nodos de clúster, principalmente para administrar la elasticidad del clúster HPC. En el siguiente diagrama se muestran un flujo de trabajo de usuario y el ciclo de vida del clúster. En las secciones que aparecen a continuación se describen los demonios de AWS ParallelCluster que se utilizan para administrar el clúster.

293 AWS ParallelCluster Guía del usuario de AWS ParallelCluster AWS ParallelClusterProcesos

jobwatcher

Al ejecutarse un clúster, un proceso que pertenece al usuario raíz monitoriza el programador configurado (SGE,Slurm, o bienTorque). Cada minuto evalúa la cola con el fin de decidir cuándo escalar.

294 AWS ParallelCluster Guía del usuario de AWS ParallelCluster AWS ParallelClusterProcesos

sqswatcher

LasqswatcherPara obtener información sobre los mensajes de Amazon SQS que envía Auto Scaling para notificarle los cambios de estado en el clúster. Cuando una instancia está online, envía un mensaje «instancia lista» a Amazon SQS. recoge este mensajesqs_watcher, se ejecuta en el nodo director. Estos mensajes se utilizan para notificar al administrador de la cola que hay instancias nuevas online o que se han terminado instancias, de modo que se puedan añadir o eliminar de la cola.

295 AWS ParallelCluster Guía del usuario de AWS ParallelCluster AWS ParallelClusterProcesos

nodewatcher

El proceso nodewatcher se ejecuta en cada nodo de la flota de computación. Transcurrido el periodo scaledown_idletime, tal como define el usuario, la instancia se termina.

296 AWS ParallelCluster Guía del usuario de AWS ParallelCluster AWS ParallelClusterProcesos

clustermgtd

Los clústeres que se ejecutan en modo heterogéneo (indicados especificando unqueue_settings (p. 255)) tienen un demonio de administración de clústeres (clustermgtd) que se ejecuta en el nodo principal. Estas tareas las realiza el demonio de administración de clústeres.

• Limpieza de partición inactiva • Administración de la capacidad estática: asegúrese de que la capacidad estática esté siempre activa y en buen estado • Programador de sincronización con Amazon EC2. • Limpieza de instancias huérfanas

297 AWS ParallelCluster Guía del usuario de AWS ParallelCluster AWSServicios utilizados porAWS ParallelCluster

• Restaurar el estado del nodo del programador en la terminación de Amazon EC2 que ocurre fuera del flujo de trabajo de suspensión • Gestión de instancias de Amazon EC2 en mal estado (errores en las comprobaciones de estado de Amazon EC2) • Gestión de eventos de mantenimiento programados • Administración de nodos del programador no saludable (errores en las comprobaciones de estado del programador) computemgtd

Los clústeres que se ejecutan en modo heterogéneo (indicados especificando unqueue_settings (p. 255)) tienen demonio de administración de computación (computemgtd) que se ejecutan en cada uno de los nodos de proceso. Cada cinco (5) minutos, el demonio de administración de computación confirma que se puede alcanzar el nodo principal y está en buen estado. Si pasan cinco (5) minutos durante los cuales no se puede alcanzar el nodo principal o no está en buen estado, el nodo de cálculo se cierra. AWSServicios utilizados porAWS ParallelCluster

Amazon Web Services (AWS) son utilizados porAWS ParallelCluster.

Temas • AWS Auto Scaling (p. 298) • AWS Batch (p. 299) • AWS CloudFormation (p. 299) • Amazon CloudWatch (p. 299) • Amazon CloudWatch Logs (p. 299) • AWS CodeBuild (p. 300) • Amazon DynamoDB (p. 300) • Amazon Elastic Block Store (EBS) (p. 300) • Amazon Elastic Compute Cloud (p. 300) • Amazon Elastic Container Registry (p. 300) • Amazon EFS (p. 301) • Amazon FSx for Lustre (p. 301) • AWS Identity and Access Management (p. 301) • AWS Lambda (p. 301) • NICE DCV (p. 301) • Amazon Route 53 (p. 302) • Amazon Simple Notification Service (p. 302) • Amazon Simple Queue Service (p. 302) • Amazon Simple Storage Service (p. 302) • Amazon VPC (p. 302)

AWS Auto Scaling

AWS Auto Scalinges un servicio que supervisa sus aplicaciones y ajusta automáticamente la capacidad en función de sus requisitos de servicio específicos y cambiantes. Este servicio administra las instancias de

298 AWS ParallelCluster Guía del usuario de AWS ParallelCluster AWSServicios utilizados porAWS ParallelCluster

ComputeFleet como un grupo de Auto Scaling. El grupo puede ser impulsado elásticamente por la carga de trabajo cambiante o fijados estáticamente por las configuraciones de instancia iniciales.

AWS Auto Scalingse utiliza con instancias de ComputeFleet, pero no se utiliza conAWS Batchclústeres.

Para obtener más información acerca deAWS Auto Scaling, consultehttps://aws.amazon.com/ autoscaling/yhttps://docs.aws.amazon.com/autoscaling/. AWS Batch

AWS Batches unAWSservicio programador de trabajos administrado. Aprovisiona de forma dinámica la cantidad óptima y el tipo de recursos de computación (por ejemplo, instancias optimizadas para memoria o CPU) enAWS Batchclústeres. Estos recursos se aprovisionan en función de los requisitos específicos de los trabajos por lotes, incluidos los requisitos de volumen. conAWS BatchPara ejecutar sus trabajos de forma eficaz no es necesario instalar ni administrar clústeres de servidores o software de computación por lotes adicionales.

AWS Batch se usa solo con clústeres de AWS Batch.

Para obtener más información acerca deAWS Batch, consultehttps://aws.amazon.com/batch/yhttps:// docs.aws.amazon.com/batch/. AWS CloudFormation

AWS CloudFormationes un servicio de infraestructura como código que proporciona un lenguaje común para modelar y aprovisionarAWSy recursos de aplicaciones de terceros en su entorno de nube. Es el servicio principal utilizado porAWS ParallelCluster. Cada clúster enAWS ParallelClusterse representa como una pila, y todos los recursos requeridos por cada clúster se definen dentro delAWS ParallelCluster AWS CloudFormationplantilla. En la mayoría de los casos,AWS ParallelClusterLos comandos CLI corresponden directamente aAWS CloudFormationStack, como los comandos crear, actualizar y eliminar. Las instancias que se lanzan dentro de un clúster realizan llamadas HTTPS a laAWS CloudFormationEn la región donde se ha lanzado el clúster.

Para obtener más información acerca deAWS CloudFormation, consultehttps://aws.amazon.com/ cloudformation/yhttps://docs.aws.amazon.com/cloudformation/. Amazon CloudWatch

Amazon CloudWatch (CloudWatch) es un servicio de supervisión y observabilidad que le proporciona datos e información procesable. Estos conocimientos se pueden utilizar para supervisar sus aplicaciones, responder a los cambios de rendimiento y excepciones de servicio, y optimizar la utilización de los recursos. EnAWS ParallelCluster, CloudWatch se utiliza para un panel de control, para monitorear y registrar los pasos de creación de la imagen de Docker y la salida de laAWS Batchjobs.

AntesAWS ParallelClusterversión 2.10.0, CloudWatch se usó solo conAWS Batchclústeres.

Para obtener más información sobre CloudWatch, consulte.https://aws.amazon.com/cloudwatch/yhttps:// docs.aws.amazon.com/cloudwatch/. Amazon CloudWatch Logs

Amazon CloudWatch Logs (CloudWatch Logs) es una de las características principales de Amazon CloudWatch. Puede usarla para monitorear, almacenar, ver y buscar en los archivos de registro muchos de los componentes utilizados porAWS ParallelCluster.

AntesAWS ParallelClusterVersión 2.6.0, CloudWatch Logs solo se usó conAWS Batchclústeres.

Para obtener más información, consulte Integración con Amazon CloudWatch Logs (p. 214).

299 AWS ParallelCluster Guía del usuario de AWS ParallelCluster AWSServicios utilizados porAWS ParallelCluster AWS CodeBuild

AWS CodeBuild(CodeBuild) es unAWSServicio de integración continua administrado que cumple con el código fuente, ejecuta pruebas y produce paquetes de software listos para su implementación. EnAWS ParallelClusterAl crear clústeres, CodeBuild se utiliza para crear imágenes de Docker de forma automática y transparente.

CodeBuild se usa solo conAWS Batchclústeres.

Para obtener más información sobre CodeBuild, consultehttps://aws.amazon.com/codebuild/yhttps:// docs.aws.amazon.com/codebuild/. Amazon DynamoDB

Amazon DynamoDB (DynamoDB) es un servicio de base de datos NoSQL rápido y flexible. Se utiliza para almacenar la información del estado mínimo del clúster. El nodo principal realiza un seguimiento de las instancias aprovisionadas en una tabla de DynamoDB.

DynamoDB no se utiliza conAWS Batchclústeres.

Para obtener más información sobre DynamoDB, consulte.https://aws.amazon.com/dynamodb/yhttps:// docs.aws.amazon.com/dynamodb/. Amazon Elastic Block Store (EBS)

Amazon Elastic Block Store (Amazon EBS) es un servicio de almacenamiento en bloque de alto rendimiento que proporciona almacenamiento persistente de volúmenes compartidos. Toda la configuración de Amazon EBS se puede pasar a través de la configuración. Los volúmenes de Amazon EBS se pueden inicializar vacíos o desde una instantánea de Amazon EBS existente.

Para obtener más información sobre Amazon EBS, consulte.https://aws.amazon.com/ebs/yhttps:// docs.aws.amazon.com/ebs/. Amazon Elastic Compute Cloud

Amazon Elastic Compute Cloud (Amazon EC2) ofrece la capacidad de computación paraAWS ParallelCluster. Los nodos de cabeza y de computación son instancias de Amazon EC2. Se puede seleccionar cualquier tipo de instancia compatible con HVM. Los nodos de cabeza y de cálculo pueden ser diferentes tipos de instancia. Además, si se utilizan varias colas, algunos o todos los nodos informáticos también se pueden iniciar como instancia puntual. Los volúmenes de almacén de instancias que se encuentran en las instancias se montan como volúmenes LVM fragmentados.

Para obtener más información sobre Amazon EC2, consulte.https://aws.amazon.com/ec2/yhttps:// docs.aws.amazon.com/ec2/. Amazon Elastic Container Registry

Amazon Elastic Container Registry (Amazon ECR) es un registro de contenedores Docker completamente administrado que facilita el almacenamiento, la administración y la implementación de imágenes de contenedores Docker. EnAWS ParallelCluster, Amazon ECR almacena las imágenes de Docker que se crean cuando se crean clústeres. Luego, AWS Batch utiliza dichas imágenes para ejecutar los contenedores para los trabajos enviados.

Amazon ECR se utiliza únicamente conAWS Batchclústeres.

Para obtener más información, consultehttps://aws.amazon.com/ecr/yhttps://docs.aws.amazon.com/ecr/.

300 AWS ParallelCluster Guía del usuario de AWS ParallelCluster AWSServicios utilizados porAWS ParallelCluster Amazon EFS

Amazon Elastic File System (Amazon EFS) ofrece un sistema de archivos NFS simple, escalable y elástico que puede utilizar con Nube de AWS servicios y recursos locales. Amazon EFS se utiliza cuando elefs_settings (p. 247)se especifica y hace referencia a un[efs]Sección (p. 268). La Support con Amazon EFS se ha añadido enAWS ParallelClusterversión 2.1.0.

Para obtener más información sobre Amazon EFS, consulte.https://aws.amazon.com/efs/yhttps:// docs.aws.amazon.com/efs/. Amazon FSx for Lustre

FSx for Lustre proporciona un sistema de archivos de alto rendimiento que utiliza el sistema de archivos Lustre de código abierto. FSx for Lustre se utiliza cuando elfsx_settings (p. 249)se especifica y hace referencia a un[fsx]Sección (p. 271). El Support para FSx for Lustre se agregó enAWS ParallelClusterversión 2.2.1.

Para obtener más información sobre FSx for Lustre, consultehttps://aws.amazon.com/fsx/lustre/yhttps:// docs.aws.amazon.com/fsx/. AWS Identity and Access Management

AWS Identity and Access Management(IAM) se usa dentro deAWS ParallelClusterpara proporcionar un rol de IAM menos privilegiado para Amazon EC2 para la instancia específica de cada clúster individual.AWS ParallelClusterA las instancias de se les da acceso solo a las llamadas a la API específicas necesarias para implementar y administrar el clúster. conAWS BatchCon los clústeres de, también se crean roles de IAM de para los componentes que se incluyen en el proceso de creación de la imagen de Docker cuando se crean clústeres de. Estos componentes incluyen las funciones Lambda que tienen permiso para añadir o eliminar imágenes de Docker desde el repositorio de Amazon ECR. También incluyen las funciones que tienen permiso para eliminar el bucket de Amazon S3 que se ha creado para el proyecto de clúster y CodeBuild. También hay roles para los recursos, las instancias y los trabajos de AWS Batch.

Para obtener más información sobre IAM, consultehttps://aws.amazon.com/iam/yhttps:// docs.aws.amazon.com/iam/. AWS Lambda

AWS Lambda(Lambda) ejecuta las funciones que organizan la creación de imágenes de Docker. Lambda también administra la limpieza de recursos de clúster personalizados, como las imágenes de Docker almacenadas en el repositorio de Amazon ECR y en Amazon S3.

Lambda se usa solo conAWS Batchclústeres.

Para obtener más información sobre Lambda, consulte.https://aws.amazon.com/lambda/yhttps:// docs.aws.amazon.com/lambda/. NICE DCV

NICE DCV es un protocolo de visualización remota de alto rendimiento que proporciona una forma segura de entregar escritorios remotos y transmisiones de aplicaciones a cualquier dispositivo en diferentes condiciones de red. NICE DCV se utiliza cuando eldcv_settings (p. 245)se especifica y hace referencia a un[dcv]Sección (p. 263). El Support para NICE DCV se agregó enAWS ParallelClusterversión 2.5.0.

Para obtener más información sobre NICE DCV, consultehttps://aws.amazon.com/hpc/dcv/yhttps:// docs.aws.amazon.com/dcv/.

301 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Auto Scaling de AWS ParallelCluster Amazon Route 53

Amazon Route 53 (Route 53) se utiliza para crear zonas alojadas con nombres de host y nombres de dominio totalmente cualificados para cada uno de los nodos informáticos.

Para obtener más información sobre Route 53, consultehttps://aws.amazon.com/route53/yhttps:// docs.aws.amazon.com/route53/. Amazon Simple Notification Service

Amazon Simple Notification Service (Amazon SNS) recibe notificaciones de Auto Scaling. Estos eventos se denominan eventos de ciclo de vida y se generan cuando se lanza o termina una instancia en un grupo de Auto Scaling. Dentro deAWS ParallelCluster, el tema de Amazon SNS para el grupo Auto Scaling está suscrito a una cola de Amazon SQS.

Amazon SNS no se utiliza conAWS Batchclústeres.

Para obtener más información sobre Amazon SNS, consulte.https://aws.amazon.com/sns/yhttps:// docs.aws.amazon.com/sns/. Amazon Simple Queue Service

Amazon Simple Queue Service (Amazon SQS) contiene notificaciones enviadas desde Auto Scaling, notificaciones enviadas a través de Amazon SNS y notificaciones enviadas desde los nodos informáticos. Amazon SQS desacopla el envío de notificaciones de la recepción de notificaciones. Esto permite que el nodo principal maneje las notificaciones a través de un proceso de sondeo. En este proceso, el nodo principal ejecuta Amazon SQSwatcher y sondea la cola. Auto Scaling y los nodos de computación publican mensajes en la cola.

Amazon SQS no se utiliza conAWS Batchclústeres.

Para obtener más información sobre Amazon SQS, consulte.https://aws.amazon.com/sqs/yhttps:// docs.aws.amazon.com/sqs/. Amazon Simple Storage Service

Tiendas de Amazon Simple Storage Service (Amazon S3)AWS ParallelClusterubicadas en cada región.AWS ParallelClusterse puede configurar para permitir que las herramientas de CLI o SDK usen Amazon S3.

Cuando usaAWS Batch, se utiliza un depósito de Amazon S3 en su cuenta para almacenar datos relacionados. Por ejemplo, el depósito almacena artefactos creados cuando se crean una imagen de Docker y secuencias de comandos a partir de trabajos enviados.

Para obtener más información, consultehttps://aws.amazon.com/s3/yhttps://docs.aws.amazon.com/s3/. Amazon VPC

Amazon VPC define una red que utilizan los nodos de su clúster. La configuración de VPC para el clúster se define en la[vpc]Sección (p. 288).

Para obtener más información sobre Amazon VPC, consulte.https://aws.amazon.com/vpc/yhttps:// docs.aws.amazon.com/vpc/. Auto Scaling de AWS ParallelCluster

La estrategia de Auto Scaling que se describe en este tema se aplica a clústeres de HPC que se implementan conSon of Grid Engine(SGE) oTorque Resource Manager(Torque). Cuando se implementa

302 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Auto Scaling de AWS ParallelCluster con uno de estos programadores,AWS ParallelClusterImplementa las capacidades de escalado administrando el grupo Auto Scaling de los nodos de computación y cambiando a continuación la configuración del programador según sea necesario. Para clústeres HPC que se basan enAWS Batch,AWS ParallelClusterse basa en las capacidades de escalado elástico que proporciona laAWSprogramador de trabajos administrado. Para obtener más información, consulteAuto Scaling de Amazon EC2en laGuía del usuario de Amazon EC2 Auto Scaling. Note

AntesAWS ParallelClusterVersión 2.9.0, Auto Scaling se utilizó conSlurm Workload Manager(Slurm).

Son varias las maneras en que los clústeres que AWS ParallelCluster implementa son elásticos. Configuración de lainitial_queue_size (p. 250)Al establecer el valor del tamaño mínimo del grupo de Auto Scaling de ComputeFleet y también el valor de la capacidad que se quiere tener. Configuración de lamax_queue_size (p. 252)Especifica el valor del tamaño máximo del grupo de Auto Scaling de ComputeFleet.

Ampliación

Un proceso llamadojobwatcherse ejecuta en el nodo director. Evalúa el número actual de instancias que requieren los trabajos pendientes de la cola. Si el número total de nodos ocupados y nodos solicitados es superior al valor deseado actual en el grupo Auto Scaling, agrega más instancias. Si envía más trabajos, la cola se vuelve a evaluar y se actualiza el grupo de Auto Scaling, hasta el valor demax_queue_size (p. 252).

Cuando se usa un programador SGE, los trabajos tienen que ejecutar cada uno un número de ranuras (una ranura corresponde a una unidad de procesamiento; por ejemplo, una vCPU). Al evaluar el número de instancias que son necesarias para atender los trabajos pendientes actualmente, jobwatcher divide el número total de ranuras solicitadas por la capacidad de un único nodo de computación. La capacidad de un nodo de computación que corresponde al número de vCPUs disponibles depende del tipo de instancia de Amazon EC2 que se especifica en la configuración del clúster. conSlurm(Antes deAWS ParallelClusterversión 2.9.0 yTorqueCon los programadores, cada trabajo podría requerir un número de nodos y un número de ranuras para cada nodo, en función de cada caso. Para cada solicitud, jobwatcher determina el número de nodos de computación que son necesarios para cumplir los nuevos requisitos informáticos. Por ejemplo, adoptemos un clúster con c5.2xlarge (8 vCPU) como el tipo de instancia de informática, así como tres trabajos pendientes en cola con los siguientes requisitos:

303 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Tutorials

• trabajo1: 2 nodos / 4 ranuras cada uno • trabajo2: 3 nodos / 2 ranuras • trabajo3: 1 nodo / 4 ranuras

En este ejemplo, a la acciónjobwatcherrequiere que tres nuevas instancias de computación en el grupo de Auto Scaling se ocupen de los tres trabajos.

Limitación actual: la lógica de escalado automático no considera nodos ocupados parcialmente cargados. Por ejemplo, un nodo que ejecuta un trabajo se considera ocupado, aunque haya ranuras vacías. Escalado descendente

El tiempo de inactividad de nodo en cada uno de los nodos de computación se ejecuta y evalúa en un proceso llamado nodewatcher. Una instancia se termina si se cumplen las dos condiciones siguientes:

• Una instancia no tiene ningún trabajo durante un periodo de tiempo superior a scaledown_idletime (p. 288) (la configuración predeterminada es 10 minutos) • No hay ningún trabajo pendiente en el clúster

Para terminar una instancia,nodewatcherllama a laTerminateInstanceInAutoScalingGroup, que elimina una instancia si el tamaño del grupo Auto Scaling es al menos el tamaño mínimo del grupo Auto Scaling. Este proceso realiza un escalado descendente en el clúster sin que ello afecte a los trabajos en ejecución. También habilita un clúster elástico con un número base fijo de instancias. Cluster estático

El valor de Auto Scaling es el mismo para HPC que con cualquier otra carga de trabajo. La única diferencia es que AWS ParallelCluster cuenta con un código que hace que interactúe de un modo más inteligente. Por ejemplo, si se requiere un clúster estático, se establece la propiedadinitial_queue_size (p. 250)ymax_queue_size (p. 252)Al tamaño exacto del clúster que se requiere y, a continuación, establezca la propiedadmaintain_initial_size (p. 251)a true. Esto hace que el grupo de Auto Scaling de ComputeFleet tenga el mismo valor para la capacidad mínima, máxima y deseada.

Tutorials

En los siguientes tutoriales se le muestra cómo comenzar a utilizar AWS ParallelCluster y se proporciona orientación sobre prácticas recomendadas para algunas tareas comunes.

Temas • Ejecución del primer trabajo en AWS ParallelCluster (p. 304) • Creación de una AMI de AWS ParallelCluster personalizada (p. 306) • Ejecución de un trabajo de MPI conAWS ParallelClusteryawsbatchprogramador (p. 309) • Cifrado de disco con una clave KMS personalizada (p. 314) • Modo de cola múltiple tutorial (p. 316)

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.

Si aún no ha completado la instalación de AWS ParallelCluster ni configurado su CLI, siga las instrucciones en la guía de introducción (p. 148) antes de continuar con este tutorial.

304 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Ejecución del primer trabajo en AWS ParallelCluster 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 su 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.

305 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Creación de una AMI de AWS ParallelCluster personalizada Ejecución de su primer trabajo con SGE

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 [email protected] 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 ele1El archivo 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. Creación de una AMI de AWS ParallelCluster personalizada Important

No recomendamos crear una AMI personalizada como enfoque para personalizarAWS ParallelCluster.

306 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Creación de una AMI de AWS ParallelCluster personalizada

Esto se debe a que, después de crear su propia AMI, dejará de recibir actualizaciones o correcciones de errores con las versiones futuras deAWS ParallelCluster. Además, si crea una AMI personalizada, debe repetir los pasos de creación de la AMI personalizada para cada nuevaAWS ParallelClusterliberación.

Antes de leer más, le recomendamos que en primer lugar revise laAcciones de arranque personalizadas (p. 170)Para determinar si las modificaciones que desea realizar se pueden incluir en un script y son compatibles con futurasAWS ParallelClusterlanzamientos.

Aunque la creación de una AMI personalizada no es ideal (debido a las razones mencionadas anteriormente), todavía hay escenarios en los que la creación de una AMI personalizada paraAWS ParallelClusterEs necesaria. Este tutorial le guía a través del proceso de creación de una AMI personalizada para estos escenarios. Note

A partir deAWS ParallelClusterLa versión 2.6.1, la mayoría de las recetas de instalación se omiten de forma predeterminada al lanzar nodos. Esto es para mejorar los tiempos de inicio. Para ejecutar todas las recetas de instalación para una mejor compatibilidad con versiones anteriores a costa de los tiempos de inicio, añada a"skip_install_recipes" : "no"a laclusterClave enextra_json (p. 249)Configuración de. Por ejemplo:

extra_json = { "cluster" : { "skip_install_recipes" : "no" } }

Cómo personalizar la AMI de AWS ParallelCluster

Existen tres formas de utilizar una AMI de AWS ParallelCluster personalizada. Dos de estos tres métodos requieren que cree una nueva AMI que esté disponible en su Cuenta de AWS . El tercer método (Usar una AMI personalizada en tiempo de ejecución) no requiere que cree nada con antelación. Elija el método que mejor se adapte a sus necesidades.

Métodos de personalización • Modificar una AMI de AWS ParallelCluster (p. 138) • Creación de una AMI de AWS ParallelCluster personalizada (p. 135) • Uso de una AMI personalizada en tiempo de ejecución (p. 309)

Modificar una AMI de AWS ParallelCluster

Este es el método más seguro y el que se recomienda. Porque la baseAWS ParallelClusterA menudo se actualiza con las nuevas versiones, esta AMI tiene todos los componentes necesarios paraAWS ParallelClusterpara que funcione cuando esté instalado y configurado. Puede comenzar con esto como base.

1. En la lista de AMI, busque la AMI que corresponde a la región específica que usa. La lista de AMI que elija debe coincidir con la versión deAWS ParallelClusterque utiliza. Ejecute pcluster version para verificar la versión. ParaAWS ParallelClusterversión 2.11.2, vaya ahttps://github.com/aws/aws- parallelcluster/blob/v2.11.2/amis.txt. Para seleccionar otra versión, utilice el mismo enlace, elija la opciónEtiqueta: 2.11.2, seleccione el botónEtiquetasA continuación, seleccione la versión adecuada. 2. En la consola de Amazon EC2, elijaLanzar instancia. 3. Vaya aCommunity AMIs (AMI de comunidad)Introduzca el ID de AMI de su región en el campo de búsqueda. 4. Seleccione la AMI, elija el tipo de instancia y las propiedades, y lance su instancia. 5. Inicie sesión en la instancia mediante el usuario del sistema operativo y su clave de SSH. 6. Personalice su instancia según sea necesario.

307 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Creación de una AMI de AWS ParallelCluster personalizada

7. Ejecute el siguiente comando para preparar su instancia para la creación de la AMI:

sudo /usr/local/sbin/ami_cleanup.sh

8. Detenga la instancia. 9. Cree una nueva AMI a partir de la instancia. 10.Escriba el ID de AMI en el campo custom_ami (p. 244) de la configuración del clúster.

Creación de una AMI de AWS ParallelCluster personalizada

Si ya tiene instalados una AMI personalizada y software, puede aplicar en ellos los cambios que AWS ParallelCluster necesita.

1. Instale lo siguiente en su sistema local, junto con elAWS ParallelClusterCLI: • Packer: obtenga la versión más reciente para su sistema operativo en el sitio web de Packer e instálela. La versión debe ser al menos 1.4.0, pero se recomienda la última versión. Verifique que elpackerestá disponible en su PATH. Note

AntesAWS ParallelClusterversión 2.8.0,Berkshelf(que se instala usandogem install berkshelfPara usarpcluster createami. 2. Configure el Cuenta de AWS para que Packer pueda realizar llamadas aAWSOperaciones de API en su nombre. El conjunto mínimo de permisos necesarios para que Packer funcione se documenta en la sección Tarea de IAM o rol de instancia del tema Amazon AMI Builder de la documentación de Packer. 3. Utilice el comando createami de la CLI de AWS ParallelCluster para crear una AMI de AWS ParallelCluster a partir de la AMI que ha proporcionado como base:

pcluster createami --ami-id --os

Important

No debe usar unAWS ParallelClusterAMI de un clúster en ejecución comopara lacreateamicomando. De lo contrario, el comando falla.

Para ver otros parámetros, consultepcluster createami (p. 225). 4. El comando del paso 4 ejecuta Packer, el cual específicamente ejecuta lo siguiente: a. Lanza una instancia mediante la AMI Base que se le ha proporcionado. b. Se aplica elAWS ParallelClusterAntes de instalar software relevante y realizar otras tareas de configuración necesarias. c. Detiene la instancia. d. Crea una nueva AMI a partir de la instancia. e. Termina la instancia después de crear la AMI. f. Produce la cadena del nuevo ID de AMI que debe utilizarse para crear el clúster. 5. Para crear el clúster, especifique el ID de AMI en el campo custom_ami (p. 244) de la configuración del clúster.

Note

El tipo de instancia que se utiliza para crear unAWS ParallelClusterAMIt2.xlarge. Este tipo de instancia no califica para elAWSPor consiguiente, se le cobrará por todas las instancias que genere cuando cree esta AMI. 308 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Ejecución de un trabajo de MPI conAWS ParallelClusteryawsbatchprogramador Uso de una AMI personalizada en tiempo de ejecución

Si no quiere crear nada por adelantado, puede usar su AMI y crear unAWS ParallelClusterde esa AMI.

Con este método, tarda más tiempo para elAWS ParallelClusterporque todo el software que necesitaAWS ParallelClusterCuando se cree el clúster, debe estar instalado. Además, la ampliación también lleva más tiempo.

• Escriba el ID de AMI en el campo custom_ami (p. 244) de la configuración del clúster.

Ejecución de un trabajo de MPI conAWS ParallelClusteryawsbatchprogramador

Este tutorial lo guía por la ejecución de un trabajo de MPI donde se utilice awsbatch como programador.

Si aún no ha instalado AWS ParallelCluster ni configurado su CLI, siga las instrucciones en la guía de introducción (p. 148) antes de continuar con este tutorial. Además, acuérdese de leer la documentación de instalación de redes awsbatch (p. 169) antes de pasar al paso siguiente. Creación del clúster

En primer lugar, crearemos una configuración para un clúster que use awsbatch como programador. Acuérdese de insertar los datos que faltan en la sección vpc y el campo key_name con los recursos que ha creado en el momento de realizar la configuración.

[global] sanity_check = true

[aws] aws_region_name = us-east-1

[cluster awsbatch] base_os = alinux # Replace with the name of the key you intend to use. key_name = key-####### vpc_settings = my-vpc scheduler = awsbatch compute_instance_type = optimal min_vcpus = 2 desired_vcpus = 2 max_vcpus = 24

[vpc my-vpc] # Replace with the id of the vpc you intend to use. vpc_id = vpc-####### # Replace with id of the subnet for the Head node. master_subnet_id = subnet-####### # Replace with id of the subnet for the Compute nodes. # A NAT Gateway is required for MNP. compute_subnet_id = subnet-#######

Ahora ya puede comenzar a crear el clúster. Llamemos a nuestro clúster awsbatch-tutorial.

$ pcluster create -c /path/to/the/created/config/aws_batch.config -t awsbatch awsbatch- tutorial

Al crearse el clúster, verá un resultado parecido al siguiente:

309 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Ejecución de un trabajo de MPI conAWS ParallelClusteryawsbatchprogramador Beginning cluster creation for cluster: awsbatch-tutorial Creating stack named: parallelcluster-awsbatch Status: parallelcluster-awsbatch - CREATE_COMPLETE MasterPublicIP: 54.160.xxx.xxx ClusterUser: ec2-user MasterPrivateIP: 10.0.0.15

Iniciar sesión en su nodo principal

Todos los comandos de la CLI por lotes de AWS ParallelCluster (p. 208) están disponibles en el equipo cliente donde está instalado AWS ParallelCluster. Sin embargo, vamos a SSH en el nodo principal y envíe los trabajos desde allí. Esto nos permite aprovechar el volumen de NFS, que se comparte entre la instancia principal y todas las instancias de Docker que ejecutanAWS Batchjobs.

Utilice su archivo pem de SSH para iniciar sesión en el nodo principal.

$ pcluster ssh awsbatch-tutorial -i /path/to/keyfile.pem

Cuando inicie sesión, ejecute los comandosawsbqueuesyawsbhostspara mostrar elAWS Batchy las instancias de Amazon ECS en ejecución.

[ec2-user@ip-10-0-0-111 ~]$ awsbqueues jobQueueName status ------parallelcluster-awsbatch-tutorial VALID

[ec2-user@ip-10-0-0-111 ~]$ awsbhosts ec2InstanceId instanceType privateIpAddress publicIpAddress runningJobs ------i-0d6a0c8c560cd5bed m4.large 10.0.0.235 34.239.174.236 0

Tal como puede apreciar en el resultado, tenemos un único host ejecutándose. Esto se debe al valor que hemos elegido para min_vcpus (p. 252) en la configuración. Si desea mostrar detalles adicionales sobre la cola de AWS Batch y los hosts, añada la marca -d al comando. Ejecución de su primer trabajo con AWS Batch

Antes de migrar a MPI, vamos a crear un trabajo ficticio que está en suspensión durante un cierto tiempo y luego genera su propio nombre de host y acoge el nombre que se le ha transferido como parámetro.

Cree un archivo denominado "hellojob.sh" con el siguiente contenido.

#!/bin/bash sleep 30 echo "Hello $1 from $HOSTNAME" echo "Hello $1 from $HOSTNAME" > "/shared/secret_message_for_${1}_by_${AWS_BATCH_JOB_ID}"

A continuación, envíe el trabajo mediante awsbsub y compruebe que se ejecuta.

$ awsbsub -jn hello -cf hellojob.sh Luca Job 6efe6c7c-4943-4c1a-baf5-edbfeccab5d2 (hello) has been submitted.

Vea la cola y compruebe el estado del trabajo.

$ awsbstat jobId jobName status startedAt stoppedAt exitCode

310 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Ejecución de un trabajo de MPI conAWS ParallelClusteryawsbatchprogramador ------6efe6c7c-4943-4c1a-baf5-edbfeccab5d2 hello RUNNING 2018-11-12 09:41:29 - -

El resultado proporciona información detallada del trabajo.

$ awsbstat 6efe6c7c-4943-4c1a-baf5-edbfeccab5d2 jobId : 6efe6c7c-4943-4c1a-baf5-edbfeccab5d2 jobName : hello createdAt : 2018-11-12 09:41:21 startedAt : 2018-11-12 09:41:29 stoppedAt : - status : RUNNING statusReason : - jobDefinition : parallelcluster-myBatch:1 jobQueue : parallelcluster-myBatch command : /bin/bash -c 'aws s3 --region us-east-1 cp s3://parallelcluster- mybatch-lui1ftboklhpns95/batch/job-hellojob_sh-1542015680924.sh /tmp/batch/job- hellojob_sh-1542015680924.sh; bash /tmp/batch/job-hellojob_sh-1542015680924.sh Luca' exitCode : - reason : - vcpus : 1 memory[MB] : 128 nodes : 1 logStream : parallelcluster-myBatch/default/c75dac4a-5aca-4238- a4dd-078037453554 log : https://console.aws.amazon.com/cloudwatch/home?region=us- east-1#logEventViewer:group=/aws/batch/job;stream=parallelcluster-myBatch/default/ c75dac4a-5aca-4238-a4dd-078037453554 ------

Tenga en cuenta que el trabajo se encuentra actualmente en estado de ejecución (RUNNING). Espere 30 segundos a que el trabajo se termine y, a continuación, vuelva a ejecutar awsbstat.

$ awsbstat jobId jobName status startedAt stoppedAt exitCode ------

Ahora verá que el trabajo se encuentra en estado realizado correctamente (SUCCEEDED).

$ awsbstat -s SUCCEEDED jobId jobName status startedAt stoppedAt exitCode ------6efe6c7c-4943-4c1a-baf5-edbfeccab5d2 hello SUCCEEDED 2018-11-12 09:41:29 2018-11-12 09:42:00 0

Dado que ahora no quedan trabajos en la cola, podemos comprobar la salida que se obtiene con el comando awsbout.

$ awsbout 6efe6c7c-4943-4c1a-baf5-edbfeccab5d2 2018-11-12 09:41:29: Starting Job 6efe6c7c-4943-4c1a-baf5-edbfeccab5d2 download: s3://parallelcluster-mybatch-lui1ftboklhpns95/batch/job- hellojob_sh-1542015680924.sh to tmp/batch/job-hellojob_sh-1542015680924.sh 2018-11-12 09:42:00: Hello Luca from ip-172-31-4-234

Podemos ver que nuestro trabajo se ha ejecutado correctamente en la instancia "ip-172-31-4-234".

311 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Ejecución de un trabajo de MPI conAWS ParallelClusteryawsbatchprogramador Si entra en el directorio /shared, encontrará un mensaje secreto para usted.

Para explorar todas las características disponibles que no forman parte de este tutorial, consulte la documentación de la CLI por lotes de AWS ParallelCluster (p. 208). Cuando esté listo para continuar con el tutorial avanzaremos y veremos cómo enviar un trabajo de MPI. Ejecución de un trabajo de MPI en un entorno en paralelo de varios nodos

Aunque siga conectado al nodo principal, cree un archivo en el campo/sharedUn directorio denominadompi_hello_world.c. Añada el siguiente programa de MPI al archivo:

// Copyright 2011 www.mpitutorial.com // // An intro MPI hello world program that uses MPI_Init, MPI_Comm_size, // MPI_Comm_rank, MPI_Finalize, and MPI_Get_processor_name. // #include #include #include int main(int argc, char** argv) { // Initialize the MPI environment. The two arguments to MPI Init are not // currently used by MPI implementations, but are there in case future // implementations might need the arguments. MPI_Init(NULL, NULL);

// Get the number of processes int world_size; MPI_Comm_size(MPI_COMM_WORLD, &world_size);

// Get the rank of the process int world_rank; MPI_Comm_rank(MPI_COMM_WORLD, &world_rank);

// Get the name of the processor char processor_name[MPI_MAX_PROCESSOR_NAME]; int name_len; MPI_Get_processor_name(processor_name, &name_len);

// Print off a hello world message printf("Hello world from processor %s, rank %d out of %d processors\n", processor_name, world_rank, world_size);

// Finalize the MPI environment. No more MPI calls can be made after this MPI_Finalize(); }

Ahora guarde el siguiente código como submit_mpi.sh:

#!/bin/bash echo "ip container: $(/sbin/ip -o -4 addr list eth0 | awk '{print $4}' | cut -d/ -f1)" echo "ip host: $(curl -s "http://169.254.169.254/latest/meta-data/local-ipv4")"

# get shared dir IFS=',' _shared_dirs=(${PCLUSTER_SHARED_DIRS}) _shared_dir=${_shared_dirs[0]} _job_dir="${_shared_dir}/${AWS_BATCH_JOB_ID%#*}-${AWS_BATCH_JOB_ATTEMPT}" _exit_code_file="${_job_dir}/batch-exit-code" if [[ "${AWS_BATCH_JOB_NODE_INDEX}" -eq "${AWS_BATCH_JOB_MAIN_NODE_INDEX}" ]]; then echo "Hello I'm the main node $HOSTNAME! I run the mpi job!"

312 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Ejecución de un trabajo de MPI conAWS ParallelClusteryawsbatchprogramador

mkdir -p "${_job_dir}"

echo "Compiling..." /usr/lib64/openmpi/bin/mpicc -o "${_job_dir}/mpi_hello_world" "${_shared_dir}/ mpi_hello_world.c"

echo "Running..." /usr/lib64/openmpi/bin/mpirun --mca btl_tcp_if_include eth0 --allow-run-as-root -- machinefile "${HOME}/hostfile" "${_job_dir}/mpi_hello_world"

# Write exit status code echo "0" > "${_exit_code_file}" # Waiting for compute nodes to terminate sleep 30 else echo "Hello I'm the compute node $HOSTNAME! I let the main node orchestrate the mpi processing!" # Since mpi orchestration happens on the main node, we need to make sure the containers representing the compute # nodes are not terminated. A simple trick is to wait for a file containing the status code to be created. # All compute nodes are terminated by AWS Batch if the main node exits abruptly. while [ ! -f "${_exit_code_file}" ]; do sleep 2 done exit $(cat "${_exit_code_file}") fi

Ahora ya estamos listos para enviar nuestro primer trabajo de MPI y hacer que se ejecute de forma simultánea en tres nodos:

$ awsbsub -n 3 -cf submit_mpi.sh

Ahora vamos a monitorizar el estado del trabajo y esperar a que entre en el estado RUNNING:

$ watch awsbstat -d

Cuando el trabajo entre en el estado RUNNING, podremos examinar su salida. Para mostrar la salida del nodo principal, añada #0 al ID de trabajo. Para mostrar la salida de los nodos de computación, utilice #1 y #2:

[ec2-user@ip-10-0-0-111 ~]$ awsbout -s 5b4d50f8-1060-4ebf-ba2d-1ae868bbd92d#0 2018-11-27 15:50:10: Job id: 5b4d50f8-1060-4ebf-ba2d-1ae868bbd92d#0 2018-11-27 15:50:10: Initializing the environment... 2018-11-27 15:50:10: Starting ssh agents... 2018-11-27 15:50:11: Agent pid 7 2018-11-27 15:50:11: Identity added: /root/.ssh/id_rsa (/root/.ssh/id_rsa) 2018-11-27 15:50:11: Mounting shared file system... 2018-11-27 15:50:11: Generating hostfile... 2018-11-27 15:50:11: Detected 1/3 compute nodes. Waiting for all compute nodes to start. 2018-11-27 15:50:26: Detected 1/3 compute nodes. Waiting for all compute nodes to start. 2018-11-27 15:50:41: Detected 1/3 compute nodes. Waiting for all compute nodes to start. 2018-11-27 15:50:56: Detected 3/3 compute nodes. Waiting for all compute nodes to start. 2018-11-27 15:51:11: Starting the job... download: s3://parallelcluster-awsbatch-tutorial-iwyl4458saiwgwvg/batch/job- submit_mpi_sh-1543333713772.sh to tmp/batch/job-submit_mpi_sh-1543333713772.sh 2018-11-27 15:51:12: ip container: 10.0.0.180 2018-11-27 15:51:12: ip host: 10.0.0.245 2018-11-27 15:51:12: Compiling... 2018-11-27 15:51:12: Running... 2018-11-27 15:51:12: Hello I'm the main node! I run the mpi job!

313 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Cifrado de disco con una clave KMS personalizada

2018-11-27 15:51:12: Warning: Permanently added '10.0.0.199' (RSA) to the list of known hosts. 2018-11-27 15:51:12: Warning: Permanently added '10.0.0.147' (RSA) to the list of known hosts. 2018-11-27 15:51:13: Hello world from processor ip-10-0-0-180.ec2.internal, rank 1 out of 6 processors 2018-11-27 15:51:13: Hello world from processor ip-10-0-0-199.ec2.internal, rank 5 out of 6 processors 2018-11-27 15:51:13: Hello world from processor ip-10-0-0-180.ec2.internal, rank 0 out of 6 processors 2018-11-27 15:51:13: Hello world from processor ip-10-0-0-199.ec2.internal, rank 4 out of 6 processors 2018-11-27 15:51:13: Hello world from processor ip-10-0-0-147.ec2.internal, rank 2 out of 6 processors 2018-11-27 15:51:13: Hello world from processor ip-10-0-0-147.ec2.internal, rank 3 out of 6 processors

[ec2-user@ip-10-0-0-111 ~]$ awsbout -s 5b4d50f8-1060-4ebf-ba2d-1ae868bbd92d#1 2018-11-27 15:50:52: Job id: 5b4d50f8-1060-4ebf-ba2d-1ae868bbd92d#1 2018-11-27 15:50:52: Initializing the environment... 2018-11-27 15:50:52: Starting ssh agents... 2018-11-27 15:50:52: Agent pid 7 2018-11-27 15:50:52: Identity added: /root/.ssh/id_rsa (/root/.ssh/id_rsa) 2018-11-27 15:50:52: Mounting shared file system... 2018-11-27 15:50:52: Generating hostfile... 2018-11-27 15:50:52: Starting the job... download: s3://parallelcluster-awsbatch-tutorial-iwyl4458saiwgwvg/batch/job- submit_mpi_sh-1543333713772.sh to tmp/batch/job-submit_mpi_sh-1543333713772.sh 2018-11-27 15:50:53: ip container: 10.0.0.199 2018-11-27 15:50:53: ip host: 10.0.0.227 2018-11-27 15:50:53: Compiling... 2018-11-27 15:50:53: Running... 2018-11-27 15:50:53: Hello I'm a compute node! I let the main node orchestrate the mpi execution!

Ahora podemos confirmar que el trabajo se ha completado correctamente:

[ec2-user@ip-10-0-0-111 ~]$ awsbstat -s ALL jobId jobName status startedAt stoppedAt exitCode ------5b4d50f8-1060-4ebf-ba2d-1ae868bbd92d submit_mpi_sh SUCCEEDED 2018-11-27 15:50:10 2018-11-27 15:51:26 -

Nota: Si desea terminar un trabajo antes de que este finalice por sí mismo, puede ejecutar el comando awsbkill. Cifrado de disco con una clave KMS personalizada

AWS ParallelCluster admite las opciones de configuración ebs_kms_key_id y fsx_kms_key_id. Estas opciones le permiten proporcionar unAWS KMSpara el cifrado de disco de Amazon EBS o FSx for Lustre. Para utilizarlas, debe especificar un ec2_iam_role.

Para que el clúster pueda crear, la clave AWS KMS necesita saber el nombre del rol del clúster. Esto le impide utilizar el rol que se ha creado en la creación del clúster y requerir un ec2_iam_role personalizado. Creación de la función

Primero crea una política:

314 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Cifrado de disco con una clave KMS personalizada

1. Vaya a la consola de IAM:https://console.aws.amazon.com/iam/home. 2. En Policies (Políticas), Create policy (Crear política), haga clic en la pestaña JSON. 3. Como cuerpo de la política, pegue la Política de instancias (p. 175). Asegúrese de reemplazar todas las coincidencias de y . 4. Asigne a la política el nombre ParallelClusterInstancePolicy y, a continuación, haga clic en Create Policy (Crear política).

A continuación, cree un rol:

1. En Roles, cree un rol. 2. Haga clic en EC2 como la entidad de confianza. 3. En Permissions (Permisos), busque el rol ParallelClusterInstancePolicy que acaba de crear y asócielo. 4. Asigne al rol el nombre ParallelClusterInstanceRole y, a continuación, haga clic en Create Role (Crear rol).

Asigne permisos a la clave

En el navegadorAWS KMSConsola >Claves administradas por > haga clic enAliasorID de clave.

Haga clic en el botón .AddBotón enUsuarios clave, debajo del cuadroPolítica de clavesy busque la pestañaParallelClusterInstanceRoleque acaba de crear. Asócielo. Creación del clúster

Ahora cree un clúster. A continuación se muestra un ejemplo de un clúster con unidades Raid 0 cifradas:

[cluster default] ... raid_settings = rs ec2_iam_role = ParallelClusterInstanceRole

[raid rs] shared_dir = raid raid_type = 0 num_of_raid_volumes = 2 volume_size = 100 encrypted = true ebs_kms_key_id = xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx

A continuación se muestra un ejemplo con el sistema de archivos FSx for Lustre:

[cluster default] ... fsx_settings = fs ec2_iam_role = ParallelClusterInstanceRole

[fsx fs] shared_dir = /fsx storage_capacity = 3600 imported_file_chunk_size = 1024 export_path = s3://bucket/folder import_path = s3://bucket weekly_maintenance_start_time = 1:00:00 fsx_kms_key_id = xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx

Se aplican configuraciones similares a los sistemas de archivos basados en Amazon EBS y Amazon FSx.

315 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Modo de cola múltiple tutorial Modo de cola múltiple tutorial

Ejecutar sus trabajos enAWS ParallelClustercon modo de cola múltiple

Este tutorial le guía por la ejecución de su primer trabajo Hello World enAWS ParallelClusterporModo de cola múltiple (p. 213). Si aún no lo ha instaladoAWS ParallelClusterSiga las instrucciones delConfiguración de AWS ParallelCluster (p. 148)antes de continuar con este tutorial. Note

El modo de cola múltiple solo es compatible conAWS ParallelClusterversión 2.9.0. Configuración del clúster

Primero, verifique queAWS ParallelClusterSe instala correctamente ejecutando el siguiente comando.

$ pcluster version

Para obtener más información acerca de pcluster version, consulte pcluster version (p. 234).

Este comando devuelve la versión en ejecución deAWS ParallelCluster.

A continuación, ejecutepcluster configurepara generar un archivo de configuración básico. Siga todas las indicaciones que siguen este comando.

$ pcluster configure

Para obtener más información acerca del comando pcluster configure, consulte pcluster configure (p. 223).

Una vez que complete este paso, tendrá un archivo de configuración básico en~/.parallelcluster/ config. Este archivo debe contener una configuración básica de clúster y una sección de VPC.

En la siguiente parte del tutorial se describe cómo modificar la configuración recién creada e iniciar un clúster con varias colas. Note

Algunas instancias utilizadas en este tutorial no son aptas para la capa libre.

En este tutorial, utilice la siguiente configuración.

[global] update_check = true sanity_check = true cluster_template = multi-queue

[aws] aws_region_name =

[scaling demo] scaledown_idletime = 5 # optional, defaults to 10 minutes

[cluster multi-queue-special] key_name = < Your key name > base_os = alinux2 # optional, defaults to alinux2

316 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Modo de cola múltiple tutorial scheduler = slurm master_instance_type = c5.xlarge # optional, defaults to t2.micro vpc_settings = scaling_settings = demo # optional, defaults to no custom scaling settings queue_settings = efa,gpu

[cluster multi-queue] key_name = base_os = alinux2 # optional, defaults to alinux2 scheduler = slurm master_instance_type = c5.xlarge # optional, defaults to t2.micro vpc_settings = scaling_settings = demo queue_settings = spot,ondemand

[queue spot] compute_resource_settings = spot_i1,spot_i2 compute_type = spot # optional, defaults to ondemand

[compute_resource spot_i1] instance_type = c5.xlarge min_count = 0 # optional, defaults to 0 max_count = 10 # optional, defaults to 10

[compute_resource spot_i2] instance_type = t2.micro min_count = 1 initial_count = 2

[queue ondemand] compute_resource_settings = ondemand_i1 disable_hyperthreading = true # optional, defaults to false

[compute_resource ondemand_i1] instance_type = c5.2xlarge

Creación de su clúster

En esta sección se detalla cómo crear el clúster de modo de cola múltiple.

Primero, asigne un nombre a su clústermulti-queue-hello-worldy cree el clúster de acuerdo con lamulti-queuese define en la sección anterior.

$ pcluster create multi-queue-hello-world -t multi-queue

Para obtener más información acerca de pcluster create, consulte pcluster create (p. 224).

Cuando se crea el clúster, se muestra el siguiente resultado:

Beginning cluster creation for cluster: multi-queue-hello-world Creating stack named: parallelcluster-multi-queue-hello-world Status: parallelcluster-multi-queue-hello-world - CREATE_COMPLETE MasterPublicIP: 3.130.xxx.xx ClusterUser: ec2-user MasterPrivateIP: 172.31.xx.xx

El mensajeCREATE_COMPLETEindica que se creó correctamente el clúster. El resultado también proporciona las direcciones IP públicas y privadas del nodo principal. Iniciar sesión en su nodo principal

Utilice su archivo de clave SSH privado para iniciar sesión en el nodo principal.

317 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Modo de cola múltiple tutorial

$ pcluster ssh multi-queue-hello-world -i ~/path/to/keyfile.pem

Para obtener más información acerca de pcluster ssh, consulte pcluster ssh (p. 230).

Después de iniciar sesión, ejecute elsinfoPara comprobar que las colas del programador se instalan y configuran.

Para obtener más información acerca desinfo, consultesinfoen laSlurmDocumentación de.

$ sinfo PARTITION AVAIL TIMELIMIT NODES STATE NODELIST ondemand up infinite 10 idle~ ondemand-dy-c52xlarge-[1-10] spot* up infinite 18 idle~ spot-dy-c5xlarge-[1-10],spot-dy-t2micro-[2-9] spot* up infinite 2 idle spot-dy-t2micro-1,spot-st-t2micro-1

El resultado muestra que tiene dost2.microNodos de computación enidleque están disponibles en el clúster. Note

• spot-st-t2micro-1es un nodo estático constEn su nombre. Este nodo siempre está disponible y corresponde a lamin_count (p. 261) = 1En la configuración del clúster. • spot-dy-t2micro-1es un nodo dinámico condyEn su nombre. Este nodo está disponible actualmente porque corresponde ainitial_count (p. 260) - min_count (p. 261) = 1De acuerdo con la configuración del clúster. Este nodo se escala hacia abajo después de que suscaledown_idletime (p. 288)De cinco minutos.

Todos los demás nodos están en estado de ahorro de energía, como se muestra en el~en estado de nodo, sin instancias EC2 que las respalden. La cola predeterminada está designada por un*después de su nombre de cola, por lo quespotEs la cola de trabajo predeterminada. Ejecución del trabajo en modo de cola múltiple

A continuación, intente ejecutar un trabajo para dormir por un tiempo. Más tarde, el trabajo generará su propio nombre de host. Asegúrese de que este script puede ser ejecutado por el usuario actual.

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

$ chmod +x hellojob.sh $ ls -l hellojob.sh -rwxrwxr-x 1 ec2-user ec2-user 57 Sep 23 21:57 hellojob.sh

Envíe el trabajo mediante elsbatchcomando. Solicite dos nodos para este trabajo con el-N 2y compruebe que el trabajo se envía correctamente. Para obtener más información acerca desbatch, consultesbatchen laDocumentación de Slurm.

$ sbatch -N 2 --wrap "srun hellojob.sh" Submitted batch job 2

Puede ver la cola y comprobar el estado del trabajo con la opciónsqueuecomando. Tenga en cuenta que, como no especificó una cola específica, la cola predeterminada (spot). Para obtener más información acerca desqueue, consultesqueueen laSlurmDocumentación de.

$ squeue JOBID PARTITION NAME USER ST TIME NODES NODELIST(REASON)

318 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Modo de cola múltiple tutorial

2 spot wrap ec2-user R 0:10 2 spot-dy-t2micro-1,spot- st-t2micro-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 squeue.

$ squeue JOBID PARTITION NAME USER ST TIME NODES NODELIST(REASON)

Ahora que los trabajos de la cola han terminado, busque el archivo de salidaslurm-2.outEn el directorio actual.

$ cat slurm-2.out Hello World from spot-dy-t2micro-1 Hello World from spot-st-t2micro-1

El resultado también muestra que nuestro trabajo se ha ejecutado correctamente en elspot-st- t2micro-1yspot-st-t2micro-2Nodos.

Ahora envíe el mismo trabajo especificando restricciones para instancias específicas con los siguientes comandos.

$ sbatch -N 3 -p spot -C "[c5.xlarge*1&t2.micro*2]" --wrap "srun hellojob.sh" Submitted batch job 3

Utilizó estos parámetros parasbatch.

• -N 3— solicita tres nodos • -p spot— envía el trabajo a laspotqueue. También puede enviar un trabajo a laondemandcola especificando-p ondemand. • -C "[c5.xlarge*1&t2.micro*2]": especifica las restricciones de nodo específicas para este trabajo. Esto solicita uno (1)c5.xlargeNodo y dos (2)t2.microque se utilizarán para este trabajo.

Ejecute lasinfopara ver los nodos y las colas. (Colas deAWS ParallelClusterse llaman particiones enSlurm.)

$ sinfo PARTITION AVAIL TIMELIMIT NODES STATE NODELIST ondemand up infinite 10 idle~ ondemand-dy-c52xlarge-[1-10] spot* up infinite 1 mix# spot-dy-c5xlarge-1 spot* up infinite 17 idle~ spot-dy-c5xlarge-[2-10],spot-dy-t2micro-[2-9] spot* up infinite 2 alloc spot-dy-t2micro-1,spot-st-t2micro-1

Los nodos se están encendiendo. Esto es significado por el#en el estado del nodo. Ejecute lasqueuePara ver información sobre los trabajos del clúster.

$ squeue JOBID PARTITION NAME USER ST TIME NODES NODELIST(REASON) 3 spot wrap ec2-user CF 0:04 3 spot-dy- c5xlarge-1,spot-dy-t2micro-1,spot-st-t2micro-1

Su trabajo está en elCF(CONFIGURING), esperando que las instancias se escalen hacia arriba y se unan al clúster.

Después de unos tres minutos, los nodos deben estar disponibles y el trabajo entra en elR(RUNNINGEstado.

319 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Modo de cola múltiple tutorial

$ sinfo PARTITION AVAIL TIMELIMIT NODES STATE NODELIST ondemand up infinite 10 idle~ ondemand-dy-c52xlarge-[1-10] spot* up infinite 17 idle~ spot-dy-c5xlarge-[2-10],spot-dy-t2micro-[2-9] spot* up infinite 1 mix spot-dy-c5xlarge-1 spot* up infinite 2 alloc spot-dy-t2micro-1,spot-st-t2micro-1 $ squeue JOBID PARTITION NAME USER ST TIME NODES NODELIST(REASON) 3 spot wrap ec2-user R 0:04 3 spot-dy- c5xlarge-1,spot-dy-t2micro-1,spot-st-t2micro-1

El trabajo finaliza y los tres nodos están en el cuadro de diálogoidleEstado.

$ squeue JOBID PARTITION NAME USER ST TIME NODES NODELIST(REASON) $ sinfo PARTITION AVAIL TIMELIMIT NODES STATE NODELIST ondemand up infinite 10 idle~ ondemand-dy-c52xlarge-[1-10] spot* up infinite 17 idle~ spot-dy-c5xlarge-[2-10],spot-dy-t2micro-[2-9] spot* up infinite 3 idle spot-dy-c5xlarge-1,spot-dy-t2micro-1,spot-st- t2micro-1

A continuación, una vez que no queden trabajos en la cola, puede comprobarslurm-3.outEn el directorio local.

$ cat slurm-3.out Hello World from spot-dy-c5xlarge-1 Hello World from spot-st-t2micro-1 Hello World from spot-dy-t2micro-1

El resultado también muestra que el trabajo se ha ejecutado correctamente en los nodos correspondientes.

Puede observar el proceso de reducción de escala. En la configuración del clúster que especificó unscaledown_idletime (p. 288)De 5 minutos. Después de cinco minutos en estado inactivo, los nodos dinámicosspot-dy-c5xlarge-1yspot-dy-t2micro-1reducir automáticamente la escala y entrar en el cuadro de diálogoPOWER_DOWNModo. Observe que el nodo estáticospot-st-t2micro-1no se escala hacia abajo.

$ sinfo PARTITION AVAIL TIMELIMIT NODES STATE NODELIST ondemand up infinite 10 idle~ ondemand-dy-c52xlarge-[1-10] spot* up infinite 2 idle% spot-dy-c5xlarge-1,spot-dy-t2micro-1 spot* up infinite 17 idle~ spot-dy-c5xlarge-[2-10],spot-dy-t2micro-[2-9] spot* up infinite 1 idle spot-st-t2micro-1

Desde el código anterior, puede ver quespot-dy-c5xlarge-1yspot-dy-t2micro-1están enPOWER_DOWNModo. Esto se indica con%sufijo. Las instancias correspondientes se terminan inmediatamente, pero los nodos permanecen en elPOWER_DOWNy no están disponibles para su uso durante 120 segundos (dos minutos). Después de este tiempo, los nodos vuelven a ahorrar energía y están disponibles para su uso de nuevo. Para obtener más información, consulte Slurmguía para el modo de cola múltiple (p. 200).

Este debe ser el estado final del clúster:

$ sinfo PARTITION AVAIL TIMELIMIT NODES STATE NODELIST ondemand up infinite 10 idle~ ondemand-dy-c52xlarge-[1-10] spot* up infinite 19 idle~ spot-dy-c5xlarge-[1-10],spot-dy-t2micro-[1-9] spot* up infinite 1 idle spot-st-t2micro-1

320 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Modo de cola múltiple tutorial

Una vez que cierre sesión del clúster, puede limpiar ejecutandopcluster delete. Para obtener más información, acerca depcluster listypcluster delete, consultepcluster list (p. 230)ypcluster delete (p. 228).

$ pcluster list multi-queue CREATE_COMPLETE 2.11.2 $ pcluster delete multi-queue Deleting: multi-queue ...

Ejecución de trabajos en clúster con instancias de EFA y GPU

Esta parte del tutorial detalla cómo modificar la configuración e iniciar un clúster con varias colas que contiene instancias con redes de EFA y recursos de GPU. Tenga en cuenta que las instancias utilizadas en este tutorial son instancias de mayor precio.

Compruebe los límites de su cuenta para asegurarse de que está autorizado a utilizar estas instancias antes de continuar con los pasos descritos en este tutorial.

Modifique el archivo de configuración con lo siguiente.

[global] update_check = true sanity_check = true cluster_template = multi-queue-special

[aws] aws_region_name =

[scaling demo] scaledown_idletime = 5

[cluster multi-queue-special] key_name = base_os = alinux2 # optional, defaults to alinux2 scheduler = slurm master_instance_type = c5.xlarge # optional, defaults to t2.micro vpc_settings = scaling_settings = demo queue_settings = efa,gpu

[queue gpu] compute_resource_settings = gpu_i1 disable_hyperthreading = true # optional, defaults to false

[compute_resource gpu_i1] instance_type = g3.8xlarge

[queue efa] compute_resource_settings = efa_i1 enable_efa = true placement_group = DYNAMIC # optional, defaults to no placement group settings

[compute_resource efa_i1] instance_type = c5n.18xlarge max_count = 5

Creación del clúster

$ pcluster create multi-queue-special -t multi-queue-special

321 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Modo de cola múltiple tutorial

Después de crear el clúster, utilice el archivo de clave SSH privado para iniciar sesión en el nodo principal.

$ pcluster ssh multi-queue-special -i ~/path/to/keyfile.pem

Este debe ser el estado inicial del clúster:

$ sinfo PARTITION AVAIL TIMELIMIT NODES STATE NODELIST efa* up infinite 5 idle~ efa-dy-c5n18xlarge-[1-5] gpu up infinite 10 idle~ gpu-dy-g38xlarge-[1-10]

En esta sección se describe cómo enviar algunos trabajos para comprobar que los nodos tienen recursos de EFA o GPU.

Primero, escriba los scripts de trabajo.efa_job.shDormirá durante 30 segundos. Después de lo cual, busque EFA en la salida de lalspcicomando.gpu_job.shDormirá durante 30 segundos. Después de lo cual, ejecutenvidia-smipara mostrar la información de la GPU sobre el nodo.

$ cat efa_job.sh #!/bin/bash sleep 30 lspci | grep "EFA"

$ cat gpu_job.sh #!/bin/bash sleep 30 nvidia-smi

$ chmod +x efa_job.sh $ chmod +x gpu_job.sh

Envíe el trabajo consbatch,

$ sbatch -p efa --wrap "srun efa_job.sh" Submitted batch job 2 $ sbatch -p gpu --wrap "srun gpu_job.sh" -G 1 Submitted batch job 3 $ squeue JOBID PARTITION NAME USER ST TIME NODES NODELIST(REASON) 2 efa wrap ec2-user CF 0:32 1 efa-dy-c5n18xlarge-1 3 gpu wrap ec2-user CF 0:20 1 gpu-dy-g38xlarge-1 $ sinfo PARTITION AVAIL TIMELIMIT NODES STATE NODELIST efa* up infinite 1 mix# efa-dy-c5n18xlarge-1 efa* up infinite 4 idle~ efa-dy-c5n18xlarge-[2-5] gpu up infinite 1 mix# gpu-dy-g38xlarge-1 gpu up infinite 9 idle~ gpu-dy-g38xlarge-[2-10]

Después de unos minutos, verá los nodos en línea y los trabajos en ejecución.

[ec2-user@ip-172-31-15-251 ~]$ sinfo PARTITION AVAIL TIMELIMIT NODES STATE NODELIST efa* up infinite 4 idle~ efa-dy-c5n18xlarge-[2-5] efa* up infinite 1 mix efa-dy-c5n18xlarge-1 gpu up infinite 9 idle~ gpu-dy-g38xlarge-[2-10] gpu up infinite 1 mix gpu-dy-g38xlarge-1 [ec2-user@ip-172-31-15-251 ~]$ squeue JOBID PARTITION NAME USER ST TIME NODES NODELIST(REASON)

322 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Modo de cola múltiple tutorial

4 gpu wrap ec2-user R 0:06 1 gpu-dy-g38xlarge-1 5 efa wrap ec2-user R 0:01 1 efa-dy-c5n18xlarge-1

Una vez completado el trabajo, compruebe la salida. A partir de la salida en elslurm-2.out, puede ver que EFA está presente en elefa-dy-c5n18xlarge-1Nodo. A partir de la salida en elslurm-3.out, puede ver elnvidia-smicontiene información de GPU para elgpu-dy-g38xlarge-1Nodo.

$ cat slurm-2.out 00:06.0 Ethernet controller: Amazon.com, Inc. Elastic Fabric Adapter (EFA)

$ cat slurm-3.out Thu Oct 1 22:19:18 2020 +------+ | NVIDIA-SMI 450.51.05 Driver Version: 450.51.05 CUDA Version: 11.0 | |------+------+------+ | GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC | | Fan Temp Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. | | | | MIG M. | |======+======+======| | 0 Tesla M60 Off | 00000000:00:1D.0 Off | 0 | | N/A 28C P0 38W / 150W | 0MiB / 7618MiB | 0% Default | | | | N/A | +------+------+------+ | 1 Tesla M60 Off | 00000000:00:1E.0 Off | 0 | | N/A 36C P0 37W / 150W | 0MiB / 7618MiB | 98% Default | | | | N/A | +------+------+------+

+------+ | Processes: | | GPU GI CI PID Type Process name GPU Memory | | ID ID Usage | |======| | No running processes found | +------+

Puede observar el proceso de reducción de escala. En la configuración del clúster, especificó previamente unscaledown_idletime (p. 288)De cinco minutos. Como resultado, después de cinco minutos en estado inactivo, sus nodos dinámicos,spot-dy-c5xlarge-1yspot-dy-t2micro-1, escalar automáticamente hacia abajo e ingresar en el cuadro de diálogoPOWER_DOWNModo. Eventualmente, los nodos entran en el modo de ahorro de energía y están disponibles para su uso nuevamente.

$ sinfo PARTITION AVAIL TIMELIMIT NODES STATE NODELIST efa* up infinite 1 idle% efa-dy-c5n18xlarge-1 efa* up infinite 4 idle~ efa-dy-c5n18xlarge-[2-5] gpu up infinite 1 idle% gpu-dy-g38xlarge-1 gpu up infinite 9 idle~ gpu-dy-g38xlarge-[2-10]

# After 120 seconds $ sinfo PARTITION AVAIL TIMELIMIT NODES STATE NODELIST efa* up infinite 5 idle~ efa-dy-c5n18xlarge-[1-5] gpu up infinite 10 idle~ gpu-dy-g38xlarge-[1-10]

Una vez que cierre sesión del clúster, puede limpiar ejecutandopcluster delete (p. 228) .

$ pcluster list multi-queue-special CREATE_COMPLETE 2.11.2 $ pcluster delete multi-queue-special

323 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Development

Deleting: multi-queue-special ...

Para obtener más información, consulte Slurmguía para el modo de cola múltiple (p. 200).

Development

Puede utilizar las siguientes secciones para comenzar a desarrollar AWS ParallelCluster. Important

Las siguientes secciones incluyen instrucciones para utilizar una versión personalizada de las recetas del libro de recetas y un paquete de nodos de AWS ParallelCluster personalizado. Esta información abarca un método avanzado de personalización de AWS ParallelCluster, que presenta posibles problemas que pueden ser difíciles de depurar. El equipo AWS ParallelCluster recomienda encarecidamente utilizar los scripts en Acciones de arranque personalizadas (p. 170) para la personalización, ya que los enlaces de instalación posteriores suelen ser más fáciles de depurar y más fáciles de transportar a través de las versiones de AWS ParallelCluster.

Temas • Configuración de unaAWS ParallelClusterlibro de recetas (p. 324) • Configuración de unaAWS ParallelClusterpaquete de nodo (p. 325)

Configuración de unaAWS ParallelClusterlibro de recetas Important

A continuación, se muestran instrucciones para utilizar una versión personalizada de las recetas del libro de recetas de AWS ParallelCluster. Se trata de un método avanzado de personalizar AWS ParallelCluster, que presenta posibles problemas que pueden ser difíciles de depurar. El equipo AWS ParallelCluster recomienda encarecidamente utilizar los scripts en Acciones de arranque personalizadas (p. 170) para la personalización, ya que los enlaces de instalación posteriores suelen ser más fáciles de depurar y más fáciles de transportar a través de las versiones de AWS ParallelCluster. Steps

1. Identifique laAWS ParallelClusterDirectorio de trabajo del libro de recetas de donde ha clonado elAWS ParallelClusterlibro de recetascódigo.

_cookbookDir=

2. Detecte la versión actual del libro de recetas de AWS ParallelCluster.

_version=$(grep version ${_cookbookDir}/metadata.rb|awk '{print $2}'| tr -d \')

3. Cree un archivo del libro de recetas de AWS ParallelCluster y calcule su md5.

cd "${_cookbookDir}" _stashName=$(git stash create) git archive --format tar --prefix="aws-parallelcluster-cookbook-${_version}/" "${_stashName:-HEAD}" | gzip > "aws-parallelcluster-cookbook-${_version}.tgz"

324 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Configuración de unaAWS ParallelClusterpaquete de nodo

md5sum "aws-parallelcluster-cookbook-${_version}.tgz" > "aws-parallelcluster-cookbook- ${_version}.md5"

4. Cree un bucket de Amazon S3 y cargue el archivo, su md5 y su fecha de última modificación en el bucket. Conceda permiso legible público a través de una ACL public-read.

_bucket= aws s3 cp --acl public-read aws-parallelcluster-cookbook-${_version}.tgz s3://${_bucket}/ cookbooks/aws-parallelcluster-cookbook-${_version}.tgz aws s3 cp --acl public-read aws-parallelcluster-cookbook-${_version}.md5 s3://${_bucket}/ cookbooks/aws-parallelcluster-cookbook-${_version}.md5 aws s3api head-object --bucket ${_bucket} --key cookbooks/aws-parallelcluster-cookbook- ${_version}.tgz --output text --query LastModified > aws-parallelcluster-cookbook- ${_version}.tgz.date aws s3 cp --acl public-read aws-parallelcluster-cookbook-${_version}.tgz.date s3:// ${_bucket}/cookbooks/aws-parallelcluster-cookbook-${_version}.tgz.date

5. Añada las siguientes variables a laAWS ParallelCluster, bajo el archivo[cluster]Sección (p. 239).

custom_chef_cookbook = https://${_bucket}.s3..amazonaws.com/cookbooks/ aws-parallelcluster-cookbook-${_version}.tgz extra_json = { "cluster" : { "skip_install_recipes" : "no" } }

Note

A partir deAWS ParallelClusterA partir de la versión 2.6.1, la mayoría de las recetas de instalación se omiten de forma predeterminada al lanzar nodos para mejorar los tiempos de inicio. Para omitir la mayoría de las recetas de instalación para mejorar los tiempos de inicio a costa de la compatibilidad con versiones anteriores, elimine"skip_install_recipes" : "no"desde lasclusterClave en laextra_json (p. 249)Configuración de.

Configuración de unaAWS ParallelClusterpaquete de nodo Warning

A continuación, se muestran instrucciones para utilizar una versión personalizada del paquete de nodos de AWS ParallelCluster. Se trata de un método avanzado de personalizar AWS ParallelCluster, que presenta posibles problemas que pueden ser difíciles de depurar. El equipo AWS ParallelCluster recomienda encarecidamente utilizar los scripts en Acciones de arranque personalizadas (p. 170) para la personalización, ya que los enlaces de instalación posteriores suelen ser más fáciles de depurar y más fáciles de transportar a través de las versiones de AWS ParallelCluster. Steps

1. Identifique el directorio de trabajo del nodo de AWS ParallelCluster donde ha clonado el código de nodo de AWS ParallelCluster.

_nodeDir=

2. Detecte la versión actual del nodo de AWS ParallelCluster.

_version=$(grep "version = \"" ${_nodeDir}/setup.py |awk '{print $3}' | tr -d \")

3. Cree un archivo del nodo de AWS ParallelCluster.

325 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Solución de problemas

cd "${_nodeDir}" _stashName=$(git stash create) git archive --format tar --prefix="aws-parallelcluster-node-${_version}/" "${_stashName:- HEAD}" | gzip > "aws-parallelcluster-node-${_version}.tgz"

4. Cree un bucket de Amazon S3 y cargue el archivo en este. Conceda permiso legible público a través de una ACL public-read.

_bucket= aws s3 cp --acl public-read aws-parallelcluster-node-${_version}.tgz s3://${_bucket}/ node/aws-parallelcluster-node-${_version}.tgz

5. Añada la siguiente variable a laAWS ParallelCluster, bajo el archivo[cluster]Sección (p. 239).

extra_json = { "cluster" : { "custom_node_package" : "https://${_bucket}.s3..amazonaws.com/node/aws-parallelcluster-node-${_version}.tgz", "skip_install_recipes" : "no" } }

Note

A partir deAWS ParallelClusterA partir de la versión 2.6.1, la mayoría de las recetas de instalación se omiten de forma predeterminada al lanzar nodos para mejorar los tiempos de inicio. Para omitir la mayoría de las recetas de instalación para mejorar los tiempos de inicio a costa de la compatibilidad con versiones anteriores, elimine"skip_install_recipes" : "no"desde lasclusterClave en laextra_json (p. 249)Configuración de.

Solución de problemas de AWS ParallelCluster

Temas • Recuperación y preservación de registros (p. 326) • Solución de problemas de implementación de (p. 327) • Solución de problemas en varios clústeres de modo de cola (p. 327) • Solución de problemas en clústeres de modo de cola única (p. 331) • Grupos de ubicación y problemas de lanzamiento de instancias (p. 333) • Directorios que no se pueden reemplazar (p. 333) • Solución de problemas en NICE DCV (p. 333) • Solución de problemas en clústeres conAWS Batchintegration (p. 334) • Soporte adicional (p. 334)

LaAWS ParallelClustermantiene una página Wiki que proporciona muchos consejos de solución de problemas en laAWS ParallelClusterWiki de GitHub. Para obtener una lista de problemas conocidos, consulteProblemas conocidos. Recuperación y preservación de registros

Los registros son un recurso útil para solucionar problemas. Para solucionar problemas deAWS ParallelCluster, primero debe crear un archivo de registros de clúster. Siga los pasos descritos enCreación de un Archivo de Registros de un Clusteren elAWSParallelCluster GitHubpara iniciar este proceso.

Si uno de los clústeres en ejecución está experimentando problemas, debe colocar el clúster en unSTOPPEDejecutando el estadopcluster stop (p. 232) antes de comenzar a solucionar problemas. Esto evita incurrir en costes inesperados.

326 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Solución de problemas de implementación de

Sipclusterdeja de funcionar o si desea eliminar un clúster mientras conserva sus registros, ejecute elpcluster delete (p. 228) —keep-logs comando. La ejecución de este comando elimina el clúster y conserva el grupo de registros almacenado en Amazon CloudWatch. Para obtener más información acerca de este comando, consultepcluster delete (p. 228). Solución de problemas de implementación de

Si el clúster no se puede crear y revierte la creación de la pila, puede consultar los siguientes archivos de registro para hacer un diagrama del problema. Desea buscar la salida deROLLBACK_IN_PROGRESSen estos registros. El mensaje de error debe ser similar a lo siguiente:

$ pcluster create mycluster Creating stack named: parallelcluster-mycluster Status: parallelcluster-mycluster - ROLLBACK_IN_PROGRESS Cluster creation failed. Failed events: - AWS::EC2::Instance MasterServer Received FAILURE signal with UniqueId i-07af1cb218dd6a081

Para diagnosticar el problema, vuelva a crear el clúster usandopcluster create (p. 224), incluido el--norollbackIndicador. Luego, SSH en el clúster:

$ pcluster create mycluster --norollback ... $ pcluster ssh mycluster

Después de iniciar sesión en el nodo principal, debe encontrar tres archivos de registro principales que puede utilizar para identificar el error.

• /var/log/cfn-init.loges el registro para elcfn-initscript. Primero revisa este registro. Es probable que veas un error comoCommand chef faileden este registro. Mire las líneas inmediatamente antes de esta línea para obtener más detalles relacionados con el mensaje de error. Para obtener más información, consultecfn-init. • /var/log/cloud-init.loges el registro decloud-init. Si no ve nada encfn-init.log, a continuación, intente verificar este registro. • /var/log/cloud-init-output.loges el resultado de los comandos ejecutados porcloud-init. Esto incluye la salida decfn-init. En la mayoría de los casos no necesita mirar este registro para solucionar este tipo de problema.

Solución de problemas en varios clústeres de modo de cola

Esta sección es relevante para los clústeres que se instalaron usandoAWS ParallelClusterversión 2.9.0Slurmprogramador de trabajos. Para obtener más información acerca del modo de cola múltiple, consulteModo de cola múltiple (p. 213). Registros de claves

La tabla siguiente contiene información general de los registros de claves del nodo principal:

/var/log/cfn-init.log

Este es elAWS CloudFormationLogs de inicio. Contiene todos los comandos que se ejecutaron cuando se configura una instancia. Es útil para solucionar problemas de inicialización.

327 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Solución de problemas en varios clústeres de modo de cola

/var/log/chef-client.log

Este es el registro del cliente de Chef. Contiene todos los comandos que se ejecutaron a través de Chef/CINC. Es útil para solucionar problemas de inicialización. /var/log/parallelcluster/slurm_resume.log

Este es unResumeProgramregistro. Inicia instancias para nodos dinámicos y es útil para solucionar problemas de inicio de nodos dinámicos. /var/log/parallelcluster/slurm_suspend.log

Este es elSuspendProgramregistro. Se llama cuando se terminan instancias para nodos dinámicos, y es útil para solucionar problemas de terminación de nodos dinámicos. Cuando compruebe este registro, también debe comprobar elclustermgtdregistro. /var/log/parallelcluster/clustermgtd

Este es elclustermgtdregistro. Se ejecuta como el demonio centralizado que administra la mayoría de las acciones de operación del clúster. Es útil para solucionar cualquier problema de inicio, terminación o operación de clúster. /var/log/slurmctld.log

Este es elSlurmregistro del demonio de control.AWS ParallelClusterno toma decisiones de escalado. Más bien, solo intenta lanzar recursos para satisfacer elSlurmRequisitos. Es útil para problemas de escalado y asignación, problemas relacionados con el trabajo y cualquier problema relacionado con el lanzamiento y la terminación del programador.

Estas son las notas clave para los nodos de computación:

/var/log/cloud-init-output.log

Este es elcloud-initregistro. Contiene todos los comandos que se ejecutaron cuando se configura una instancia. Es útil para solucionar problemas de inicialización. /var/log/parallelcluster/computemgtd

Este es elcomputemgtdregistro. Se ejecuta en cada nodo de computación para supervisar el nodo en el raro evento queclustermgtden el nodo principal está fuera de línea. Es útil para solucionar problemas de terminación inesperada. /var/log/slurmd.log

Este es elSlurmregistro de demonio de cómputos. Es útil para solucionar problemas relacionados con la inicialización y la falla de cálculo.

Solución de problemas de inicialización de nodos

En esta sección se describe cómo puede solucionar problemas de inicialización de nodos. Esto incluye problemas en los que el nodo no puede iniciar, encender o unirse a un clúster.

Nodo director:

Logs aplicables:

• /var/log/cfn-init.log • /var/log/chef-client.log • /var/log/parallelcluster/clustermgtd • /var/log/parallelcluster/slurm_resume.log

328 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Solución de problemas en varios clústeres de modo de cola

• /var/log/slurmctld.log

Compruebe el/var/log/cfn-init.logy/var/log/chef-client.logregistros. Estos registros deben contener todas las acciones que se ejecutaron cuando se configuró el nodo principal. La mayoría de los errores que se producen durante la instalación deben tener mensajes de error ubicados en el/ var/log/chef-client.logregistro. Si se especifican secuencias de comandos de preinstalación o posterior a la instalación en la configuración del clúster, compruebe que la secuencia de comandos se ejecuta correctamente a través de los mensajes de registro.

Cuando se crea un clúster, el nodo principal debe esperar a que los nodos de cálculo se unan al clúster antes de poder unirse al clúster. Como tal, si los nodos de computación no se unen al clúster, el nodo principal también produce un error. Para solucionar este tipo de problemas, puede seguir uno de estos procedimientos, dependiendo del tipo de notas de computación que utilice:

Nodos de computación dinámicos:

• Busque enResumeProgramregistro (/var/log/parallelcluster/slurm_resume.log) para el nombre del nodo de computación para ver siResumeProgramnunca fue llamado con el nodo. (SiResumeProgramSi no se ha llamado, puede marcar elslurmctldregistro (/var/log/ slurmctld.log) para determinar siSlurmalguna vez trató de llamar aResumeProgramcon el nodo.) • Tenga en cuenta que los permisos incorrectos paraResumeProgrampodría causarResumeProgramfallar silenciosamente. Si utiliza una AMI personalizada con modificación aResumeProgram, compruebe que elResumeProgrames propiedad de laslurmy tiene el744(rwxr-- r--). • SiResumeProgram, compruebe si se inicia una instancia para el nodo. Si no se ha iniciado ninguna instancia, debe poder ver un mensaje de error que describe el error al iniciar. • Si se inicia la instancia, es posible que haya habido un problema durante el proceso de instalación. Deberá ver la dirección IP privada y el ID de instancia correspondientes en laResumeProgramregistro. Además, puede consultar los registros de configuración correspondientes para la instancia específica. Para obtener más información acerca de resolución de problemas de instalación con un nodo de computación, consulte la siguiente sección.

Nodos de computación estáticos:

• Compruebe elclustermgtd(/var/log/parallelcluster/clustermgtd) para ver si se iniciaron instancias para el nodo. Si no se han iniciado, debe haber un mensaje de error claro que detalla el error de inicio. • Si se inicia la instancia, hay algún problema durante el proceso de instalación. Deberá ver la dirección IP privada y el ID de instancia correspondientes en laResumeProgramregistro. Además, puede consultar los registros de configuración correspondientes para la instancia específica.

• Nodos de computación: • Logs aplicables: • /var/log/cloud-init-output.log • /var/log/slurmd.log • Si se inicia el nodo de cálculo, primero compruebe/var/log/cloud-init-output.log, que debe contener los registros de configuración similares a los/var/log/chef-client.logInicie sesión en el nodo director. La mayoría de los errores que se producen durante la instalación deben tener mensajes de error ubicados en el/var/log/cloud-init-output.logregistro. Si los scripts de preinstalación o posinstalación se especifican en la configuración del clúster, compruebe que se han ejecutado correctamente. • Si utiliza una AMI personalizada con modificación aSlurm, entonces podría haber unSlurmerror relacionado que impide que el nodo informático se une al clúster. Para los errores relacionados con el programador, compruebe la/var/log/slurmd.logregistro.

329 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Solución de problemas en varios clústeres de modo de cola Solución de problemas de reemplazos y terminaciones de nodos inesperados

Esta sección continúa explorando cómo puede solucionar problemas relacionados con el nodo, específicamente cuando un nodo se reemplaza o termina inesperadamente.

• Logs aplicables: • /var/log/parallelcluster/clustermgtd(nodo principal) • /var/log/slurmctld.log(nodo principal) • /var/log/parallelcluster/computemgtd(nodo de computación) • Nodos reemplazados o terminados inesperadamente • Compruebe en elclustermgtdregistro (/var/log/parallelcluster/clustermgtd) para ver siclustermgtdllevó a cabo la acción para reemplazar o terminar un nodo. Tenga en cuenta queclustermgtdmaneja todas las acciones normales de mantenimiento del nodo. • Siclustermgtdreemplazó o terminó el nodo, debería haber un mensaje en el que se detallara por qué se realizó esta acción en el nodo. Si el motivo está relacionado con el programador (por ejemplo, porque el nodo está enDOWN), check-inslurmctldLogs para obtener más información. Si el motivo está relacionado con Amazon EC2, debe haber un mensaje informativo en el que se detalla el problema relacionado con Amazon EC2 que requirió el reemplazo. • Siclustermgtdno ha terminado el nodo, primero compruebe si se trata de una terminación esperada por parte de Amazon EC2, más concretamente una terminación puntual.computemgtd, que se ejecuta en un nodo de cálculo, también puede realizar una acción para terminar un nodo siclustermgtdse determina como poco saludable. Checkcomputemgtdregistro (/var/log/ parallelcluster/computemgtd) para ver sicomputemgtdfinalizó el nodo. • Nodos defectuosos • Check Inslurmctldregistro (/var/log/slurmctld.log) para ver por qué falló un trabajo o un nodo. Tenga en cuenta que los trabajos se vuelven a poner en cola automáticamente si se produce un error en un nodo. • Sislurm_resumeinforma que el nodo se ha iniciado yclustermgtdinformes despuésvarios minutosque no hay ninguna instancia correspondiente en Amazon EC2 para ese nodo, es posible que el nodo falle durante la instalación. Para recuperar el registro de un proceso (/var/log/cloud- init-output.log), siga los pasos que se indican a continuación: • Enviar un trabajo para dejarSlurmgire un nuevo nodo. • Después de que se inicie el nodo, habilite la protección de terminación mediante este comando.

aws ec2 modify-instance-attribute --instance-id i-xyz --disable-api-termination

• Recupere el resultado de la consola desde el nodo con este comando.

aws ec2 get-console-output --instance-id i-xyz --output text

Sustitución, terminación o apagado de instancias y nodos problemáticos

• Logs aplicables: • /var/log/parallelcluster/clustermgtd(nodo principal) • /var/log/parallelcluster/slurm_suspend.log(nodo principal) • En la mayoría de los casos,clustermgtdcontrola todas las acciones de terminación de instancia esperadas. Compruebe en elclustermgtdpara ver por qué no se pudo reemplazar o terminar un nodo. • Para nodos dinámicos que fallanscaledown_idletime (p. 288), compruebe en elSuspendProgramregistro para ver siSuspendProgramfue llamado porslurmctldcon el nodo específico como argumento. Tenga en cuenta queSuspendProgramEn realidad no realiza ninguna

330 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Solución de problemas en clústeres de modo de cola única

acción. Más bien, solo registra cuando se llama. Toda la terminación de instancia yNodeAddrEl restablecimiento se realizaclustermgtd.Slurmvuelve a colocar los nodos en unPOWER_SAVINGestado después deSuspendTimeoutDe forma automática.

Solución de problemas de trabajo y nodo conocidos

Otro tipo de problema conocido es queAWS ParallelClusterpodría no asignar puestos de trabajo o tomar decisiones de escalado. Con este tipo de problema,AWS ParallelClustersolo inicia, finaliza o mantiene recursos de acuerdo conSlurmInstrucciones. Para estos problemas, compruebe laslurmctldpara solucionar estos problemas. Solución de problemas en clústeres de modo de cola única

Esta sección se aplica a los clústeres que no tienen modo de cola múltiple con una de las dos configuraciones siguientes:

• Lanzado usando unAWS ParallelClusterversión anterior a 2.9.0SGE,Torque, o bienSlurmprogramadores de trabajos. • Lanzado usandoAWS ParallelClusterversión 2.9.0SGEorTorqueprogramadores de trabajos.

Registros de claves

Los siguientes archivos de registro son los registros de claves para el nodo principal.

ParaAWS ParallelClusterversión 2.9.0 o posterior:

/var/log/chef-client.log

Este es el registro de clientes de CINC (chef). Contiene todos los comandos que se ejecutaron a través de CINC. Es útil para solucionar problemas de inicialización.

ForallAWS ParallelClusterVersiones de

/var/log/cfn-init.log

Este es elcfn-initregistro. Contiene todos los comandos que se ejecutaron cuando se configura una instancia y, por lo tanto, es útil para solucionar problemas de inicialización. Para obtener más información, consultecfn-init. /var/log/jobwatcher

Este es eljobwatcherregistro.jobwatchersupervisa la cola del programador y actualiza el grupo de Auto Scaling. Es útil para solucionar problemas relacionados con la ampliación de nodos. /var/log/sqswatcher

Este es elsqswatcherregistro.sqswatcherprocesa el evento listo para la instancia enviado por una instancia de proceso después de la inicialización correcta. También agrega nodos de computación a la configuración del programador. Este registro es útil para solucionar problemas por qué un nodo o nodos no pudieron unirse a un clúster.

Los siguientes son los registros clave para los nodos de proceso.

AWS ParallelClusterversión 2.9.0 o posterior

331 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Solución de problemas en clústeres de modo de cola única

/var/log/cloud-init-output.log Este es el registro de inicio de Cloud. Contiene todos los comandos que se ejecutaron cuando se configura una instancia. Es útil para solucionar problemas de inicialización.

AWS ParallelClusterversiones anteriores a 2.9.0

/var/log/cfn-init.log Este es el registro de inicio de CloudFormation. Contiene todos los comandos que se ejecutaron cuando se configura una instancia. Es útil para solucionar problemas de inicialización

Todas las versiones

/var/log/nodewatcher

Este es elnodewatcherregistro.nodewatcherque se ejecutan en cada nodo Compute. Escalan hacia abajo un nodo si está inactivo. Este registro es útil para cualquier problema relacionado con la reducción de recursos.

Solución de problemas de inicio y unión fallidas

• Logs aplicables: • /var/log/cfn-init-cmd.log(nodo principal y nodo de cálculo) • /var/log/sqswatcher(nodo principal) • Si los nodos no se iniciaron, compruebe el/var/log/cfn-init-cmd.logpara ver el mensaje de error específico. En la mayoría de los casos, los errores de inicio de nodos se deben a un error de instalación. • Si los nodos de computación no pudieron unirse a la configuración del programador a pesar de la instalación correcta, active la casilla/var/log/sqswatcherregistro para ver sisqswatcherprocesó el evento. Estos problemas en la mayoría de los casos se deben asqswatcherNo procesó el evento.

Solución de problemas de escalado

• Logs aplicables: • /var/log/jobwatcher(nodo principal) • /var/log/nodewatcher(nodo de computación) • Problemas de escalado: Para el nodo principal, marque la casilla/var/log/jobwatcherpara ver si eljobwatchercalculó el número adecuado de nodos requeridos y actualizó el Grupo de Auto Scaling. Tenga en cuenta quejobwatchersupervisa la cola del programador y actualiza el grupo de Auto Scaling. • Problemas de reducción de escala: Para los nodos de computación, compruebe la casilla/var/log/ nodewatcherinicie sesión en el nodo problemático para ver por qué se ha reducido la escala del nodo. Tenga en cuenta quenodewatcherlos demonios escalan hacia abajo un nodo informático si está inactivo.

Solución de problemas relacionados con el clúster

Un problema conocido es que la nota de cálculo aleatorio falla en clústeres a gran escala, específicamente aquellos con 500 o más nodos de computación. Este problema está relacionado con una limitación de la arquitectura de escalado del clúster de cola única. Si desea utilizar un clúster a gran escala, utiliceAWS ParallelClusterversión v2.9.0 o posterior, están usandoSlurm, y desea evitar este problema, debe actualizar y cambiar a un clúster compatible con el modo de cola múltiple. Para ello, puede ejecutarpcluster- config convert (p. 235).

332 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Grupos de ubicación y problemas de lanzamiento de instancias Para clústeres de escala ultra grande, es posible que se requiera un ajuste adicional del sistema. Para obtener más información, póngase en contacto conAWS Support. Grupos de ubicación y problemas de lanzamiento de instancias

Para obtener la menor latencia entre nodos, utilice ungrupo de ubicación. Un grupo de ubicación garantiza que las instancias estén en la misma red troncal. Si no hay suficientes instancias disponibles cuando se realiza una solicitud, unInsufficientInstanceCapacityse devuelve el error. Para reducir la posibilidad de recibir este error al utilizar grupos de ubicación de clúster, establezca la propiedadplacement_group (p. 253)Parámetro deDYNAMICy establezca la propiedadplacement (p. 253)Parámetro decompute.

Si necesita un sistema de archivos compartido de alto rendimiento, considere la posibilidad deFSx for Lustre.

Si el nodo principal debe estar en el grupo de ubicación, utilice el mismo tipo de instancia y subred para el encabezado y todos los nodos de computación. Al hacer esto, elcompute_instance_type (p. 243)tiene el mismo valor que el parámetromaster_instance_type (p. 251), elplacement (p. 253)se establece encluster, y elcompute_subnet_id (p. 289)El parámetro no está especificado. Con esta configuración, el valor demaster_subnet_id (p. 289)Para los nodos de computación.

Para obtener más información, consulteSolución de problemas de lanzamiento de instanciasyRoles y limitaciones de los grupos de ubicaciónen laGuía del usuario de Amazon EC2 para instancias de Linux Directorios que no se pueden reemplazar

Los siguientes directorios se comparten entre los nodos y no se pueden reemplazar.

/home

Esto incluye la carpeta principal del usuario predeterminada (/home/ec2_useren Amazon Linux,/ home/centosenCentOS, y/home/ubuntuenUbuntu). /opt/intel

Esto incluye Intel MPI, Intel Parallel Studio y archivos relacionados. /opt/sge

Esto incluye Son of Grid Engine y archivos relacionados. (Condicional, solo si scheduler (p. 257) = sge). /opt/slurm

Esto incluye Slurm Workload Manager y archivos relacionados. (Condicional, solo si scheduler (p. 257) = slurm). /opt/torque

Esto incluye Torque Resource Manager y archivos relacionados. (Condicional, solo si scheduler (p. 257) = torque).

Solución de problemas en NICE DCV

Los registros de NICE DCV se escriben en los archivos de/var/log/dcv/directorio. La revisión de estos registros puede ayudar a solucionar problemas.

333 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Solución de problemas en clústeres conAWS Batchintegration El tipo de instancia debe tener al menos 1,7 gibibyte (GiB) de RAM para ejecutar NICE DCV.Nanoymicrono tienen suficiente memoria para ejecutar NICE DCV. Solución de problemas en clústeres conAWS Batchintegration

Esta sección es relevante para clústeres conAWS Batchintegración del programador. Problemas de nodo director

Los problemas de configuración relacionados con el nodo principal se pueden solucionar de la misma manera que el clúster de cola única. Para obtener más información acerca de estos problemas, consulteSolución de problemas en clústeres de modo de cola única (p. 331). AWS BatchEnvío de trabajos paralelos de varios nodos

Si tiene problemas al enviar trabajos paralelos de varios nodos deAWS Batchcomo programador de trabajos, debe actualizar aAWS ParallelClusterversión 2.5.0. Si eso no es factible, puede usar la solución que se detalla en el tema: Auto parche a un clúster utilizado para enviar trabajos paralelos de varios nodos deAWS Batch. Problemas de computación

AWS Batchadministra los aspectos de escalado y cálculo de sus servicios. Si encuentra problemas relacionados con el proceso, consulte laAWS Batch Solución de problemas conpara obtener ayuda. Fallos de Job

Si un trabajo falla, puede ejecutar el comandoawsbout (p. 211)para recuperar la salida del trabajo. También puede ejecutarawsbstat (p. 210) -dpara obtener un vínculo a los registros de trabajo almacenados por Amazon CloudWatch. Soporte adicional

Para obtener una lista de problemas conocidos, consulte laWiki de GitHubo elProblemas(Se ha creado el certificado). Para problemas más urgentes, póngase en contacto conAWS Supporto abra unproblema nuevo de GitHub.

334 AWS ParallelCluster Guía del usuario de AWS ParallelCluster

AWS ParallelClusterPolítica de compatibilidad

AWS ParallelClustertiene varias versiones disponibles a la vez. A partir de la versión 2.11.0, nuevas versiones (indicadas por un número de versión dex.x.0) se puede designar comoLa más reciente(elegible para actualizaciones de funciones, seguridad y corrección de errores) oestable de funciones(elegible solo para actualizaciones de seguridad y corrección de errores).

Lanzamientos que no sonLa más recientenorestable de funcionesson elegibles para solucionar problemas de la mejor forma posible. Los parches de seguridad o correcciones de errores solo se aplican aestable de funciones; las actualizaciones de características solo se aplican aLa más recientelanzamientos.

Comenzando con el lanzamiento deAWS ParallelClusterversión 2.11.0, versiones anteriores a la versión 2.11.0 (2.10.4 y anteriores) son compatibles hasta el 31 de diciembre de 2021.AWS ParallelClusterversión 2.11.0 es la primeraestable de funcionesliberación.estable de funcionesson compatibles con actualizaciones de seguridad y corrección de errores hasta el final del año siguiente a la publicación. Desde que versión 2.11.0 fue lanzado en 2021, versiones 2.11.xse admiten hasta el 31 de diciembre. 2022.

AWS ParallelClustertiene como objetivo proporcionar consistencia y previsibilidad en nuestraestable de funciones, pero tenga en cuenta que esto no se extiende a los componentes del producto que han alcanzado el final de su vida útil. Por ejemplo, en el caso de SGE, Torque y el sistema operativo CentOS 8, todas estas características están marcadas para el final de su vida útil el 31 de diciembre de 2021 y no se incluirán en la versión 2.11.xmás allá de esa fecha.

AWS ParallelCluster3 versiones secundarias son compatibles durante 18 meses después de su fecha de lanzamiento. Este está sujeto a lo siguiente:

• Los errores y los problemas de seguridad se solucionarán en una versión menor (por ejemplo, 3.1) a menos que la gravedad requiera una versión más inmediata del parche (por ejemplo, 3.1.1). • Para recibir correcciones de errores y seguridad, debe actualizar a una versión menor o de revisión en la que se proporcionan estas correcciones. • Para recibir mejoras en las funciones, debe actualizar a la versión más reciente deAWS ParallelCluster3.

AWS ParallelClusterversiones Fecha de fin de vida admitida (EOSL)

2.10.4 y anteriores 31/12/2021

2.11x 31/12/2022

3.0.x 31/3/2023

335 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Información de seguridad para los servicios utilizados porAWS ParallelCluster

Seguridad en AWS ParallelCluster

La seguridad en la nube de AWS es la mayor prioridad. Como cliente de AWS, se beneficia de una arquitectura de red y un centro de datos que se han diseñado para satisfacer los requisitos de seguridad de las organizaciones más exigentes.

La seguridad es una responsabilidad compartida entre AWS y usted. El modelo de responsabilidad compartida la describe como seguridad de la nube y seguridad en la nube:

• Seguridad de la nube – AWS es responsable de proteger la infraestructura que ejecuta los servicios de AWS en la nube de AWS. AWS también proporciona servicios que puede utilizar de forma segura. Los auditores externos prueban y verifican periódicamente la eficacia de nuestra seguridad como parte de los Programas de conformidad de AWS . Para obtener información sobre los programas de conformidad que se aplican a AWS ParallelCluster, consulte Servicios de AWS en el ámbito del programa de conformidad. • Seguridad en la nube— Su responsabilidad viene determinada por laAWSServicio o servicios de que utilice. También es responsable de varios otros factores relacionados, incluida la confidencialidad de los datos, los requisitos de la empresa y la legislación y los reglamentos aplicables.

Esta documentación describe cómo aplicar el modelo de responsabilidad compartida cuando se utilizaAWS ParallelCluster. En los siguientes temas, se le mostrará cómo configurar AWS ParallelCluster para satisfacer sus objetivos de seguridad y conformidad. También aprenderá a usar el enAWS ParallelClusterde una manera que le ayude a monitorear y proteger suAWSde AWS.

Temas • Información de seguridad para los servicios utilizados porAWS ParallelCluster (p. 336) • Protección de los datos en AWS ParallelCluster (p. 337) • Identity and Access Management para AWS ParallelCluster (p. 339) • Validación de la conformidad en AWS ParallelCluster (p. 339) • Aplicación de una versión mínima de TLS 1.2 (p. 340)

Información de seguridad para los servicios utilizados porAWS ParallelCluster

• Seguridad en Amazon EC2 • Seguridad en Amazon API Gateway • Seguridad enAWS Batch • Seguridad enAWS CloudFormation • Seguridad de Amazon CloudWatch • Seguridad enAWS CodeBuild • Seguridad en Amazon DynamoDB • Seguridad en Amazon ECR

336 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Protección de los datos

• Seguridad en Amazon ECS • Seguridad en Amazon EFS • Seguridad en FSx for Lustre • Seguridad enAWS Identity and Access Management(IAM) • Seguridad en EC2 Image Builder • Seguridad enAWS Lambda • Seguridad en Amazon Route 53 • Seguridad en Amazon SNS • Seguridad en Amazon SQS (ParaAWS ParallelClusterVersión 2.x.) • Seguridad en Amazon S3 • Seguridad en Amazon VPC

Protección de los datos en AWS ParallelCluster

El modelo de responsabilidad compartida de AWS se aplica a la protección de datos de AWS ParallelCluster. Como se describe en este modelo, AWS es responsable de proteger la infraestructura global que ejecuta toda la Nube de AWS . Usted es responsable de mantener el control sobre el contenido alojado en esta infraestructura. Este contenido incluye la configuración de seguridad y las tareas de administración de los servicios de AWS que utiliza usted. Para obtener más información acerca de la privacidad de datos, consulte las Preguntas frecuentes sobre privacidad de datos. Para obtener información acerca de la protección de datos en Europa, consulte la publicación de blog The AWS Shared Responsability Model and GDPR en el Blog de seguridad de AWS.

Para fines de protección de datos, recomendamos proteger Cuenta de AWS y configurar cuentas de usuario individuales conAWS Identity and Access Management(IAM). De esta manera, solo se otorgan a cada usuario los permisos necesarios para cumplir con sus obligaciones laborales. También le recomendamos proteger sus datos de las siguientes formas:

• Utilice Multi-Factor Authentication (MFA) con cada cuenta. • Utilice SSL/TLS para comunicarse con los recursos de AWS. Le recomendamos TLS 1.2 o una versión posterior. • Configure la API y el registro de actividad de los usuarios con AWS CloudTrail. • Utilice las soluciones de cifrado de AWS, junto con todos los controles de seguridad predeterminados de los servicios de AWS. • Utilice avanzados servicios de seguridad administrados, como Amazon Macie, que le ayuden a detectar y proteger los datos personales almacenados en Amazon S3. • Si necesita módulos criptográficos validados FIPS 140-2 cuando accede a AWS a través de una interfaz de línea de comandos o una API, utilice un punto de enlace de FIPS. Para obtener más información acerca de los puntos de enlace de FIPS disponibles, consulte Estándar de procesamiento de la información federal (FIPS) 140-2.

Le recomendamos encarecidamente que nunca introduzca información de identificación confidencial, como, por ejemplo, direcciones de email de sus clientes, en etiquetas o en los campos de formato libre, como el campo Name (Nombre). No debe especificar esta información cuando trabaje con AWS ParallelCluster u otros servicios de AWS a través de la consola, la API, la AWS CLI o los SDK de AWS. Los datos que ingresa en etiquetas o campos de formato libre utilizados para los nombres se pueden utilizar para los registros de facturación o diagnóstico. Si proporciona una URL a un servidor externo, le recomendamos encarecidamente que no incluya información de credenciales en la URL para validar la solicitud para ese servidor.

337 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Cifrado de datos Cifrado de datos

Una característica clave de cualquier servicio seguro es que la información se cifre cuando no se está utilizando activamente. Cifrado en reposo

AWS ParallelClusterNo guarda ningún otro datos de los clientes salvo las credenciales necesarias para interactuar con laAWSServicios de en nombre del usuario.

Para los datos incluidos en los nodos del clúster, los datos se pueden cifrar en reposo.

Para los volúmenes de Amazon EBS, el cifrado se configura con laEbsSettings (p. 117)/EncryptedyEbsSettings (p. 117)/KmsKeyIdconfiguración deEbsSettings (p. 117)sección (encrypted (p. 266)yebs_kms_key_id (p. 265)configuración de[ebs]Sección (p. 264): paraAWS ParallelClusterversión 2.x.) Para obtener más información, consulteAmazon EBS encryptionEn la Guía del usuario de Amazon EC2 para instancias de Linux.

En el caso de volúmenes de Amazon EFS, el cifrado se configura medianteEfsSettings (p. 119)/EncryptedyEfsSettings (p. 119)/KmsKeyIdconfiguración deEfsSettings (p. 119)(encrypted (p. 270)yefs_kms_key_id (p. 269)configuración de[efs]Sección (p. 268)inAWS ParallelClusterversión 2.x). Para obtener más información, consulteFunciona el cifrado en reposoen laGuía del usuario de Amazon Elastic File System.

Para los sistemas de archivos FSx for Lustre, el cifrado de datos en reposo se activa automáticamente al crear un sistema de archivos de Amazon FSx. Para obtener más información, consulteCifrado de datos en reposoen laGuía del usuario de FSx for Lustre.

Para los tipos de instancias con volúmenes NVMe, los datos incluidos en los volúmenes de almacén de instancias de NVMe se cifran con un cifrado XTS-AES-256 en un módulo de hardware de la instancia. Las claves de cifrado se generan mediante el módulo de hardware y son únicas para cada dispositivo de almacenamiento de instancias de NVMe. Todas las claves de cifrado se destruyen cuando se detiene o termina la instancia y no se pueden recuperar. No puede deshabilitar este cifrado ni tampoco proporcionar su propia clave de cifrado. Para obtener más información, consulteCifrado en reposoen laGuía del usuario de Amazon EC2 para instancias de Linux.

Si usaAWS ParallelClusterPara invocar unaAWSSi desea obtener información sobre cómo se almacenan, protegen y cifran esos datos, consulte el capítulo Seguridad y conformidad de la Guía del usuario de ese servicio para obtener información sobre cómo se almacenan, protegen y cifran esos datos. Cifrado en tránsito

De forma predeterminada, todos los datos transmitidos desde el equipo cliente en el que se ejecutaAWS ParallelClusteryAWSLos puntos de enlace de servicio están cifrados, ya que todo se envía a través de una conexión HTTPS/TLS. El tráfico entre los nodos del clúster se puede cifrar automáticamente, dependiendo de los tipos de instancia seleccionados. Para obtener más información, consulte Cifrado en tránsito en la Guía del usuario de Amazon EC2 para instancias de Linux. Véase también

• Proteger los datos en Amazon EC2 • Protección de datos en EC2 Image Builder • Protección de los datos enAWS CloudFormation • Protección de datos en Amazon EFS • Protección de los datos en Amazon S3

338 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Identity and Access Management

• Protección de datos en FSx for Lustre

Identity and Access Management para AWS ParallelCluster

AWS ParallelClusterutiliza roles para acceder a suAWSrecursos y sus servicios. Las directivas de instancia y de usuario queAWS ParallelClusterpara conceder permisos se documentan enAWS Identity and Access Managementroles enAWS ParallelCluster3.x (p. 20)(AWS Identity and Access Managementroles enAWS ParallelCluster (p. 175): paraAWS ParallelClusterversión 2.x).

La única diferencia importante es el modo en que se realiza la autenticación cuando se utiliza un usuario de IAM de estándar y credenciales a largo plazo. Aunque un usuario de IAM requiere una contraseña para acceder a unAWS, ese mismo usuario de IAM necesita un key pair de acceso para realizar las mismas operaciones a través deAWS ParallelCluster. Todas las demás credenciales a corto plazo se utilizan de la misma manera que con la consola.

Las credenciales que se utilizan en laAWS ParallelClusterse almacenan en archivos de texto sin formato y seno.

• El archivo $HOME/.aws/credentials almacena las credenciales a largo plazo necesarias para acceder a los recursos de AWS. Cómo recuperar el ID de clave de acceso y la clave de acceso secreta • Las credenciales a corto plazo, como las de los roles que se adoptan o que se utilizan para servicios de AWS Single Sign-On, también se almacenan en las carpetas $HOME/.aws/cli/cache y $HOME/.aws/ sso/cache, respectivamente.

Mitigación de riesgos

• Le recomendamos encarecidamente que configure los permisos del sistema de archivos en la carpeta $HOME/.aws, sus subcarpetas y archivos para restringir el acceso exclusivamente a los usuarios autorizados. • Utilice roles con credenciales temporales siempre que sea posible para reducir la posibilidad de que se produzcan daños si las credenciales se ven comprometidas. Utilice credenciales a largo plazo solo para solicitar y actualizar las credenciales a corto plazo de los roles.

Validación de la conformidad en AWS ParallelCluster

Los auditores externos evalúan la seguridad y la conformidad de los servicios de AWS en distintos programas de conformidad de AWS. Uso deAWS ParallelClusterpara acceder a un servicio no altera la conformidad de dicho servicio.

Para obtener una lista deAWSen el ámbito de programas de conformidad específicos, consulteAWSServicios de incluidos en el ámbito por programa de conformidad. Para obtener información general, consulte Programas de conformidad de AWS.

Puede descargar los informes de auditoría de terceros utilizando AWS Artifact. Para obtener más información, consulte Descarga de informes en AWS Artifact.

Su responsabilidad de conformidad al utilizar AWS ParallelCluster se determina en función de la sensibilidad de los datos, los objetivos de cumplimiento de su empresa y la legislación y los reglamentos correspondientes. AWS proporciona los siguientes recursos para ayudar con la conformidad:

339 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Aplicación de TLS 1.2

• Guías de inicio rápido de seguridad y cumplimiento: estas guías de implementación tratan consideraciones sobre arquitectura y ofrecen pasos para implementar los entornos de referencia centrados en la seguridad y la conformidad enAWS. • Documento técnico sobre arquitectura para seguridad y conformidad de HIPAA: en este documento técnico, se describe cómo las empresas pueden utilizar AWS para crear aplicaciones conformes con HIPAA. • AWSrecursos de conformidad: este conjunto de manuales y guías podría aplicarse a su sector y ubicación. • Evaluación de recursos de con reglas deen laAWS ConfigGuía para desarrolladores— ElAWS Configevalúa en qué medida las configuraciones de los recursos cumplen las prácticas internas, las directrices del sector y las normativas. • AWS Security Hub: este servicio de AWS proporciona una vista integral de su estado de seguridad en AWS que lo ayuda a verificar la conformidad con los estándares y las prácticas recomendadas del sector de seguridad.

Aplicación de una versión mínima de TLS 1.2

Para agregar mayor seguridad al comunicarse conAWS, debe configurar suAWS ParallelClusterpara que use TLS 1.2 o una versión posterior. Cuando se utilizaAWS ParallelCluster, Python se usa para establecer la versión de TLS.

Para asegurarse de queAWS ParallelClusterusa ninguna versión de TLS anterior a TLS 1.2, es posible que tenga que volver a compilar OpenSSL para que aplique este mínimo y, a continuación, volver a compilar Python para que use el OpenSSL recién creado. Determinar los protocolos admitidos actualmente

Primero, cree un certificado autofirmado con el fin de usarlo para el servidor de prueba y Python SDK mediante OpenSSL.

$ openssl req -subj '/CN=localhost' -x509 -newkey rsa:4096 -nodes -keyout key.pem -out cert.pem -days 365

A continuación, cree un servidor de prueba mediante OpenSSL.

$ openssl s_server -key key.pem -cert cert.pem -www

En una nueva ventana de terminal, cree un entorno virtual e instale Python SDK.

$ python3 -m venv test-env source test-env/bin/activate pip install botocore

Cree un script de Python denominado check.py que use la biblioteca HTTP subyacente del SDK.

$ import urllib3 URL = 'https://localhost:4433/'

http = urllib3.PoolManager( ca_certs='cert.pem', cert_reqs='CERT_REQUIRED', ) r = http.request('GET', URL)

340 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Compilar OpenSSL y Python print(r.data.decode('utf-8'))

Ejecute el nuevo script.

$ python check.py

Muestra detalles sobre la conexión realizada. Busque «Protocol:» En la salida. Si el resultado es «TLSv1.2» o posterior, el SDK predeterminado es TLS v1.2 o posterior. Si se trata de una versión anterior, debe volver a compilar OpenSSL y Python.

Sin embargo, aunque la instalación de Python se establezca de forma predeterminada en TLS v1.2 o posterior, es posible que Python renegocie a una versión anterior a TLS v1.2 si el servidor no admite TLS v1.2 o posterior. Para comprobar que Python no renegocia automáticamente a versiones anteriores, reinicie el servidor de prueba con lo siguiente.

$ openssl s_server -key key.pem -cert cert.pem -no_tls1_3 -no_tls1_2 -www

Si está utilizando una versión anterior de OpenSSL, es posible que la opción -no_tls_3 no esté disponible. Si este es el caso, elimine la opción, porque la versión de OpenSSL que está utilizando no admite TLS v1.3. A continuación, vuelva a ejecutar el script de Python.

$ python check.py

Si su instalación de Python no renegocia correctamente las versiones anteriores a TLS 1.2, debería recibir un error de SSL.

$ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='localhost', port=4433): Max retries exceeded with url: / (Caused by SSLError(SSLError(1, '[SSL: UNSUPPORTED_PROTOCOL] unsupported protocol (_ssl.c:1108)')))

Si puede establecer una conexión, debe volver a compilar OpenSSL y Python para deshabilitar la negociación de protocolos anteriores a TLS v1.2. Compilar OpenSSL y Python

Asegurarse de queAWS ParallelClusterNo negocien a nada anterior a TLS 1.2, debe volver a compilar OpenSSL y Python. Para ello, copie el siguiente contenido con el fin de crear un script y ejecútelo.

#!/usr/bin/env bash set -e

OPENSSL_VERSION="1.1.1d" OPENSSL_PREFIX="/opt/openssl-with-min-tls1_2" PYTHON_VERSION="3.8.1" PYTHON_PREFIX="/opt/python-with-min-tls1_2" curl -O "https://www.openssl.org/source/openssl-$OPENSSL_VERSION.tar.gz" tar -xzf "openssl-$OPENSSL_VERSION.tar.gz" cd openssl-$OPENSSL_VERSION ./config --prefix=$OPENSSL_PREFIX no-ssl3 no-tls1 no-tls1_1 no-shared make > /dev/null sudo make install_sw > /dev/null cd /tmp curl -O "https://www.python.org/ftp/python/$PYTHON_VERSION/Python-$PYTHON_VERSION.tgz"

341 AWS ParallelCluster Guía del usuario de AWS ParallelCluster Compilar OpenSSL y Python tar -xzf "Python-$PYTHON_VERSION.tgz" cd Python-$PYTHON_VERSION ./configure --prefix=$PYTHON_PREFIX --with-openssl=$OPENSSL_PREFIX --disable-shared > /dev/ null make > /dev/null sudo make install > /dev/null

Se compila una versión de Python que tiene un OpenSSL enlazado estáticamente que no negocia automáticamente a nada anterior a TLS 1.2. Esto también instala OpenSSL en el directorio /opt/ openssl-with-min-tls1_2 directorio e instala Python en el directorio /opt/python-with-min- tls1_2. Después de ejecutar este script, confirme la instalación de la nueva versión de Python.

$ /opt/python-with-min-tls1_2/bin/python3 --version

Se debería imprimir lo siguiente.

Python 3.8.1

Para confirmar que esta nueva versión de Python no negocia a una versión anterior de TLS 1.2, vuelva a ejecutar los pasos de Determinar los protocolos admitidos actualmente (p. 340) usando la versión de Python recién instalada (es decir, /opt/python-with-min-tls1_2/bin/python3).

342 AWS ParallelCluster Guía del usuario de AWS ParallelCluster

Historial de revisión

En la siguiente tabla se describen las principales actualizaciones y nuevas características de la Guía del usuario de AWS ParallelCluster. Actualizamos la documentación con frecuencia para dar cuenta de los comentarios que nos envía.

update-history-change update-history-description update-history-date

AWS ParallelClusterLanzamiento AWS ParallelClusterLanzamiento 10 de septiembre de 2021 de la versión 3.0.0 de de la versión 3.0.0 de

Support para la gestión de clústeres a través Amazon API Gateway

Los clientes ahora pueden gestionar e implementar clústeres a través de puntos de conexión HTTP con Amazon API Gateway. Esto abre nuevas posibilidades para flujos de trabajo guiados o basados en eventos.

LaAWS ParallelClusterinterfaz de línea de comandos (CLI) también se ha rediseñado para ser compatible con esta API e incluye una nueva opción de salida JSON. Esta nueva funcionalidad hace posible que los clientes implementen capacidades similares de bloques de construcción usando la CLI también. Creación de AMI personalizada mejorada

Los clientes ahora tienen acceso a un proceso más sólido para crear y administrar AMI personalizadas mediante EC2 Image Builder. Las AMI personalizadas ahora se pueden administrar a través de unAWS ParallelCluster, y se puede crear utilizando la herramientapcluster build-image (p. 72)en

343 AWS ParallelCluster Guía del usuario de AWS ParallelCluster

el comandoAWS ParallelClusterLa interfaz de línea de comandos del

Para obtener más información sobre los cambios, consulte laCHANGELOGpara el archivoaws-parallelcluster,aws- parallelcluster-cookbookyaws- parallelcluster-nodeen GitHub.

344 AWS ParallelCluster Guía del usuario de AWS ParallelCluster

AWS ParallelClusterLanzamiento AWS ParallelClusterLanzamiento 27 de agosto de 2021 de la versión 2.11.2 de de la versión 2.11.2 de

Estos son algunos de los cambios:

• No instale EFA con GpuDirect RDMA (GDR) habilitado en el momento de arranque si EFA está instalado en la AMI base. • Versión de bloqueo denvidia- fabricmanagerpara que permanezca sincronizado con la versión del controlador NVIDIA instalada porAWS ParallelCluster. • Slurm: Se solucionó el problema causado cuando el clúster se detuvo y se reinició mientras se estaba encendiendo un nodo. • Elastic Fabric Adapter (p. 215)Se ha actualizado el instalador de a 1.13.0: • Configuración de EFAefa- config-1.9(sin cambios) • Perfil de EFA:efa- profile-1.5-1(sin cambios) • El módulo del kernel de EFA:efa-1.13.0(sin cambios) • Núcleo de RDMArdma- core-35.0amzn(derdma- core-32.1amzn) • Libfabric:libfabric-1.13.0amzn1.0(delibfabric-1.11.2amzn1.1) • Open MPIopenmpi40- aws-4.1.1-2(sin cambios) • Cuando se utiliza una AMI personalizada con un paquete de EFA preinstalado, no se realizan cambios en EFA en el momento de arranque del nodo. Se conserva la implementación del paquete EFA original.

Para obtener más información sobre los cambios, consulte los archivos CHANGELOG para elaws-parallelclusteryaws-

345 AWS ParallelCluster Guía del usuario de AWS ParallelCluster

parallelcluster-cookbooken GitHub.

346 AWS ParallelCluster Guía del usuario de AWS ParallelCluster

AWS ParallelClusterLanzamiento AWS ParallelClusterLanzamiento 23 de julio de 2021 de la versión 2.11.1 de de la versión 2.11.1 de

Estos son algunos de los cambios:

• Monte los sistemas de archivos con elnoatimepara detener la grabación de la hora del último acceso cuando se lee un archivo. Esto mejora el rendimiento del sistema de archivos remoto. • Elastic Fabric Adapter (p. 215)Se ha actualizado el instalador de a 1.12.3: • Configuración de EFAefa- config-1.9(deefa- config-1.8-1) • Perfil de EFA:efa- profile-1.5-1(sin cambios) • El módulo del kernel de EFA:efa-1.13.0(deefa-1.12.3) • Núcleo de RDMA: rdma- core-32.1amzn (sin cambios) • Libfabric: libfabric-1.11.2amzn1.1 (sin cambios) • Open MPIopenmpi40- aws-4.1.1-2(sin cambios) • Vuelva a intentar las instalaciones deaws- parallelclusterEn el nodo director cuando se usaAWS Batchcomo el programador. • Evite fallas al construirSGEen un tipo de instancia con más de 31 vCPUs. • Se ha anclado a la versión 1.247347.6 del agente de Amazon CloudWatch para evitar problemas observados en la versión 1.247348.0.

Para obtener más información sobre los cambios, consulte los archivos CHANGELOG para elaws-parallelclusteryaws- parallelcluster-cookbooken GitHub.

347 AWS ParallelCluster Guía del usuario de AWS ParallelCluster

AWS ParallelClusterLanzamiento AWS ParallelClusterLanzamiento 1 de julio de 2021 de la versión 2.11.0 de de la versión 2.11.0 de

Estos son algunos de los cambios:

• Se ha agregado compatibilidad paraUbuntu20.04 (ubuntu2004) y se eliminó el soporte paraUbuntu16.04 (ubuntu1604) y Amazon Linux (alinux). Amazon Linux 2 (alinux2) sigue siendo plenamente compatible. Para obtener más información, consulte base_os (p. 241). • Se eliminó el soporte para las versiones de Python inferiores a 3.6. • Se ha aumentado el tamaño de volumen raíz predeterminada a 35 gibibytes (GiB). Para obtener más información, consulte compute_root_volume_size (p. 244) y master_root_volume_size (p. 251). • Elastic Fabric Adapter (p. 215)Se ha actualizado el instalador de a 1.12.2: • Configuración de EFAefa- config-1.8-1(deefa- config-1.7) • Perfil de EFA:efa- profile-1.5-1(deefa- profile-1.4) • El módulo del kernel de EFA:efa-1.12.3(deefa-1.10.2) • Núcleo de RDMArdma- core-32.1amzn(derdma- core-31.2amzn) • Libfabric:libfabric-1.11.2amzn1.1(delibfabric-1.11.1amzn1.0) • Open MPIopenmpi40- aws-4.1.1-2(deopenmpi40- aws-4.1.0) • ActualizadoSlurma la versión20.11.7(de20.02.7). • Instalación del agente de SSM encentos7ycentos8. (SSM Agent está preinstalado enalinux2,ubuntu1804, yubuntu2004.)

348 AWS ParallelCluster Guía del usuario de AWS ParallelCluster

• SGE: utilice siempre el nombre corto como filtro de nombre de host conqstat. • Utilice el servicio de metadatos de instancia versión 2 (IMDSv2) en lugar del servicio de metadatos de instancia Versión 1 (IMDSv1) para recuperar metadatos de instancia. Para obtener más información, consulte el tema Metadatos de instancia y datos de usuario en la guía del usuario de instancias de Linux de Amazon EC2. • Actualizar el controlador NVIDIA a la versión460.73.01(de450.80.02). • Actualizar la biblioteca CUDA a la versión11.3.0(de11.0). • Actualice NVIDIA Fabric Manager anvidia- fabricmanager-460. • Actualizar Python utilizado enAWS ParallelClustervirtualenvs3.7.10(de3.6.13). • Actualice Cinc Client a16.13.16. • Actualice dependencias de terceros deaws-parallelcluster- cookbook: • apt-7.4.0(deapt-7.3.0). • iptables-8.0.0(deiptables-7.1.0). • line-4.0.1(deline-2.9.0). • openssh-2.9.1(deopenssh-2.8.1). • pyenv-3.4.2(depyenv-3.1.1). • selinux-3.1.1(deselinux-2.1.1). • ulimit-1.1.1(deulimit-1.0.0). • yum-6.1.1(deyum-5.1.0). • yum-epel-4.1.2(deyum- epel-3.3.0).

Para obtener más información sobre los cambios, consulte los archivos CHANGELOG para elaws-parallelcluster,aws- parallelcluster-cookbook, yaws- parallelcluster-nodeen GitHub.

349 AWS ParallelCluster Guía del usuario de AWS ParallelCluster

AWS ParallelClusterLanzamiento AWS ParallelClusterLanzamiento 15 de mayo de 2021 de la versión 2.10.4 de de la versión 2.10.4 de

Estos son algunos de los cambios:

• ActualizadoSlurma la versión20.02.7(de20.02.4).

Para obtener más información sobre los cambios, consulte el archivo CHANGELOG para elaws-parallelclusteren GitHub.

AWS ParallelClusterLanzamiento AWS ParallelClusterLanzamiento 18 de marzo de 2021 de la versión 2.10.3 de de la versión 2.10.3 de

Estos son algunos de los cambios:

• Se ha agregado compatibilidad paraUbuntu18.04 y Amazon Linux 2 en ARMAWSInstancias de gravitón en elAWSChina y AWS GovCloud (US) Regiones. • Elastic Fabric Adapter (p. 215)Se ha actualizado el instalador de a 1.11.2: • Configuración de EFAefa- config-1.7(sin cambios) • Perfil de EFA:efa- profile-1.4(deefa- profile-1.3) • El módulo del kernel de EFA:efa-1.10.2(sin cambios) • Núcleo de RDMA: rdma- core-31.2amzn (sin cambios) • Libfabric: libfabric-1.11.1amzn1.0 (sin cambios) • Open MPIopenmpi40- aws-4.1.0(sin cambios)

Para obtener más información sobre los cambios, consulte el archivo CHANGELOG para elaws-parallelclusteren GitHub.

350 AWS ParallelCluster Guía del usuario de AWS ParallelCluster

AWS ParallelClusterLanzamiento AWS ParallelClusterLanzamiento 2 de marzo de 2021 de la versión 2.10.2 de de la versión 2.10.2 de

Estos son algunos de los cambios:

• Mejore la validación de configuración del clúster para utilizar la AMI de destino del clúster al invocar Amazon EC2RunInstancesOperación API en--dry-runModo • Actualice la versión de Python utilizada en elAWS ParallelClusterentornos virtuales a 3.6.13. • Correccionessanity_check (p. 237)para los tipos de instancia de Arm. • Correccionesenable_efaCuando se utilizacentos8conSlurmo tipos de instancia de Arm. • Ejecución deapt updateen modo no interactivo (-y). • Correccionesencrypted_ephemeral (p. 248)= truealinux2ycentos8.

Para obtener más información sobre los cambios, consulte el archivo CHANGELOG para elaws-parallelclusteren GitHub.

351 AWS ParallelCluster Guía del usuario de AWS ParallelCluster

AWS ParallelClusterLanzamiento AWS ParallelClusterLanzamiento 22 de diciembre de 2020 de la versión 2.10.1 de de la versión 2.10.1 de

Estos son algunos de los cambios:

• Se ha agregado compatibilidad con África (Ciudad del Cabo) (af-south-1), Europa (Milán) (me-south-1) y Medio Oriente (Baréin) (me-south-1) Regiones. En el lanzamiento, el soporte está limitado de las siguientes formas: • FSx para instancias Graviton basadas en Lustre y ARM no son compatibles en ninguna de estas regiones. • AWS BatchNo es compatible con África (Ciudad del Cabo). • Amazon EBSio2ygp3No se admiten en las regiones de África (Ciudad del Cabo) y Europa (Milán). • Se ha agregado compatibilidad con Amazon EBSio2ygp3Tipos de volumen. Para obtener más información, consulte[ebs]Sección (p. 264)y[raid]Sección (p. 283). • Se ha agregado compatibilidad paraElastic Fabric Adapter (p. 215)en instancias Graviton2 basadas en ARM que ejecutanalinux2,ubuntu1804, o bienubuntu2004. Para obtener más información, consulte Elastic Fabric Adapter (p. 215). • Instale las bibliotecas de rendimiento de Arm 20.2.1 en las AMI de Arm (alinux2,centos8, yubuntu1804). Para obtener más información, consulte Librerías de rendimiento de (p. 218). • Intel MPI (p. 217)Update 8 (actualizado desde la versión 2019 Update 7). Para obtener más información, consulteActualización 8 de Intel® MPI Library 2019.

352 AWS ParallelCluster Guía del usuario de AWS ParallelCluster

• Se eliminó elAWS CloudFormation DescribeStacksllamada a la operación de la API desdeAWS BatchPunto de entrada de Docker para terminar con las fallas de trabajo causadas por la limitación deAWS CloudFormation. • Se han mejorado las llamadas a Amazon EC2DescribeInstanceTypesllamada de operación de API al validar una configuración de clúster. • Las imágenes de Amazon Linux 2 Docker se extraen de Amazon ECR Public cuando se crea la imagen Docker para elawsbatchProgramador. • El tipo de instancia predeterminada se ha cambiado det2.microal tipo de instancia de capa gratuita para la región (t2.microort3.micro, dependiendo de la Región). Las regiones que no tienen una capa gratuita predeterminada en lat3.microEl tipo de instancia. • Elastic Fabric Adapter (p. 215)Se ha actualizado el instalador de a 1.11.1: • Configuración de EFAefa- config-1.7(deefa- config-1.5) • Perfil de EFA:efa- profile-1.3(deefa- profile-1.1) • El módulo del kernel de EFA:efa-1.10.2(sin cambios) • Núcleo de RDMArdma- core-31.2amzn(derdma- core-31.amzn0) • Libfabric:libfabric-1.11.1amzn1.0(delibfabric-1.10.1amzn1.1) • Open MPIopenmpi40- aws-4.1.0(deopenmpi40- aws-4.0.5) • Lavpc_settings (p. 259),vpc_id (p. 290), ymaster_subnet_id (p. 289)Ahora son obligatorios.

353 AWS ParallelCluster Guía del usuario de AWS ParallelCluster

• Lanfsden el nodo principal ahora está configurado para usar al menos 8 subprocesos. Si hay más de 8 núcleos, usará tantos subprocesos como núcleos. Cuandoubuntu1604, la configuración solo cambia después de reiniciar el nodo. • NICE DCV (p. 219)actualizado a NICE DCV 2020.2-9662. Para obtener más información, consulteDCV 2020.2-9662— 04 de diciembre de 2020en laGuía del Administrador de NICE DCV. • Los paquetes Intel MPI y HPC paraAWS ParallelClusterSe extraen de Amazon S3. Ya no se extraen de los repositorios de Intel yum. • Se ha cambiado el valor predeterminadosystemdnivel de ejecución amulti- user.targeten todos los sistemas operativos durante la creación deAWS ParallelClusterAMI de. El nivel de ejecución se establece engraphical.targeten el nodo principal solo cuando DCV está habilitado. Esto impide que los servicios gráficos (comox/gdm) cuando no son necesarios. • Habilitación del soporte parap4d.24xlargeInstancias en el nodo director. • Aumentar el número máximo de reintentos al registrarSlurmNodos en Amazon Route 53.

Para obtener más información sobre los cambios, consulte los archivos CHANGELOG para elaws-parallelcluster,aws- parallelcluster-cookbook, yaws- parallelcluster-nodeen GitHub.

354 AWS ParallelCluster Guía del usuario de AWS ParallelCluster

AWS ParallelClusterLanzamiento AWS ParallelClusterLanzamiento 18 de noviembre de 2020 de la versión 2.10.0 de de la versión 2.10.0 de

Estos son algunos de los cambios:

• Se ha agregado compatibilidad paraCentOS8 en total Regiones de AWS (fuera deAWSChina yAWSRegiones GovCloud (US). UU.). Se ha eliminado la compatibilidad conCentOS6. • Se ha agregado compatibilidad parap4d.24xlargeInstancias para nodos de computación. • Se agregó soporte para NVIDIA GPUDirect RDMA en EFA mediante el nuevoenable_efa_gdr (p. 248)configuración de Configuración de • Se ha agregado compatibilidad con las funciones de Amazon FSx for Lustre. • Configure su sistema de archivos de Amazon FSx for Lustre para importar preferencias mediante elauto_import_policy (p. 272)configuración de Configuración de • Se ha añadido compatibilidad con los sistemas de archivos de Amazon FSx basados en HDD para Lustre mediante elstorage_type (p. 279)ydrive_cache_type (p. 275)Configuración del . • Se ha añadido un panel de control de Amazon CloudWatch, que incluye métricas de nodo principal y fácil acceso a los registros del clúster. Para obtener más información, consulte Panel de Amazon CloudWatch (p. 214). • Se ha añadido compatibilidad con el uso de un bucket de Amazon S3 existente para almacenar información de configuración del clúster, mediante elcluster_resource_bucket (p. 242)configuración de Configuración de • Enhancedpcluster createami (p. 225)comando.

355 AWS ParallelCluster Guía del usuario de AWS ParallelCluster

• Se ha añadido--post- installpara utilizar un script posterior a la instalación al compilar una AMI. • Se agregó un paso de validación para fallar al usar una AMI base creada por una versión diferente deAWS ParallelCluster. • Se agregó un paso de validación para fallar cuando el SO seleccionado es diferente del SO en la AMI base. • Se ha agregado compatibilidad conAWS ParallelClusterAMI base • Enhancedpcluster update (p. 233)comando. • Latags (p. 258)ahora se puede cambiar durante una actualización. • Ahora se puede cambiar el tamaño de las colas durante una actualización sin detener la flota de cómputos • Se ha añadidoall_or_nothing_batchParámetro de configuración paraslurm_resumescript. CuandoTrue,slurm_resumesolo tendrá éxito si todas las instancias requeridas por todos los trabajos pendientes enSlurmestará disponible. Para obtener más información, consultePresentación deall_or_nothing_batchlanzaen laAWS ParallelClusterWiki en GitHub. • Elastic Fabric Adapter (p. 215)Se ha actualizado el instalador de a 1.10.1: • Configuración de EFAefa- config-1.5(deefa- config-1.4) • Perfil de EFA:efa- profile-1.1(deefa- profile-1.0.0) • El módulo del kernel de EFA:efa-1.10.2(deefa-1.6.0)

356 AWS ParallelCluster Guía del usuario de AWS ParallelCluster

• Núcleo de RDMArdma- core-31.amzn0(derdma- core-28.amzn0) • Libfabric:libfabric-1.11.1amzn1.0(delibfabric-1.10.1amzn1.1) • Open MPIopenmpi40- aws-4.0.5(deopenmpi40- aws-4.0.3) • En el navegador AWS GovCloud (US) Regiones, habilitar el soporte para NICE DCV yAWS Batch. • En el navegadorAWSRegiones de China, habilite la compatibilidad con Amazon FSx for Lustre. • Actualice el controlador NVIDIA a la versión 450.80.02 (desde 450.51.05). • Instale NVIDIA Fabric Manager para habilitar NVIDIA NVSwitch en plataformas compatibles. • Se ha eliminado la región predeterminada deus-east-1. El valor predeterminado utiliza este orden de búsqueda. • Región especificada en- ror--regionArgumento. • AWS_DEFAULT_REGIONvariable de entorno. • aws_region_nameen el cuadro de texto[aws]Sección (p. 238)del archivo de configuración de ParallelCluster (el valor predeterminado es~/.parallelcluster/ config). • regionen el cuadro de texto[default]Sección sobre de laAWS CLI(el valor predeterminado es~/aws/ config).

Para obtener más información sobre los cambios, consulte los archivos CHANGELOG para elaws-parallelcluster,aws- parallelcluster-cookbook, yaws- parallelcluster-nodeen GitHub.

357 AWS ParallelCluster Guía del usuario de AWS ParallelCluster

AWS ParallelClusterLanzamiento AWS ParallelClusterLanzamiento 11 de septiembre de 2020 de la versión 2.9.0 de de la versión 2.9.0 de

Estos son algunos de los cambios:

• Se agregó soporte para varias colas y varios tipos de instancias en la flota informática cuando se utiliza conSlurm Workload Manager. Cuando se usan colas, los grupos de Auto Scaling ya no se usan enSlurm. Ahora se crea una zona alojada de Amazon Route 53 con el clúster y se utiliza para la resolución DNS de los nodos informáticos cuando elSlurmse utiliza el programador. Para obtener más información, consulte Modo de cola múltiple (p. 213). • Se ha agregado compatibilidad paraNICE DCV (p. 219)en ArmAWSInstancias basadas en gravitones. • Se agregó soporte para deshabilitar hyperthreading en tipos de instancias que no admiten opciones de CPU en plantillas de inicio (por ejemplo,*.metalTipos de instancia). • Se agregó soporte para NFS 4 para sistemas de archivos compartidos desde el nodo principal. • Se ha eliminado la dependencia encfn-inital iniciar nodos de computación para evitar la limitación porAWS CloudFormationcuando un gran número de nodos se unen al clúster. • Elastic Fabric Adapter (p. 215)Se ha actualizado el instalador de a 1.9.5: • Configuración de EFAefa- config-1.4(deefa- config-1.3) • Perfil de EFA:efa- profile-1.0.0(nuevo)

358 AWS ParallelCluster Guía del usuario de AWS ParallelCluster

• Módulo de kernel: efa-1.6.0 (sin cambios) • Núcleo de RDMA: rdma- core-28.amzn0 (sin cambios) • Libfabric: libfabric-1.10.1amzn1.1 (sin cambios) • Open MPIopenmpi40- aws-4.0.3(sin cambios) • ActualizadoSlurma la versión20.02.4(de19.05.5). • NICE DCV (p. 219)actualizado a NICE DCV 2020.1-9012. Para obtener más información, consulteNotas de la versión de DCV 2020.1-9012— 24 de agosto de 2020en laGuía del Administrador de NICE DCV. • Al montar unidades NFS compartidas, utilice la dirección IP privada del nodo principal en lugar del nombre de host. • Se han agregado nuevas secuencias de registros a CloudWatch Logs:chef- client,clustermgtd,computemgtd,slurm_resume, yslurm_suspend. • Se ha agregado compatibilidad con nombres de colas en scripts de preinstalación y posinstalación. • En el navegador AWS GovCloud (US) Regiones, utilice la opción de facturación bajo demanda de Amazon DynamoDB. Para obtener más información, consulteModo bajo demandaen laGuía para desarrolladores de Amazon DynamoDB.

Para obtener más información sobre los cambios, consulte los archivos CHANGELOG para elaws-parallelcluster,aws- parallelcluster-cookbook, yaws- parallelcluster-nodeen GitHub.

359 AWS ParallelCluster Guía del usuario de AWS ParallelCluster

AWS ParallelClusterLanzamiento AWS ParallelClusterLanzamiento 4 de agosto de 2020 de la versión 2.8.1 de la versión 2.8.1 de

Estos son algunos de los cambios:

• Deshabilite el bloqueo de pantalla para las sesiones NICE DCV para evitar que los usuarios se bloqueen. • Correccionespcluster configure (p. 223)Cuando se incluye unaAWSTipo de instancia basado en gravitación.

Para obtener más información sobre los cambios, consulte los archivos CHANGELOG para elaws-parallelcluster,aws- parallelcluster-cookbook, yaws- parallelcluster-nodeen GitHub.

360 AWS ParallelCluster Guía del usuario de AWS ParallelCluster

AWS ParallelClusterLanzamiento AWS ParallelClusterLanzamiento 23 de julio de 2020 de la versión 2.8.0 de de la versión 2.8.0 de

Estos son algunos de los cambios:

• Se ha agregado compatibilidad con ArmAWSInstancias basadas en gravitones (como elA1yC6g). • Se ha añadido compatibilidad con las funciones de copia de seguridad diaria automática de Amazon FSx for Lustre. Para obtener más información, consulte automatic_backup_retention_days (p. 273), copy_tags_to_backups (p. 273), daily_automatic_backup_start_time (p. 274) y fsx_backup_id (p. 276). • Se ha eliminado la dependencia de Berkshelf depcluster createami (p. 225). • Se ha mejorado la robustez y la experiencia de usuario depcluster update (p. 233). Para obtener más información, consulte Uso pcluster update (p. 220). • Elastic Fabric Adapter (p. 215)Se ha actualizado el instalador de a 1.9.4: • El módulo del kernel:efa-1.6.0(actualizado enefa-1.5.1) • Núcleo de RDMArdma- core-28.amzn0(actualizado enrdma-core-25.0) • Libfabric:libfabric-1.10.1amzn1.1(actualizado enlibfabric- aws-1.9.0amzn1.1) • Open MPIopenmpi40- aws-4.0.3(sin cambios) • Actualice el controlador NVIDIA a la versión 440.95.01 de Tesla enCentOS6 y la versión 450.51.05 en todas las demás distribuciones. • Actualice la biblioteca CUDA a la versión 11.0 en todas las distribuciones que no seanCentOS6.

361 AWS ParallelCluster Guía del usuario de AWS ParallelCluster

Para obtener más información sobre los cambios, consulte los archivos CHANGELOG para elaws-parallelcluster,aws- parallelcluster-cookbook, yaws- parallelcluster-nodeen GitHub.

AWS ParallelClusterLanzamiento AWS ParallelClusterLanzamiento 19 de mayo de 2020 de la versión 2.7.0 de de la versión 2.7.0 de

Estos son algunos de los cambios:

• base_os (p. 241) ahora es un parámetro obligatorio. • scheduler (p. 257) ahora es un parámetro obligatorio. • NICE DCV (p. 219)Se ha actualizado a NICE DCV 2020.0. Para obtener más información, consulteNICE DCV lanza la versión 2020.0 con sonido envolvente 7.1 y soporte para lápiz.

Intel MPI (p. 217) se ha actualizado a la versión 2019 Update 7 (actualizado desde la versión 2019 Update 6). Para obtener más información, consulte Intel® MPI Library 2019 Update 7.

Se ha actualizado el instalador de Elastic Fabric Adapter (p. 215) a 1.8.4: • Módulo de kernel: efa-1.5.1 (sin cambios) • Núcleo de RDMA: rdma- core-25.0 (sin cambios) • Libfabric: libfabric- aws-1.9.0amzn1.1 (sin cambios) • Open MPI: openmpi40- aws-4.0.3 (actualizado desde openmpi40- aws-4.0.2) • Actualice la AMI CentOS 7 a la versión 7.8-2003 (actualizada desde 7.7-1908). Para obtener más información, consulteCentOSNotas de la versión de -7 (2003).

362 AWS ParallelCluster Guía del usuario de AWS ParallelCluster

AWS ParallelClusterLanzamiento AWS ParallelClusterLanzamiento 17 de abril de 2020 de la versión 2.6.1 de de la versión 2.6.1 de

Estos son algunos de los cambios:

• Eliminacionescfn-init- cmdycfn-wireDesde registros almacenados en Amazon CloudWatch Logs. Para obtener más información, consulte Integración con Amazon CloudWatch Logs (p. 214).

AWS ParallelClusterLanzamiento AWS ParallelClusterLanzamiento 27 de febrero de 2020 de la versión 2.6.0 de la versión 2.6.0 de

Estos son algunos de los cambios:

• Se ha agregado compatibilidad con Amazon Linux 2. • Ahora Amazon CloudWatch Logs se utiliza para recopilar registros de clústeres y programadores. Para obtener más información, consulte Integración con Amazon CloudWatch Logs (p. 214). • Se ha agregado compatibilidad con los nuevos tipos de implementaciones de Amazon FSx for LustreSCRATCH_2yPERSISTENT_1. Support con FSx for LustreUbuntu18.04Ubuntu16.04. Para obtener más información, consulte fsx (p. 271). • Añadido soporte para NICE DCV enUbuntu18.04. Para obtener más información, consulte Connect al nodo director a través de NICE DCV (p. 219).

AWS ParallelClusterlanzamiento AWS ParallelClusterLanzamiento 13 de diciembre de 2019 de la versión 2.5.1 de de la versión 2.5.1 de

AWS ParallelClusterlanzamiento AWS ParallelClusterLanzamiento 18 de noviembre de 2019 de la versión 2.5.0 de de la versión 2.5.0 de

AWS ParallelClusterañade AWS ParallelClusterLa versión 29 de julio de 2019 compatibilidad con Intel MPI 2.4.1 añade compatibilidad con Intel MPI.

363 AWS ParallelCluster Guía del usuario de AWS ParallelCluster

AWS ParallelClusterañade AWS ParallelClusterLa versión 11 de junio de 2019 compatibilidad con EFA 2.4.0 añade compatibilidad con Elastic Fabric Adapter (EFA).

AWS ParallelClusterLanzamiento La documentación de AWS 24 de mayo de 2018 de la documentaciónAWSsitio de ParallelCluster ya está disponible documentación (p. 343) en 10 idiomas y en formatos HTML y PDF.

364 AWS ParallelCluster Guía del usuario de AWS ParallelCluster

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.

ccclxv