Ir para o conteúdo

Por que minha contagem de instâncias esperada é diferente da contagem real de instâncias gerenciadas pelos provedores de capacidade do Amazon ECS?

4 minuto de leitura
0

Meu provedor de capacidade do Amazon Elastic Container Service (Amazon ECS) tem uma contagem de instâncias desejada diferente da que eu esperava. Ou então, a contagem de instâncias desejada é diferente daquela do grupo associado do Amazon EC2 Auto Scaling.

Resolução

Observação: se você receber erros ao executar comandos da AWS Command Line Interface (AWS CLI), consulte Solução de erros da AWS CLI. Além disso, verifique se você está usando a versão mais recente da AWS CLI.

Verifique se as instâncias do grupo do Auto Scaling do EC2 falharam ao ingressar no cluster

Verifique se uma instância aparece no grupo do Auto Scaling associado ao seu provedor de capacidade, mas não no console do Amazon ECS. Se houver problemas de configuração de rede, do AWS Identity and Access Management (AWS IAM) ou do agente de contêiner do Amazon ECS, a instância de contêiner não poderá se juntar ao cluster.

Para resolver esses problemas, consulte Por que minha instância do Amazon EC2 não pode se juntar ao cluster do Amazon ECS?

Verifique as configurações do provedor de capacidade

Use o console do Amazon ECS ou a AWS CLI.

Console do Amazon ECS

Conclua as seguintes etapas:

  1. Abra o console do Amazon ECS.
  2. No painel de navegação, escolha Clusters.
  3. Selecione o cluster.
  4. Escolha a guia Infraestrutura.

AWS CLI

Execute o seguinte comando describe-capacity-providers:

aws ecs describe-capacity-providers --capacity-providers YOUR_CAPACITY_PROVIDER

Observação: Substitua YOUR_CAPACITY_PROVIDER pelo nome do seu provedor de capacidade.

Na saída, verifique os valores TargetCapacity e minimumScalingStepSize.

Para manter a capacidade extra para seus clusters, defina o valor de TargetCapacity para menos de 100%. Quanto menor o valor, maior a capacidade extra do seu cluster. Para obter mais informações sobre a capacidade alvo, consulte Saber mais sobre o ajuste de escala automático de clusters do Amazon ECS. Para modificar TargetCapacity, use o console do Amazon ECS. Ou execute o seguinte comando update-capacity-provider:

aws ecs update-capacity-provider --name YOUR_CAPACITY_PROVIDER --auto-scaling-group-provider managedScaling={targetCapacity=DESIRED_VALUE}

Observação: Substitua YOUR_CAPACITY_PROVIDER pelo nome do provedor de capacidade e DESIRED_VALUE pelo valor TargetCapacity.

MinimumScalingStepSize define o número mínimo de instâncias pelas quais o Amazon ECS pode ser expandido horizontalmente. O Amazon ECS expande com base no MinimumScalingStepSize mesmo quando a demanda real é menor que o valor. Como resultado, o Amazon ECS pode associar temporariamente mais instâncias de contêiner ao seu provedor de capacidade do que o necessário. Para atualizar MinimumScalingStepSize, execute o seguinte comando update-capacity-provider:

aws ecs update-capacity-provider --name YOUR_CAPACITY_PROVIDER --auto-scaling-group-provider managedScaling={minimumScalingStepSize=DESIRED_VALUE}

Observação: Substitua YOUR_CAPACITY_PROVIDER pelo nome do provedor de capacidade e DESIRED_VALUE pelo valor MinimumScalingStepSize.

Para obter mais informações, consulte Gerenciar automaticamente a capacidade do Amazon ECS com o ajuste de escala automático do cluster.

Verifique as configurações do grupo do Auto Scaling

Para verificar as políticas de auto scaling e as configurações de capacidade do seu grupo do Auto Scaling, execute o seguinte comando describe-auto-scaling-groups:

aws autoscaling describe-auto-scaling-groups --auto-scaling-group-names YOUR_AUTO_SCALING_GROUP

Observação: Substitua YOUR_AUTO_SCALING_GROUP pelo nome do grupo do Auto Scaling associado ao seu provedor de capacidade.

O ajuste de escala automático de clusters do Amazon ECS adiciona automaticamente políticas de scaling ao grupo do Auto Scaling associado ao seu provedor de capacidade. Por isso, não é uma prática recomendada modificar ou adicionar políticas de scaling associadas ao grupo do Auto Scaling.

Para escalar o Amazon ECS com base em métricas como o uso da CPU, é uma prática recomendada usar o AWS Application Auto Scaling. Para obter informações sobre como usar métricas personalizadas, consulte Ajuste de escala automático dos serviços do Amazon ECS com base em métricas personalizadas com o Application Auto Scaling.

O ajuste de escala automático do cluster não modifica os valores MinimumCapacity ou MaximumCapacity do grupo do Auto Scaling. Se MinimumCapacity for maior que 0, talvez haja instâncias vazias. Se MaximumCapacity for muito baixa, o provedor de capacidade não poderá escalar para atender às demandas de seus serviços do Amazon ECS. Para modificar esses valores, execute o seguinte comando update-auto-scaling-group:

aws autoscaling update-auto-scaling-group --auto-scaling-group-name YOUR_AUTO_SCALING_GROUP --min-size DESIRED_VALUE --max-size DESIRED_VALUE

Observação: Substitua YOUR_AUTO_SCALING_GROUP pelo nome do grupo do Auto Scaling associado ao seu provedor de capacidade e DESIRED_VALUE pelos seus valores de capacidade.

AWS OFICIALAtualizada há 2 anos