Criar um cluster Slurm otimizado para IA

Este documento descreve as etapas para configurar e implantar clusters Slurm que usam tipos de máquina A4X, A4, A3 Ultra, A3 Mega ou A3 High. Para saber mais sobre esses tipos de máquinas com otimização para aceleradores, consulte Tipos de máquinas com GPU.

Para outros métodos de criação de um cluster Slurm otimizado com IA em Google Cloud, consulte o seguinte:

Limitações

Dependendo da série de máquinas usada pelas VMs no cluster do Slurm, as seguintes limitações se aplicam:

A4X

A4

  • Você não recebe descontos por uso prolongado e descontos por compromisso de uso flexível para instâncias que usam um tipo de máquina A4.
  • Só é possível usar um tipo de máquina A4 em determinadas regiões e zonas.
  • Não é possível usar o Persistent Disk (regional ou zonal). Só é possível usar o Google Cloud Hyperdisk.
  • O tipo de máquina A4 só está disponível na plataforma de CPU Emerald Rapids.
  • Não é possível mudar o tipo de máquina de uma instância para ou de um tipo de máquina A4. É necessário criar uma nova instância com esse tipo de máquina.
  • Os tipos de máquina A4 não são compatíveis com locatário único.
  • Não é possível executar sistemas operacionais Windows em um tipo de máquina A4.
  • Para instâncias A4, quando você usa ethtool -S para monitorar a rede de GPU, os contadores de porta física que terminam em _phy não são atualizados. Esse é o comportamento esperado para instâncias que usam a arquitetura de função virtual (VF) do MRDMA. Para mais informações, consulte Funções do MRDMA e ferramentas de monitoramento de rede.
  • Não é possível anexar discos do Hyperdisk ML criados antes de 4 de fevereiro de 2026 aos tipos de máquina A4.

A3 Ultra

  • Você não recebe descontos por uso prolongado e descontos por compromisso de uso flexível para instâncias que usam um tipo de máquina A3 ultra.
  • Só é possível usar um tipo de máquina A3 Ultra em determinadas regiões e zonas.
  • Não é possível usar o Persistent Disk (regional ou zonal). Só é possível usar o Google Cloud Hyperdisk.
  • O tipo de máquina A3 Ultra só está disponível na plataforma de CPU Emerald Rapids.
  • As mudanças de tipo de máquina não são compatíveis com o tipo de máquina A3 Ultra. Para mudar para ou desse tipo de máquina, crie uma nova instância.
  • Não é possível executar sistemas operacionais Windows em um tipo de máquina A3 Ultra.
  • Os tipos de máquina A3 Ultra não são compatíveis com locatário único.
  • Para instâncias A3 Ultra, quando você usa ethtool -S para monitorar a rede de GPU, os contadores de porta física que terminam em _phy não são atualizados. Esse é o comportamento esperado para instâncias que usam a arquitetura de função virtual (VF) do MRDMA. Para mais informações, consulte Funções do MRDMA e ferramentas de monitoramento de rede.

A3 Mega

A3 High

Antes de começar

Antes de criar um cluster do Slurm, se ainda não tiver feito isso, conclua as seguintes etapas:

  1. Escolha uma opção de consumo: a opção escolhida determina como você recebe e usa os recursos de GPU.

    Para saber mais, consulte Escolher uma opção de consumo.

  2. Obter capacidade: o processo para obter capacidade varia de acordo com cada opção de consumo.

    Para saber mais sobre o processo de obtenção de capacidade para a opção de consumo escolhida, consulte Visão geral da capacidade.

  3. Verifique se você tem cota de capacidade suficiente do Filestore: é necessário ter cota suficiente do Filestore na região de destino antes da implantação. A capacidade mínima necessária depende dos tipos de máquina no cluster:
    • A4, A4X, A3 Ultra e A3 Mega: exigem no mínimo 10 TiB (10.240 GiB) de capacidade HIGH_SCALE_SSD (zonal).
    • A3 High: exige um mínimo de 2,5 TiB (2.560 GiB) de capacidade BASIC_SSD (padrão).

    Para verificar ou solicitar um aumento de cota, consulte o seguinte:

  4. Instale o Cluster Toolkit: para provisionar clusters Slurm, use a versão v1.62.0 ou mais recente do Cluster Toolkit.

    Para instalar o Cluster Toolkit, consulte Configurar o Cluster Toolkit.

