

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Executando seu primeiro trabalho em AWS ParallelCluster
<a name="tutorials-running-your-first-job-on-version-3"></a>

Este tutorial explica como executar seu primeiro trabalho do Hello World no AWS ParallelCluster

Ao usar a interface de linha de AWS ParallelCluster comando (CLI) ou a API, você paga apenas pelos AWS recursos criados ao criar ou atualizar AWS ParallelCluster imagens e clusters. Para obter mais informações, consulte [AWS serviços usados por AWS ParallelCluster](aws-services-v3.md).

**Pré-requisitos**
+ AWS ParallelCluster [está instalado](install-v3-parallelcluster.md).
+ O AWS CLI [está instalado e configurado.](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html)
+ Você tem um [par de chaves do Amazon EC2](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-key-pairs.html).
+ Você tem um perfil do IAM com as [permissões](iam-roles-in-parallelcluster-v3.md#iam-roles-in-parallelcluster-v3-example-user-policies) necessárias para executar a CLI [`pcluster`](pcluster-v3.md).

## Verificar a instalação
<a name="tutorial-1stjob-verify-install"></a>

 Primeiro, verificamos se AWS ParallelCluster está correto, incluindo a dependência do Node.js, instalada e configurada. 

```
$ node --version
v16.8.0
$ pcluster version
{
  "version": "3.15.0"
}
```

Isso retorna a versão em execução do AWS ParallelCluster.

## Criação de seu primeiro cluster
<a name="tutorial-1stjob-first-cluster"></a>

Agora é hora de criar seu primeiro cluster. Como a workload desse tutorial não é de desempenho intensivo, podemos usar o tamanho de instância padrão de `t2.micro`. (Para workloads de produção, escolha um tamanho de instância que melhor atenda às suas necessidades.) Vamos chamar o cluster de `hello-world`.

```
$ pcluster create-cluster \
    --cluster-name hello-world \
    --cluster-configuration hello-world.yaml
```

**nota**  
O Região da AWS a ser usado deve ser especificado para a maioria dos `pcluster` comandos. Se não estiver especificado na variável de ambiente `AWS_DEFAULT_REGION` ou na configuração `region` na seção `[default]` do arquivo `~/.aws/config` o parâmetro `--region` deverá ser fornecido na linha de comando `pcluster`.

Se a saída fornecer uma mensagem sobre configuração, será necessário executar o seguinte para configurar o AWS ParallelCluster: 

```
$ pcluster configure --config hello-world.yaml
```

 Se o comando [`pcluster create-cluster`](pcluster.create-cluster-v3.md) for bem-sucedido, você verá um resultado semelhante a este: 

```
{
  "cluster": {
    "clusterName": "hello-world",
    "cloudformationStackStatus": "CREATE_IN_PROGRESS",
    "cloudformationStackArn": "arn:aws:cloudformation:xxx:stack/xxx",
    "region": "...",
    "version": "...",
    "clusterStatus": "CREATE_IN_PROGRESS"
  }
}
```

 Você monitora a criação do cluster usando: 

```
$ pcluster describe-cluster --cluster-name hello-world
```

 Os relatórios `clusterStatus` "`CREATE_IN_PROGRESS`" enquanto o cluster está sendo criado. A `clusterStatus` muda para "`CREATE_COMPLETE`" quando o cluster é criado com sucesso. O resultado também nos fornece `publicIpAddress` e `privateIpAddress` do nosso nó de cabeçalho.

## Fazer login em seu nó principal
<a name="tutorial-1stjob-logging-in-head-node"></a>

 Use o arquivo pem OpenSSH para fazer login no nó principal. 

```
$ pcluster ssh --cluster-name hello-world -i /path/to/keyfile.pem
```

 Depois de fazer login, execute o comando `sinfo` para verificar se os nós de computação estão definidos e configurados. 

```
$ sinfo
PARTITION AVAIL  TIMELIMIT  NODES  STATE NODELIST
queue1*      up   infinite     10  idle~ queue1-dy-queue1t2micro-[1-10]
```

 A saída mostra que temos uma fila em nosso cluster, com até dez nós. 

## Executar o primeiro trabalho usando o Slurm
<a name="tutorial-1stjob-first-slurm-job"></a>

Depois, criamos uma tarefa que permanece em espera por um tempo e então emite seu próprio nome de host como saída. Crie um arquivo chamado `hellojob.sh` com o seguinte conteúdo:

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

 Depois, envie a tarefa usando `sbatch` e verifique se ela é executada. 

```
$ sbatch hellojob.sh
Submitted batch job 2
```

 Agora, você pode visualizar a fila e verificar o status do trabalho. O provisionamento de uma nova instância do Amazon EC2 é iniciada em segundo plano. Você pode monitorar o status das instâncias do cluster com o comando `sinfo`.

```
$ squeue
             JOBID PARTITION     NAME     USER ST       TIME  NODES NODELIST(REASON)
                 2    queue1 hellojob ec2-user CF       3:30      1 queue1-dy-queue1t2micro-1
```

 A saída mostra que o trabalho foi enviado a `queue1`. Aguarde 30 segundos para que a tarefa seja concluída e execute `squeue` novamente. 

```
$ squeue
             JOBID PARTITION     NAME     USER ST       TIME  NODES NODELIST(REASON)
```

 Agora que não há trabalhos na fila, podemos verificar a saída em nosso diretório atual. 

```
$ 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
```

 Na saída, vemos um arquivo `out` "”. Podemos ver a saída do nosso trabalho: 

```
$ cat slurm-2.out
Hello World from queue1-dy-queue1t2micro-1
```

A saída também mostra que a tarefa foi executada com êxito na instância `queue1-dy-queue1t2micro-1`.

No cluster que você acabou de criar, somente o diretório inicial é compartilhado entre todos os nós do cluster.

Para saber mais sobre como criar e usar clusters, consulte [Práticas recomendadas](best-practices-v3.md).

Se seu aplicativo exigir software, bibliotecas ou dados compartilhados, considere as seguintes opções:
+ Crie uma AMI personalizada AWS ParallelCluster habilitada que inclua seu software conforme descrito em[Criação de uma AWS ParallelCluster AMI personalizada](building-custom-ami-v3.md).
+ Use a [StorageSettings](SharedStorage-v3.md)opção no arquivo de AWS ParallelCluster configuração para especificar um sistema de arquivos compartilhado e armazenar o software instalado no local de montagem especificado.
+ Use [Ações de bootstrap personalizadas](custom-bootstrap-actions-v3.md) para automatizar o procedimento de bootstrap de cada nó do seu cluster.