Aumente a velocidade do tráfego de rede para nós de GPU

Esta página mostra como aumentar a largura de banda da rede para nós de GPU em clusters do Google Kubernetes Engine (GKE) através da NIC virtual da Google (gVNIC).

Nos clusters do Autopilot, os nós que executam a versão 1.30.2-gke.1023000 do GKE e posteriores têm a NIC virtual da Google (gVNIC) instalada automaticamente. As instruções nesta página aplicam-se apenas a clusters padrão.

Para aumentar a largura de banda nos nós de CPU, considere ativar a largura de banda de nível 1.

Antes de começar

Antes de começar, certifique-se de que realizou as seguintes tarefas:

  • Ative a API Google Kubernetes Engine.
  • Ative a API Google Kubernetes Engine
  • Se quiser usar a CLI gcloud para esta tarefa, instale-a e, em seguida, inicialize-a. Se instalou anteriormente a CLI gcloud, execute gcloud components update para obter a versão mais recente.

Limitações

Requisitos

  • Os nós do GKE têm de usar uma imagem do nó do SO otimizado para contentores.

Ative a gVNIC

Pode criar um cluster com node pools que usem gVNIC, criar um node pool com o gVNIC ativado ou atualizar um node pool para usar o gVNIC.

Crie um cluster

Crie um cluster com node pools que usem gVNIC:

gcloud container clusters create CLUSTER_NAME \
    --accelerator type=GPU_TYPE,count=AMOUNT \
    --machine-type=MACHINE_TYPE \
    --enable-gvnic

Substitua o seguinte:

  • CLUSTER_NAME: o nome do novo cluster.
  • GPU_TYPE: o tipo de acelerador de GPU que usa. Por exemplo, nvidia-tesla-t4.
  • AMOUNT: o número de GPUs a associar aos nós no conjunto de nós.
  • MACHINE_TYPE: o tipo de máquina que quer usar. O gVNIC não é suportado em tipos de máquinas com megamemória.

Crie um node pool

Crie um node pool que use gVNIC:

gcloud container node-pools create NODEPOOL_NAME \
    --cluster=CLUSTER_NAME \
    --enable-gvnic

Substitua o seguinte:

  • NODEPOOL_NAME: o nome de um novo node pool.
  • CLUSTER_NAME: o nome do cluster existente.

Atualize um node pool

Atualize um node pool para usar o gVNIC:

gcloud container node-pools update NODEPOOL_NAME \
    --cluster=CLUSTER_NAME \
    --enable-gvnic

Substitua o seguinte:

  • NODEPOOL_NAME: o nome do node pool que quer atualizar.
  • CLUSTER_NAME: o nome do cluster existente.

Esta alteração requer a recriação dos nós, o que pode causar interrupções nas cargas de trabalho em execução. Para ver detalhes sobre esta alteração específica, procure a linha correspondente na tabela alterações manuais que recriam os nós através de uma estratégia de atualização de nós sem respeitar as políticas de manutenção. Para saber mais sobre as atualizações de nós, consulte o artigo Planeamento de interrupções de atualizações de nós.

Desative o gVNIC

Atualize o node pool com a flag --no-enable-gvnic:

gcloud container node-pools update NODEPOOL_NAME \
    --cluster=CLUSTER_NAME \
    --no-enable-gvnic

Esta alteração requer a recriação dos nós, o que pode causar interrupções nas cargas de trabalho em execução. Para ver detalhes sobre esta alteração específica, procure a linha correspondente na tabela alterações manuais que recriam os nós através de uma estratégia de atualização de nós sem respeitar as políticas de manutenção. Para saber mais sobre as atualizações de nós, consulte o artigo Planeamento de interrupções de atualizações de nós.

Resolução de problemas

Para resolver problemas da gVNIC, consulte o artigo Resolução de problemas da NIC virtual da Google.

O que se segue?