In the Google Cloud console, activate Cloud Shell.

Activate Cloud Shell

At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.

Funções exigidas

Para garantir que a conta de serviço padrão do Compute Engine tenha as permissões necessárias para implantar um cluster do Slurm, peça ao administrador para conceder os seguintes papéis do IAM à conta de serviço padrão do Compute Engine:

Para mais informações sobre a concessão de papéis, consulte Gerenciar o acesso a projetos, pastas e organizações.

O administrador também pode conceder à conta de serviço padrão do Compute Engine as permissões necessárias por meio de papéis personalizados ou outros papéis predefinidos.

Configurar um bucket de armazenamento

Os blueprints de cluster usam módulos do Terraform para provisionar a infraestrutura do Google Cloud. Uma prática recomendada ao trabalhar com o Terraform é armazenar o estado remotamente em um arquivo com suporte a versões. Em Google Cloud, é possível criar um bucket do Cloud Storage com o controle de versões ativado.

Para criar esse bucket e ativar o controle de versões na CLI, execute os seguintes comandos:

gcloud storage buckets create gs://BUCKET_NAME \
    --project=PROJECT_ID \
    --default-storage-class=STANDARD --location=BUCKET_REGION \
    --uniform-bucket-level-access
gcloud storage buckets update gs://BUCKET_NAME --versioning

Substitua:

Abra o diretório do Cluster Toolkit

Para usar o Slurm com o Google Cloud, instale o Cluster Toolkit. Depois de instalar o kit de ferramentas, verifique se você está no diretório Cluster Toolkit executando o seguinte comando:

cd cluster-toolkit

Essa implantação de cluster requer o Cluster Toolkit v1.62.0 ou uma versão mais recente. Para verificar sua versão, execute o seguinte comando:

./gcluster --version

Criar um arquivo de implantação

Crie um arquivo de implantação que possa ser usado para especificar o bucket do Cloud Storage, definir nomes para sua rede e sub-rede e definir variáveis de implantação, como ID do projeto, região e zona.

Para criar um arquivo de implantação, siga as etapas do tipo de máquina e da opção de consumo necessários.

A4X

Para criar o arquivo de implantação, use um editor de texto para criar um arquivo YAML chamado a4xhigh-slurm-deployment.yaml e adicione o seguinte conteúdo.


terraform_backend_defaults:
  type: gcs
  configuration:
    bucket: BUCKET_NAME

vars:
  deployment_name: DEPLOYMENT_NAME
  project_id: PROJECT_ID
  region: REGION
  zone: ZONE
  a4x_cluster_size: NUMBER_OF_VMS
  a4x_reservation_name: RESERVATION_NAME

Substitua:

  • BUCKET_NAME: o nome do bucket do Cloud Storage criado na seção anterior.
  • DEPLOYMENT_NAME: um nome para a implantação. Se você estiver criando vários clusters, escolha um nome exclusivo para cada um deles.
  • PROJECT_ID: o ID do projeto.
  • REGION: a região que tem as máquinas reservadas.
  • ZONE: a zona em que você quer provisionar o cluster. Se você estiver usando uma opção de consumo baseada em reserva, as informações de região e zona foram fornecidas pela equipe da sua conta quando a capacidade foi entregue.
  • NUMBER_OF_VMS: o número de VMs A4X no cluster. É possível especificar qualquer número de VMs. No entanto, as VMs A4X são interconectadas fisicamente por um sistema NVLink de vários nós em grupos de 18 VMs (72 GPUs) para formar um domínio NVLink.

    Para uma performance ideal da rede, recomendamos que você especifique um valor múltiplo de 18 VMs (por exemplo, 18, 36 ou 54). Ao criar um cluster A4X, o blueprint A4X cria e aplica automaticamente uma política de posicionamento compacto com uma topologia de GPU de 1x72 para cada grupo de 18 VMs. Para mais informações sobre a topologia A4X, consulte Fundamentos do A4X.

  • RESERVATION_NAME: o nome da sua reserva.

A4

Os parâmetros que você precisa adicionar ao arquivo de implantação dependem da opção de consumo que está usando para a implantação. Selecione a guia que corresponde ao modelo de provisionamento da sua opção de consumo.

Vinculada à reserva

Para criar o arquivo de implantação, use um editor de texto para criar um arquivo YAML chamado a4high-slurm-deployment.yaml e adicione o seguinte conteúdo.


