Como criar um cluster ECS na AWS

Como criar um cluster ECS na AWS
O ECS (Elastic Container Service) é um serviço de contêiner gerenciado, altamente disponível e escalável para executar aplicativos de contêineres na AWS. Na CES, uma definição de tarefa é gravada para definir os contêineres e é usada para executar um ou mais processos no serviço. Um serviço na ECS é uma configuração que pode ser usada para executar e gerenciar várias tarefas em um cluster ECS simultaneamente.

A Amazon ECS fornece APIs simples para interagir com seu aplicativo de contêiner em execução no ECS. Usando essas APIs, você pode iniciar, executar, iniciar e interromper seu aplicativo de contêiner. Além disso, você pode agendar a colocação dos contêineres executando o aplicativo no nó desejado, dependendo dos recursos exigidos pelo aplicativo.

A seguir, estão algumas terminologias usadas enquanto trabalham com o cluster ECS.

  • Recipiente e imagens
  • Definições de tarefas
  • Tarefa e programação
  • Clusters
  • Agente de contêiner

Este artigo aprenderá como um cluster ECS pode ser criado na AWS usando o AWS Management Console.

Criando cluster ECS

Primeiro, faça login no console de gerenciamento e vá para o ECS Serviços.

No painel lateral esquerdo do console, clique no Clusters botão.

Agora clique no Criar cluster Para começar a criar o cluster.

Agora primeiro, ele pedirá o modelo de cluster do ECS. Existem três modelos disponíveis para o cluster ECS.

  • Apenas networking
  • EC2 Linux + Networking
  • EC2 Windows + Networking

O Apenas networking Modelo cria grupos usando aws Fargate. AWS Fargate é a mais recente tecnologia fornecida pela AWS para implantar clusters de ECS. A AWS Fargate é um serviço sem servidor para implantar clusters ECS, e você não precisa gerenciar os nós dentro do cluster. Os nós são gerenciados pela AWS e você fornece apenas definições de tarefas para o serviço. Para este modelo, você só cria o cluster ECS, e o VPC e as sub -redes são opcionais para isso.

O EC2 Linux + Networking Modelo cria o cluster ECS, incluindo os nós que executam Linux ami. Para executar um cluster ECS usando o modelo de rede Linux + EC2, você precisa criar o cluster, VPC, sub -redes e grupo de escala automático com Linux AMIS. O grupo de escala automática é usada para gerenciar os nós no cluster.

O EC2 Windows + Networking Modelo cria o cluster ECS com Windows Amis. Você cria o cluster, sub-redes, VPC e grupo de escala automática com Windows Amis. As instâncias do Windows são gerenciadas e dimensionadas pelo grupo de escala automática.

A AWS recomenda o uso do AWS Fargate para executar o cluster ECS, e é a mais recente tecnologia entre estes. Então, para esta demonstração, usaremos o AWS Fargate para criar o cluster ECS.

Depois de selecionar a opção, agora clique no Próxima Etapa botão no canto inferior direito da página.

Ele solicitará as diferentes configurações para o cluster ECS. O nome é o identificador exclusivo para o cluster ECS, e o mesmo nome não pode ser usado para outro cluster ECS na mesma região.

Para redes de cluster, você pode criar o cluster dentro do VPC para isolar o cluster ECS. Para esta demonstração, não executaremos o cluster ECS dentro do VPC.

As idéias de contêineres CloudWatch são usadas para monitorar e solucionar problemas de aplicativos de contêineres. Ele coleta as diferentes métricas de contêineres, como CPU, memória, espaço e outros eventos, como reiniciar, parar e começar a dar uma visão profunda do contêiner. Para esta demonstração, não usaremos as informações de contêineres CloudWatch.

Depois de fornecer todos os detalhes acima, clique em Próximo botão para criar o cluster ECS.

Quando você clica no Criar Botão para criar o cluster ECS, primeiro criará uma função vinculada ao serviço IAM para o ECS e depois criará o cluster.

Crie definição de tarefa ECS

Depois de criar o cluster ECS, agora crie uma definição de tarefa do ECS para implantar um amostra de contêiner no cluster do ECS.

No painel lateral esquerdo do console do ECS, clique no Definições de tarefas botão.

Clique no Crie nova definição de tarefa botão para criar uma nova definição de tarefa.

