Como faço para visualizar e gerenciar ações de scaling programadas para os serviços do Amazon ECS?

3 minuto de leitura
0

Quero visualizar e gerenciar as ações de scaling programadas para meus serviços do Amazon Elastic Container Service (Amazon ECS).

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.

Use o serviço do auto scaling para programar a contagem mínima e máxima de tarefas para um serviço Amazon ECS em um horário específico. Para configurar o auto scaling do serviço, é possível usar o console do Amazon ECS ou o AWS CLI.

Observe que, para usar o AWS CLI para configurar ações de scaling programadas, você deve primeiro registrar o serviço Amazon ECS como um destino dimensionável. Para verificar se existe um destino dimensionável para um serviço do Amazon ECS, execute o seguinte comando describe-scalable-targets:

aws application-autoscaling describe-scalable-targets \
  --service-namespace ecs \
  --resource-id service/ecs-cluster/service-name

Observação: Substitua ecs-cluster pelo nome do cluster e service-name pelo nome do serviço.

Se o serviço Amazon ECS não tiver um alvo dimensionável, execute o seguinte comando register-scalable-target para adicionar um:

aws application-autoscaling register-scalable-target \
  --service-namespace ecs \
  --scalable-dimension ecs:service:DesiredCount \
  --resource-id service/ecs-cluster/service-name \
  --min-capacity 0 \
  --max-capacity 0

Observação: Substitua ecs-cluster pelo nome do cluster e service-name pelo nome do serviço.

Para visualizar e modificar todas as ações de scaling programadas no console do Amazon ECS, conclua as seguintes etapas:

  1. Abra o console do Amazon ECS.
  2. Escolha o guia Service auto scaling.
  3. Em Ações agendadas, na lista Ações selecione Exibir, Editar, ou Excluir.

Para usar a AWS CLI para criar uma nova ação de scaling agendada ou modificar uma ação de scaling agendada existente, execute o seguinte comando put-scheduled-action:

aws application-autoscaling put-scheduled-action \
  --service-namespace ecs \
  --scalable-dimension ecs:service:DesiredCount \
  --resource-id service/ecs-cluster/service-name \
  --scheduled-action-name action-name \
  --scalable-target-action MinCapacity=minimum-count,MaxCapacity=maximum-count \
  --schedule "schedule"

Observação: Substitua ecs-cluster pelo nome do cluster, service-name pelo nome do serviço e action-name pelo nome da ação agendada. Além disso, substitua a contagem mínima pela contagem mínima de tarefas, a contagem máxima pela contagem máxima de tarefas e a programação por uma taxa, cron ou expressão at.

Para usar a AWS CLI para visualizar uma ação agendada, execute o seguinte comando describe-scheduled-actions:

aws application-autoscaling describe-scheduled-actions \
  --service-namespace ecs \
  --resource-id service/ecs-cluster/service-name

Observação: Substitua ecs-cluster pelo nome do cluster e service-name pelo nome do serviço.

Para usar a AWS CLI para excluir uma ação agendada, execute o seguinte comando delete-scheduled-action:

aws application-autoscaling delete-scheduled-action \
  --service-namespace ecs \
  --scalable-dimension ecs:service:DesiredCount \
  --resource-id service/ecs-cluster/service-name \
  --scheduled-action-name action-name

Observação: Substitua ecs-cluster pelo nome do cluster, service-name pelo nome do serviço e action-name pelo nome da ação agendada.

Se você excluir todas as ações agendadas para um serviço do Amazon ECS, será possível cancelar o registro do serviço como um destino dimensionável. Execute o seguinte comando deregister-scalable-targett:

aws application-autoscaling deregister-scalable-target \
  --service-namespace ecs \
  --resource-id service/ecs-cluster/service-name \
  --scalable-dimension ecs:service:DesiredCount

Observação: Substitua ecs-cluster pelo nome do cluster e service-name pelo nome do serviço.

AWS OFICIAL
AWS OFICIALAtualizada há 2 meses