

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á.

# Começando com SageMaker HyperPod
<a name="smcluster-getting-started-slurm"></a>

Comece a criar seu primeiro SageMaker HyperPod cluster e conheça as funcionalidades de operação do SageMaker HyperPod cluster. Você pode criar um SageMaker HyperPod cluster por meio da interface do usuário do console de SageMaker IA ou dos AWS CLI comandos. Este tutorial mostra como criar um novo SageMaker HyperPod cluster com o Slurm, que é um software popular de agendamento de carga de trabalho. Depois de concluir este tutorial, você saberá como fazer login nos nós do cluster usando os AWS Systems Manager comandos (`aws ssm`). Depois de concluir este tutorial, consulte também [SageMaker HyperPod Operações de cluster do Slurm](sagemaker-hyperpod-operate-slurm.md) para saber mais sobre as preparações SageMaker HyperPod básicas e [Trabalhos em SageMaker HyperPod clusters](sagemaker-hyperpod-run-jobs-slurm.md) como agendar trabalhos no cluster provisionado.

**dica**  
Para encontrar exemplos e soluções práticas, veja também o [SageMaker HyperPodworkshop](https://catalog.workshops.aws/sagemaker-hyperpod).

**Topics**
+ [

# Começando a SageMaker HyperPod usar o console de SageMaker IA
](smcluster-getting-started-slurm-console.md)
+ [

# Criação de SageMaker HyperPod clusters usando CloudFormation modelos
](smcluster-getting-started-slurm-console-create-cluster-cfn.md)
+ [

# Começando a SageMaker HyperPod usar o AWS CLI
](smcluster-getting-started-slurm-cli.md)

# Começando a SageMaker HyperPod usar o console de SageMaker IA
<a name="smcluster-getting-started-slurm-console"></a>

O tutorial a seguir demonstra como criar um novo SageMaker HyperPod cluster e configurá-lo com o Slurm por meio da interface de usuário do console de SageMaker IA. Após o tutorial, você criará um HyperPod cluster com três nós do Slurm, `my-controller-group``my-login-group`, e. `worker-group-1`

**Topics**
+ [

## Criação de cluster
](#smcluster-getting-started-slurm-console-create-cluster-page)
+ [

## Implantar recursos.
](#smcluster-getting-started-slurm-console-create-cluster-deploy)
+ [

## Exclua o cluster e limpe os recursos.
](#smcluster-getting-started-slurm-console-delete-cluster-and-clean)

## Criação de cluster
<a name="smcluster-getting-started-slurm-console-create-cluster-page"></a>

Para navegar até a página **SageMaker HyperPod Clusters** e escolher a orquestração do **Slurm**, siga estas etapas.

1. Abra o console do Amazon SageMaker AI em [https://console.aws.amazon.com/sagemaker/](https://console.aws.amazon.com/sagemaker/).

1. Escolha **HyperPod Clusters** no painel de navegação esquerdo e, em seguida, **Gerenciamento de Clusters**.

1. Na página **SageMaker HyperPod Clusters**, escolha **Criar HyperPod cluster**. 

1. No menu suspenso **Criar HyperPod cluster**, escolha **Orchestrated** by Slurm.

1. Na página de criação do clusters do Slurm, você verá duas opções. Escolha a opção mais adequada para as suas necessidades.

   1. **Configuração rápida**: para começar imediatamente com as configurações padrão, escolha **Configuração rápida**. Com essa opção, a SageMaker IA criará novos recursos, como VPC, sub-redes, grupos de segurança, bucket do Amazon S3, função do IAM e FSx para o Lustre no processo de criação do seu cluster.

   1. **Configuração personalizada**: para se integrar aos recursos existentes da AWS ou se tiver requisitos específicos de rede, segurança ou armazenamento, escolha **Configuração personalizada**. Com essa opção, você pode optar por usar os recursos existentes ou criar outros, além de personalizar a configuração que melhor atenda às suas necessidades.

## Configuração rápida
<a name="smcluster-getting-started-slurm-console-create-cluster-default"></a>

Na seção **Configuração rápida**, siga estas etapas para criar seu HyperPod cluster com a orquestração do Slurm.

### Configurações gerais
<a name="smcluster-getting-started-slurm-console-create-cluster-default-general"></a>

Especifique um nome para o novo cluster. Não é possível alterar o nome após a criação do cluster.

### Grupos de instâncias
<a name="smcluster-getting-started-slurm-console-create-cluster-default-instance-groups"></a>

Para adicionar um grupo de instâncias, escolha **Adicionar grupo**. Cada grupo de instâncias pode ser configurado de forma diferente e você pode criar um cluster heterogêneo que consiste em vários grupos de instâncias com vários tipos de instância. Para implantar um cluster, você deve adicionar ao menos um grupo de instâncias para os tipos de grupo Controlador e Computação.

**Importante**  
É possível adicionar um grupo de instâncias por vez. Para criar vários grupos de instâncias, repita o processo para cada grupo de instâncias.

Siga as etapas abaixo para adicionar um grupo de instâncias.

1. Em **Tipo de grupos de instâncias** escolha um tipo de grupo de instâncias. Para este tutorial, escolha **Controlador (cabeça)** para `my-controller-group`, **Login** para `my-login-group` e **Computação (processamento)** para `worker-group-1`.

1. Em **Nome**, especifique um nome para o grupo de instâncias. Para este tutorial, crie três grupos de instâncias chamados `my-controller-group`, `my-login-group`, e `worker-group-1`.

1.  Em **Capacidade da instância**, escolha a capacidade sob demanda ou um plano de treinamento para reservar seus recursos de computação.

1. Em **Selecionar tipo de instância**, escolha a instância para o grupo de instâncias. Para este tutorial, selecione `ml.c5.xlarge` para `my-controller-group`, `ml.m5.4xlarge` para `my-login-group`, e `ml.trn1.32xlarge` para `worker-group-1`. 
**Importante**  
Escolha um tipo de instância com cotas suficientes e endereços IP não atribuídos suficientes para sua conta. Para visualizar ou solicitar cotas adicionais, consulte [SageMaker HyperPod cotas](sagemaker-hyperpod-prerequisites.md#sagemaker-hyperpod-prerequisites-quotas).

1. Em **Quantidade de instâncias**, especifique um número inteiro que não exceda a cota de instância para uso do cluster. Para este tutorial, insira **1** para todos os três grupos.

1. Na lista **Zona de disponibilidade de destino**, selecione a zona de disponibilidade onde suas instâncias serão provisionadas. A zona de disponibilidade deve corresponder ao local da sua capacidade de computação acelerada.

1. Em **Outros volumes de armazenamento por instância (GB)**, especifique um número inteiro entre 1 e 16.384 para definir o tamanho de um volume adicional do Elastic Block Store (EBS) em gigabytes (GB). O volume do EBS é anexado a cada instância do grupo de instâncias. O caminho de montagem padrão para o volume adicional do EBS é`/opt/sagemaker`. Depois que o cluster for criado com sucesso, você poderá entrar por SSH nas instâncias do cluster (nós) e verificar se o volume do EBS está montado corretamente executando o comando `df -h`. A anexação de um volume adicional do EBS fornece armazenamento estável, fora da instância e com persistência independente, conforme descrito na [seção de volumes do Amazon EBS](https://docs.aws.amazon.com/ebs/latest/userguide/ebs-volumes.html) no Guia do usuário do *Amazon Elastic* Block Store.

1. Escolha **Adicionar grupo de instâncias**.

### Padrões de configuração rápida
<a name="smcluster-getting-started-slurm-console-create-cluster-default-settings"></a>

Esta seção lista todas as configurações padrão para a criação do cluster, incluindo todos os novos AWS recursos que serão criados durante o processo de criação do cluster. Reveja as configurações padrão.

## Configuração personalizada
<a name="smcluster-getting-started-slurm-console-create-cluster-custom"></a>

Na seção **Configuração personalizada**, siga estas etapas para criar seu HyperPod cluster com a orquestração do Slurm.

### Configurações gerais
<a name="smcluster-getting-started-slurm-console-create-cluster-custom-general"></a>

Especifique um nome para o novo cluster. Não é possível alterar o nome após a criação do cluster.

Em **Recuperação de instâncias**, escolha **Automático: *recomendado*** ou **Nenhum**.

### Redes
<a name="smcluster-getting-started-slurm-console-create-cluster-custom-network"></a>

Defina suas configurações de rede para criar o cluster. Não é possível alterar essas configurações após a criação do cluster.

1. Para **VPC**, escolha sua própria VPC se você já tiver uma que dê acesso de SageMaker IA à sua VPC. Para criar uma VPC, siga as instruções em [Criar uma VPC](https://docs.aws.amazon.com/vpc/latest/userguide/create-vpc.html) no *Manual do usuário da Amazon Virtual Private Cloud*. Você pode deixá-lo como **Nenhum** para usar o SageMaker AI VPC padrão.

1. Para o **bloco IPv4 CIDR da VPC**, insira o IP inicial da sua VPC.

1. Em **Zonas de disponibilidade**, escolha as Zonas de Disponibilidade (AZ) onde HyperPod criará sub-redes para seu cluster. Escolha AZs aquela que corresponda à localização da sua capacidade computacional acelerada.

1. Em **Grupos de segurança**, crie um grupo de segurança ou escolha até cinco grupos de segurança configurados com regras para permitir a comunicação entre recursos dentro da VPC.

### Grupos de instâncias
<a name="smcluster-getting-started-slurm-console-create-cluster-custom-instance-groups"></a>

Para adicionar um grupo de instâncias, escolha **Adicionar grupo**. Cada grupo de instâncias pode ser configurado de forma diferente e você pode criar um cluster heterogêneo que consiste em vários grupos de instâncias com vários tipos de instância. Para implantar um cluster, você deve adicionar ao menos um grupo de instâncias.

**Importante**  
É possível adicionar um grupo de instâncias por vez. Para criar vários grupos de instâncias, repita o processo para cada grupo de instâncias.

Siga as etapas abaixo para adicionar um grupo de instâncias.

1. Em **Tipo de grupos de instâncias** escolha um tipo de grupo de instâncias. Para este tutorial, escolha **Controlador (cabeça)** para `my-controller-group`, **Login** para `my-login-group` e **Computação (processamento)** para `worker-group-1`.

1. Em **Nome**, especifique um nome para o grupo de instâncias. Para este tutorial, crie três grupos de instâncias chamados `my-controller-group`, `my-login-group`, e `worker-group-1`.

1.  Em **Capacidade da instância**, escolha a capacidade sob demanda ou um plano de treinamento para reservar seus recursos de computação.

1. Em **Selecionar tipo de instância**, escolha a instância para o grupo de instâncias. Para este tutorial, selecione `ml.c5.xlarge` para `my-controller-group`, `ml.m5.4xlarge` para `my-login-group`, e `ml.trn1.32xlarge` para `worker-group-1`. 
**Importante**  
Escolha um tipo de instância com cotas suficientes e endereços IP não atribuídos suficientes para sua conta. Para visualizar ou solicitar cotas adicionais, consulte [SageMaker HyperPod cotas](sagemaker-hyperpod-prerequisites.md#sagemaker-hyperpod-prerequisites-quotas).

1. Em **Quantidade de instâncias**, especifique um número inteiro que não exceda a cota de instância para uso do cluster. Para este tutorial, insira **1** para todos os três grupos.

1. Na lista **Zona de disponibilidade de destino**, selecione a zona de disponibilidade onde suas instâncias serão provisionadas. A zona de disponibilidade deve corresponder ao local da sua capacidade de computação acelerada.

1. Em **Outros volumes de armazenamento por instância (GB)**, especifique um número inteiro entre 1 e 16.384 para definir o tamanho de um volume adicional do Elastic Block Store (EBS) em gigabytes (GB). O volume do EBS é anexado a cada instância do grupo de instâncias. O caminho de montagem padrão para o volume adicional do EBS é`/opt/sagemaker`. Depois que o cluster for criado com sucesso, você poderá entrar por SSH nas instâncias do cluster (nós) e verificar se o volume do EBS está montado corretamente executando o comando `df -h`. A anexação de um volume adicional do EBS fornece armazenamento estável, fora da instância e com persistência independente, conforme descrito na [seção de volumes do Amazon EBS](https://docs.aws.amazon.com/ebs/latest/userguide/ebs-volumes.html) no Guia do usuário do *Amazon Elastic* Block Store.

1. Escolha **Adicionar grupo de instâncias**.

### Scripts de ciclo de vida
<a name="smcluster-getting-started-slurm-console-create-cluster-custom-lifecycle"></a>

Você pode optar por usar os scripts de ciclo de vida padrão ou os scripts de ciclo de vida personalizados, que serão armazenados em seu bucket do Amazon S3. Você pode visualizar os scripts de ciclo de vida padrão no repositório [Awesome Distributed Training GitHub ](https://github.com/aws-samples/awsome-distributed-training/tree/main/1.architectures/7.sagemaker-hyperpod-eks/LifecycleScripts). Para saber mais sobre os scripts de ciclo de vida, consulte [Personalização de SageMaker HyperPod clusters usando scripts de ciclo de vida](sagemaker-hyperpod-lifecycle-best-practices-slurm.md).

1. Em **Scripts de ciclo de vida**, opte por usar o script de ciclo de vida padrão ou scripts personalizados.

1. Para **Scripts de ciclo de vida do bucket do S3**, opte por criar um bucket ou usar um existente para armazenar os scripts de ciclo de vida.

### Permissões
<a name="smcluster-getting-started-slurm-console-create-cluster-custom-permissions"></a>

Escolha ou crie uma função do IAM que permita HyperPod executar e acessar AWS os recursos necessários em seu nome.

### Armazenamento
<a name="smcluster-getting-started-slurm-console-create-cluster-custom-storage"></a>

Configure o FSx sistema de arquivos Lustre para ser provisionado no cluster. HyperPod 

1. Para **Sistema de arquivos**, escolha um sistema de arquivos existente FSx para o Lustre, para criar um novo sistema de arquivos FSx para o Lustre, ou não provisione um sistema de arquivos FSx para o Lustre.

1. Em **Throughput por unidade de armazenamento**, escolha o throughput que estará disponível por TiB de armazenamento provisionado.

1. Em **Capacidade de armazenamento**, insira um valor de capacidade em TB.

1. Em **Tipo de compactação de dados**, escolha ativar **LZ4**a compactação de dados.

1. Em **Versão do Lustre**, veja o valor recomendado para os novos sistemas de arquivos.

### Tags: opcional
<a name="smcluster-getting-started-slurm-console-create-cluster-tags"></a>

Para **Tags - *opcional***, adicione pares de chaves e valores ao novo cluster e gerencie o cluster como um AWS recurso. Para saber mais, consulte [Marcação de AWS recursos](https://docs.aws.amazon.com/tag-editor/latest/userguide/tagging.html).

## Implantar recursos.
<a name="smcluster-getting-started-slurm-console-create-cluster-deploy"></a>

Depois de concluir as configurações do cluster usando a **Configuração rápida** ou a **Configuração personalizada**, escolha a opção a seguir para iniciar o provisionamento de recursos e a criação do cluster.
+  **Enviar** — a SageMaker IA começará a provisionar os recursos de configuração padrão e a criar o cluster. 
+ **Baixar parâmetros CloudFormation do modelo** - Você fará o download do arquivo JSON do parâmetro de configuração e executará o AWS CLI comando para implantar a CloudFormation pilha para provisionar os recursos de configuração e criar o cluster. Você pode editar o arquivo JSON do parâmetro baixado, se necessário. Se você escolher essa opção, consulte mais instruções em [Criação de SageMaker HyperPod clusters usando CloudFormation modelos](smcluster-getting-started-slurm-console-create-cluster-cfn.md).

## Exclua o cluster e limpe os recursos.
<a name="smcluster-getting-started-slurm-console-delete-cluster-and-clean"></a>

Depois de testar com êxito a criação de um SageMaker HyperPod cluster, ele continua sendo executado no `InService` estado até que você exclua o cluster. Recomendamos que você exclua todos os clusters criados usando instâncias de SageMaker IA sob demanda quando não estiverem em uso para evitar cobranças de serviço contínuas com base nos preços sob demanda. Neste tutorial, você criou um cluster que consiste em dois grupos de instâncias. Um deles usa uma instância C5, portanto, exclua o cluster seguindo as instruções em [Excluir um SageMaker HyperPod cluster](sagemaker-hyperpod-operate-slurm-console-ui.md#sagemaker-hyperpod-operate-slurm-console-ui-delete-cluster).

No entanto, se você tiver criado um cluster com capacidade computacional reservada, o status dos clusters não afetará o faturamento do serviço.

Para limpar os scripts de ciclo de vida do bucket do S3 usados neste tutorial, acesse o bucket do S3 usado durante a criação do cluster e remova completamente os arquivos.

Se você testou a execução de qualquer carga de trabalho no cluster, verifique se você carregou algum dado ou se seu trabalho salvou algum artefato em diferentes buckets do S3 ou serviços do sistema de arquivos, como Amazon FSx for Lustre e Amazon Elastic File System. Para evitar cobranças, exclua todos os artefatos e dados do armazenamento ou do sistema de arquivos.

# Criação de SageMaker HyperPod clusters usando CloudFormation modelos
<a name="smcluster-getting-started-slurm-console-create-cluster-cfn"></a>

Você pode criar SageMaker HyperPod clusters usando os CloudFormation modelos para HyperPod. Você deve instalar AWS CLI para continuar.

**Topics**
+ [

## Configure recursos no console e implante usando CloudFormation
](#smcluster-getting-started-slurm-console-create-cluster-deploy-console)
+ [

## Configure recursos e implante usando CloudFormation
](#smcluster-getting-started-slurm-console-create-cluster-deploy-cfn)

## Configure recursos no console e implante usando CloudFormation
<a name="smcluster-getting-started-slurm-console-create-cluster-deploy-console"></a>

Você pode configurar recursos usando o Console de gerenciamento da AWS e implantar usando os CloudFormation modelos. 

Siga estas etapas.

1. *Em vez de escolher **Enviar***, escolha **Baixar parâmetros do CloudFormation modelo** no final do tutorial em[Começando a SageMaker HyperPod usar o console de SageMaker IA](smcluster-getting-started-slurm-console.md). O tutorial contém informações de configuração importantes das quais você precisará para criar o cluster com êxito.
**Importante**  
Se você escolher **Enviar**, não poderá implantar um cluster com o mesmo nome enquanto não excluir o cluster.

   Depois de escolher **Baixar parâmetros do CloudFormation modelo**, a janela **Usando o arquivo de configuração para criar o cluster usando** a AWS CLI janela aparecerá no lado direito da página.

1. Na janela **Usar o arquivo de configuração para criar o cluster usando a AWS CLI**, escolha **Baixar arquivo de parâmetros de configuração**. O arquivo será baixado na sua máquina. Você pode editar o arquivo JSON de configuração com base nas suas necessidades ou deixá-lo como está, se nenhuma alteração for necessária.

1. Em um terminal, navegue até o local do arquivo de parâmetro `file://params.json`.

1. Execute o AWS CLI comando [create-stack](https://docs.aws.amazon.com//cli/latest/reference/cloudformation/create-stack.html) para implantar a CloudFormation pilha que provisionará os recursos configurados e criará o cluster. HyperPod

   ```
   aws cloudformation create-stack 
       --stack-name my-stack
       --template-url https://aws-sagemaker-hyperpod-cluster-setup.amazonaws.com/templates-slurm/main-stack-slurm-based-template.yaml
       --parameters file://params.json
       --capabilities CAPABILITY_IAM CAPABILITY_NAMED_IAM
   ```

1. [Para ver o status do provisionamento de recursos, navegue até o CloudFormation console.](https://console.aws.amazon.com/cloudformation)

   Depois que a criação do cluster for concluída, visualize o novo cluster em **Clusters** no painel principal do SageMaker HyperPod console. Você pode conferir o status exibido na coluna **Status**.

1. Depois que o status do cluster mudar para `InService`, você poderá começar a fazer login nos nós do cluster. Para acessar os nós do cluster e começar a executar workloads de ML, consulte [Trabalhos em SageMaker HyperPod clusters](sagemaker-hyperpod-run-jobs-slurm.md).

## Configure recursos e implante usando CloudFormation
<a name="smcluster-getting-started-slurm-console-create-cluster-deploy-cfn"></a>

Você pode configurar recursos e implantar usando os CloudFormation modelos para SageMaker HyperPod.

Siga estas etapas.

1. Baixe um CloudFormation modelo para SageMaker HyperPod do [sagemaker-hyperpod-cluster-setup](https://github.com/aws/sagemaker-hyperpod-cluster-setup) GitHub repositório.

1. Execute o AWS CLI comando [create-stack](https://docs.aws.amazon.com//cli/latest/reference/cloudformation/create-stack.html) para implantar a CloudFormation pilha que provisionará os recursos configurados e criará o cluster. HyperPod

   ```
   aws cloudformation create-stack 
       --stack-name my-stack
       --template-url URL_of_the_file_that_contains_the_template_body
       --parameters file://params.json
       --capabilities CAPABILITY_IAM CAPABILITY_NAMED_IAM
   ```

1. Para ver o status do provisionamento de recursos, navegue até o console do CloudFormation .

   Depois que a criação do cluster for concluída, visualize o novo cluster em **Clusters** no painel principal do SageMaker HyperPod console. Você pode conferir o status exibido na coluna **Status**.

1. Depois que o status do cluster mudar para `InService`, você poderá começar a fazer login nos nós do cluster. Para acessar os nós do cluster e começar a executar workloads de ML, consulte [Trabalhos em SageMaker HyperPod clusters](sagemaker-hyperpod-run-jobs-slurm.md).

# Começando a SageMaker HyperPod usar o AWS CLI
<a name="smcluster-getting-started-slurm-cli"></a>

Crie seu primeiro SageMaker HyperPod cluster usando os AWS CLI comandos para HyperPod.

## Crie seu primeiro SageMaker HyperPod cluster com o Slurm
<a name="smcluster-getting-started-slurm-cli-create-cluster"></a>

[O tutorial a seguir demonstra como criar um novo SageMaker HyperPod cluster e configurá-lo com o Slurm por meio dos AWS CLI comandos para. SageMaker HyperPod](sagemaker-hyperpod-ref.md#sagemaker-hyperpod-ref-cli) Seguindo o tutorial, você criará um HyperPod cluster com três nós do Slurm: `my-controller-group``my-login-group`, e. `worker-group-1`

Com a abordagem de configuração orientada por API, você define os tipos de nós do Slurm e as atribuições de partição diretamente na solicitação da API usando. CreateCluster `SlurmConfig` Isso elimina a necessidade de um `provisioning_parameters.json` arquivo separado e fornece validação, detecção de desvios e per-instance-group FSx configuração integradas.

1. Primeiro, prepare e faça upload de scripts de ciclo de vida em um bucket do Amazon S3. Durante a criação do cluster, eles são HyperPod executados em cada grupo de instâncias. Faça upload de scripts de ciclo de vida no Amazon S3 usando o comando a seguir.

   ```
   aws s3 sync \
       ~/local-dir-to-lifecycle-scripts/* \
       s3://sagemaker-<unique-s3-bucket-name>/<lifecycle-script-directory>/src
   ```
**nota**  
O caminho do bucket do S3 deve começar com um prefixo`sagemaker-`, porque a [função do IAM para SageMaker HyperPod](sagemaker-hyperpod-prerequisites-iam.md#sagemaker-hyperpod-prerequisites-iam-role-for-hyperpod) with `AmazonSageMakerClusterInstanceRolePolicy` só permite o acesso aos buckets do Amazon S3 que começam com o prefixo específico.

   Se você está começando do zero, use exemplos de scripts de ciclo de vida fornecidos no repositório do [Awsome Distributed Training](https://github.com/aws-samples/awsome-distributed-training/). GitHub As subetapas a seguir mostram como baixar e carregar os exemplos de scripts de ciclo de vida em um bucket do Amazon S3.

   1. Faça download de uma cópia dos exemplos de scripts do ciclo de vida em um diretório local do computador local.

      ```
      git clone https://github.com/aws-samples/awsome-distributed-training/
      ```

   1. Acesse o diretório [https://github.com/aws-samples/awsome-distributed-training/tree/main/1.architectures/5.sagemaker-hyperpod/LifecycleScripts/base-config](https://github.com/aws-samples/awsome-distributed-training/tree/main/1.architectures/5.sagemaker-hyperpod/LifecycleScripts/base-config), em que você pode encontrar um conjunto de scripts de ciclo de vida.

      ```
      cd awsome-distributed-training/1.architectures/5.sagemaker_hyperpods/LifecycleScripts/base-config
      ```

      Para saber mais sobre os exemplos de scripts do ciclo de vida, consulte. [Personalização de SageMaker HyperPod clusters usando scripts de ciclo de vida](sagemaker-hyperpod-lifecycle-best-practices-slurm.md)

   1. Faça o upload de scripts em `s3://sagemaker-<unique-s3-bucket-name>/<lifecycle-script-directory>/src`. Você pode fazer isso no console do Amazon S3 ou executando o seguinte comando da AWS CLI do Amazon S3:

      ```
      aws s3 sync \
          ~/local-dir-to-lifecycle-scripts/* \
          s3://sagemaker-<unique-s3-bucket-name>/<lifecycle-script-directory>/src
      ```
**nota**  
Com a configuração orientada por API, você não precisa criar ou carregar um `provisioning_parameters.json` arquivo. A configuração do Slurm é definida diretamente na solicitação da CreateCluster API na próxima etapa.

1. Prepare um arquivo de [CreateCluster](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateCluster.html)solicitação no formato JSON e salve como`create_cluster.json`.

   Com a configuração orientada por API, você especifica o tipo de nó do Slurm e a atribuição de partição para cada grupo de instâncias usando o campo. `SlurmConfig` Você também define as configurações do Slurm em nível de cluster usando. `Orchestrator.Slurm`

   Para `ExecutionRole`, forneça o ARN do perfil do IAM que você criou com o `AmazonSageMakerClusterInstanceRolePolicy` gerenciado em [Pré-requisitos para usar SageMaker HyperPod](sagemaker-hyperpod-prerequisites.md).

   ```
   {
       "ClusterName": "my-hyperpod-cluster",
       "InstanceGroups": [
           {
               "InstanceGroupName": "my-controller-group",
               "InstanceType": "ml.c5.xlarge",
               "InstanceCount": 1,
               "SlurmConfig": {
                   "NodeType": "Controller"
               },
               "LifeCycleConfig": {
                   "SourceS3Uri": "s3://sagemaker-<unique-s3-bucket-name>/<lifecycle-script-directory>/src",
                   "OnCreate": "on_create.sh"
               },
               "ExecutionRole": "arn:aws:iam::<account-id>:role/HyperPodExecutionRole",
               "InstanceStorageConfigs": [
                   {
                       "EbsVolumeConfig": {
                           "VolumeSizeInGB": 500
                       }
                   }
               ]
           },
           {
               "InstanceGroupName": "my-login-group",
               "InstanceType": "ml.m5.4xlarge",
               "InstanceCount": 1,
               "SlurmConfig": {
                   "NodeType": "Login"
               },
               "LifeCycleConfig": {
                   "SourceS3Uri": "s3://sagemaker-<unique-s3-bucket-name>/<lifecycle-script-directory>/src",
                   "OnCreate": "on_create.sh"
               },
               "ExecutionRole": "arn:aws:iam::<account-id>:role/HyperPodExecutionRole"
           },
           {
               "InstanceGroupName": "worker-group-1",
               "InstanceType": "ml.trn1.32xlarge",
               "InstanceCount": 1,
               "SlurmConfig": {
                   "NodeType": "Compute",
                   "PartitionNames": ["partition-1"]
               },
               "LifeCycleConfig": {
                   "SourceS3Uri": "s3://sagemaker-<unique-s3-bucket-name>/<lifecycle-script-directory>/src",
                   "OnCreate": "on_create.sh"
               },
               "ExecutionRole": "arn:aws:iam::<account-id>:role/HyperPodExecutionRole"
           }
       ],
       "Orchestrator": {
           "Slurm": {
               "SlurmConfigStrategy": "Managed"
           }
       }
   }
   ```

   **SlurmConfig campos**:    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/sagemaker/latest/dg/smcluster-getting-started-slurm-cli.html)

   **Campos do Orchestrator.Slurm:**    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/sagemaker/latest/dg/smcluster-getting-started-slurm-cli.html)

   **SlurmConfigStrategy opções:**
   + `Managed`(recomendado): gerencia `slurm.conf` e detecta HyperPod totalmente alterações não autorizadas (detecção de desvios). As atualizações falharão se um desvio for detectado.
   + `Overwrite`: HyperPod substitui `slurm.conf` as atualizações, ignorando quaisquer alterações manuais.
   + `Merge`: HyperPod preserva as alterações manuais e as mescla com a configuração da API.

   **Adicionando FSx para Lustre (opcional):**

   Para montar um FSx sistema de arquivos for Lustre em seus nós de computação, adicione-o `FsxLustreConfig` ao grupo for the `InstanceStorageConfigs` instance. Isso requer uma configuração de VPC personalizada.

   ```
   {
       "InstanceGroupName": "worker-group-1",
       "InstanceType": "ml.trn1.32xlarge",
       "InstanceCount": 1,
       "SlurmConfig": {
           "NodeType": "Compute",
           "PartitionNames": ["partition-1"]
       },
       "InstanceStorageConfigs": [
           {
               "FsxLustreConfig": {
                   "DnsName": "fs-0abc123def456789.fsx.us-west-2.amazonaws.com",
                   "MountPath": "/fsx",
                   "MountName": "abcdefgh"
               }
           }
       ],
       "LifeCycleConfig": {
           "SourceS3Uri": "s3://sagemaker-<unique-s3-bucket-name>/<lifecycle-script-directory>/src",
           "OnCreate": "on_create.sh"
       },
       "ExecutionRole": "arn:aws:iam::<account-id>:role/HyperPodExecutionRole"
   }
   ```

   **Adicionando FSx para OpenZFS (opcional):**

   Você também pode montar FSx para sistemas de arquivos OpenZFS:

   ```
   "InstanceStorageConfigs": [
       {
           "FsxOpenZfsConfig": {
               "DnsName": "fs-0xyz789abc123456.fsx.us-west-2.amazonaws.com",
               "MountPath": "/shared"
           }
       }
   ]
   ```
**nota**  
Cada grupo de instâncias pode ter no máximo um FSx para o Lustre e outro FSx para a configuração do OpenZFS. Grupos de instâncias diferentes podem montar sistemas de arquivos diferentes.

   **Adicionar a configuração de VPC (necessária para FSx):**

   Se estiver usando FSx, você deve especificar uma configuração de VPC personalizada:

   ```
   {
       "ClusterName": "my-hyperpod-cluster",
       "InstanceGroups": [
           {
               "InstanceGroupName": "my-controller-group",
               "InstanceType": "ml.c5.xlarge",
               "InstanceCount": 1,
               "SlurmConfig": {
                   "NodeType": "Controller"
               },
               "LifeCycleConfig": {
                   "SourceS3Uri": "s3://sagemaker-<unique-s3-bucket-name>/<lifecycle-script-directory>/src",
                   "OnCreate": "on_create.sh"
               },
               "ExecutionRole": "arn:aws:iam::<account-id>:role/HyperPodExecutionRole"
           },
       ],
       "Orchestrator": {
           "Slurm": {
               "SlurmConfigStrategy": "Managed"
           }
       },
       "VpcConfig": {
           "SecurityGroupIds": ["sg-0abc123def456789a"],
           "Subnets": ["subnet-0abc123def456789a"]
       }
   }
   ```

1. Use o seguinte comando para criar o cluster:

   ```
   aws sagemaker create-cluster --cli-input-json file://complete/path/to/create_cluster.json
   ```

   Isso deve retornar o ARN do cluster criado.

   ```
   {
       "ClusterArn": "arn:aws:sagemaker:us-west-2:111122223333:cluster/my-hyperpod-cluster"
   }
   ```

   Se você receber um erro devido a limites de recurso, altere o tipo de instância para uma com cotas suficientes em sua conta ou solicite cotas adicionais seguindo [SageMaker HyperPod cotas](sagemaker-hyperpod-prerequisites.md#sagemaker-hyperpod-prerequisites-quotas).

   **Erros comuns de validação:**    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/sagemaker/latest/dg/smcluster-getting-started-slurm-cli.html)

1. Execute `describe-cluster` para verificar o status do cluster.

   ```
   aws sagemaker describe-cluster --cluster-name my-hyperpod-cluster
   ```

   Exemplo de resposta:

   ```
   {
       "ClusterArn": "arn:aws:sagemaker:us-west-2:111122223333:cluster/my-hyperpod-cluster",
       "ClusterName": "my-hyperpod-cluster",
       "ClusterStatus": "Creating",
       "InstanceGroups": [
           {
               "InstanceGroupName": "my-controller-group",
               "InstanceType": "ml.c5.xlarge",
               "InstanceCount": 1,
               "CurrentCount": 0,
               "TargetCount": 1,
               "SlurmConfig": {
                   "NodeType": "Controller"
               },
               "LifeCycleConfig": {
                   "SourceS3Uri": "s3://sagemaker-<bucket>/src",
                   "OnCreate": "on_create.sh"
               },
               "ExecutionRole": "arn:aws:iam::111122223333:role/HyperPodExecutionRole"
           },
           {
               "InstanceGroupName": "my-login-group",
               "InstanceType": "ml.m5.4xlarge",
               "InstanceCount": 1,
               "CurrentCount": 0,
               "TargetCount": 1,
               "SlurmConfig": {
                   "NodeType": "Login"
               },
               "LifeCycleConfig": {
                   "SourceS3Uri": "s3://sagemaker-<bucket>/src",
                   "OnCreate": "on_create.sh"
               },
               "ExecutionRole": "arn:aws:iam::111122223333:role/HyperPodExecutionRole"
           },
           {
               "InstanceGroupName": "worker-group-1",
               "InstanceType": "ml.trn1.32xlarge",
               "InstanceCount": 1,
               "CurrentCount": 0,
               "TargetCount": 1,
               "SlurmConfig": {
                   "NodeType": "Compute",
                   "PartitionNames": ["partition-1"]
               },
               "LifeCycleConfig": {
                   "SourceS3Uri": "s3://sagemaker-<bucket>/src",
                   "OnCreate": "on_create.sh"
               },
               "ExecutionRole": "arn:aws:iam::111122223333:role/HyperPodExecutionRole"
           }
       ],
       "Orchestrator": {
           "Slurm": {
               "SlurmConfigStrategy": "Managed"
           }
       },
       "CreationTime": "2024-01-15T10:30:00Z"
   }
   ```

   Depois que o status do cluster for alterado para **InService**, avance para a próxima etapa. A criação do cluster normalmente leva de 10 a 15 minutos.

1. Execute `list-cluster-nodes` para verificar os detalhes dos nós do cluster.

   ```
   aws sagemaker list-cluster-nodes --cluster-name my-hyperpod-cluster
   ```

   Exemplo de resposta:

   ```
   {
       "ClusterNodeSummaries": [
           {
               "InstanceGroupName": "my-controller-group",
               "InstanceId": "i-0abc123def456789a",
               "InstanceType": "ml.c5.xlarge",
               "InstanceStatus": {
                   "Status": "Running",
                   "Message": ""
               },
               "LaunchTime": "2024-01-15T10:35:00Z"
           },
           {
               "InstanceGroupName": "my-login-group",
               "InstanceId": "i-0abc123def456789b",
               "InstanceType": "ml.m5.4xlarge",
               "InstanceStatus": {
                   "Status": "Running",
                   "Message": ""
               },
               "LaunchTime": "2024-01-15T10:35:00Z"
           },
           {
               "InstanceGroupName": "worker-group-1",
               "InstanceId": "i-0abc123def456789c",
               "InstanceType": "ml.trn1.32xlarge",
               "InstanceStatus": {
                   "Status": "Running",
                   "Message": ""
               },
               "LaunchTime": "2024-01-15T10:36:00Z"
           }
       ]
   }
   ```

   `InstanceId`É disso que os usuários do cluster precisam para fazer login (`aws ssm`) neles. Para mais informações sobre como fazer login nos nós do cluster e executar workloads de ML, consulte [Trabalhos em SageMaker HyperPod clusters](sagemaker-hyperpod-run-jobs-slurm.md).

1. Conecte-se ao seu cluster usando o Gerenciador de AWS Systems Manager Sessões.

   ```
   aws ssm start-session \
       --target sagemaker-cluster:my-hyperpod-cluster_my-login-group-i-0abc123def456789b \
       --region us-west-2
   ```

   Depois de conectado, verifique se o Slurm está configurado corretamente:

   ```
   # Check Slurm nodes
   sinfo
   
   # Check Slurm partitions
   sinfo -p partition-1
   
   # Submit a test job
   srun -p partition-1 --nodes=1 hostname
   ```

## Exclua o cluster e limpe os recursos.
<a name="smcluster-getting-started-slurm-cli-delete-cluster-and-clean"></a>

Depois de testar com êxito a criação de um SageMaker HyperPod cluster, ele continua sendo executado no `InService` estado até que você exclua o cluster. Recomendamos que você exclua todos os clusters criados usando a capacidade de SageMaker IA sob demanda quando não estiverem em uso para evitar cobranças de serviço contínuas com base nos preços sob demanda. Neste tutorial, você criou um cluster que consiste em três grupos de instâncias. Certifique-se de excluir o cluster executando o comando a seguir.

```
aws sagemaker delete-cluster --cluster-name my-hyperpod-cluster
```

Para limpar os scripts de ciclo de vida do bucket do Amazon S3 usados neste tutorial, acesse o bucket do Amazon S3 que você usou durante a criação do cluster e remova completamente os arquivos.

```
aws s3 rm s3://sagemaker-<unique-s3-bucket-name>/<lifecycle-script-directory>/src --recursive
```

Se você testou a execução de qualquer modelo de carga de trabalho de treinamento no cluster, verifique também se você carregou algum dado ou se seu trabalho salvou algum artefato em diferentes buckets do Amazon S3 ou serviços do sistema de arquivos, como Amazon for Lustre e FSx Amazon Elastic File System. Para evitar cobranças, exclua todos os artefatos e dados do armazenamento ou do sistema de arquivos.

## Tópicos relacionados
<a name="smcluster-getting-started-slurm-cli-related-topics"></a>
+ [SageMaker HyperPod Configuração do Slurm](sagemaker-hyperpod-ref.md#sagemaker-hyperpod-ref-slurm-configuration)
+ [Personalização de SageMaker HyperPod clusters usando scripts de ciclo de vida](sagemaker-hyperpod-lifecycle-best-practices-slurm.md)
+ [FSx configuração via InstanceStorageConfigs](sagemaker-hyperpod-ref.md#sagemaker-hyperpod-ref-slurm-fsx-config)
+ [SageMaker HyperPod Operações de cluster do Slurm](sagemaker-hyperpod-operate-slurm.md)