Implante um Cluster de GPU Bare Metal para Cargas de Trabalho de IA em uma Nuvem Dedicada

A implantação de cargas de trabalho para inteligência artificial, machine learning e modelos de aprendizado profundo para modelagem de linguagem pode, em alguns casos, ter requisitos rigorosos de residência, segurança e conformidade de dados.

Para essas cargas de trabalho, a Oracle Cloud oferece vários modelos operacionais e de implantação distribuídos, incluindo nuvem governamental, nuvem soberana e nuvem dedicada. Uma dessas soluções é a Oracle Cloud Infrastructure Dedicated Region, uma região de nuvem implantada em um data center controlado pelo cliente com os mesmos recursos de serviço e infraestrutura das regiões de nuvem pública da Oracle.

Em regiões de nuvem públicas e dedicadas, a Oracle Cloud Infrastructure (OCI) permite o acesso direto a um cluster de servidores bare metal alimentado por GPUs de alto desempenho e Redes de Clusters Oracle RoCEv2. O cluster de GPU bare metal oferece o melhor custo-benefício do setor para implementar IA, ML ou DL dedicados.

Arquitetura

Essa arquitetura demonstra a relação entre os vários componentes em um sistema típico com o cluster de GPU bare metal HPC em seu núcleo.

O Processamento de Linguagem Natural é um modelo de aprendizado profundo pré-treinado. Cada modelo varia em sua complexidade e pode ser dimensionado para o desempenho ideal com base nas especificações do processador GPU e da memória necessária para conter seus parâmetros. Alguns dos modelos maiores contêm centenas de bilhões de parâmetros, exigindo uma tremenda quantidade de memória e capacidade de processamento para executar o modelo em tempo real, o que é fundamental para aplicativos de inferência de IA.

Com modelos maiores, é necessário ter não apenas uma única instância multi-GPU, mas também um cluster de centenas de GPUs trabalhando em conjunto. Essas instâncias também exigem o uso de um sistema de arquivos de cluster em execução na rede de clusters para fornecer IOPS alto, bem como a melhor latência possível para operações entre nós do cluster.

Para fornecer essa baixa latência, o sistema de arquivos de alta largura de banda Oracle Cloud Infrastructure (OCI) utiliza a rede de cluster de baixa latência da Oracle, com base no RDMA (Remote Direct Memory Access), executado por Ethernet convergente (RoCE) com menos de 10 microssegundos de latência entre nós. O RDMA permite conexões de baixa latência entre nós e acesso à memória GPU sem envolver a CPU. A OCI permite que o cliente clusterize até 4096 nós Bare Metal, cada um com 8 GPUs, até 32768 GPUs.

A OCI fornece várias soluções de armazenamento de alto desempenho e baixa latência para cargas de trabalho de IA/ML, como SSD local NVMe, rede e sistemas de arquivos paralelos. O servidor Bare Metal do OCI vem com armazenamento local SSD NVMe. Ele pode ser usado para criar um NFS scratch ou Sistema de Arquivos Paralelos scratch (BeeOND, Weka), para arquivos temporários. Usando o recurso de vários anexos do Block Volume, você pode usar um único volume para armazenar todos os seus conjuntos de dados de treinamento e anexá-lo a várias instâncias de GPU. Ou você pode usar Bare Metal ou VM e o armazenamento em blocos da camada de desempenho balanceado para criar servidores de arquivos de maior throughput e menor custo, com base em NFS (NFS-HA, FSS) ou Sistema de Arquivos Paralelos (Weka.io, Escala de Espectro, BeeGFS, BeeOND). Os resultados do treinamento são salvos no Oracle Cloud Infrastructure Object Storage para armazenamento de longo prazo.

O diagrama a seguir ilustra essa arquitetura de referência.

Veja a seguir a descrição da arquitetura-bm-gpu-dedicated-region.png
Descrição da ilustração architecture-bm-gpu-dedicated-region.png

arquitetura-bm-gpu-dedicated-region-oracle.zip

