Escolher um orquestrador e uma opção de implantação

Para executar cargas de trabalho de inteligência artificial (IA) ou machine learning (ML) com eficiência, selecione um orquestrador de carga de trabalho e uma plataforma de implantação. Esses componentes funcionam da seguinte maneira:

  • Um orquestrador agenda e executa seus jobs.

  • Uma opção de implantação gerencia um orquestrador.

Depois de identificar qual infraestrutura de GPU (GPUs em cluster ou GPUs gerais) usar para executar suas cargas de trabalho, siga as orientações neste documento para identificar o orquestrador e a implantação que melhor se adequam à sua carga de trabalho e ao nível de gerenciamento.

Para conferir os tipos de máquinas de GPU que podem ser usados para executar suas cargas de trabalho, consulte Máquinas de GPU.

Comparar orquestradores e opções de implantação

O Hipercomputador de IA oferece vários orquestradores e opções de implantação para suas instâncias de computação. Essas opções variam de clusters totalmente gerenciados que permitem que você se concentre nas cargas de trabalho a ambientes autogerenciados que oferecem controle granular sobre como manter e atualizar suas instâncias de computação.

A tabela a seguir compara os orquestradores e as opções de implantação que podem ser usados ao executar cargas de trabalho de IA:

Produto Orquestrador Complexidade técnica Recomendado para Principal benefício
Cluster Director Slurm Baixa Pesquisadores de IA, cientistas de dados Ciclo de vida gerenciado para clusters Slurm
Google Kubernetes Engine (GKE) Kubernetes De média a alta Engenheiros de ML, engenheiros de plataforma Orquestração e escalonamento de contêineres
Cluster Toolkit Slurm, Kubernetes Média Engenheiros de ML e DevOps, engenheiros de plataforma Projetos de infraestrutura como código validados
Compute Engine Personalizado / nenhum Alta Arquitetos de infraestrutura Controle granular sobre SO e rede

Escolher um orquestrador e uma opção de implantação

Para escolher um orquestrador e uma opção de implantação, use o fluxograma a seguir:

Árvore de decisão para selecionar um orquestrador e uma opção de implantação.

O fluxograma anterior faz as seguintes perguntas:

  1. Você quer orquestração de cluster para suas cargas de trabalho?

    • Sim: vá para a pergunta 2.
    • Não: use o Compute Engine.
  2. Você quer executar apps conteinerizados padrão?

    • Sim: use o GKE.
    • Não: vá para a pergunta 3.
  3. Você quer que o Google gerencie o ciclo de vida do cluster?

    • Sim: use o Cluster Director.
    • Não: use o Cluster Toolkit.

Orquestradores compatíveis

Um orquestrador automatiza o gerenciamento de clusters e elimina a necessidade de gerenciar cada instância de computação individualmente. Orquestradores como o Slurm ou o Kubernetes processam o enfileiramento de jobs, a alocação de recursos e o escalonamento automático.

  • Slurm: um orquestrador de código aberto usado com frequência para cargas de trabalho de IA, ML, e HPC. É possível usar o Slurm com o Cluster Toolkit ou o Cluster Director.

  • Kubernetes: uma plataforma de orquestração de contêineres de código aberto. É possível implantar o Kubernetes usando o GKE diretamente ou pelo Cluster Toolkit.

  • Personalizado ou nenhum: use o Compute Engine se preferir um orquestrador diferente ou quiser gerenciar suas instâncias de computação sem um. Essa opção oferece o maior nível de controle, mas exige que você configure, mantenha e atualize manualmente suas instâncias de computação.

Plataformas de implantação compatíveis

Depois de identificar o orquestrador e a opção de implantação recomendados para seu caso de uso, revise as descrições abaixo para verificar se os níveis e recursos de gerenciamento atendem aos requisitos da carga de trabalho.

Plataformas gerenciadas e automatizadas

Se você quiser evitar a sobrecarga de gerenciar um cluster e se concentrar na execução das cargas de trabalho, use uma das seguintes plataformas gerenciadas:

  • Cluster Director: um serviço totalmente gerenciado que automatiza o ciclo de vida dos clusters Slurm. Use o Cluster Director para simplificar a configuração dos clusters Slurm. O Cluster Director automatiza o ciclo de vida dos clusters para que você possa se concentrar na execução de cargas de trabalho de IA, ML ou HPC. Para mais informações, consulte Visão geral do Cluster Director.

  • GKE: um ambiente Kubernetes gerenciado otimizado para cargas de trabalho de IA e ML. Use o GKE para orquestrar cargas de trabalho conteinerizadas, integrar com hardware especializado do Compute Engine e aproveitar recursos específicos do GKE, como o agendamento com reconhecimento de topologia (TAS, na sigla em inglês). Para mais informações, consulte Visão geral do GKE.

Plataformas semigerenciadas e autogerenciadas

Se você precisar de controle granular sobre o sistema operacional, as configurações do kernel ou as versões do driver, use uma plataforma semigerenciada ou autogerenciada:

  • Cluster Toolkit: um kit de ferramentas de código aberto que fornece projetos validados e personalizáveis para implantar ambientes de IA e ML reproduzíveis. Ele oferece alta flexibilidade e controle usando princípios de infraestrutura como código (IaC, na sigla em inglês). Para mais informações, consulte Visão geral do Cluster Toolkit.

  • Compute Engine: um serviço de computação personalizável que oferece controle máximo para criar ambientes personalizados do zero. Embora não seja um orquestrador independente, o Compute Engine serve como base para usuários que preferem criar e gerenciar suas próprias pilhas personalizadas especializadas. Para mais informações, consulte Visão geral do Compute Engine.

A seguir