Tipos de inicialização e provedores de capacidade do Amazon ECS
O Amazon ECS fornece dois métodos para configurar a capacidade para workloads. Você pode usar tipos de inicialização ou provedores de capacidade. Os tipos de inicialização incluem EC2, Fargate e externa. Os provedores de capacidade oferecem maior flexibilidade e recursos avançados para gerenciamento de capacidade. Você pode executar workloads em computação com tecnologia sem servidor com os provedores de capacidade Fargate e Fargate Spot, em instâncias autogerenciadas do EC2, por meio dos provedores de capacidade do grupo do Auto Scaling ou em computação totalmente gerenciada usando provedores de capacidade de instâncias gerenciadas do Amazon ECS que combinam a simplicidade do Fargate com a flexibilidade da computação do EC2. Os provedores de capacidade oferecem melhor controle sobre a alocação de recursos e podem ajudar a otimizar a performance e os custos. Os provedores de capacidade são a maneira recomendada de configurar a capacidade para workloads em comparação com os tipos de inicialização tradicionais. Use o seguinte para entender as diferenças entre provedores de capacidade e tipos de inicialização.
Práticas recomendadas
Veja a seguir as práticas recomendadas:
- Use os tipos de inicialização para definir a compatibilidade da infraestrutura
-
Os tipos de inicialização definem a infraestrutura na qual as tarefas e os serviços são executados. Ao definir tarefas, especifique
RequiresCompatibilitiespara incluir um ou mais tipos de inicialização que sejam compatíveis com as tarefas. Você pode usar os seguintes tipos de inicialização: EC2, Fargate, externa e instâncias gerenciadas do Amazon ECS. Embora você também possa usar o tipo de inicialização para executar suas tarefas ou serviços, recomendamos usar o tipo de inicialização somente para definir compatibilidades em suas definições de tarefas e usar provedores de capacidade para iniciar tarefas ou serviços. Observe que você pode escolher um ou mais tipos de inicialização para definir compatibilidades para tarefas. - Use provedores de capacidade para configurar a capacidade de computação
-
Ao iniciar tarefas ou serviços, configure uma estratégia de provedor de capacidade. O Amazon ECS oferece suporte aos seguintes provedores de capacidade: Fargate e FARGATE_SPOT, grupos do Auto Scaling para instâncias autogerenciadas do EC2 e instâncias gerenciadas do Amazon ECS. Observe que a frota spot só está disponível como provedor de capacidade e não como tipo de inicialização. Você pode criar um ou mais provedores de capacidade de instâncias gerenciadas do Amazon ECS ou grupos do Auto Scaling em um cluster. Os provedores de capacidade Fargate e Fargate Spot são criados e gerenciados pelo Amazon ECS em cada cluster e você não precisa criá-los. Um cluster pode ter uma combinação de todos os tipos de provedores de capacidade, no entanto, uma estratégia de provedor de capacidade não pode ter uma combinação de diferentes tipos de provedores de capacidade.
- Atualizar a capacidade para serviços
-
Você pode simplesmente atualizar uma estratégia de provedor de capacidade de um serviço para movê-lo de um tipo de computação para outro.
Mutabilidade do serviço
O Amazon ECS oferece suporte à atualização de serviços entre diferentes provedores de capacidade. Isso permite:
-
Atualização perfeita de tipos de inicialização para provedores de capacidade
-
Transições entre diferentes tipos de provedores de capacidade
-
Testar diferentes opções de computação sem recriação de serviços
A figura a seguir é uma visão geral de alto nível do processo:
Atualizar a definição da tarefa: certifique-se de que
requiresCompatibilitiesinclua o provedor de capacidade de destino, por exemplo,MANAGED_INSTANCES.nota
As definições de tarefas devem passar pela validação de compatibilidade para o provedor de capacidade de destino. Se a verificação de
requiresCompatibilitiesfalhar na versão de definição de tarefa, a chamadaUpdateServicefalhará.Criar um provedor de capacidade: se você usa grupos personalizados do Amazon EC2 Auto Scaling, crie o provedor de capacidade.
Atualizar o serviço: modifique o serviço para usar uma estratégia de provedor de capacidade em vez do tipo de inicialização.
Validar a implantação: confirme se as tarefas foram implantadas com êxito.
Monitorar e otimizar: ajuste as configurações do provedor de capacidade conforme necessário.
Provedor de capacidade para provedor de capacidade
Há suporte para todas as atualizações de provedor de capacidade para provedor de capacidade:
-
Provedor de capacidade do grupo do Amazon EC2 Auto Scaling para instâncias gerenciadas do Amazon ECS
-
Provedor de capacidade do Fargate para instâncias gerenciadas do Amazon ECS
-
Provedor de capacidade do grupo do Amazon EC2 Auto Scaling para provedor de capacidade do Fargate
-
Provedor de capacidade de instâncias gerenciadas do Amazon ECS para Fargate
-
Provedor de capacidade do Fargate para provedor de capacidade do grupo do Amazon EC2 Auto Scaling
-
Instâncias gerenciadas do Amazon ECS para provedor de capacidade do grupo do Amazon EC2 Auto Scaling
Tipo de inicialização para provedor de capacidade
Há suporte para todas as atualizações de tipo de inicialização para provedor de capacidade:
-
Tipo de inicialização do EC2 para instâncias gerenciadas do Amazon ECS
-
Tipo de inicialização do Fargate para instâncias gerenciadas do Amazon ECS
-
Tipo de inicialização do EC2 para provedor de capacidade do Fargate
-
Tipo de inicialização do EC2 para provedor de capacidade do grupo do Auto Scaling do EC2
-
Tipo de inicialização do Fargate para provedor de capacidade do grupo do Amazon EC2 Auto Scaling
-
Tipo de inicialização do Fargate para provedor de capacidade do Fargate
-
Tipo de inicialização externa para instâncias gerenciadas do Amazon ECS
-
Tipo de inicialização externa para provedor de capacidade do Fargate
-
Tipo de inicialização externa para provedor de capacidade do grupo do Amazon EC2 Auto Scaling
Tipo de inicialização para tipo de inicialização
Não há suporte para atualizações de tipo de inicialização para tipo de inicialização:
-
Tipo de inicialização do EC2 para tipo de inicialização do Fargate (use o provedor de capacidade do Fargate em vez disso)
-
Tipo de inicialização do Fargate para tipo de inicialização do EC2 (use o provedor de capacidade do grupo do Amazon EC2 Auto Scaling em vez disso)
Em vez de migrar entre os tipos de inicialização, migre para o provedor de capacidade equivalente para obter funcionalidade aprimorada e compatibilidade futura.
nota
As definições de tarefas devem passar pela validação de compatibilidade para o provedor de capacidade de destino. Se a verificação de requiresCompatibilities falhar na versão de definição de tarefa, a chamada UpdateService falhará.