Otimização da infraestrutura de instâncias gerenciadas do Amazon ECS
As instâncias gerenciadas do Amazon ECS provisionam automaticamente instâncias do EC2 do tamanho certo com base na configuração do seu provedor de capacidade e nas demandas atuais de workload, garantindo que suas aplicações em contêineres tenham os recursos computacionais adequados desde o momento em que são implantados. À medida que os padrões de tráfego de suas aplicações evoluem e os requisitos de workload mudam com o tempo, as instâncias gerenciadas do Amazon ECS monitoram e otimizam continuamente a infraestrutura ajustando de forma inteligente os tamanhos das instâncias para atender às necessidades atuais, substituindo proativamente as instâncias que se desviaram das configurações ideais e equilibrando dinamicamente a eficiência de custo, a performance da aplicação e a confiabilidade do sistema. Esse sistema de gerenciamento de recursos opera sem qualquer intervenção manual, reduzindo o custo da infraestrutura e mantendo a alta disponibilidade das aplicações.
A otimização da infraestrutura oferece os seguintes benefícios:
-
Otimização de custos: reduz os custos de infraestrutura maximizando a utilização de recursos e eliminando a capacidade ociosa
-
Melhoria da performance: otimiza o posicionamento da workload com base nos requisitos de recursos e nas características de performance
-
Simplicidade operacional: automatiza decisões complexas de gerenciamento de recursos sem exigir intervenção manual
-
Aprimoramento da confiabilidade: mantém a alta disponibilidade por meio da distribuição inteligente de workloads e do monitoramento da integridade
As instâncias gerenciadas do Amazon ECS fazem dois tipos de otimizações de infraestrutura para maximizar a eficiência e reduzir custos:
Detecção de instâncias ociosas
Identifica e remove instâncias do EC2 que não têm tarefas em execução, eliminando custos de infraestrutura desnecessários decorrentes da capacidade não utilizada. Quando uma instância ociosa é detectada, o processo de otimização marca a instância de contêiner como DEREGISTERING, o que inicia a sequência de limpeza que encerra com segurança a instância do EC2 subjacente.
Detecção de instâncias subutilizadas
Analisa a distribuição de tarefas entre instâncias para identificar oportunidades de melhor alocação de recursos. Quando as tarefas estão sendo executadas abaixo do ideal em várias instâncias, as instâncias gerenciadas do Amazon ECS consolidam as workloads em menos instâncias utilizadas com mais eficiência, reduzindo os custos gerais e mantendo a performance. O processo de otimização marca as instâncias de contêiner subutilizadas como DRAINING, o que aciona a substituição de tarefas para mover workloads para instâncias existentes ou novas, mais eficientes. Depois que todas as tarefas são migradas com segurança, a instância passa para o estado DEREGISTERING e é limpa. Essa otimização se aplica às instâncias que executam tarefas de serviço e garante uma consolidação segura, respeitando os limites mínimos e máximos das tarefas do seu serviço, respeitando o comportamento de iniciar antes de parar da implantação e mantendo todas as configurações de proteção de tarefas durante todo o processo de drenagem. As instâncias que executam tarefas autônomas não são consideradas para otimização, uma vez que as instâncias gerenciadas do ECS não substituem as tarefas autônomas.
Essas otimizações funcionam em conjunto para garantir que sua infraestrutura se adapte continuamente às demandas reais de workload, eliminando automaticamente o desperdício e melhorando a utilização dos recursos sem afetar a disponibilidade das aplicações. Ambos os mecanismos usam o monitoramento orientado por eventos que responde aos eventos do ciclo de vida da tarefa e da instância para identificar oportunidades de otimização em tempo real. As instâncias gerenciadas do Amazon ECS detectam quando a última tarefa é interrompida em uma instância de contêiner, indicando uma possível condição de inatividade para otimização de custos. Para instâncias subutilizadas, qualquer interrupção de tarefa ou lançamento de nova instância aciona a análise para identificar oportunidades de consolidação da workload e maior eficiência dos recursos.
ScaleInAfter
Ambas as otimizações de infraestrutura buscam oportunidades de encerrar instâncias em execução para melhorar a utilização e reduzir custos. Você pode controlar o tempo dessas ações usando a configuração ScaleInAfter nas definições do provedor de capacidade de instâncias gerenciadas do Amazon ECS, que se aplica a instâncias ociosas e subutilizadas. O ScaleInAfter permite que você especifique o atraso, em segundos, entre o momento em que a instância fica ociosa ou subutilizada e o momento em que as instâncias gerenciadas do Amazon ECS começam a otimizar a infraestrutura. Você pode definir o atraso entre 0 e 3.600 segundos. Você também pode especificar -1 para desabilitar a otimização da infraestrutura.
- Instâncias ociosas
-
-
O ECS aguarda a duração especificada após a interrupção da última tarefa antes de cancelar o registro da instância
-
Se uma nova tarefa for iniciada durante o período de espera, a instância não será mais considerada ociosa e o encerramento será cancelado.
-
- Instâncias subutilizadas
-
-
O ECS aguarda a duração especificada após um evento de interrupção da tarefa que resulta na subutilização da instância antes de drená-la.
-
Se uma nova tarefa for iniciada ou uma tarefa existente for interrompida em uma instância específica durante o período de espera, o cronômetro será redefinido a partir da parada da tarefa mais recente ou do momento da criação de uma nova tarefa, e as instâncias gerenciadas do Amazon ECS reavaliam as ineficiências e tomam medidas, se necessário, após o término do novo período de espera
-
Essa configuração é opcional. Quando não especificadas, as instâncias gerenciadas do ECS determinam automaticamente o tempo ideal com base na configuração padrão das instâncias gerenciadas do ECS.