Todos os produtos
Search
Central de documentação

Container Service for Kubernetes:Enable node instant scaling

Última atualização: Oct 21, 2026

Para clusters grandes ou cargas de trabalho sensíveis à latência nas quais o dimensionamento automático de nós é insuficiente, ative o dimensionamento instantâneo de nós para provisionar nós mais rapidamente e reduzir custos.

Antes de começar

Consulte node scaling para entender os seguintes conceitos:

  • Como funciona o dimensionamento instantâneo de nós

  • Benefícios e casos de uso compatíveis

  • Notas de uso

  • Para evitar cobranças inesperadas, use instâncias de pagamento conforme o uso. Durante a redução, as instâncias de assinatura são removidas do cluster, mas não são liberadas da sua conta.

Pré-requisitos e limitações

  • Um ACK managed cluster ou ACK dedicated cluster executando o Kubernetes 1.24 ou posterior. Consulte Manually upgrade a cluster.

  • O Auto Scaling está ativado.

  • O vSwitch do node pool de dimensionamento instantâneo de nós deve ter endereços IP suficientes. Chame a API DescribeVSwitchAttributes para verificar os IPs disponíveis.

    Se os endereços IP forem insuficientes, consulte Expand cluster IP capacity by adding a secondary CIDR block.

  • O dimensionamento instantâneo de nós funciona apenas com node pools com o Scaling Mode Standard. O modo Swift não é compatível.

  • Com o ACK GOATScaler v0.5.3 ou anterior, remova manualmente os nós offline. Consulte FAQ.

  • Em um ACK dedicated cluster, os nós devem ter recursos suficientes para implantar ou atualizar o ACK GOATScaler; caso contrário, o dimensionamento pode falhar.

  • Atualmente, não há suporte para a evicção de Pods do DaemonSet em nós vazios.

Etapa 1: Ativar o dimensionamento instantâneo de nós

Para usar o dimensionamento instantâneo de nós, ative o dimensionamento automático do cluster na página Node Pools.

  1. Faça login no ACK console. No painel de navegação à esquerda, clique em Clusters.

  2. Na página Clusters, clique no nome do seu cluster. No painel de navegação à esquerda, clique em Nodes > Node Pools.

  3. Na página Node Pools, clique em Enable ao lado de Node Scaling.

  4. Se solicitado, ative o Auto Scaling e conceda as permissões necessárias.

    • ACK managed cluster: Autorize a função AliyunCSManagedAutoScalerRole.

    • ACK dedicated cluster: Autorize a função KubernetesWorkerRole e anexe a política AliyunCSManagedAutoScalerRolePolicy.

      Na caixa de diálogo Node Scaling Configuration, após a aprovação da pré-verificação, clique no link da função RAM (como KubernetesWorkerRole-xxxx) para concluir a autorização no console do RAM.

  5. Na página Node Scaling Configuration, defina o Node Scaling Plan como Instant Scaling, configure os parâmetros de dimensionamento e clique em OK.

    O componente de dimensionamento aciona automaticamente a expansão dos nós com base nas condições de agendamento.

    Alterne o Node Scaling Plan para Auto Scaling a qualquer momento. Siga as instruções na tela. Este recurso está em versão beta. Para participar, envie um ticket .

    Parâmetro

    Descrição

    Scale-in Threshold

    A proporção de solicitações de recursos em relação à capacidade total de recursos de um nó em um node pool com o dimensionamento automático de nós ativado.

    Um nó é elegível para redução apenas se a utilização de recursos de CPU e memória estiver abaixo do Scale-in Threshold.

    GPU Scale-in Threshold

    O limiar de redução para instâncias GPU.

    Uma instância GPU é elegível para redução apenas quando a utilização de CPU, memória e GPU estiver abaixo do GPU Scale-in Threshold configurado.

    Scale-in Trigger Delay

    O atraso entre o momento em que um nó se torna elegível para redução e a execução da operação. Unidade: minutos. Valor padrão: 10 minutos.

    Importante

    O componente de dimensionamento só pode executar a redução de um nó após a condição do Scale-in Threshold ser atendida e a duração do Scale-in Trigger Delay ter decorrido.

    Configurações avançadas

    Parâmetro

    Descrição

    Muted For

    Tempo máximo de espera para o encerramento do pod durante a redução. Unidade: segundos.

    Se um pod não for evicto antes do tempo limite, o nó não será liberado.

    Pod Termination Timeout

    Limiar de proteção contra redução. Nós com pods ReplicationController ou ReplicaSet não são reduzidos se a contagem de réplicas cair abaixo deste valor.

    Aplica-se apenas a pods ReplicationController e ReplicaSet, e não a StatefulSet ou DaemonSet.

    Minimum Pod Replicas

    Quando ativado, os pods do DaemonSet são evictos quando seu nó é reduzido. Atualmente, não há suporte para a evicção de Pods do DaemonSet em nós vazios.

    Ignorar nós com pods no namespace kube-system

    Quando ativado, os nós com pods no namespace kube-system são excluídos da redução.

    Nota

    Isso não se aplica a pods do DaemonSet ou pods espelho (mirror pods).

