Veja nesta página como fazer escalonamento automático dos seus clusters do Google Kubernetes Engine (GKE). Para saber mais sobre como o escalonador automático de clusters funciona, consulte Escalonador automático de clusters.
Como usar o escalonador automático de cluster
Veja nas seções a seguir como usar o escalonador automático de clusters.
Como criar um cluster com escalonamento automático
gcloud
Para criar um cluster com o escalonamento automático, use a sinalização --enable-autoscaling
e especifique --min-nodes
e --max-nodes
.
Com o comando a seguir, você cria um cluster com 30 nós. O escalonamento automático de nós está ativado e redimensiona o número de nós com base na carga do cluster. O escalonador automático de clusters pode reduzir o tamanho do pool de nós padrão para 15 ou aumentá-lo para até 50 nós.
gcloud container clusters create cluster-name --num-nodes 30 \
--enable-autoscaling --min-nodes 15 --max-nodes 50 [--zone compute-zone]
Nesse comando:
--num-nodes
especifica o número de nós a serem criados em cada uma das zonas do cluster; o padrão é 3;--enable-autoscaling
indica que o escalonamento automático está ativado;--min-nodes
especifica o número mínimo de nós do pool de nós padrão.--max-nodes
especifica o número máximo de nós para o pool de nós padrão.--zone
especifica a zona do Compute onde o escalonador automático criará novos nós.
Console
Para criar um novo cluster no qual o pool de nós padrão esteja com o escalonamento automático ativado:
Acesse o menu do Google Kubernetes Engine no Console do Cloud.
Clique no botão Criar cluster.
Configure o cluster como quiser.
No painel de navegação, em Pools de nós, clique em default-pool.
Marque a caixa de seleção Ativar escalonamento automático.
Altere os valores dos campos Número mínimo de nós e Número máximo de nós como desejar.
Clique em Criar.
Como adicionar um pool de nós com escalonamento automático
gcloud
O comando a seguir cria um pool de nós de tamanho 3 (padrão), com o escalonamento automático de nós baseado na carga do cluster. O pool de nós é escalonado para um máximo de cinco nós e um mínimo de um nó:
gcloud container node-pools create pool-name --cluster cluster-name \
--enable-autoscaling --min-nodes 1 --max-nodes 5 [--zone compute-zone]
Nesse comando:
--cluster
indica o cluster no qual o nó é criado;--enable-autoscaling
indica que o escalonamento automático está ativado;--min-nodes
especifica o número mínimo de nós para o pool de nós;--max-nodes
especifica o número máximo de nós para o pool de nós;--zone
especifica a zona do Compute onde o escalonador automático criará novos nós.
Console
Para adicionar um pool de nós com escalonamento automático a um cluster atual:
Acesse o menu do Google Kubernetes Engine no Console do Cloud.
Clique no cluster que você quer e em Editar.
Clique em Adicionar pool de nós.
Configure o pool de nós como quiser.
Na seção Tamanho, marque a caixa de seleção Ativar escalonamento automático.
Altere os valores dos campos Tamanho mínimo e Tamanho máximo conforme desejado.
Clique em Salvar.
Como ativar o escalonamento automático de um pool de nós existente
gcloud
Para ativar o escalonamento automático em um pool de nós existente, execute o comando a seguir:
gcloud container clusters update cluster-name --enable-autoscaling \
--min-nodes 1 --max-nodes 10 --zone compute-zone --node-pool default-pool
Nesse comando:
--enable-autoscaling
indica que o escalonamento automático está ativado;--min-nodes
especifica o número mínimo de nós para o pool de nós;--max-nodes
especifica o número máximo de nós para o pool de nós;--zone
especifica a zona do Compute do cluster;--node-pool
especifica o pool de nós desejado. Se você só tiver um pool de nós, forneçadefault-pool
a essa sinalização.
Console
Para ativar o escalonamento automático de um pool de nós atual:
Acesse o menu do Google Kubernetes Engine no Console do Cloud.
Clique no cluster desejado e em Editar.
No menu Pools de nós na parte inferior da página, selecione o pool de nós desejado clicando no título dele para expandi-lo. O pool de nós padrão é expandido automaticamente. Clique em Editar.
Na seção Tamanho, marque a caixa de seleção Ativar escalonamento automático.
Altere os valores dos campos Tamanho mínimo e Tamanho máximo conforme desejado.
Clique em Salvar.
Como desativar o escalonamento automático de um pool de nós existente
gcloud
Para desativar o escalonamento automático de um pool de nós específico, execute o comando a seguir:
gcloud container clusters update cluster-name --no-enable-autoscaling \
--node-pool pool-name [--zone compute-zone --project project-id]
Nesse comando, o --no-enable-autoscaling
instrui o cluster a desativar o escalonamento automático.
O tamanho do cluster é determinado pelo tamanho atual do seu pool de nós padrão, que pode ser atualizado manualmente.
Console
Para desativar o escalonamento automático de um pool de nós específico:
Acesse o menu do Google Kubernetes Engine no Console do Cloud.
Para adicionar rótulos a um único cluster, clique no botão "Editar", que se parece com um lápis.
No menu Pools de nós na parte inferior da página, selecione o pool de nós desejado clicando no título dele para expandi-lo. O pool de nós padrão é expandido automaticamente. Clique em Editar.
Na seção Tamanho, desmarque a caixa de seleção Ativar escalonamento automático.
Clique em Save.
Solução de problemas
Consulte as informações de solução de problemas a seguir para o escalonador automático de cluster:
- Talvez você esteja enfrentando uma das limitações do escalonador automático de cluster.
- Se você tiver problemas com a diminuição de cluster, consulte Programação e interrupção de pods.
Talvez seja necessário adicionar um PodDisruptionBudget para os pods
kube-system
. Para mais informações sobre como adicionar manualmente um PodDisruptionBudget aos podskube-system
, consulte as Perguntas frequentes sobre o escalonador automático de clusters.
A seguir
- Saiba mais sobre o escalonador automático de clusters.
- Visualizar eventos do escalonador automático de clusters.