Geral

P: O que é o Amazon Elastic Container Service?

O Amazon Elastic Container Service (ECS) é um serviço de gerenciamento de contêineres altamente escalável e de alto desempenho com suporte a contêineres do Docker, o que permite executar facilmente aplicativos em um cluster gerenciado de instâncias do Amazon EC2. O Amazon ECS elimina a necessidade de você instalar, operar e dimensionar sua própria infraestrutura de gerenciamento de cluster. Com chamadas de API simples, você pode executar e interromper aplicações habilitadas para contêiner, consultar o estado completo do seu cluster e acessar muitos recursos familiares, como security groups, Elastic Load Balancing, volumes do EBS e funções do IAM. Você pode usar o Amazon ECS para programar a colocação de contêineres no cluster com base em suas necessidades de recursos e requisitos de disponibilidade. Você também pode integrar agendadores próprios ou de terceiros para atender a requisitos específicos dos negócios ou da aplicação.

P: Por que devo usar o Amazon ECS?

O Amazon ECS facilita a utilização de contêineres como um bloco de construção para as suas aplicações, eliminando a necessidade de você instalar, operar e dimensionar sua própria infraestrutura de gerenciamento de cluster. O Amazon ECS permite programar aplicações, serviços e processos de lotes de longa duração usando contêineres Docker. O Amazon ECS mantém a disponibilidade da aplicação e permite expandir ou reduzir seus contêineres para atender aos requisitos de capacidade da aplicação. O Amazon ECS é integrado com recursos familiares como Elastic Load Balancing, volumes do EBS, VPC e IAM. APIs simples permitem integrar e usar seus próprios agendadores ou conectar o Amazon ECS ao seu processo existente de distribuição de software.

P: Qual é a definição de preço do Amazon ECS?

Não há cobrança adicional para o Amazon ECS. Você paga pelos recursos da AWS (como instâncias do EC2 ou volumes do EBS) que criar para armazenar e executar seu aplicativo. Você paga apenas pelo que usar, quando usar. Não há taxas mínimas nem compromissos iniciais.

P: Qual é a diferença entre o Amazon ECS e o AWS Elastic Beanstalk?

O AWS Elastic Beanstalk é uma plataforma de gerenciamento de aplicações que ajuda os clientes a implantar e dimensionar web services e aplicações web com facilidade. Ele evita que o usuário precise se preocupar com o provisionamento de blocos de construção (por exemplo, EC2, RDS, Elastic Load Balancing, Auto Scaling, CloudWatch), a implantação de aplicações e o monitoramento de saúde, e possa se concentrar apenas em escrever código. Basta especificar quais imagens de contêiner devem ser implantadas, os requisitos de CPU e memória, os mapeamentos de porta e os vínculos do contêiner.

O Elastic Beanstalk cuida automaticamente de todos os detalhes, como provisionamento de um cluster do Amazon ECS, balanceamento de carga, escalabilidade automática, e monitoramento e posicionamento dos contêineres em um cluster. O Elastic Beanstalk é ideal se você deseja aproveitar os benefícios dos contêineres, mas quer simplesmente poder implantar aplicações desde o desenvolvimento até a produção fazendo o upload de uma imagem de contêiner. Você pode trabalhar com o Amazon ECS diretamente se quiser ter um controle mais refinado para arquiteturas de aplicações personalizadas.

P: Qual é a diferença entre o Amazon ECS e o AWS Lambda?

O Amazon ECS é um serviço de gerenciamento de contêineres do Docker altamente escalável que permite executar e gerenciar aplicativos distribuídos em contêineres do Docker. O AWS Lambda é um serviço de computação de tarefas orientadas por eventos que executa seu código em resposta a “eventos”, como mudanças em dados, cliques em sites ou mensagens de outros Serviços da AWS sem necessidade de gerenciamento de qualquer infraestrutura de computação.

Como usar o Amazon ECS

P: Como faço para começar a usar o Amazon ECS?

Visite nossa página Conceitos básicos para obter mais informações sobre como começar a usar o ECS.

P: O Amazon ECS oferece suporte a outros tipos de contêiner?

Não. No momento, o Docker é a única plataforma de contêineres com suporte do Amazon ECS.

P: Quero iniciar contêineres. Por que tenho que iniciar tarefas?