A arquitetura tem os seguintes componentes:

  • Região

    Região do Oracle Cloud Infrastructure é uma área geográfica localizada que contém um ou mais data centers, denominada domínios de disponibilidade. As regioes sao independentes de outras regioes, e grandes distancias podem separá-las (entre paises ou ate continentes).

  • Cloud Guard

    Você pode usar o Oracle Cloud Guard para monitorar e manter a segurança de seus recursos no Oracle Cloud Infrastructure. O Cloud Guard usa receitas de detector que você pode definir para examinar seus recursos quanto a pontos fracos de segurança e monitorar operadores e usuários para determinadas atividades arriscadas. Quando qualquer configuração incorreta ou atividade insegura é detectada, o Cloud Guard recomenda ações corretivas e ajuda a executar essas ações, com base em receitas do respondedor que você pode definir.

  • Domínios de disponibilidade

    Domínios de disponibilidade são data centers stand-alone e independentes dentro de uma região. Os recursos físicos de cada domínio de disponibilidade são isolados dos recursos de outros domínios de disponibilidade, o que oferece tolerância a falhas. Os domínios de disponibilidade não compartilham infraestrutura como energia ou refrigeração ou a rede interna do domínio de disponibilidade. Portanto, uma falha em um domínio de disponibilidade não deve afetar os outros domínios de disponibilidade na região.

  • Domínios de falha

    Um domínio de falha é um agrupamento de hardware e infraestrutura dentro de um domínio de disponibilidade. Cada domínio de disponibilidade tem três domínios de falha com energia e hardware independentes. Quando você distribui recursos entre vários domínios de falha, seus aplicativos podem tolerar falhas físicas do servidor, manutenção do sistema e falhas de energia dentro de um domínio de falha.

  • Compartimento

    Compartimentos são partições lógicas entre regiões em uma tenancy do Oracle Cloud Infrastructure. Use compartimentos para organizar seus recursos no Oracle Cloud, controlar o acesso aos recursos e definir cotas de uso. Para controlar o acesso aos recursos em um determinado compartimento, você define políticas que especificam quem pode acessar os recursos e quais ações eles podem executar.

  • Rede virtual na nuvem (VCN) e sub-redes

    Uma VCN é uma rede personalizável definida por software que você configura em uma região do Oracle Cloud Infrastructure. Como as redes tradicionais de data center, as VCNs oferecem controle sobre seu ambiente de rede. Uma VCN pode ter vários blocos CIDR não sobrepostos que você pode alterar após a criação da VCN. Você pode segmentar uma VCN em sub-redes, com escopo definido para uma região ou para um domínio de disponibilidade. Cada sub-rede consiste em um intervalo contíguo de endereços que não se sobrepõem a outras sub-redes da VCN. Você pode alterar o tamanho de uma sub-rede após a criação. Uma sub-rede pode ser pública ou privada.

  • VPN entre Sites

    A VPN Site a Site fornece conectividade de IPSec VPN entre sua rede on-premises e VCNs no Oracle Cloud Infrastructure. O conjunto de protocolos IPSec criptografa o tráfego IP antes que os pacotes sejam transferidos da origem para o destino e decompõe o tráfego quando ele chega.

  • FastConnect

    O Oracle Cloud Infrastructure FastConnect fornece uma maneira fácil de criar uma conexão privada dedicada com o Oracle Cloud Infrastructure. O FastConnect oferece opções de largura de banda maior e uma experiência de rede mais confiável quando comparado com as conexões baseadas na internet.

  • Gateway de roteamento dinâmico (DRG)

    O DRG é um roteador virtual que fornece um caminho para o tráfego de rede privada entre VCNs na mesma região, entre uma VCN e uma rede fora da região, como uma VCN em outra região do Oracle Cloud Infrastructure, uma rede local ou uma rede em outro provedor de nuvem.

  • Gateway NAT (conversão de endereço de rede)

    Um gateway NAT permite que recursos privados em uma VCN acessem hosts na internet, sem expor esses recursos a conexões de internet de entrada.

  • Gateway de internet

    O gateway de internet permite tráfego entre as sub-redes públicas em uma VCN e a internet pública.

  • Gateway de serviço

    O gateway de serviço fornece acesso de uma VCN a outros serviços, como o Oracle Cloud Infrastructure Object Storage. O tráfego da VCN para o serviço Oracle percorre a malha da rede Oracle e não passa pela internet.

  • Lista de segurança

    Para cada sub-rede, você pode criar regras de segurança que especifiquem a origem, o destino e o tipo de tráfego que deve ser permitido dentro e fora da sub-rede.

  • Tabela de roteamento

    As tabelas de roteamento virtual contêm regras para rotear o tráfego de sub-redes para destinos fora de uma VCN, geralmente por meio de gateways.

  • Bastion host

    O bastion host é uma instância de computação que atua como um ponto de entrada seguro e controlado para a topologia de fora da nuvem. O bastion host geralmente é provisionado em uma zona desmilitarizada (DMZ). Ele permite proteger recursos confidenciais colocando-os nas redes privadas que não podem ser acessadas diretamente de fora da nuvem. A topologia tem um único ponto de entrada conhecido que você pode monitorar e auditar regularmente. Desse modo, você pode evitar expor os componentes mais confidenciais da topologia sem comprometer o acesso a eles.

  • Nó do Bastion (Head Node)

    O nó bastion (nó principal) usa um portal baseado na Web para estabelecer conexão com o nó principal e programar jobs. A solicitação de job vem por meio do Oracle Cloud Infrastructure FastConnect ou da IPSec VPN para o nó principal. O nó principal também envia o conjunto de dados do cliente para o armazenamento de arquivos e pode fazer algum pré-processamento nos dados. O nó principal pode provisionar clusters de nós e excluir clusters na conclusão do job.

  • Pool de instâncias

    Pool de instâncias é um grupo de instâncias dentro de uma região que é criado com base na mesma configuração e gerenciado como grupo.

    Os pools de instâncias permitem criar e gerenciar várias instâncias do serviço Compute na mesma região como grupo. Eles também permitem a integração com outros serviços, como o serviço Oracle Cloud Infrastructure Load Balancing e o serviço Oracle Cloud Infrastructure Identity and Access Management.

  • Object Storage

    O armazenamento de objetos fornece acesso rápido a grandes quantidades de dados estruturados e não estruturados de qualquer tipo de conteúdo, incluindo backups de bancos de dados, dados de análise e conteúdo avançado, como imagens e vídeos. Você pode armazenar de forma segura e depois recuperar dados diretamente da internet ou de dentro da plataforma da nuvem. Você pode dimensionar o armazenamento sem prejudicar o desempenho ou a confiabilidade do serviço. Use o armazenamento padrão para armazenamento de acesso frequente que você precisa para acessar rapidamente, imediatamente e com frequência. Use o armazenamento de arquivos compactados para armazenamento "frio" que você mantém por longos períodos de tempo e raramente acessa.

