Redimensione um cluster padrão adicionando ou removendo nós


Esta página explica como redimensionar manualmente clusters padrão do Google Kubernetes Engine (GKE). Pode redimensionar um cluster para aumentar ou diminuir o número de nós nesse cluster. Em alternativa, pode dimensionar automaticamente o cluster, em que o GKE redimensiona automaticamente os seus conjuntos de nós em resposta a condições variáveis, como alterações nas suas cargas de trabalho e utilização de recursos.

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

Quando adiciona ou remove nós no cluster, o GKE adiciona ou remove as instâncias de máquinas virtuais (VMs) associadas dos grupos de instâncias geridas (GIGs) do Compute Engine aprovisionados para os seus conjuntos de nós. Para remover nós, não use kubectl delete node, uma vez que isto não elimina a instância de VM do Compute Engine no MIG subjacente do node pool. Use o redimensionador automático de clusters ou diminua manualmente o tamanho do cluster.

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.

Aumente o tamanho do cluster

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

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

gcloud

Para aumentar o tamanho dos node pools 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 o seguinte:

  • CLUSTER_NAME: o nome do cluster a redimensionar.
  • POOL_NAME: o nome do node pool a redimensionar.
  • NUM_NODES: o número de nós no conjunto num cluster zonal. Se usar clusters multizonais ou regionais, NUM_NODES é o número de nós para cada zona em que os conjuntos de nós se encontram.

Repita este comando para cada conjunto de nós. Se o cluster tiver apenas um conjunto de nós, omita a flag --node-pool.

Consola

Para aumentar o tamanho dos conjuntos de nós de um cluster, siga estes passos:

  1. Aceda à página do Google Kubernetes Engine na Google Cloud consola.

    Aceda ao Google Kubernetes Engine

  2. Junto ao cluster que quer editar, clique em Ações e, de seguida, em Editar.

  3. Clique no separador Nós junto ao separador Detalhes.

  4. Na secção Conjuntos de nós, clique no nome do conjunto de nós cujo tamanho quer aumentar.

  5. Clique em Redimensionar.

  6. No campo Número de nós, introduza quantos nós quer no conjunto de nós e, de seguida, clique em Redimensionar.

  7. Repita o procedimento para cada conjunto de nós, conforme necessário.

Diminua o tamanho do cluster

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

  • O GKE termina graciosamente os nós que estão a ser eliminados, usando o processo de drenagem para remover os pods da instância. PodDisruptionBudget e terminationGracePeriodSeconds são respeitados durante um máximo de uma hora.
  • Os pods geridos por um controlador de replicação são reagendados pelo controlador para serem executados nas instâncias restantes.
  • Os pods não geridos por um controlador de replicação não são reiniciados.

O MIG não distingue entre instâncias que executam pods e instâncias sem pods. A redução do tamanho remove ocorrências aleatoriamente.

Para saber como adicionar conjuntos de nós e gerir os existentes, consulte o artigo Adicionar e gerir conjuntos de nós.

gcloud

Para diminuir o tamanho dos node pools 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 o seguinte:

  • CLUSTER_NAME: o nome do cluster a redimensionar.
  • POOL_NAME: o nome do node pool a redimensionar.
  • NUM_NODES: o número de nós no conjunto num cluster zonal. Se usar clusters multizonais ou regionais, NUM_NODES é o número de nós para cada zona em que os conjuntos de nós se encontram.

Repita este comando para cada conjunto de nós. Se o cluster tiver apenas um conjunto de nós, omita a flag --node-pool.

Consola

Para diminuir o tamanho dos conjuntos de nós de um cluster, siga estes passos:

  1. Aceda à página do Google Kubernetes Engine na Google Cloud consola.

    Aceda ao Google Kubernetes Engine

  2. Junto ao cluster que quer editar, clique em Ações e, de seguida, em Editar.

  3. Clique no separador Nós junto ao separador Detalhes.

  4. Na secção Conjuntos de nós, clique no nome do conjunto de nós cujo tamanho quer diminuir.

  5. Clique em Redimensionar.

  6. No campo Número de nós, introduza quantos nós quer no conjunto de nós e, de seguida, clique em Redimensionar.

  7. Repita o procedimento para cada conjunto de nós, conforme necessário.

Escala automática de um cluster

A funcionalidade de escala automática de clusters do GKE redimensiona automaticamente os seus node pools em resposta à alteração das condições, como alterações nas suas cargas de trabalho e utilização de recursos.

Para saber como funciona o dimensionamento automático, consulte a documentação do dimensionador automático de clusters. Para configurar a escala automática para o seu cluster, consulte o artigo Escalar automaticamente um cluster.

O que se segue?