Todos os produtos
Search
Central de documentação

Container Service for Kubernetes:Virtual node scheduling solutions for ACK clusters

Última atualização: Aug 28, 2026

Compare os métodos de agendamento de nós virtuais para ACK managed cluster s e ACK dedicated cluster s e escolha a opção ideal para o seu cenário.

Cenários comuns de agendamento de nós virtuais

  1. Agendar pods exclusivamente em nós virtuais.

  2. Priorizar nós ECS e usar nós virtuais como fallback quando os recursos ECS forem insuficientes.

Em um ACK managed cluster (Basic Edition), use o rótulo alibabacloud.com/eci=true para o primeiro cenário. Para o segundo, faça upgrade para um ACK managed cluster (Pro Edition).

Nota

Os ACK managed clusters (Pro Edition) atendem melhor ao segundo cenário, pois oferecem maior confiabilidade, garantias de SLA e capacidade ampliada. Você pode migrar perfeitamente de um ACK managed cluster (Basic Edition) para um ACK managed cluster (Pro Edition).

Observações de uso

  • O rótulo alibabacloud.com/eci=true tem a maior prioridade e substitui os seguintes métodos de agendamento:

    • Semânticas nativas de agendamento do Kubernetes, como nodeSelector, afinidade e anti-afinidade, e restrições de distribuição de topologia de pods

    • ResourcePolicy

    • ElasticResource (Annotation: alibabacloud.com/burst-resource)

  • Não recomendamos ElasticWorkload e ElasticResource (Annotation: alibabacloud.com/burst-resource), pois estão com desenvolvimento inativo.

  • O componente virtual-kubelet-autoscaler não recebe mais manutenção. Faça upgrade do seu ACK managed cluster (Basic Edition) para um ACK managed cluster (Pro Edition) e desinstale esse componente para liberar recursos dos nós. Use as semânticas nativas de agendamento do Kubernetes para implementar implantação distribuída e agendamento baseado em afinidade para pods ECI entre zonas.

  • Para pods em nós virtuais que usam volumes de disco provisionados dinamicamente, StorageClasses do tipo WaitForFirstConsumer não são compatíveis com estes métodos de agendamento:

    • Uso de rótulos: alibabacloud.com/eci=true.

    • Especificação de um nó virtual via nodeName.

Comparação de soluções e recomendações de escolha

As tabelas de comparação usam os seguintes termos:

  • Agendamento baseado em prioridade: quando o cluster possui diferentes tipos de nós, configure a prioridade de agendamento. Por exemplo, priorize nós ECS e use nós virtuais como fallback caso os recursos ECS sejam insuficientes.

    Sem o agendamento baseado em prioridade, não é possível definir prioridades entre tipos de nós. O rótulo alibabacloud.com/eci=true, por exemplo, agenda pods apenas em nós virtuais, sem fallback prioritário para ECS.

  • Política de agendamento estrita: define se as regras de agendamento para diferentes tipos de pool de nós são restrições rígidas.

    • Uma política não estrita atua como restrição flexível. O campo preferredDuringSchedulingIgnoredDuringExecution da afinidade de nó, por exemplo, prioriza nós ECS, mas os pods ainda podem ser alocados em nós virtuais devido à política de pontuação de nós.

    • Uma política estrita funciona como restrição rígida. O ResourcePolicy, por exemplo, garante o agendamento dos pods em nós ECS sempre que houver recursos suficientes.

ACK managed cluster (Pro Edition)

Método de agendamento

Cenário típico

Agendamento baseado em prioridade

Reduzir escala de pods ECI preferencialmente

Recomendado

Operações relacionadas

labels: alibabacloud.com/eci=true

Agenda pods apenas em nós virtuais. Não é possível direcionar a um nó virtual específico.

Não suportado

N/A

Recomendado

Agendar pods para execução no ECI

Semânticas nativas de agendamento do Kubernetes

nodeSelector

Com uma toleration, agenda pods apenas em nós virtuais e permite direcionar a um nó virtual específico.

Não suportado

N/A

Recomendado

nodeSelector

Afinidade e anti-afinidade