terraform_backend_defaults:
  type: gcs
  configuration:
    bucket: BUCKET_NAME

vars:
  deployment_name: DEPLOYMENT_NAME
  project_id: PROJECT_ID
  region: REGION
  zone: ZONE
  a4h_cluster_size: NUMBER_OF_VMS
  a4h_reservation_name: RESERVATION_NAME

Substitua:

  • BUCKET_NAME: o nome do bucket do Cloud Storage criado na seção anterior.
  • DEPLOYMENT_NAME: um nome para a implantação. Se você estiver criando vários clusters, escolha um nome exclusivo para cada um deles.
  • PROJECT_ID: o ID do projeto.
  • REGION: a região que tem as máquinas reservadas.
  • ZONE: a zona em que você quer provisionar o cluster. Se você estiver usando uma opção de consumo baseada em reserva, as informações de região e zona foram fornecidas pela equipe da sua conta quando a capacidade foi entregue.
  • NUMBER_OF_VMS: o número de VMs que você quer para o cluster.
  • RESERVATION_NAME: o nome da sua reserva.

Início flexível

Para criar o arquivo de implantação, use um editor de texto para criar um arquivo YAML chamado a4high-slurm-deployment.yaml e adicione o seguinte conteúdo.


terraform_backend_defaults:
  type: gcs
  configuration:
    bucket: BUCKET_NAME

vars:
  deployment_name: DEPLOYMENT_NAME
  project_id: PROJECT_ID
  region: REGION
  zone: ZONE
  a4h_cluster_size: NUMBER_OF_VMS
  a4h_dws_flex_enabled: true

Substitua:

  • BUCKET_NAME: o nome do bucket do Cloud Storage criado na seção anterior.
  • DEPLOYMENT_NAME: um nome para a implantação. Se você estiver criando vários clusters, escolha um nome exclusivo para cada um deles.
  • PROJECT_ID: o ID do projeto.
  • REGION: a região em que você quer provisionar o cluster.
  • ZONE: a zona em que você quer provisionar o cluster.
  • NUMBER_OF_VMS: o número de VMs que você quer para o cluster.

Essa implantação provisiona nós de computação estáticos, o que significa que o cluster tem um número fixo de nós em todos os momentos. Se você quiser ativar o escalonamento automático do cluster, use o arquivo examples/machine-learning/a4-highgpu-8g/a4high-slurm-blueprint.yaml e edite os valores de node_count_static e node_count_dynamic_max para corresponder ao seguinte:

      node_count_static: 0
      node_count_dynamic_max: $(vars.a4h_cluster_size)

Spot

Para criar o arquivo de implantação, use um editor de texto para criar um arquivo YAML chamado a4high-slurm-deployment.yaml e adicione o seguinte conteúdo.


terraform_backend_defaults:
  type: gcs
  configuration:
    bucket: BUCKET_NAME

vars:
  deployment_name: DEPLOYMENT_NAME
  project_id: PROJECT_ID
  region: REGION
  zone: ZONE
  a4h_cluster_size: NUMBER_OF_VMS
  a4h_enable_spot_vm: true

Substitua:

  • BUCKET_NAME: o nome do bucket do Cloud Storage criado na seção anterior.
  • DEPLOYMENT_NAME: um nome para a implantação. Se você estiver criando vários clusters, escolha um nome exclusivo para cada um deles.
  • PROJECT_ID: o ID do projeto.
  • REGION: a região em que você quer provisionar o cluster.
  • ZONE: a zona em que você quer provisionar o cluster.
  • NUMBER_OF_VMS: o número de VMs que você quer para o cluster.

A3 Ultra

Os parâmetros que você precisa adicionar ao arquivo de implantação dependem da opção de consumo que está usando para a implantação. Selecione a guia que corresponde ao modelo de provisionamento da sua opção de consumo.

Vinculada à reserva

Para criar o arquivo de implantação, use um editor de texto para criar um arquivo YAML chamado a3ultra-slurm-deployment.yaml e adicione o seguinte conteúdo.


terraform_backend_defaults:
  type: gcs
  configuration:
    bucket: BUCKET_NAME

vars:
  deployment_name: DEPLOYMENT_NAME
  project_id: PROJECT_ID
  region: REGION
  zone: ZONE
  a3u_cluster_size: NUMBER_OF_VMS
  a3u_reservation_name: RESERVATION_NAME

