Redimensionar um cluster padrão


Nesta página, explicamos como redimensionar clusters do Google Kubernetes Engine (GKE) Standard. É possível redimensionar um cluster para aumentar ou diminuir o número de nós desse cluster. Como alternativa, é possível fazer o escalonamento automático do cluster em que o GKE redimensiona automaticamente os pools de nós em resposta a condições variáveis, como alterações nas cargas de trabalho e uso de recursos.

Essas instruções não se aplicam aos clusters do Autopilot do GKE, que são redimensionados automaticamente com base no número de pods do cluster.

Quando você adiciona ou remove nós do cluster, o GKE adiciona ou remove as instâncias de máquina virtual (VM) associadas dos grupos gerenciados de instâncias (MIGs) subjacentes do Compute Engine, provisionados para os pools de nós. Para remover nós, não use kubectl delete node, porque isso não exclui a instância de VM do Compute Engine no MIG subjacente do pool de nós. Use o escalonador automático de cluster ou diminua o tamanho do cluster manualmente.

Antes de começar

Antes de começar, verifique se você realizou as tarefas a seguir:

  • Ativar a API Google Kubernetes Engine.
  • Ativar a API Google Kubernetes Engine
  • Se você quiser usar a Google Cloud CLI para essa tarefa, instale e, em seguida, inicialize a CLI gcloud. Se você instalou a CLI gcloud anteriormente, instale a versão mais recente executando gcloud components update.

Aumentar o tamanho do cluster

Quando você aumenta o tamanho de um cluster, ocorrem as seguintes alterações:

  • Novas instâncias de nós são criadas com a mesma configuração que as atuais.
  • Novos pods podem ser agendados nas novas instâncias.
  • Os pods atuais não são movidos para as novas instâncias.

gcloud

Para aumentar o tamanho dos pools de nós de um cluster, execute o comando gcloud container clusters resize:

gcloud container clusters resize CLUSTER_NAME --node-pool POOL_NAME \
    --num-nodes NUM_NODES

Substitua:

  • CLUSTER_NAME: o nome do cluster a ser redimensionado.
  • POOL_NAME: o nome do pool de nós a ser redimensionado.
  • NUM_NODES: o número de nós no pool em um cluster zonal. Se usar clusters regionais ou de várias zonas, NUM_NODES será o número de nós para cada zona onde os pools de nós estão.

Repita esse comando para cada pool de nós. Se o cluster tiver apenas um pool de nós, omita a sinalização --node-pool.

Console

Para aumentar o tamanho dos pools de nós de um cluster, siga as seguintes etapas:

  1. Acesse a página Google Kubernetes Engine no console do Google Cloud.

    Acessar o Google Kubernetes Engine

  2. Ao lado do cluster que você quer editar, clique em Ações e, depois, em Editar.

  3. Clique na guia Nós ao lado da guia Detalhes.

  4. Na seção Pools de nós, clique no nome do pool que terá o tamanho aumentado.

  5. Clique em Redimensionar.

  6. No campo Número de nós, insira quantos nós você quer no pool de nós e clique em Redimensionar.

  7. Repita essa etapa para cada pool de nós conforme necessário.

Reduzir o tamanho do cluster

Quando você diminui o tamanho de um cluster, ocorrem as seguintes alterações:

  • O GKE encerra normalmente os nós que estão sendo excluídos, usando o processo de drenagem para remover os pods da instância. PodDisruptionBudget e terminationGracePeriodSeconds são respeitados por até uma hora.
  • Os pods gerenciados por um controlador de replicação são reprogramados por ele para serem executados nas instâncias restantes.
  • Os pods não gerenciados por um controlador de replicação não são reiniciados.

O MIG não diferencia entre instâncias que executam pods e instâncias sem pods. A diminuição de tamanho remove instâncias aleatoriamente.

Para saber como adicionar pools de nós e gerenciar os existentes, consulte Como adicionar e gerenciar pools de nós.

gcloud

Para diminuir o tamanho dos pools de nós de um cluster, execute o comando gcloud container clusters resize:

gcloud container clusters resize CLUSTER_NAME --node-pool POOL_NAME \
    --num-nodes NUM_NODES

Substitua:

  • CLUSTER_NAME: o nome do cluster a ser redimensionado.
  • POOL_NAME: o nome do pool de nós a ser redimensionado.
  • NUM_NODES: o número de nós no pool em um cluster zonal. Se usar clusters regionais ou de várias zonas, NUM_NODES será o número de nós para cada zona onde os pools de nós estão.

Repita esse comando para cada pool de nós. Se o cluster tiver apenas um pool de nós, omita a sinalização --node-pool.

Console

Para diminuir o tamanho dos pools de nós de um cluster, siga as seguintes etapas:

  1. Acesse a página Google Kubernetes Engine no console do Google Cloud.

    Acessar o Google Kubernetes Engine

  2. Ao lado do cluster que você quer editar, clique em Ações e, depois, em Editar.

  3. Clique na guia Nós ao lado da guia Detalhes.

  4. Na seção Pools de nós, clique no nome do pool que terá o tamanho diminuído.

  5. Clique em Redimensionar.

  6. No campo Número de nós, insira quantos nós você quer no pool de nós e clique em Redimensionar.

  7. Repita essa etapa para cada pool de nós conforme necessário.

Como fazer o escalonamento automático de um cluster

O recurso autoescalador de cluster do GKE faz o escalonamento automático dos pools de nós em resposta a condições variáveis, como alterações nas cargas de trabalho e no uso de recursos.

Para saber mais sobre como funciona o escalonamento automático, consulte a documentação do autoescalador de cluster. Para configurar o escalonamento automático do cluster, consulte Como fazer o escalonamento automático de um cluster.

Próximas etapas