Creazione di un cluster con AWS CloudFormation - AWS ParallelCluster

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Creazione di un cluster con AWS CloudFormation

Scopri come creare un cluster con una risorsa AWS ParallelCluster CloudFormation personalizzata. Per ulteriori informazioni, consulta AWS CloudFormation risorsa personalizzata.

Quando si utilizza AWS ParallelCluster, si pagano solo le AWS risorse create quando si creano o si aggiornano AWS ParallelCluster immagini e cluster. Per ulteriori informazioni, consulta AWS servizi usati da AWS ParallelCluster.

Prerequisiti:

Creazione di cluster con uno CloudFormation stack di creazione rapida

In questo tutorial, si utilizza uno stack di creazione rapida per distribuire un CloudFormation modello che crea un cluster e le seguenti risorse: AWS

  • Un root CloudFormation stack creato utilizzando uno stack di creazione rapida. CloudFormation

  • CloudFormation Stack annidati che includono policy predefinite, configurazione VPC predefinita e un provider di risorse personalizzato.

  • Un esempio di stack di AWS ParallelCluster cluster e un cluster a cui è possibile accedere ed eseguire lavori.

Crea un cluster con AWS CloudFormation

  1. Accedi alla AWS Management Console.

  2. Apri il link di CloudFormation creazione rapida per creare le seguenti risorse nella CloudFormation console:

    • Uno CloudFormation stack annidato con un VPC con una sottorete pubblica e privata per l'esecuzione rispettivamente del nodo principale del cluster e dei nodi di calcolo.

    • Uno CloudFormation stack annidato con una risorsa personalizzata per la gestione del cluster AWS ParallelCluster .

    • Uno CloudFormation stack annidato con le politiche predefinite per la gestione del cluster.

    • Uno stack principale per CloudFormation gli stack annidati.

    • Un AWS ParallelCluster cluster con lo Slurm scheduler e un numero definito di nodi di calcolo.

    L'interfaccia utente per la creazione CloudFormation rapida della console.
  3. Nella sezione Parametri dello stack di creazione rapida, immettete i valori per i seguenti parametri:

    1. Per KeyName, inserisci il nome della tua coppia di chiavi Amazon EC2.

    2. Per AvailabilityZone, scegli una AZ per i nodi del cluster, us-east-1a ad esempio.

  4. Seleziona le caselle per confermare ciascuna delle funzionalità di accesso nella parte inferiore della pagina.

  5. Seleziona Crea stack.

  6. Attendi che lo CloudFormation stack raggiunga lo CREATE_COMPLETE stato.

Creazione di cluster con l'interfaccia AWS CloudFormation a riga di comando (CLI)

In questo tutorial, si utilizza l'interfaccia a riga di AWS comando (CLI) CloudFormation per distribuire un CloudFormation modello che crea un cluster.

Crea le seguenti risorse: AWS
  • Una pila principale creata utilizzando uno CloudFormation stack di creazione CloudFormation rapida.

  • CloudFormation Stack annidati che includono policy predefinite, configurazione VPC predefinita e un provider di risorse personalizzato.

  • Uno stack di AWS ParallelCluster cluster di esempio e un cluster a cui è possibile accedere ed eseguire lavori.

Sostituisci gli input evidenziati in rosso, ad esempio keypair, con i tuoi valori.

