Para criar a infraestrutura para aplicações fortemente acopladas que são dimensionadas em vários nós, pode criar um cluster de instâncias de máquinas virtuais (VMs). Este guia oferece uma vista geral de nível superior das principais considerações e passos para configurar um cluster de instâncias de máquinas virtuais (VM) para cargas de trabalho de computação de alto desempenho (HPC) usando a alocação densa de recursos.
O Compute Engine oferece várias formas de criar uma infinidade de instâncias de VMs que estão ligadas à mesma rede, mas não requerem uma alocação densa de recursos. Por exemplo, pode usar qualquer um dos seguintes métodos, que são abordados noutras partes da documentação do Compute Engine:
Também pode criar um script que inclua os comandos para criar instâncias individuais e associar políticas de posicionamento compactas às instâncias para reduzir a latência.
Com o H4D (pré-visualização), o Compute Engine adiciona suporte para a execução de cargas de trabalho de HPC massivas, tratando um cluster inteiro de instâncias de VMs como um único computador. A utilização do posicionamento de VMs com reconhecimento da topologia permite-lhe aceder a muitas instâncias num único superbloco de rede e minimiza a latência da rede. Também pode configurar o RDMA na nuvem nestas instâncias para maximizar o desempenho da comunicação entre nós, o que é fundamental para cargas de trabalho de HPC fortemente acopladas.
Cria estes clusters de VMs de HPC com H4D reservando blocos de capacidade em vez de recursos individuais. A utilização de blocos de capacidade para o cluster oferece as seguintes funcionalidades adicionais para implementar e gerir estes ambientes de grande escala:
- Posicionamento das instâncias de VM com reconhecimento da topologia
- Sistemas de reserva avançados para proteger e gerir a capacidade
- Grupos de instâncias geridas (GIGs) melhorados concebidos para conjuntos grandes e interdependentes de instâncias de VM.
- Programação e controlos de manutenção avançados que oferecem mais controlo sobre quando e como a manutenção ocorre nas instâncias de VM, o que é fundamental para cargas de trabalho de longa duração e sensíveis a interrupções. Isto inclui funcionalidades como a manutenção acionada pelo cliente e a manutenção agrupada para blocos de recursos.
Terminologia de clusters
Quando trabalha com blocos de capacidade, são usados os seguintes termos:
Vista geral do processo de criação de clusters com VMs H4D
Para criar clusters de HPC em blocos de capacidade reservados, tem de concluir os seguintes passos:
- Escolha uma opção de consumo e obtenha capacidade
- Escolha uma opção de implementação e um orquestrador
- Escolha o sistema operativo ou a imagem do cluster
- Crie o seu cluster
Escolha uma opção de consumo e obtenha capacidade
As opções de consumo determinam como os recursos são obtidos para o seu cluster. Para criar um cluster com funcionalidades de gestão melhoradas, tem de pedir blocos de capacidade para uma implementação densa.
A tabela seguinte resume as principais diferenças entre as opções de consumo para blocos de capacidade:
Opção de consumo | Reservas futuras para blocos de capacidade | Início flexível (pré-visualização) |
---|---|---|
Caraterísticas da carga de trabalho | Cargas de trabalho distribuídas de grande escala e de execução prolongada que requerem recursos densamente atribuídos | Cargas de trabalho de curta duração que requerem recursos densamente alocados |
Duração | Qualquer hora | Até 7 dias |
Preemptível | Não | Não |
Quota | Verifique se tem quota suficiente antes de criar instâncias. | É cobrada a quota preemptível. |
Preços |
|
|
Atribuição de recursos | Denso | Denso |
Modelo de aprovisionamento | Restrito a reserva | Início flexível (pré-visualização) |
Método de criação | Para criar clusters de HPC e VMs, tem de fazer o seguinte:
|
Para criar VMs, selecione uma das seguintes opções:
Quando a capacidade pedida fica disponível, o Compute Engine aprovisiona-a. |
Escolha uma opção de implementação
Consoante o nível de controlo de que precisa sobre a implementação do cluster, escolha entre uma implementação altamente gerida ou menos gerida que lhe dá mais controlo sobre a sua infraestrutura. Algumas das opções de implementação disponíveis incluem a instalação e a configuração de um orquestrador para uma gestão melhorada do cluster de HPC.
- Altamente gerido
Se quiser que a Google implemente e configure a sua infraestrutura, use o Cluster Toolkit ou o Google Kubernetes Engine (GKE).
Cluster Toolkit: uma ferramenta de código aberto oferecida pela Google que simplifica a configuração e a implementação de clusters que usam o Slurm ou o GKE. Usa esquemas predefinidos para criar uma pasta de implementação baseada no esquema. Pode modificar os projetos ou a pasta de implementação para personalizar as implementações e a sua pilha de software. Em seguida, usa o Terraform ou o Packer para executar os comandos gerados pelo Cluster Toolkit para implementar o cluster.
Para ver um tutorial sobre este método de implementação, consulte o artigo Crie um cluster Slurm de HPC com RDMA.
GKE: um serviço Kubernetes gerido e uma plataforma de orquestração de contentores de código aberto. O GKE oferece funcionalidades como a escala automática e a alta disponibilidade. Estas funcionalidades tornam o GKE adequado para implementar e gerir cargas de trabalho de HPC, incluindo a capacidade de orquestrar aplicações em contentores, o suporte de hardware especializado e a compatibilidade com o ecossistema do Google Cloud. Google CloudPode implementar clusters do GKE através do GKE diretamente ou através do Cluster Toolkit. Pode escolher entre a edição Standard ou o Autopilot do Google Kubernetes Engine (GKE).
Para mais informações sobre este método de implementação, consulte o artigo Execute cargas de trabalho de HPC com H4D.
- Menos gestão, mais controlo
Para um controlo mais detalhado dos seus clusters e do software instalado neles, crie um cluster do Compute Engine através de um dos seguintes métodos:
Pode usar estes métodos se quiser usar um orquestrador que não seja o Slurm nem o GKE. Depois de criar as VMs, instala manualmente qualquer software essencial de que a sua carga de trabalho de HPC precisa nas VMs. Também pode usar um script de arranque para verificar automaticamente a instalação do software e instalar o software, se necessário, quando a VM é iniciada.
Escolha a imagem do sistema operativo
A imagem do sistema operativo (SO) que escolher depende do serviço que usar para implementar o cluster.
Para clusters no GKE: use uma imagem de nó do GKE, como o SO otimizado para contentores. Se usar o Cluster Toolkit para implementar o seu cluster do GKE, é usada uma imagem do SO otimizado para contentores por predefinição. Para mais informações sobre imagens de nós, consulte o artigo Imagens de nós na documentação do GKE.
Para clusters no Compute Engine: pode usar uma das seguintes imagens:
- Imagem de VM de HPC: Uma imagem do Rocky Linux 8 otimizada para cargas de trabalho de HPC estreitamente associadas.
- Imagem do SO fornecida por Google Cloud: Imagens do SO que suportam H4D. Tem de configurar estas opções para as suas cargas de trabalho de HPC.
- Imagens personalizadas: pode criar e usar as suas próprias imagens personalizadas. Para incluir otimizações específicas de HPC, recomendamos que crie uma imagem personalizada com a imagem de VM de HPC.
Para clusters Slurm: o Cluster Toolkit implementa o cluster Slurm com uma imagem de VM de HPC baseada no Rocky Linux 8 otimizada para cargas de trabalho de HPC fortemente acopladas.
Crie o seu cluster de HPC
Depois de rever o processo de criação de clusters e tomar decisões preliminares para a sua carga de trabalho, crie o cluster através de uma das seguintes opções:
- Crie um cluster Slurm de HPC com RDMA
- Crie um cluster do GKE: Execute cargas de trabalho de informática de elevado desempenho (HPC) com H4D
- Crie um cluster com o Compute Engine:
O que se segue?
- Saiba mais sobre o Cluster Toolkit.
- Saiba mais sobre como criar uma instância que usa RDMA.