Recomendações

Use as recomendações a seguir como ponto de partida e adapte-as para atender aos seus requisitos específicos, conforme necessário.
  • VCN

    Ao criar uma VCN, determine o número de blocos CIDR necessários e o tamanho de cada bloco com base no número de recursos que você planeja anexar às sub-redes na VCN. Use blocos CIDR que estejam dentro do espaço de endereço IP privado padrão.

    Selecione blocos CIDR que não se sobreponham a qualquer outra rede (no Oracle Cloud Infrastructure, seu data center local ou outro provedor de nuvem) para a qual você pretende configurar conexões privadas.

    Depois de criar uma VCN, você poderá alterar, adicionar e remover seus blocos CIDR.

    Ao projetar as sub-redes, considere seus requisitos de fluxo de tráfego e segurança. Anexe todos os recursos dentro de uma camada ou função específica à mesma sub-rede, que pode servir como um limite de segurança.

    Usar sub-redes regionais.

  • Segurança

    Use o Oracle Cloud Guard para monitorar e manter proativamente a segurança de seus recursos no Oracle Cloud Infrastructure. O Cloud Guard usa receitas do detector que você pode definir para examinar seus recursos quanto a pontos fracos de segurança e monitorar operadores e usuários para determinadas atividades arriscadas. Quando uma configuração incorreta ou uma atividade insegura é detectada, o Cloud Guard recomenda ações corretivas e ajuda a executar essas ações, com base nas receitas do respondedor que você pode definir.

    Para recursos que exigem segurança máxima, a Oracle recomenda o uso de zonas de segurança. Uma zona de segurança é um compartimento associado a uma receita definida pela Oracle de políticas de segurança baseadas nas melhores práticas. Por exemplo, os recursos em uma zona de segurança não devem ser acessíveis por meio da internet pública e devem ser criptografados com chaves gerenciadas pelo cliente. Quando você criar e atualizar recursos em uma zona de segurança, o Oracle Cloud Infrastructure validará as operações de acordo com as políticas na receita de zona de segurança e negará as operações que violarem qualquer uma das políticas.

  • Cloud Guard

    Clone e personalize as receitas padrão fornecidas pela Oracle para criar receitas personalizadas do detector e do respondedor. Essas receitas permitem especificar que tipo de violações de segurança geram uma advertência e quais ações podem ser executadas nelas. Por exemplo, talvez você queira detectar buckets do Object Storage que tenham visibilidade definida como pública.

    Aplique o Cloud Guard no nível da tenancy para cobrir o escopo mais amplo e reduzir a carga administrativa de manter várias configurações.

    Você também pode usar o recurso Lista Gerenciada para aplicar determinadas configurações aos detectores.

  • Zonas de Segurança

    Para recursos que exigem segurança máxima, a Oracle recomenda o uso de zonas de segurança. Uma zona de segurança é um compartimento associado a uma receita definida pela Oracle de políticas de segurança baseadas nas melhores práticas. Por exemplo, os recursos em uma zona de segurança não devem ser acessíveis por meio da internet pública e devem ser criptografados com chaves gerenciadas pelo cliente. Quando você criar e atualizar recursos em uma zona de segurança, o Oracle Cloud Infrastructure validará as operações de acordo com as políticas na receita de zona de segurança e negará as operações que violarem qualquer uma das políticas.

  • Grupos de segurança de rede (NSGs)

    Você pode usar NSGs para definir um conjunto de regras de entrada e saída que se aplicam a VNICs específicas. Recomendamos o uso de NSGs em vez de listas de segurança porque os NSGs permitem que você separe a arquitetura de sub-rede da VCN dos requisitos de segurança do seu aplicativo.

  • Nós GPU

    Implante as formas bare metal da GPU para obter desempenho total.

    Agrupe até 32.768 GPUs.