Etapa 2: Configurar um node pool para dimensionamento automático

O dimensionamento instantâneo de nós aplica-se apenas a node pools com o dimensionamento automático ativado.

Recomendado: Configure vários tipos de instância e zonas de disponibilidade para garantir capacidade suficiente durante a expansão.

(Opcional) Etapa 3: Verifique a configuração

Verifique se o dimensionamento automático está ativo e se o ACK GOATScaler está instalado.

Verifique o status do node pool

Na página Scaling Mode, certifique-se de que o seu node pool exiba a tag Auto Scaling.

Verifique a instalação do add-on

  1. Na página Node Pools, clique no nome do seu cluster. No painel de navegação à esquerda, clique em Components and Add-ons .

  2. Na página Add-ons, certifique-se de que o status do add-on ACK GOATScaler seja Installed.

Principais eventos do dimensionamento instantâneo de nós

O recurso de dimensionamento instantâneo de nós gera os seguintes eventos:

Nome do evento

Objeto

Descrição

ProvisionNode

pod

Expansão de nó acionada com sucesso.

ProvisionNodeFailed

pod

Falha ao acionar a expansão de nó.

ResetPod

pod

Um pod não agendável que acionou uma expansão é recolocado na fila para nova tentativa.

InstanceInventoryStatusChanged

ACKNodePool

Emitido quando o inventário disponível muda para os tipos de instância configurados.

Consulte visualize o status de integridade do dimensionamento instantâneo de nós.

Identificadores do dimensionamento instantâneo de nós

Esses identificadores são gerenciados pelo sistema. Modificá-los pode causar um comportamento de dimensionamento inesperado.

Rótulos de nós

  • goatscaler.io/managed:true ou k8s.aliyun.com: true: Identifica os nós gerenciados pelo dimensionamento instantâneo de nós. Usado para avaliar as condições de redução.

  • goatscaler.io/provision-task-id:{task-id}: O ID da tarefa de expansão. Usado para rastreamento.

Taints de nós

  • goatscaler.io/node-terminating: Nós com este taint são marcados para redução.

Anotações de Pods

  • goatscaler.io/provision-task-id: O ID da tarefa de expansão para este pod. O sistema aguarda o nó iniciar antes de acionar mais expansões.

  • goatscaler.io/reschedule-deadline: Tempo limite de agendamento do pod. Se ainda não for agendável após este prazo, o pod será recolocado na fila e poderá acionar outra expansão.

Perguntas frequentes

Categoria

Subcategoria

Link

Comportamento do dimensionamento instantâneo de nós

Known limitations

Scale-out behavior

Scale-in behavior

Comportamento de dimensionamento personalizado

Controlling scaling with pods

How can I control node scale-in by using pods?

Controlling scaling with nodes

Node instant scaling add-on

Operações relacionadas

Visualize o status de integridade

O recurso de dimensionamento instantâneo de nós seleciona tipos de instância e zonas de disponibilidade com base no inventário do ECS. Verifique o ConfigMap do node pool para monitorar a integridade do inventário e obter recomendações de tipos de instância.

Consulte visualize o status de integridade do dimensionamento instantâneo de nós.

Ativar a coleta de logs

Para clusters ACK managed cluster, colete os logs do ACK GOATScaler na página Control Plane Component Logs.

  1. Faça login no ACK console. No painel de navegação à esquerda, clique em Clusters.

  2. Na página Clusters, clique no nome do seu cluster. No painel de navegação à esquerda, clique em Operations > Log Center.

  3. Na aba Control Plane Component Logs, clique em Update Component e selecione o ACK GOATScaler.

    Na caixa de diálogo Update Component, selecione ack-goatscaler e clique em OK.

    Após a atualização, selecione o ACK GOATScaler na lista suspensa para visualizar os logs.

Atualize o ACK GOATScaler

Mantenha o ACK GOATScaler atualizado para ter acesso aos recursos mais recentes. Consulte Components.

Ignorar verificações de inventário para pools privados

Se você usar um pool privado para capacidade garantida, ative SkipInventoryCheck para permitir que o ACK GOATScaler ignore as verificações de inventário e use os recursos do pool privado diretamente.

  1. Na página Clusters, clique no nome do seu cluster. No painel de navegação à esquerda, clique em Clusters.

  2. Na página Components and Add-ons , localize o ACK GOATScaler e clique em Configuration.

    Requer o ACK GOATScaler v0.3.0-582e405-aliyun ou posterior.
  3. Defina SkipInventoryCheck como true.