Para criar a infraestrutura de aplicativos fortemente acoplados que escalonam em vários nós, crie um cluster de instâncias de máquina virtual (VM). Este guia oferece uma visão geral das principais considerações e etapas para configurar um cluster de instâncias de máquina virtual (VM) para cargas de trabalho de computação de alto desempenho (HPC) usando alocação densa de recursos.
O Compute Engine oferece várias maneiras de criar muitas instâncias de VM conectadas à mesma rede, mas que não exigem alocação densa de recursos. Por exemplo, é possível usar qualquer um dos seguintes métodos, que são abordados em outras partes da documentação do Compute Engine:
Também é possível criar um script que inclua os comandos para criar instâncias individuais e associar políticas de colocação compacta às instâncias para reduzir a latência.
Com o H4D (pré-lançamento), o Compute Engine adiciona suporte para executar cargas de trabalho de HPC massivas tratando um cluster inteiro de instâncias de VM como um único computador. Usar o posicionamento de VMs com reconhecimento de topologia permite acessar muitas instâncias em um único superbloco de rede e minimiza a latência de rede. Também é possível configurar o Cloud RDMA nessas instâncias para maximizar o desempenho da comunicação entre nós, o que é crucial para cargas de trabalho de HPC fortemente acopladas.
Você cria esses clusters de VM de HPC com H4D reservando blocos de capacidade em vez de recursos individuais. Usar blocos de capacidade para seu cluster oferece os seguintes recursos extras para implantação e gerenciamento desses ambientes de grande escala:
- Posicionamento de instâncias de VM com reconhecimento de topologia
- Sistemas avançados de reserva para proteger e gerenciar a capacidade
- Grupos gerenciados de instâncias (MIGs) aprimorados projetados para conjuntos grandes e codependentes de instâncias de VM.
- Programação e controles avançados de manutenção, que oferecem mais controle sobre quando e como a manutenção ocorre nas instâncias de VM, o que é crucial para cargas de trabalho de longa duração e sensíveis a interrupções. Isso inclui recursos como manutenção acionada pelo cliente e manutenção agrupada para blocos de recursos.
Terminologia de cluster
Ao trabalhar com blocos de capacidade, os seguintes termos são usados:
Visão geral do processo de criação de cluster com VMs H4D
Para criar clusters de HPC em blocos de capacidade reservados, siga estas etapas:
- Escolher uma opção de consumo e obter capacidade
- Escolher uma opção de implantação e um orquestrador
- Escolher o sistema operacional ou a imagem do cluster
- Crie seu cluster
Escolher uma opção de consumo e obter capacidade
As opções de consumo determinam como os recursos são obtidos para o cluster. Para criar um cluster com recursos de gerenciamento avançados, solicite blocos de capacidade para uma implantação densa.
A tabela a seguir resume as principais diferenças entre as opções de consumo para blocos de capacidade:
Opção de consumo | Reservas adiantadas para blocos de capacidade | Início flexível (pré-lançamento) |
---|---|---|
Características da carga de trabalho | Cargas de trabalho distribuídas de longa duração e em grande escala que exigem recursos alocados de forma densa | Cargas de trabalho de curta duração que exigem recursos alocados de forma densa |
Duração | A qualquer momento | Até sete dias |
Preemptiva | Não | Não |
Cota | Verifique se você tem cota suficiente antes de criar instâncias. | A cota preemptiva é cobrada. |
Preços |
|
|
Alocação de recursos | Dense | Dense |
Modelo de provisionamento | Vinculada à reserva | Início flexível (pré-lançamento) |
Método de criação | Para criar clusters e VMs de HPC, faça o seguinte:
|
Para criar VMs, selecione uma das seguintes opções:
Quando a capacidade solicitada fica disponível, o Compute Engine a provisiona. |
Escolher uma opção de implantação
Dependendo do nível de controle necessário sobre a implantação do cluster, escolha entre uma implantação altamente gerenciada ou menos gerenciada, que oferece mais controle sobre a infraestrutura. Algumas das opções de implantação disponíveis incluem a instalação e configuração de um orquestrador para melhorar o gerenciamento do cluster de HPC.
- Totalmente gerenciado
Se quiser que o Google implante e configure sua infraestrutura, use o Cluster Toolkit ou o Google Kubernetes Engine (GKE).
Cluster Toolkit: uma ferramenta de código aberto oferecida pelo Google que simplifica a configuração e a implantação de clusters que usam o Slurm ou o GKE. Você usa blueprints predefinidos para criar uma pasta de implantação com base no blueprint. É possível modificar blueprints ou a pasta de implantação para personalizar implantações e sua pilha de software. Em seguida, use o Terraform ou o Packer para executar os comandos gerados pelo Cluster Toolkit e implantar o cluster.
Para um tutorial sobre esse método de implantação, consulte Criar um cluster do Slurm de HPC com RDMA ativado.
GKE: um serviço gerenciado do Kubernetes e uma plataforma de orquestração de contêineres de código aberto. O GKE oferece recursos como escalonamento automático e alta disponibilidade. Esses recursos tornam o GKE adequado para implantação e gerenciamento de cargas de trabalho de HPC, incluindo a capacidade de orquestrar aplicativos contêinerizados, o suporte a hardware especializado e a compatibilidade com o ecossistema Google Cloud. É possível implantar clusters do GKE usando o GKE diretamente ou o Cluster Toolkit. É possível escolher entre a edição Standard ou o Autopilot do Google Kubernetes Engine (GKE).
Para mais informações sobre esse método de implantação, consulte Executar cargas de trabalho de HPC com H4D.
- Menos gerenciamento, mais controle
Para ter um controle mais granular sobre os clusters e o software instalado neles, crie um cluster do Compute Engine usando um dos seguintes métodos:
Use esses métodos se quiser usar um orquestrador diferente do Slurm ou do GKE. Depois que as VMs forem criadas, instale manualmente qualquer software essencial que sua carga de trabalho de HPC precise nas VMs. Também é possível usar um script de inicialização para verificar automaticamente a instalação do software e instalá-lo, se necessário, quando a VM for iniciada.
Escolher a imagem do sistema operacional
A imagem do sistema operacional (SO) escolhida depende do serviço usado para implantar o cluster.
Para clusters no GKE: use uma imagem de nó do GKE, como o Container-Optimized OS. Se você usar o Cluster Toolkit para implantar seu cluster do GKE, uma imagem do Container-Optimized OS será usada por padrão. Para mais informações sobre imagens de nós, consulte Imagens de nós na documentação do GKE.
Para clusters no Compute Engine: use uma das seguintes imagens:
- Imagem de VM de HPC: uma imagem do Rocky Linux 8 otimizada para cargas de trabalho de HPC com acoplamento rígido.
- Imagem do SO fornecida por Google Cloud: imagens do SO que oferecem suporte ao H4D. Você precisará configurar esses recursos para suas cargas de trabalho de HPC.
- Imagens personalizadas: é possível criar e usar suas próprias imagens personalizadas. Para incluir otimizações específicas de HPC, recomendamos que você crie uma imagem personalizada usando a imagem de VM de HPC.
Para clusters do Slurm: o Cluster Toolkit implanta o cluster do Slurm com uma imagem de VM de HPC baseada no Rocky Linux 8 otimizada para cargas de trabalho de HPC com acoplamento rígido.
Criar seu cluster de HPC
Depois de analisar o processo de criação do cluster e tomar decisões preliminares para sua carga de trabalho, crie o cluster usando uma das seguintes opções:
- Criar um cluster de HPC Slurm habilitado para RDMA
- Crie um cluster do GKE: Executar cargas de trabalho de computação de alto desempenho (HPC) com H4D
- Crie um cluster com o Compute Engine:
A seguir
- Saiba mais sobre o Cluster Toolkit.
- Saiba mais sobre como criar uma instância que usa RDMA.