Práticas recomendadas de rede

Este documento descreve as práticas recomendadas para criar um ambiente de rede seguro e resiliente para cargas de trabalho do Hipercomputador de IA. Essas recomendações são destinadas a arquitetos, engenheiros e desenvolvedores de rede que querem configurar e implantar cargas de trabalho de inteligência artificial (IA) e machine learning (ML) no Hipercomputador de IA.

Estabelecer papéis do IAM claros e restritos

A configuração correta do IAM ajuda a melhorar a segurança e o sucesso das implantações do Hipercomputador de IA. Em ambientes de produção, permissões inadequadas ou mal configuradas podem levar a falhas de implantação. As implantações do Hipercomputador de IA, especialmente aquelas que usam Cluster Toolkit, geralmente falham em ambientes com posturas de segurança reforçadas em que a conta de serviço padrão do Compute Engine não tem o papel amplo Editor.

Para ajudar a mitigar problemas de implantação que podem ocorrer devido a problemas de permissão, siga as práticas recomendadas listadas nesta seção.

Usar contas de serviço dedicadas

Para maior segurança e controle, evite usar a conta de serviço padrão do Compute Engine. Em vez disso, crie uma conta de serviço dedicada para a implantação do Hipercomputador de IA.

Você pode usar a Identidade da carga de trabalho gerenciada para autenticar e autorizar cargas de trabalho em vez de usar tokens de conta de serviço. Para mais informações, consulte Autenticar cargas de trabalho usando mTLS para o Compute Engine ou Identidade da carga de trabalho para o GKE.

Conceder os papéis necessários do IAM

Conceda os seguintes papéis do IAM à conta de serviço dedicada que você criou:

  • Administrador do Compute (roles/compute.admin): fornece controle total dos recursos do Compute Engine.
  • Usuário da conta de serviço (roles/iam.serviceAccountUser): permite que a conta de serviço seja anexada a outros recursos, o que é fundamental para ferramentas como o Packer ao criar imagens personalizadas.
  • Administrador do Storage (roles/storage.admin): exige acesso e gerenciamento de buckets do Cloud Storage, por exemplo, para armazenar imagens do Packer ou outros artefatos.
  • Administrador do Logging (roles/logging.admin): permite que a conta de serviço configure o registro e visualize registros, o que é essencial para a depuração.

Verificar permissões antes da implantação

Antes de iniciar uma implantação, verifique se a conta de serviço tem as permissões necessárias. Execute o gcloud projects get-iam-policy comando:

gcloud projects get-iam-policy PROJECT_ID \
    --flatten="bindings[].members" \ format='table(bindings.role)' \
    --filter="bindings.members:serviceAccount:SERVICE_ACCOUNT_EMAIL"

Substitua:

  • PROJECT_ID: o ID do Google Cloud projeto.
  • SERVICE_ACCOUNT_EMAIL: o endereço de e-mail da conta de serviço que você quer verificar.

Esse comando lista todos os papéis concedidos à conta de serviço no projeto especificado. Verifique se os papéis listados em Conceder os papéis necessários do IAM aparecem na saída.

Restringir o acesso à rede pública e reforçar as configurações do firewall

Restrinja o acesso à rede pública e reforce as configurações do firewall para melhorar a segurança. Essa prática de segurança fundamental mitiga o risco de regras de firewall padrão muito permissivas.

Falhas na configuração da máquina virtual (VM) podem ocorrer em ambientes de produção devido a configurações restritivas de firewall que não estão presentes em testes internos. Os engenheiros podem ter dificuldade em diagnosticar essas falhas sem conhecimento de regras de firewall específicas.

Revise e atualize as regras de firewall para minimizar a exposição direta à Internet. Para mais informações sobre regras de firewall da VPC, consulte Regras de firewall da VPC.

Padronizar configurações internas de rede

Padronize as configurações internas de rede para reduzir riscos e desafios de configuração. Os comportamentos de rede padrão podem criar riscos ou desafios de configuração em ambientes complexos ou com segurança reforçada. O Google recomenda as seguintes configurações:

  • Usar o DNS zonal:para novos projetos, defina o Sistema de Nomes de Domínio (DNS) interno como DNS zonal. Essa abordagem ajuda a reduzir o impacto de uma possível indisponibilidade global de DNS. Para mais informações sobre como usar o DNS zonal, consulte Visão geral do uso do DNS zonal.
  • Desativar IP externo externos:quando possível, desative os endereços IP externo. Antes de desativar os endereços IP, planeje e teste com cuidado em um ambiente de staging, já que alguns serviços, como grupos gerenciados de instâncias (MIGs) ou clusters do GKE com nós públicos, dependem deles. Para mais informações sobre como limitar endereços IP públicos, consulte Limitar endereços IP públicos no Google Cloud.

Otimizar a rede por infraestrutura

As práticas recomendadas de rede para sua implantação variam de acordo com a escolha da infraestrutura: GPUs gerais ou GPUs em cluster.

Práticas recomendadas para GPUs gerais

Ao usar GPUs gerais, siga estas práticas recomendadas de rede:

  • Usar políticas de posicionamento compacto: se as instâncias de GPU geral não informarem um ID physicalHost, use políticas de posicionamento compacto para identificar agrupamentos de instâncias e otimizar a performance desses recursos. Para mais informações, consulte Definir o posicionamento da instância.
  • Usar a NIC virtual do Google (gVNIC) para comunicação de host: para uma performance consistente, use TCP/IP padrão em gVNIC para toda a comunicação de host para host. Para mais informações sobre a gVNIC, consulte Como usar a NIC virtual do Google.
  • Simplificar com uma arquitetura de VPC única: a menos que os requisitos de isolamento indiquem o contrário, use uma rede VPC única padrão para toda a comunicação. Essa recomendação de VPC única se aplica às séries G2, G4, A2 e N1. O A3 Edge é uma exceção que exige quatro VPCs de dados e GPUDirect-TCPX. Para mais informações, consulte Maximizar a largura de banda da rede de GPU em clusters de modo padrão.

Práticas recomendadas para GPUs em cluster

Ao usar GPUs em cluster, siga estas práticas recomendadas de rede:

  • Implementar um ambiente de várias VPCs: para ajudar a garantir que o tráfego de GPU para GPU seja isolado em VPCs dedicadas de alta largura de banda para evitar que o tráfego de host ou armazenamento dispute a largura de banda. Para mais informações, consulte Ambiente de várias VPCs ambiente.
  • Aplicar perfis de rede otimizados para RDMA: use perfis de rede gerenciados pelo Google para configurar automaticamente sua VPC para a baixa latência exigida pelo RDMA em Ethernet convergente (RoCE). Para mais informações, consulte Perfis de rede para casos de uso específicos.
  • Descarregar tarefas de infraestrutura: use NICs Titanium personalizadas para descarregar tarefas, como processamento de pacotes de rede e virtualização para armazenamento, reservando ciclos de CPU para seu aplicativo de IA.

Resumo das práticas recomendadas

A tabela a seguir resume as práticas recomendadas neste documento:

Tópico Tarefa
IAM Estabelecer papéis do IAM claros e restritos
Firewall Restringir o acesso à rede pública e reforçar as configurações do firewall
Padrões de rede Padronizar configurações internas de rede
Infraestrutura Otimizar a rede por infraestrutura

A seguir