Este documento compara as principais opções de computação Google Cloud para ajudar você a selecionar a melhor solução ou ferramenta para a arquitetura, o escalonamento e outros requisitos do seu aplicativo.
Para implantar cargas de trabalho no Google Cloud, você pode escolher entre várias soluções ou ferramentas que equilibram o controle sobre a infraestrutura com o gerenciamento automatizado do Google. A opção de computação selecionada pode afetar significativamente o desempenho, o custo e o esforço de manutenção diária. Para entender melhor estas opções antes de escolher uma, consulte a visão geral da computação do Google.
Escolher uma opção de computação
A melhor solução ou ferramenta de computação para sua carga de trabalho pode depender de vários fatores. Por exemplo, se você quiser migrar seu ambiente VMware para o Google Cloud, então use o VMware Engine.
Para ajudar você a navegar pelas compensações entre o gerenciamento de infraestrutura, contêineres e instâncias do Compute Engine, use o fluxograma a seguir. Se você quiser comparar rapidamente os recursos entre as opções de computação, consulte a tabela de comparação neste documento.
As perguntas no fluxograma anterior são as seguintes:
Você quer que o Google gerencie toda a infraestrutura?
Sim: use o Cloud Run.
Não: vá para a pergunta 2.
Você quer orquestração de cluster para suas cargas de trabalho (como Kubernetes ou Slurm)?
Sim: pule para a pergunta 4.
Não: vá para a pergunta 3.
Você quer gerenciar VMs ou instâncias bare metal por conta própria?
Sim: use o Compute Engine.
Não: use o Batch.
Você quer executar aplicativos conteinerizados padrão (como microsserviços ou APIs)?
Sim: use o GKE.
Não: vá para a pergunta 5.
Você quer que o Google gerencie o ciclo de vida do cluster?
Sim: use o Cluster Director.
Não: use o Cluster Toolkit.
Usar o Batch
Escolha o Batch para cargas de trabalho como análise de dados assíncrona, tarefas de conversão de vídeo ou simulações científicas. Com o Batch, o Google gerencia a infraestrutura para que você possa programar, enfileirar e executar jobs de computação em lote no Google Cloud. Não é necessário implantar ou gerenciar servidores por conta própria. Em vez disso, você envia scripts executáveis ou cargas de trabalho conteinerizadas para uma fila de jobs.
O Batch oferece os seguintes recursos:
Suporte a aceleradores: o Batch oferece suporte a GPUs NVIDIA até RTX PRO 6000 para cargas de trabalho de computação de alto desempenho (HPC) e em lote que exigem alta capacidade de processamento. O Batch não oferece suporte a TPUs do Google.
Controle de SO e kernel: o Google gerencia o SO e o ambiente de execução dos seus jobs.
Orquestração: a fila de jobs programa tarefas e as repete se ocorrer um erro. Para escalonar a capacidade, o serviço provisiona e inicia VMs com base no número de jobs enfileirados e interrompe as VMs quando esses jobs são concluídos.
Para mais informações, consulte Começar a usar o Batch.
Usar o Cloud Run
Escolha o Cloud Run para implantar aplicativos ou jobs da Web conteinerizados sem administração de servidor. O Cloud Run é uma plataforma sem servidor que permite executar aplicativos conteinerizados sem gerenciamento de servidor ou cluster. O Google processa todo o gerenciamento de infraestrutura para você, incluindo o SO, o kernel, a configuração de rede e o gerenciamento de capacidade.
O Cloud Run oferece os seguintes recursos:
Suporte a aceleradores: o Cloud Run oferece suporte às GPUs NVIDIA RTX PRO 6000 Blackwell e L4. O Cloud Run não oferece suporte a outros modelos de GPU ou TPUs do Google.
Controle de SO e kernel: você empacota suas cargas de trabalho como contêineres e as executa como serviços da Web, tarefas assíncronas ou jobs em lote.
Orquestração: como uma plataforma sem servidor, o Google inicia, executa e escalona as instâncias de contêiner sem intervenção manual. Para serviços da Web, o Cloud Run adiciona ou remove instâncias de contêiner com base nas solicitações recebidas ou no consumo de CPU.
Para mais informações, consulte O que é o Cloud Run.
Usar o Cluster Director
Escolha o Cluster Director se quiser treinar modelos de IA ou executar jobs de simulação programados pelo Slurm sem tarefas de configuração de rede ou de SO de cluster. O Cluster Director é um serviço gerenciado que automatiza a implantação e o gerenciamento do ciclo de vida de clusters de IA, ML e HPC.
O Cluster Director oferece os seguintes recursos:
Suporte a aceleradores: o Cluster Director oferece suporte a GPUs NVIDIA, incluindo GB300 Ultra Superchips, GB200 Superchips, B200, H200, e H100, para cargas de trabalho de IA, ML e HPC. O Cluster Director não oferece suporte a TPUs do Google.
Controle de SO e kernel: o Google gerencia o ciclo de vida do cluster e configura um SO Ubuntu personalizado projetado para ML. O serviço fornece um ambiente pronto para uso, completo com nós de login, conjuntos de nós de computação e modelos de implantação criados para cargas de trabalho de IA.
Orquestração: para escalonar a capacidade, o Slurm cria nós quando o consumo de CPU aumenta e exclui nós quando eles permanecem inativos por um período para evitar cobranças desnecessárias.
Para mais informações, consulte Visão geral do Cluster Director.
Usar o Cluster Toolkit
Escolha o Cluster Toolkit se quiser usar modelos de implantação automatizados, mantendo o controle administrativo sobre o SO e a pilha de software. O Cluster Toolkit é uma ferramenta de código aberto usada para provisionar e configurar clusters de IA, ML e HPC no Google Cloud.
O Cluster Toolkit oferece os seguintes recursos:
Suporte a aceleradores: o Cluster Toolkit oferece suporte a GPUs NVIDIA e TPUs do Google, que você provisiona e configura com modelos de implantação chamados blueprints. Com esses arquivos de configuração automatizados, você implanta uma infraestrutura de cluster padronizada e repetível com base nos princípios de infraestrutura como código (IaC).
Controle de SO e kernel: o Cluster Toolkit implanta instâncias de computação ou recursos do GKE no seu Google Cloud projeto. Depois de implantar esses recursos, você mantém o controle administrativo sobre o SO, as configurações de software e o ciclo de vida do cluster.
Orquestração: para escalonar a capacidade, configure grupos de instâncias gerenciadas (MIGs) ou ferramentas do GKE para adicionar ou remover nós com base nas configurações do modelo.
Para mais informações, consulte Visão geral do Cluster Toolkit.
Usar o Compute Engine
Escolha o Compute Engine se seus aplicativos exigirem configurações arquitetônicas personalizadas, configurações de kernel especializadas ou controle administrativo sobre servidores virtuais. O Compute Engine é Google Clouda plataforma principal de infraestrutura como serviço (IaaS) do, que permite criar e executar instâncias de VM e bare metal no hardware físico do Google.
O Compute Engine oferece os seguintes recursos:
Suporte a aceleradores: o Compute Engine oferece suporte a GPUs NVIDIA e TPUs do Google, que você anexa às instâncias de computação.
Controle de SO e kernel: você mantém o controle completo sobre o SO, as configurações do kernel e os arquivos de inicialização, além de selecionar processadores de CPU, configurações de memória , tipos de armazenamento e SO convidado.
Orquestração: como a orquestração é manual, você configura e gerencia suas próprias instâncias de computação, regras de rede, rotas de tráfego e sistemas de backup para confiabilidade. Para escalonar a capacidade, adicione ou remova instâncias de computação conforme necessário, use ferramentas personalizadas ou configure MIGs para ajustar a capacidade do cluster.
Para mais informações, consulte Visão geral do Compute Engine.
Usar o GKE
Escolha o Google Kubernetes Engine (GKE) quando precisar de uma plataforma de orquestração robusta baseada em contêineres para aplicativos distribuídos ou microsserviços de uso geral. O GKE é uma plataforma gerenciada do Kubernetes padrão do setor para implantar, escalonar e orquestrar aplicativos conteinerizados. O Google gerencia o plano de controle do Kubernetes para segurança e disponibilidade do sistema.
O GKE oferece os seguintes recursos:
Suporte a aceleradores: o GKE oferece suporte a GPUs NVIDIA e TPUs do Google para cargas de trabalho conteinerizadas.
Controle de SO e kernel: o Google gerencia o SO nos modos Autopilot e Standard. No modo Autopilot, o Google gerencia os nós do cluster e os ajustes de capacidade sem intervenção manual. No modo Standard, você gerencia os pools de nós do cluster.
Orquestração: para ajustar a capacidade conforme a demanda muda, o GKE adiciona ou remove contêineres com escalonadores automáticos de pods horizontais e verticais (HPA e VPA) e adiciona ou remove nós com o escalonador automático de cluster. O GKE também orquestra jobs em lote pelo Kueue.
Para mais informações, consulte Visão geral do GKE.
Usar o VMware Engine
Escolha o VMware Engine para migrar suas cargas de trabalho VMware locais para a Google Cloud infraestrutura com mudanças operacionais mínimas. O VMware Engine é um serviço gerenciado que permite executar máquinas virtuais VMware no hardware do Google sem modificações de aplicativos.
O VMware Engine oferece os seguintes recursos:
Suporte a aceleradores: o VMware Engine não oferece suporte a GPUs ou TPUs.
Controle de SO e kernel: você executa aplicativos VMware no Google Cloud da mesma forma que eles são executados na configuração atual. O Google gerencia o hardware físico, a infraestrutura de rede e a plataforma de software VMware, como vSphere, vCenter, vSAN e NSX-T. Você mantém o controle administrativo sobre suas VMs, SO convidado e ferramentas de gerenciamento do VMware.
Orquestração: para ajustar o tamanho da sua nuvem privada, adicione ou remova nós ESXi dedicados.
Para mais informações, consulte Visão geral do Google Cloud VMware Engine.
Comparar opções de computação
Para identificar a solução ou ferramenta de computação que se ajusta à sua carga de trabalho, compare os recursos técnicos entre as opções de computação na tabela a seguir:
| Opção de computação | GPUs | TPUs | Controle de SO e kernel | Orquestração | Escalonamento |
|---|---|---|---|---|---|
| Lote | Até NVIDIA RTX PRO 6000 | Não | Gerenciado pelo Google | Fila de jobs | Automático com base em jobs enfileirados |
| Cloud Run | NVIDIA RTX PRO 6000 Blackwell e L4 | Não | Gerenciado pelo Google | Sem servidor | Automático com base em solicitações ou consumo de CPU |
| Cluster Director | NVIDIA GB300 Ultra Superchips, GB200 Superchips, B200, H200 e H100 | Não | Gerenciado pelo Google (Ubuntu personalizado) | Slurm | Automático com base no consumo de CPU |
| Cluster Toolkit | Todas as GPUs NVIDIA disponíveis | Todas as TPUs do Google disponíveis | Autogerenciado | Arquivos de configuração automatizados (IaC) | Personalizável usando MIGs ou ferramentas do GKE |
| Compute Engine | Todas as GPUs NVIDIA disponíveis | Todas as TPUs do Google disponíveis | Autogerenciado | Manual | Manual ou automático usando MIGs |
| Google Kubernetes Engine (GKE) | Todas as GPUs NVIDIA disponíveis | Todas as TPUs do Google disponíveis | Gerenciado pelo Google (Autopilot) ou semigerenciado (Standard) | Kubernetes | Escalonamento automático de pods e nós |
| VMware Engine | Não | Não | Gerenciado pelo Google | Plataforma VMware | Manual usando nós ESXi |
Conhecer os recursos do Hipercomputador de IA para IA e ML
O Hipercomputador de IA é uma arquitetura integrada que combina hardware criado para fins específicos, software aberto e modelos de consumo flexíveis. Essa arquitetura foi projetada especificamente para aumentar a produtividade de ML e maximizar o goodput, a taxa de dados úteis transferidos, para cargas de trabalho de IA exigentes.
O Hipercomputador de IA oferece os seguintes recursos:
Suporte a aceleradores: o Hipercomputador de IA oferece suporte a todas as GPUs NVIDIA e TPUs do Google. Os aceleradores se conectam por redes de alta largura de banda para otimizar a capacidade de processamento de modelos de IA em milhares de instâncias de computação.
Controle de SO e kernel: seu controle sobre o SO e o kernel depende da ferramenta de implantação escolhida:
Ambientes gerenciados pelo Google: se você escolher o Cluster Director, o Google vai gerenciar o ambiente do cluster e o ciclo de vida. Se você escolher o GKE no modo Autopilot, o Google vai gerenciar o ambiente de contêiner.
Ambientes autogerenciados: se você escolher o Cluster Toolkit, o Compute Engine ou o GKE no modo Standard, você vai gerenciar os recursos do cluster e o SO.
Orquestração: é possível usar o Slurm, o GKE ou orquestradores personalizados para adicionar ou remover instâncias de computação, pods ou contêineres no cluster quando a demanda de computação mudar.
Para mais informações, consulte Visão geral do Hipercomputador de IA.