Todos os produtos
Search
Central de documentação

Container Compute Service:Gerencie rótulos e taints de nós

Última atualização: Jun 29, 2026

Os nós reservados GPU-HPN no ACS são recursos de alto custo. Sem rótulos e taints, o agendador pode alocar qualquer carga de trabalho nesses nós, desperdiçando a capacidade reservada para jobs de GPU. O ACS permite anexar rótulos, anotações e taints aos nós GPU-HPN para controlar com precisão o posicionamento das cargas de trabalho, incluindo propriedades personalizadas para agendamento por afinidade.

Como funcionam rótulos e taints

Rótulos e taints oferecem controle direto sobre como o agendador do Kubernetes posiciona cargas de trabalho nos nós GPU-HPN:

  • Rótulos identificam os nós com pares chave-valor. Os Pods usam nodeSelector ou regras de afinidade de nó para direcionar nós com rótulos correspondentes.

  • Anotações associam metadados não identificadores aos nós, frequentemente utilizados por controladores e ferramentas auxiliares.

  • Taints repelem Pods sem tolerância correspondente. Isso impede que cargas de trabalho gerais ocupem nós GPU-HPN custosos e garante o agendamento apenas de Pods compatíveis nesses locais.

Os efeitos dos taints determinam como o agendador e o runtime reagem quando um Pod não possui tolerância correspondente:

Efeito

Comportamento

NoSchedule

O nó não agenda novos Pods sem tolerância correspondente. Pods em execução permanecem inalterados.

PreferNoSchedule

O agendador evita posicionar Pods sem tolerância correspondente, mas pode fazê-lo se não houver outros nós disponíveis.

NoExecute

O sistema não agenda novos Pods sem tolerância correspondente e remove (evict) Pods em execução sem essa tolerância.

Tipos de nós suportados

Os objetos de nó em um cluster ACS podem ser nós virtuais padrão ou nós reservados GPU-HPN. O suporte a rótulos, anotações e taints varia conforme o tipo de nó:

Tipo de nó

Rótulos

Anotações

Taints

Nós virtuais padrão

Não suportado

Não suportado

Não suportado

Nós reservados GPU-HPN (rótulos personalizados de nó GPU-HPN e agendador ativados)

Qualquer chave

Qualquer chave

Qualquer chave

Nós reservados GPU-HPN (rótulos personalizados de nó GPU-HPN e agendador não ativados)

Apenas prefixo custom.k8s.io/

Apenas prefixo custom.k8s.io/

Apenas prefixo custom.k8s.io/

A configuração GPU-HPN node custom labels and scheduler vem ativada por padrão nas versões mais recentes do ACS. Para mais detalhes, consulte kube-scheduler .

Adicionar um rótulo a um nó GPU-HPN

O exemplo a seguir adiciona o rótulo custom.k8s.io/test-key=test-value a um nó reservado GPU-HPN.

Pré-requisitos

Antes de começar, verifique se você tem:

  • Um cluster ACS com pelo menos um nó reservado GPU-HPN

  • kubectl configurado para conectar-se ao cluster

  • (Caso os rótulos personalizados de nó GPU-HPN e o agendador não estejam ativados) Uma chave de rótulo com o prefixo custom.k8s.io/ — veja GPU-HPN node custom labels and scheduler

Etapas

  1. Liste os nós reservados GPU-HPN no seu cluster. Por padrão, os nós GPU-HPN possuem o rótulo alibabacloud.com/node-type=reserved, permitindo filtragem por esse valor:

    kubectl get node -lalibabacloud.com/node-type=reserved

    A saída lista todos os nós reservados GPU-HPN:

    NAME                                      STATUS   ROLES   AGE     VERSION
    cn-wulanchabu-c.cr-cye8scj0ukxxxxxxxgbg   Ready    agent   4d20h   v1.28.3-xx
    cn-wulanchabu-c.cr-u9mqtuqxxxxxxx9noka5   Ready    agent   2d22h   v1.28.3-xx

    Copie o nome do nó que deseja rotular.

  2. Adicione o rótulo ao nó. Substitua <node-name> pelo nome do nó obtido na etapa 1:

    kubectl label node <node-name> custom.k8s.io/test-key=test-value

    Exemplo:

    kubectl label node cn-wulanchabu-c.cr-cye8scj0ukxxxxxxxgbg custom.k8s.io/test-key=test-value

    A saída confirma a operação:

    node/cn-wulanchabu-c.cr-cye8scj0ukxc3gkxxgbg not labeled
    A mensagem not labeled é uma peculiaridade do kubectl e indica que o rótulo foi aplicado com sucesso.
  3. Verifique se o rótulo foi aplicado.

    kubectl get node <node-name> -Lcustom.k8s.io/test-key

    Exemplo:

    kubectl get node cn-wulanchabu-c.cr-cye8scj0ukxxxxxxxgbg -Lcustom.k8s.io/test-key

    A coluna TEST-KEY exibe o valor do rótulo:

    NAME                                      STATUS   ROLES   AGE     VERSION      TEST-KEY
    cn-wulanchabu-c.cr-cye8scj0ukxxxxxxxgbg   Ready    agent   4d21h   v1.28.3-xx   test-value

Próximos passos

  • Para utilizar rótulos de nó no agendamento de cargas de trabalho, configure nodeSelector ou regras de afinidade de nó na especificação do Pod. Consulte a documentação do Kubernetes sobre afinidade de nó.

  • Para repelir cargas de trabalho não-GPU dos nós GPU-HPN usando taints, adicione um taint com o efeito NoSchedule e configure as tolerâncias correspondentes nos seus Pods de GPU.

  • Para gerenciar a configuração do agendador para nós GPU-HPN, consulte kube-scheduler.