Use Taint, Toleration e NodeAffinity para agendar pods exclusivamente em ECI, exclusivamente em ECS ou preferencialmente em ECS (por exemplo, usando nós virtuais como fallback quando os recursos ECS forem insuficientes).

Este método também suporta (e somente suporta) a redução de escala primeiro em ECI e depois em ECS.

Suportado (política de agendamento não estrita)

Suportado

Recomendado

Especificar alocação de recursos para ECS e ECI

Restrições de distribuição de topologia de pods

Distribui pods entre zonas para garantir alta disponibilidade e desempenho.

Não suportado

Suportado

Recomendado

Implementar implantação distribuída e agendamento baseado em afinidade para pods ECI entre zonas

ResourcePolicy

Importante

Na versão v1.20, o agendador ignora a verificação de não agendabilidade para nós virtuais. A partir da v1.22, apenas a verificação de taint é ignorada.

Para manter o comportamento da v1.20, desative a capacidade de agendamento de nós virtuais nos parâmetros do agendador.

  • Oferece suporte a agendamento baseado em prioridade por pool de nós. Por exemplo, priorize o Pool de Nós A e use o Pool de Nós B como fallback quando os recursos forem insuficientes.

  • Em cenários de co-implantação ECS-ECI, configure o agendamento por método de faturamento. Por exemplo, priorize ECS por assinatura, seguido de ECS por pagamento conforme o uso e, por fim, ECI.

    A redução de escala segue a ordem inversa de agendamento: primeiro ECI, depois ECS por pagamento conforme o uso e, por último, ECS por assinatura.

Suportado (política de agendamento estrita)

Suportado

Recomendado

Personalizar agendamento baseado em prioridade para recursos elásticos

UnitedDeployment

Agenda pods em nós ECS ou virtuais com base na contagem de réplicas. Por exemplo, use ECS por assinatura para até 10 réplicas, instâncias preemptíveis para 11 a 20 réplicas e ECI para mais de 20.

Suportado

Suportado

Recomendado

UnitedDeployment

Semânticas nativas de agendamento do Kubernetes

nodeSelector

Com uma toleration, agenda pods apenas em nós virtuais e permite direcionar a um nó virtual específico.

Não suportado

Suportado

Não recomendado

Em comparação com um ACK managed cluster (Pro Edition), o kube-scheduler em um ACK managed cluster (Basic Edition) e em um ACK dedicated cluster não consegue perceber o inventário subjacente durante o agendamento, o que reduz a certeza de criação bem-sucedida do pod.

nodeSelector

Afinidade e anti-afinidade

Use Taint, Toleration e NodeAffinity para agendar pods exclusivamente em ECI, exclusivamente em ECS ou preferencialmente em ECS (por exemplo, usando nós virtuais como fallback quando os recursos ECS forem insuficientes).

Suportado (política de agendamento não estrita)

Suportado

Afinidade e anti-afinidade

Restrições de distribuição de topologia de pods

Distribui pods entre zonas para garantir alta disponibilidade e desempenho.

Não suportado

Suportado

Restrições de distribuição de topologia de pods

ElasticWorkload

(status de desenvolvimento inativo. Recomendamos o uso do UnitedDeployment.)

Agrupa e agenda réplicas de Deployment em nós ECS ou nós virtuais.

Suportado

Suportado

Não recomendado

Agendar pods de cargas de trabalho elásticas para ECI usando Elastic Workload (descontinuado)

ElasticResource (Annotation: alibabacloud.com/burst-resource)

(status de desenvolvimento inativo)

Apenas duas políticas de agendamento elástico são suportadas:

  • Agendar pods em nós virtuais quando os recursos dos nós ECS forem insuficientes (política de agendamento elástico: eci).

  • Agendar pods apenas em nós virtuais (política de agendamento elástico: eci_only).

Suportado

Suportado

Não recomendado

Implementar agendamento elástico baseado em ECI usando ElasticResource (descontinuado)

Componente virtual-kubelet-autoscaler

(Manutenção descontinuada)

Suporta apenas o agendamento de pods primeiramente em nós ECS e, posteriormente, em nós virtuais quando os recursos dos nós ECS forem insuficientes.

Suportado

Suportado

Não recomendado

Nenhuma