Nesta página, você aprende a reescalonar clusters de contêiner. Você pode reescalonar um cluster para aumentar ou diminuir o número de nós nesse cluster. Para saber como adicionar pools de nós e gerenciar seus pools de nós existentes, consulte Como adicionar e gerenciar pools de nós.
Quando você adiciona ou remove nós no cluster, o Google Kubernetes Engine (GKE) adiciona ou remove as instâncias de máquina virtual (VM) associadas do Compute Engine subjacente.Grupos gerenciados de instâncias (MIGs) provisionado para seus pools de nós.
Como aumentar o tamanho do cluster
Ao aumentar o tamanho de um cluster, você tem os resultados abaixo:
- Novas instâncias de nós são criadas usando a mesma configuração que as instâncias atuais.
- Novos pods podem ser agendados nas novas instâncias.
- Pods atuais não são movidos para as novas instâncias.
Como diminuir o tamanho do cluster
Ao diminuir o tamanho de um cluster, você tem os resultados abaixo:
- Os pods que estão agendados nas instâncias que estão sendo removidas são finalizados.
- Os pods gerenciados por um controlador de replicação são reprogramados pelo controlador 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.
Antes de começar
Antes de começar, veja se você realizou as seguintes tarefas:
- Veja se você ativou a API do Google Kubernetes Engine. Ativar a API Google Kubernetes Engine
- Confirme se você instalou a Google Cloud CLI.
- Defina as configurações padrão da Google Cloud CLI para o projeto usando um dos seguintes métodos:
- Use
gcloud init
se quiser orientações para definir os padrões do projeto. - Use
gcloud config
para definir individualmente a região, a zona e o ID do projeto. -
Execute
gcloud init
e siga as instruções:gcloud init
Se você estiver usando SSH em um servidor remoto, utilize a sinalização
--console-only
para impedir que o comando inicie um navegador:gcloud init --console-only
- Siga as instruções para autorizar a CLI gcloud a usar a conta do Google Cloud.
- Crie uma nova configuração ou selecione uma atual.
- Escolha um projeto do Google Cloud.
- Escolha uma zona padrão do Compute Engine.
- Escolha uma região padrão do Compute Engine.
- Defina o ID do projeto padrão:
gcloud config set project PROJECT_ID
- Defina a região padrão do Compute Engine (por exemplo,
us-central1
):gcloud config set compute/region COMPUTE_REGION
- Defina a zona padrão do Compute Engine (por exemplo,
us-central1-c
):gcloud config set compute/zone COMPUTE_ZONE
- Atualize
gcloud
para a versão mais recente:gcloud components update
gcloud init
gcloud config
Ao definir locais padrão, é possível evitar erros na gcloud CLI,
como: One of [--zone, --region] must be supplied: Please specify location
.
Redimensionar um cluster
gcloud
Para redimensionar os 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 reescalonar os pools de nós do cluster, siga estas etapas:
Acesse a página do Google Kubernetes Engine no console do Cloud.
Ao lado do cluster que você quer editar, clique em more_vert Ações e, depois, em Editar.
Clique na guia Nós ao lado da guia Detalhes.
Na seção Pool de nós, clique no nome do pool de nós que você quer redimensionar.
Clique em edit Redimensionar.
No campo Número de nós, insira quantos nós você quer no pool de nós e clique em Redimensionar.
Repita para cada pool de nós conforme necessário.
Como diminuir o tamanho do cluster por esvaziamento
É possível diminuir o tamanho do cluster manualmente e esvaziar os pods de cada instância antes de serem removidos.
Para saber como adicionar pools de nós e gerenciar os existentes, consulte Como adicionar e gerenciar pools de nós.
Para diminuir e esvaziar o 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.
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.