Considerações

Considere os pontos a seguir ao implantar essa arquitetura de referência.

  • Disponibilidade

    Considere usar uma opção de alta disponibilidade, com base em seus requisitos de implantação e região. As opções incluem o uso de vários domínios de disponibilidade em uma região e domínios de falha.

    • Monitoramento e Alertas

      Configure monitoramento e alertas sobre o uso de CPU e memória para seus nós, para que você possa ampliar ou reduzir a forma conforme necessário.

    • Custo

      Uma instância de GPU bare metal fornece a potência de CPU necessária para um custo mais alto. Avalie seus requisitos para escolher a forma de Computação apropriada.

      Você pode excluir o cluster quando não houver jobs em execução.

      Observe que as instâncias Bare Metal continuam incorrendo em custos operacionais enquanto não estão ativadas. Eles devem ser Encerrados para parar de incorrer em cobranças.

  • Sistemas de Arquivos do Cluster do Cluster
    Há vários cenários:
    • Armazenamento SSD local NVMe que vem com configurações de GPU, HPC e armazenamento de alto desempenho.
    • Os volumes em blocos de várias anexações oferecem até 2.680 MB/s de throughput de E/S ou 700k de IOPS.
    • Você também pode instalar seu próprio sistema de arquivos paralelo no armazenamento SSD NVMe ou no armazenamento em blocos, dependendo dos requisitos de desempenho. A OCI fornece soluções baseadas em NFS (NFS-HA, FSS ) ou Sistema de Arquivos Paralelos (weka.io, Spectrum Scale, BeeGFS, BeeOND, Lustre, Gluster, Quobyte), consulte "Explore mais". Entre em contato com o Especialista em Suporte para projetar as soluções mais ideais para suas necessidades.

Confirmação

  • Autor: Michael Rutledge