O Docker recomenda que você separe os aplicativos em componentes individuais, e o Elastic Container Service é otimizado para esse padrão. As tarefas permitem definir um conjunto de contêineres que você gostaria que fossem posicionados juntos (ou que fossem parte da mesma decisão de posicionamento), suas propriedades e como eles podem ser vinculados. As tarefas incluem todas as informações de que o Amazon ECS precisa para tomar a decisão de posicionamento. Para lançar um único contêiner, a definição de tarefas deve incluir apenas uma definição de contêiner.

P: O Amazon ECS fornece suporte para aplicações e serviços?

Sim. O agendador do Amazon ECS Service pode gerenciar aplicações e serviços de longa duração. O agendador do serviço ajuda a manter a disponibilidade da aplicação e permite expandir ou reduzir seus contêineres para atender aos requisitos de capacidade da aplicação. Ele permite também distribuir o tráfego por seus contêineres usando o Elastic Load Balancing. O Amazon ECS registrará e cancelará automaticamente o registro dos contêineres no load balancer associado.

O programador do serviço também recuperará automaticamente os contêineres que não estiverem íntegros (que falharem nas verificações de integridade do ELB) ou pararem de funcionar, a fim de assegurar que você tenha o número desejado de contêineres íntegros oferecendo suporte aos aplicativos.

Você pode expandir ou reduzir sua aplicação, alterando o número de contêineres a serem executados pelo serviço. É possível atualizar a aplicação alterando sua definição ou usando uma nova imagem. O agendador iniciará novos contêineres automaticamente utilizando a nova definição e interromperá os contêineres que estiverem executando a versão anterior (aguardando as conexões do ELB serem consumidas se ele for usado).

P: O Amazon ECS oferece suporte ao mapeamento de porta dinâmica?

Sim. É possível associar um serviço no Amazon ECS a um Application Load Balancer (ALB) para o serviço Elastic Load Balancing (ELB). O ALB oferece suporte a um grupo de destino que contém um conjunto de portas de instância. É possível especificar uma porta dinâmica na definição de tarefa do ECS, que disponibiliza ao contêiner uma porta não utilizada quando estiver programada em uma instância EC2. O programador do ECS adicionará automaticamente a tarefa ao grupo de destino do Application Load Balancer que está usando essa porta.

P: O Amazon ECS fornece suporte para trabalhos em lote?

Sim. Você pode usar o comando Run task do Amazon ECS para executar uma ou mais tarefas de uma vez. O comando Run task inicia a tarefa em uma instância que atenda aos requisitos da tarefa, incluindo CPU, memória e portas.

P: Posso usar meu próprio programador com o Amazon ECS?

O ECS disponibiliza ao Blox, um conjunto de projetos de código aberto para gerenciar e orquestrar contêineres. O Blox facilita consumir eventos do Amazon ECS, armazenar o estado do cluster localmente e consultar o armazenamento de dados local por meio de APIs. O Blox também inclui um programador daemon que pode ser usado como referência sobre como usar o servidor de estado do cluster. Consulte a página do GitHub do Blox para saber mais.

P: Posso usar minha própria AMI?

Sim. Você pode usar qualquer AMI que atenda à especificação da AMI do Amazon ECS. Recomendamos começar com o Amazon Linux AMI habilitado para Amazon ECS. AMIs de parceiros compatíveis com o Amazon ECS também estão disponíveis. Consulte a especificação da AMI do Amazon ECS na documentação.

P: Como posso configurar as instâncias de contêineres para recuperar imagens do Amazon Elastic Container Registry?

O Amazon ECR é integrado com o Amazon ECS, o que permite que você armazene, execute e gerencie facilmente imagens de contêiner para aplicações em execução no Amazon ECS. Tudo o que você precisa fazer é especificar o repositórios do Amazon ECR na sua definição de tarefa e conectar o AmazonEC2ContainerServiceforEC2Role às suas instâncias. Em seguida, o Amazon ECS recuperará as imagens adequadas para suas aplicações.

P: Como o AWS Fargate funciona com o Amazon ECS?

Com o Fargate, o conceito de provisionamento de servidores, gerenciamento de clusters e orquestração desaparece completamente. O Amazon ECS usa os contêineres provisionados pelo Fargate para automatizar a escalabilidade, o load balancing e o gerenciamento da programação de contêineres para assegurar a disponibilidade, oferecendo uma maneira mais fácil de criar e operar aplicativos conteinerizados.