Substitua:

  • BUCKET_NAME: o nome do bucket do Cloud Storage criado na seção anterior.
  • DEPLOYMENT_NAME: um nome para a implantação. Se você estiver criando vários clusters, escolha um nome exclusivo para cada um deles.
  • PROJECT_ID: o ID do projeto.
  • REGION: a região que tem as máquinas reservadas.
  • ZONE: a zona em que você quer provisionar o cluster. Se você estiver usando uma opção de consumo baseada em reserva, as informações de região e zona foram fornecidas pela equipe da sua conta quando a capacidade foi entregue.
  • NUMBER_OF_VMS: o número de VMs que você quer para o cluster.
  • RESERVATION_NAME: o nome da sua reserva.

Início flexível

Para criar o arquivo de implantação, use um editor de texto para criar um arquivo YAML chamado a3ultra-slurm-deployment.yaml e adicione o seguinte conteúdo.


terraform_backend_defaults:
  type: gcs
  configuration:
    bucket: BUCKET_NAME

vars:
  deployment_name: DEPLOYMENT_NAME
  project_id: PROJECT_ID
  region: REGION
  zone: ZONE
  a3u_cluster_size: NUMBER_OF_VMS
  a3u_dws_flex_enabled: true

Substitua:

  • BUCKET_NAME: o nome do bucket do Cloud Storage criado na seção anterior.
  • DEPLOYMENT_NAME: um nome para a implantação. Se você estiver criando vários clusters, escolha um nome exclusivo para cada um deles.
  • PROJECT_ID: o ID do projeto.
  • REGION: a região em que você quer provisionar o cluster.
  • ZONE: a zona em que você quer provisionar o cluster.
  • NUMBER_OF_VMS: o número de VMs que você quer para o cluster.

Essa implantação provisiona nós de computação estáticos, o que significa que o cluster tem um número fixo de nós em todos os momentos. Se você quiser ativar o escalonamento automático do cluster, use o arquivo examples/machine-learning/a3-ultragpu-8g/a3ultra-slurm-blueprint.yaml e edite os valores de node_count_static e node_count_dynamic_max para corresponder ao seguinte:

      node_count_static: 0
      node_count_dynamic_max: $(vars.a3u_cluster_size)

Spot

Para criar o arquivo de implantação, use um editor de texto para criar um arquivo YAML chamado a3ultra-slurm-deployment.yaml e adicione o seguinte conteúdo.


terraform_backend_defaults:
  type: gcs
  configuration:
    bucket: BUCKET_NAME

vars:
  deployment_name: DEPLOYMENT_NAME
  project_id: PROJECT_ID
  region: REGION
  zone: ZONE
  a3u_cluster_size: NUMBER_OF_VMS
  a3u_enable_spot_vm: true

Substitua:

  • BUCKET_NAME: o nome do bucket do Cloud Storage criado na seção anterior.
  • DEPLOYMENT_NAME: um nome para a implantação. Se você estiver criando vários clusters, escolha um nome exclusivo para cada um deles.
  • PROJECT_ID: o ID do projeto.
  • REGION: a região em que você quer provisionar o cluster.
  • ZONE: a zona em que você quer provisionar o cluster.
  • NUMBER_OF_VMS: o número de VMs que você quer para o cluster.

A3 Mega

Os parâmetros que você precisa adicionar ao arquivo de implantação dependem da opção de consumo que está usando para a implantação. Selecione a guia que corresponde ao modelo de provisionamento da sua opção de consumo.

Vinculada à reserva

Para criar o arquivo de implantação, crie um arquivo YAML chamado a3mega-slurm-deployment.yaml e adicione o seguinte conteúdo.


terraform_backend_defaults:
  type: gcs
  configuration:
    bucket: BUCKET_NAME

vars:
  deployment_name: DEPLOYMENT_NAME
  project_id: PROJECT_ID
  region: REGION
  zone: ZONE
  a3m_cluster_size: NUMBER_OF_VMS
  a3m_reservation_name: RESERVATION_NAME

