Atualizar identificadores de nós e taints para os pools de nós atuais


Nesta página, fornecemos instruções sobre como atualizar dinamicamente os rótulos e taints de nó de um pool em um cluster padrão do Google Kubernetes Engine (GKE).

Também é possível aplicar e atualizar dinamicamente as tags de rede nos clusters do Autopilot do GKE ou do Standard. Para receber instruções, consulte Usar tags de rede para aplicar regras de firewall aos nós.

Visão geral

Os taints e rótulos de nós estão nos metadados de objeto dos nós do Kubernetes. Os rótulos são usados para programar pods em nós específicos, em que os taints podem ser usados para afastar os pods deles.

Com a API Kubernetes Engine, é possível aplicar atualizações nos rótulos de nós e taints de nó de um pool de nós atual do GKE sem precisar recriar o pool de nós ou interromper a execução de cargas de trabalho. A configuração do pool de nós atualizada é preservada no GKE. Assim, os upgrades futuros do pool de nós e as novas provisões de nós no pool usarão a nova configuração.

Limitações

Há algumas limitações no uso da API Kubernetes Engine para atualizar dinamicamente as configurações do pool de nós:

Como atualizar rótulos de nós

Para atualizar os rótulos de um pool de nós, use o seguinte comando:

gcloud container node-pools update NODEPOOL_NAME \
    --node-labels=[NODE_LABEL,...] \
    [--cluster=CLUSTER_NAME] [--region=REGION | --zone=ZONE]
    [GCLOUD_WIDE_FLAG …]

Substitua:

  • NODEPOOL_NAME: o nome do pool de nós a ser atualizado;
  • [NODE_LABEL,...]: os novos rótulos de nó desejados (por exemplo, label1=value1,label2=value2);
  • CLUSTER_NAME: o nome do cluster.
  • REGION: a região do Compute Engine para o cluster;
  • ZONE: a zona do Compute Engine para o cluster.

Como atualizar taints de nós

Para atualizar os taints de nó para um pool de nós, use o comando a seguir:

gcloud container node-pools update NODEPOOL_NAME \
    --node-taints=[NODE_TAINT,...] \
    [--cluster=CLUSTER_NAME] [--region=REGION | --zone=ZONE]
    [GCLOUD_WIDE_FLAG …]

Substitua:

  • NODEPOOL_NAME: o nome do pool de nós a ser atualizado;
  • [NODE_TAINT,...]: os novos taints de nó desejados (por exemplo, key1=val1:NoSchedule,key2=val2:PreferNoSchedule).
  • CLUSTER_NAME: o nome do cluster.
  • REGION: a região do Compute Engine para o cluster;
  • ZONE: a zona do Compute Engine para o cluster.

A seguir