P: Como devo escolher entre usar o AWS Fargate com o Amazon ECS ou usar apenas o ECS?

O Amazon ECS oferece suporte à tecnologia do Fargate. Os clientes poderão optar pelo AWS Fargate para executar contêineres sem necessidade de provisionar ou gerenciar instâncias EC2. O AWS Fargate é a maneira mais fácil de iniciar e executar contêineres na AWS. Os clientes que exigem maior controle sobre as instâncias EC2 para cumprir requisitos de conformidade ou governança ou precisam de opções de personalização mais amplas podem optar por executar instâncias EC2 usando o ECS sem o Fargate.

Segurança

P: Como o Amazon ECS isola contêineres pertencentes a diferentes clientes?

O Amazon ECS programa os contêineres para execução em instâncias do Amazon EC2 controladas pelo cliente ou com o AWS Fargate e complementa os mesmos controles de isolamento e a conformidade disponíveis para clientes do EC2. As suas instâncias de computação estão localizadas em uma Virtual Private Cloud (VPC) com o intervalo de IP que você especificou. Você decide quais instâncias são expostas para a Internet e quais permanecem privadas.

  • Suas instâncias do EC2 usam uma função do IAM para acessar o serviço ECS.
  • Suas tarefas do ECS usam uma função do IAM para acessar serviços e recursos.
  • Os grupos de segurança e os ACLs de rede permitem controlar o acesso de entrada/saída pela rede para/de suas instâncias.
  • Você pode conectar a sua infraestrutura de TI existente aos recursos da sua VPC usando conexões VPN IPsec com criptografia padrão do setor.
  • Você pode provisionar seus recursos do EC2 como instâncias dedicadas. Instâncias dedicadas são instâncias do Amazon EC2 que são executadas em hardware dedicado a um único cliente para proporcionar isolamento adicional.

P: Posso aplicar estruturas adicionais de isolamento e configuração de segurança às minhas instâncias de contêiner?

Sim. Como cliente do Amazon EC2, você tem acesso root ao sistema operacional de suas instâncias de contêiner, permitindo que você assuma a propriedade das configurações de segurança do sistema operacional, além de carregar e configurar componentes de software adicionais para recursos de segurança como monitoramento, gerenciamento de patch, gerenciamento de log e detecção de invasões de host.

P: Posso operar instâncias de contêiner com diferentes configurações de segurança ou segregar tarefas diferentes em ambientes diferentes?

Sim. Você pode configurar suas diferentes instâncias de contêiner utilizando as ferramentas de sua escolha. O Amazon ECS permite controlar a colocação de tarefas em diferentes instâncias de contêiner por meio da construção de clusters e execuções direcionadas.

P: O Amazon ECS oferece suporte para a recuperação de imagens de Docker de uma fonte privada ou interna?

Sim. Os clientes podem configurar instâncias do contêiner para acessar um registro privado de imagem de Docker em uma VPC ou um registro que pode ser acessado fora da VPC, como o Amazon ECR.

P: Como devo configurar funções do IAM para tarefas do ECS?

Primeiro, você precisa criar uma função do IAM para a sua tarefa usando a função de serviço "Amazon EC2 Container Service Task Role" e anexando uma política às permissões exigidas. Ao criar uma nova definição de tarefa ou uma revisão de definição de tarefa, é possível especificar uma função ao selecioná-la na lista suspensa "Task Role" ou usando a opção "taskRoleArn" arquivada no formato JSON.

Acordo de Nível de Serviço (SLA)

P: Qual é a garantia do SLA do Amazon ECS?

Nosso SLA de computação garante uma porcentagem de tempo de disponibilidade mensal de pelo menos 99,99% para o Amazon ECS.

P: Como saberei se me qualifico para um crédito de serviço do SLA?

Você estará qualificado para um crédito de SLA para o Amazon ECS nos termos do SLA de computação se mais de uma zona de disponibilidade na qual você executar uma tarefa, na mesma região, tiver uma porcentagem de tempo de disponibilidade inferior a 99,99% durante qualquer ciclo de faturamento mensal.

Para obter detalhes completos sobre todos os termos e condições do SLA, bem como detalhes sobre como enviar uma reivindicação, consulte a página de detalhes do SLA de computação.

Comece a usar o Amazon ECS

Acesse o console do Amazon ECS
Pronto para começar?
Cadastrar-se
Mais dúvidas?
Entre em contato conosco