Substitua:

  • BUCKET_NAME: o nome do bucket do Cloud Storage criado na seção anterior.
  • DEPLOYMENT_NAME: um nome para a implantação. Se você estiver criando vários clusters, escolha um nome exclusivo para cada um deles.
  • PROJECT_ID: o ID do projeto.
  • REGION: a região que tem as máquinas reservadas.
  • ZONE: a zona em que você quer provisionar o cluster. Se você estiver usando uma opção de consumo baseada em reserva, as informações de região e zona foram fornecidas pela equipe da sua conta quando a capacidade foi entregue.
  • NUMBER_OF_VMS: o número de VMs que você quer para o cluster.
  • RESERVATION_NAME: o nome da sua reserva.

Início flexível

Para criar o arquivo de implantação, crie um arquivo YAML chamado a3mega-slurm-deployment.yaml e adicione o seguinte conteúdo.


terraform_backend_defaults:
  type: gcs
  configuration:
    bucket: BUCKET_NAME

vars:
  deployment_name: DEPLOYMENT_NAME
  project_id: PROJECT_ID
  region: REGION
  zone: ZONE
  a3m_cluster_size: NUMBER_OF_VMS
  a3m_dws_flex_enabled: true

Substitua:

  • BUCKET_NAME: o nome do bucket do Cloud Storage criado na seção anterior.
  • DEPLOYMENT_NAME: um nome para a implantação. Se você estiver criando vários clusters, escolha um nome exclusivo para cada um deles.
  • PROJECT_ID: o ID do projeto.
  • REGION: a região em que você quer provisionar o cluster.
  • ZONE: a zona em que você quer provisionar o cluster.
  • NUMBER_OF_VMS: o número de VMs que você quer para o cluster.

Essa implantação provisiona nós de computação estáticos, o que significa que o cluster tem um número fixo de nós em todos os momentos. Se você quiser ativar o escalonamento automático do cluster, use o arquivo examples/machine-learning/a3-megagpu-8g/a3mega-slurm-blueprint.yaml e edite os valores de node_count_static e node_count_dynamic_max para corresponder ao seguinte:

      node_count_static: 0
      node_count_dynamic_max: $(vars.a3m_cluster_size)

Spot

Para criar o arquivo de implantação, crie um arquivo YAML chamado a3mega-slurm-deployment.yaml e adicione o seguinte conteúdo.


terraform_backend_defaults:
  type: gcs
  configuration:
    bucket: BUCKET_NAME

vars:
  deployment_name: DEPLOYMENT_NAME
  project_id: PROJECT_ID
  region: REGION
  zone: ZONE
  a3m_cluster_size: NUMBER_OF_VMS
  a3m_enable_spot_vm: true

Substitua:

  • BUCKET_NAME: o nome do bucket do Cloud Storage criado na seção anterior.
  • DEPLOYMENT_NAME: um nome para a implantação. Se você estiver criando vários clusters, escolha um nome exclusivo para cada um deles.
  • PROJECT_ID: o ID do projeto.
  • REGION: a região em que você quer provisionar o cluster.
  • ZONE: a zona em que você quer provisionar o cluster.
  • NUMBER_OF_VMS: o número de VMs que você quer para o cluster.

A3 High

Os parâmetros que você precisa adicionar ao arquivo de implantação dependem da opção de consumo que está usando para a implantação. Selecione a guia que corresponde ao modelo de provisionamento da sua opção de consumo.

Vinculada à reserva

Para criar o arquivo de implantação, crie um arquivo YAML chamado a3high-slurm-deployment.yaml e adicione o seguinte conteúdo.


terraform_backend_defaults:
  type: gcs
  configuration:
    bucket: BUCKET_NAME

vars:
  deployment_name: DEPLOYMENT_NAME
  project_id: PROJECT_ID
  region: REGION
  zone: ZONE
  a3h_cluster_size: NUMBER_OF_VMS
  a3h_reservation_name: RESERVATION_NAME

Substitua:

  • BUCKET_NAME: o nome do bucket do Cloud Storage criado na seção anterior.
  • DEPLOYMENT_NAME: um nome para a implantação. Se você estiver criando vários clusters, escolha um nome exclusivo para cada um deles.
  • PROJECT_ID: o ID do projeto.
  • REGION: a região que tem as máquinas reservadas.
  • ZONE: a zona em que você quer provisionar o cluster. Se você estiver usando uma opção de consumo baseada em reserva, as informações de região e zona foram fornecidas pela equipe da sua conta quando a capacidade foi entregue.
  • NUMBER_OF_VMS: o número de VMs que você quer para o cluster.
  • RESERVATION_NAME: o nome da sua reserva.