Primeiro, ele solicitará a compatibilidade do tipo de lançamento para a definição de tarefa. Existem três compatibilidades do tipo lançamento para as definições de tarefas.

  • Fargate
  • EC2
  • Externo

O Fargate A compatibilidade do tipo de lançamento é usada para infraestrutura gerenciada pela AWS, e não há necessidade de implantar nenhuma instância do EC2. Esta compatibilidade do tipo lançamento é usada para clusters de ECS usando a AWS Fargate. O custo é baseado no tamanho do contêiner.

O EC2 A compatibilidade do tipo de lançamento é usada para a infraestrutura auto-gerenciada na AWS, como as instâncias do EC2 com o Windows e o Linux AMIS. Esta compatibilidade do tipo de lançamento é usada para ambos EC2 Linux + Networking e EC2 Windows + Networking Modelos de ECS. O custo é baseado nas instâncias do EC2.

O Externo Compatibilidade do tipo de lançamento é usado para o cluster do ECS, incluindo instâncias de autogerenciamento auto-gerenciadas. O preço é baseado na hora da instância e cobranças adicionais para outros serviços.

Para esta demonstração, usaremos o Fargate iniciar o tipo de compatibilidade como estamos usando o Apenas networking modelo para o cluster ECS.

Depois de selecionar a compatibilidade do tipo de lançamento, agora clique no Próxima Etapa botão no canto inferior direito da página. Ele abrirá uma nova página solicitando a configuração de tarefas e contêineres.

Insira um nome único para a definição de tarefa a ser criada. A função de tarefa é usada para fazer chamadas de API para os serviços da AWS. Para esta demonstração, deixe a função de tarefa para nenhum. Família operacional do sistema é o sistema operacional que a definição de tarefas usará. Para esta demonstração, selecione Linux Como a família do sistema operacional.

Agora role para baixo até o Execução de tarefas iam papel. A função de execução da tarefa IAM deve incluir permissões para puxar a imagem do contêiner e publicar logs de contêineres para a Amazon CloudWatch. Se a função não existir, ela será criada automaticamente pelo ECS.

O tamanho da tarefa é a memória e o número de VCPUs que serão alocados ao contêiner para execução. Para esta demonstração, aloque 0.5 GB de RAM e 0.25 VCPU.

Depois de alocar RAM e VCPUs, agora clique no Adicione o contêiner botão para adicionar um contêiner. Digite o nome do contêiner e a imagem que será usada pelo contêiner.

Você também pode especificar os limites rígidos e suaves dos recursos alocados para o contêiner. Se um limite rígido for especificado, o contêiner será morto se exceder esse limite. Se um limite suave for especificado, o contêiner reservará essa quantidade de memória.

O mapeamento de porta é usado para acessar portas de contêiner na máquina host. Para esta demonstração, defina a porta 80.

Agora pule todas as opções restantes e clique no criar botão no final da página para criar a tarefa.

Depois de criar a definição da tarefa, agora vá para o Definições de tarefas Do painel lateral esquerdo do console do ECS. Selecione a definição de tarefa recém -criada e execute -a usando o Executar tarefa opção do Ações lista.

Ele solicitará as diferentes opções para o contêiner antes de executar. Proporciona a Fargate como tipo de lançamento, como usaremos Fargat como compatibilidade do tipo de lançamento.

Selecione Linux como sistema operacional do contêiner e fornece os outros detalhes, conforme mostrado na imagem a seguir.

Selecione os grupos VPC, sub -rede e segurança que você deseja atribuir à definição da tarefa.

Depois de fornecer todos esses detalhes, agora clique no correr botão para executar a definição de tarefa. Depois de executar a definição da tarefa, agora verifique o status da definição da tarefa do console.

Conclusão

A Amazon ECS é um serviço altamente disponível e escalável, fornecido pela AWS para executar aplicativos de contêineres. A AWS fornece diferentes compatibilidades do tipo de lançamento para executar os aplicativos de contêiner no AWS sem gerenciar a ferramenta de contêinerização. Depois de criar o cluster ECS, você precisa criar a definição de tarefa para executar um contêiner. Este artigo descreve como podemos criar e executar aplicativos de contêineres na AWS ECS usando o AWS Management Console.