Crea un cluster con AWS CloudFormation

  1. Crea un CloudFormation modello denominato cluster_template.yaml con il seguente contenuto:

    AWSTemplateFormatVersion: '2010-09-09' Description: > AWS ParallelCluster CloudFormation Template Parameters: KeyName: Description: KeyPair to login to the head node Type: AWS::EC2::KeyPair::KeyName AvailabilityZone: Description: Availability zone where instances will be launched Type: AWS::EC2::AvailabilityZone::Name Default: us-east-2a Mappings: ParallelCluster: Constants: Version: 3.7.0 Resources: PclusterClusterProvider: Type: AWS::CloudFormation::Stack Properties: TemplateURL: !Sub - https://${AWS::Region}-aws-parallelcluster.s3.${AWS::Region}.${AWS::URLSuffix}/parallelcluster/${Version}/templates/custom_resource/cluster.yaml - { Version: !FindInMap [ParallelCluster, Constants, Version] } PclusterVpc: Type: AWS::CloudFormation::Stack Properties: Parameters: PublicCIDR: 10.0.0.0/24 PrivateCIDR: 10.0.16.0/20 AvailabilityZone: !Ref AvailabilityZone TemplateURL: !Sub - https://${AWS::Region}-aws-parallelcluster.s3.${AWS::Region}.${AWS::URLSuffix}/parallelcluster/${Version}/templates/networking/public-private-${Version}.cfn.json - { Version: !FindInMap [ParallelCluster, Constants, Version ] } PclusterCluster: Type: Custom::PclusterCluster Properties: ServiceToken: !GetAtt [ PclusterClusterProvider , Outputs.ServiceToken ] ClusterName: !Sub 'c-${AWS::StackName}' ClusterConfiguration: Image: Os: alinux2 HeadNode: InstanceType: t2.medium Networking: SubnetId: !GetAtt [ PclusterVpc , Outputs.PublicSubnetId ] Ssh: KeyName: !Ref KeyName Scheduling: Scheduler: slurm SlurmQueues: - Name: queue0 ComputeResources: - Name: queue0-cr0 InstanceType: t2.micro Networking: SubnetIds: - !GetAtt [ PclusterVpc , Outputs.PrivateSubnetId ] Outputs: HeadNodeIp: Description: The Public IP address of the HeadNode Value: !GetAtt [ PclusterCluster, headNode.publicIpAddress ]
  2. Esegui il seguente comando AWS CLI per distribuire lo CloudFormation stack per la creazione e la gestione del cluster.

    $ aws cloudformation deploy --template-file ./cluster_template.yaml \ --stack-name mycluster \ --parameter-overrides KeyName=keypair \ AvailabilityZone=us-east-2b \ --capabilities CAPABILITY_NAMED_IAM CAPABILITY_AUTO_EXPAND

Visualizza l'output del cluster CloudFormation

Visualizza l'output del CloudFormation cluster per ottenere dettagli utili sul cluster. La ValidationMessages proprietà aggiunta fornisce l'accesso ai messaggi di convalida dalle operazioni di creazione e aggiornamento del cluster.

  1. Vai alla CloudFormation console e seleziona lo stack che include la tua risorsa AWS ParallelCluster personalizzata.

  2. Scegli i dettagli dello stack e seleziona la scheda Output.

    La tabella degli CloudFormation output della console che mostra i valori per e. HeadNodeIp ValidationMessages

    I messaggi di convalida potrebbero essere troncati. Per ulteriori informazioni su come recuperare i log, vedere. AWS ParallelCluster risoluzione dei problemi

Accedi al tuo cluster

Accedi al cluster.

sshnel nodo principale del cluster
  1. Una volta completata la distribuzione CloudFormation dello stack, ottieni l'indirizzo IP del nodo principale con il seguente comando:

    $ HEAD_NODE_IP=$(aws cloudformation describe-stacks --stack-name=mycluster --query "Stacks|[0].Outputs[?OutputKey=='HeadNodeIp']|[0].OutputValue" --output=text)

    È inoltre possibile recuperare l'indirizzo IP del nodo principale dal HeadNodeIpparametro nella scheda Outputs dello stack del cluster nella console. CloudFormation

    Puoi trovare l'indirizzo IP del nodo principale qui perché è stato aggiunto nella Outputs sezione del CloudFormation modello di cluster, in particolare per questo cluster di esempio.

  2. Connect al nodo principale del cluster eseguendo il comando seguente:

    $ ssh -i keyname.pem ec2-user@$HEAD_NODE_IP

Eliminazione

Elimina il cluster.

  1. Esegui il seguente comando AWS CLI per eliminare lo CloudFormation stack e il cluster.

    $ aws cloudformation delete-stack --stack-name=mycluster
  2. Controlla lo stato di eliminazione dello stack eseguendo il comando seguente.

    $ aws cloudformation describe-stacks --stack-name=mycluster