Início flexível

Para criar o arquivo de implantação, crie um arquivo YAML chamado a3high-slurm-deployment.yaml e adicione o seguinte conteúdo.


terraform_backend_defaults:
  type: gcs
  configuration:
    bucket: BUCKET_NAME

vars:
  deployment_name: DEPLOYMENT_NAME
  project_id: PROJECT_ID
  region: REGION
  zone: ZONE
  a3h_cluster_size: NUMBER_OF_VMS
  a3h_dws_flex_enabled: true

Substitua:

  • BUCKET_NAME: o nome do bucket do Cloud Storage criado na seção anterior.
  • DEPLOYMENT_NAME: um nome para a implantação. Se você estiver criando vários clusters, escolha um nome exclusivo para cada um deles.
  • PROJECT_ID: o ID do projeto.
  • REGION: a região em que você quer provisionar o cluster.
  • ZONE: a zona em que você quer provisionar o cluster.
  • NUMBER_OF_VMS: o número de VMs que você quer para o cluster.

Essa implantação provisiona nós de computação estáticos, o que significa que o cluster tem um número fixo de nós em todos os momentos. Se você quiser ativar o escalonamento automático do cluster, use o arquivo examples/machine-learning/a3-highgpu-8g/a3high-slurm-blueprint.yaml e edite os valores de node_count_static e node_count_dynamic_max para corresponder ao seguinte:

      node_count_static: 0
      node_count_dynamic_max: $(vars.a3h_cluster_size)

Spot

Para criar o arquivo de implantação, crie um arquivo YAML chamado a3high-slurm-deployment.yaml e adicione o seguinte conteúdo.


terraform_backend_defaults:
  type: gcs
  configuration:
    bucket: BUCKET_NAME

vars:
  deployment_name: DEPLOYMENT_NAME
  project_id: PROJECT_ID
  region: REGION
  zone: ZONE
  a3h_cluster_size: NUMBER_OF_VMS
  a3h_enable_spot_vm: true

Substitua:

  • BUCKET_NAME: o nome do bucket do Cloud Storage criado na seção anterior.
  • DEPLOYMENT_NAME: um nome para a implantação. Se você estiver criando vários clusters, escolha um nome exclusivo para cada um deles.
  • PROJECT_ID: o ID do projeto.
  • REGION: a região em que você quer provisionar o cluster.
  • ZONE: a zona em que você quer provisionar o cluster.
  • NUMBER_OF_VMS: o número de VMs que você quer para o cluster.

Provisionar um cluster do Slurm

O Cluster Toolkit provisiona o cluster com base no arquivo de implantação que você criou na etapa anterior e no blueprint padrão do cluster. Para mais informações sobre o software instalado pelo blueprint, incluindo drivers NVIDIA e CUDA, saiba mais sobre imagens personalizadas do Slurm.

Para provisionar o cluster, execute o comando do tipo de máquina no diretório do Cluster Toolkit. Essa etapa leva aproximadamente de 20 a 30 minutos.

A4X

./gcluster deploy -d a4xhigh-slurm-deployment.yaml examples/machine-learning/a4x-highgpu-4g/a4xhigh-slurm-blueprint.yaml --auto-approve

A4

./gcluster deploy -d a4high-slurm-deployment.yaml examples/machine-learning/a4-highgpu-8g/a4high-slurm-blueprint.yaml --auto-approve

A3 Ultra

./gcluster deploy -d a3ultra-slurm-deployment.yaml examples/machine-learning/a3-ultragpu-8g/a3ultra-slurm-blueprint.yaml --auto-approve

A3 Mega

./gcluster deploy -d a3mega-slurm-deployment.yaml examples/machine-learning/a3-megagpu-8g/a3mega-slurm-blueprint.yaml --auto-approve

A3 High

./gcluster deploy -d a3high-slurm-deployment.yaml examples/machine-learning/a3-highgpu-8g/a3high-slurm-blueprint.yaml --auto-approve

Conectar-se ao cluster do Slurm

Para acessar o cluster, faça login no nó de login do Slurm. Para fazer login, use o console Google Cloud ou a Google Cloud CLI.

Console

  1. Acesse a página Compute Engine > Instâncias de VM.

    Acessar a página "Instâncias de VM"

  2. Localize o nó de login. Ele precisa ter um nome com o padrão DEPLOYMENT_NAME +login-001.

  3. Na coluna Conectar do nó de login, clique em SSH.

gcloud

Para se conectar ao nó de login, siga estas etapas:

  1. Identifique o nó de login usando o comando gcloud compute instances list.

    gcloud compute instances list \
      --zones=ZONE \
      --filter="name ~ login" --format "value(name)"
    

    Se a saída listar vários clusters do Slurm, identifique o nó de login pelo DEPLOYMENT_NAME especificado.

  2. Use o comando gcloud compute ssh para se conectar ao nó de login.

    gcloud compute ssh LOGIN_NODE \
      --zone=ZONE --tunnel-through-iap
    

    Substitua:

    • ZONE: a zona em que as VMs do cluster estão localizadas.
    • LOGIN_NODE: o nome do nó de login, que você identificou na etapa anterior.

Testar a performance da rede no cluster do Slurm

Recomendamos que você valide a funcionalidade dos clusters provisionados. Para isso, use os testes do NCCL, que são testes da NVIDIA Collective Communications Library (NCCL) otimizados para o ambiente do Google.

Reimplantar o cluster do Slurm

Se você precisar aumentar o número de nós de computação ou adicionar novas partições ao cluster, talvez seja necessário atualizar as configurações do cluster do Slurm fazendo uma nova implantação. A nova implantação pode ser acelerada usando uma imagem de uma implantação anterior. Para evitar a criação de novas imagens durante uma nova implantação, especifique a flag --only.

Para reimplantar o cluster usando uma imagem atual, faça o seguinte:

  1. Conecte-se ao cluster

  2. Execute o comando para o tipo de máquina necessário:

    A4X

    ./gcluster deploy -d a4xhigh-slurm-deployment.yaml examples/machine-learning/a4x-highgpu-4g/a4xhigh-slurm-blueprint.yaml --only cluster-env,cluster -w --auto-approve

    A4

    ./gcluster deploy -d a4high-slurm-deployment.yaml examples/machine-learning/a4-highgpu-8g/a4high-slurm-blueprint.yaml --only cluster-env,cluster -w --auto-approve

    A3 Ultra

    ./gcluster deploy -d a3ultra-slurm-deployment.yaml examples/machine-learning/a3-ultragpu-8g/a3ultra-slurm-blueprint.yaml --only cluster-env,cluster -w --auto-approve

    A3 Mega

    ./gcluster deploy -d a3mega-slurm-deployment.yaml examples/machine-learning/a3-megagpu-8g/a3mega-slurm-blueprint.yaml --only cluster-env,cluster -w --auto-approve

    A3 High

    ./gcluster deploy -d a3high-slurm-deployment.yaml examples/machine-learning/a3-highgpu-8g/a3high-slurm-blueprint.yaml --only cluster-env,cluster -w --auto-approve

    Esse comando é apenas para novas implantações em que uma imagem já existe. Ele apenas reimplanta o cluster e a infraestrutura dele.

Destruir o cluster do Slurm

Por padrão, os modelos A4X, A4 e A3 Ultra ativam a proteção contra exclusão na instância do Filestore. Para excluir a instância do Filestore ao destruir o cluster do Slurm, desative a proteção contra exclusão antes de executar o comando de destruição. Para instruções, consulte Configurar ou remover a proteção contra exclusão em uma instância atual.

  1. Desconecte-se do cluster, caso ainda não tenha feito isso.

  2. Antes de executar o comando de destruição, navegue até a raiz do diretório do Cluster Toolkit. Por padrão, DEPLOYMENT_FOLDER está localizado na raiz do diretório do Cluster Toolkit.

  3. Para destruir o cluster, execute:

./gcluster destroy DEPLOYMENT_FOLDER --auto-approve

Substitua:

  • DEPLOYMENT_FOLDER: o nome da pasta de implantação. Geralmente, é o mesmo que DEPLOYMENT_NAME.

Quando a destruição for concluída, uma mensagem semelhante a esta será exibida:

  Destroy complete! Resources: xx destroyed.
  

Para saber como destruir a infraestrutura de forma limpa e conferir instruções avançadas de implantação manual, consulte a pasta de implantação localizada na raiz do diretório do Cluster Toolkit: DEPLOYMENT_FOLDER/instructions.txt

A seguir