Home | Sprints | Requisitos | Arquitetura | Configuração | Mockups | Banco de Dados | Instalação | Gerência de Projeto | Horários Disponiveis | Git |
---|
AWS Elastic Container Registry (ECR)
Para o processo de deploy da nossa aplicação, utilizaremos o AWS Elastic Container Registry (ECR). O ECR é um serviço totalmente gerenciado de registro de contêineres, projetado para fornecer uma hospedagem de alto desempenho para imagens de contêineres. Com o ECR, podemos armazenar, gerenciar e distribuir nossas imagens de contêineres de forma confiável e segura. Ele garante a disponibilidade e a replicação das imagens em diferentes regiões, permitindo implantar nossas aplicações em qualquer lugar.
Fonte: https://aws.amazon.com/pt/ecr/
AWS Elastic Container Service (ECS)
Na arquitetura da nuvem do nosso projeto, faremos uso principal do serviço ECS (Elastic Container Service) da AWS. O ECS é um serviço totalmente gerenciado de orquestração de contêineres, projetado para facilitar a implantação, o gerenciamento e a escalabilidade de aplicações baseadas em contêineres. Ele nos oferece recursos robustos para execução, monitoramento e escalonamento de aplicações, garantindo uma infraestrutura confiável e segura para nossa aplicação.
Fonte: https://aws.amazon.com/pt/ecs/
O diagrama ilustra como o Amazon ECS executa, monitora e escala aplicações em opções flexíveis de computação, com integrações automáticas com outros serviços da AWS. Desenvolvedores descrevem suas aplicações e recursos, enquanto o ECS cuida do restante. Operadores realizam operações do sistema, criam regras de escalabilidade e capacidade, e consultam logs e telemetria. O ECS é representado por um ícone na segunda seção, com setas indicando configuração e implantação/escalabilidade. A terceira seção mostra integrações automatizadas com serviços como Elastic Load Balancing, AWS Secrets Manager e Amazon Elastic File System. Também exibe opções flexíveis de computação, como AWS Fargate, Amazon EC2 Graviton, Amazon ECS Anywhere, AWS Outposts, zonas locais da AWS e AWS Wavelength. O Amazon Elastic Container Registry é mencionado como local para criar e armazenar imagens de contêineres.
AWS Fargate
Dentro do ECS, utilizaremos o AWS Fargate, que é um mecanismo de computação sem servidor e com pagamento conforme o uso. O Fargate permite que nos concentremos exclusivamente na construção da aplicação, sem a necessidade de provisionar ou gerenciar servidores subjacentes. Ele fornece um ambiente de execução isolado para os contêineres, garantindo a segurança e o isolamento dos recursos. Com o Fargate, podemos escalar automaticamente nossa aplicação com base na demanda, sem se preocupar com a infraestrutura subjacente.
Fonte: https://aws.amazon.com/pt/fargate/
Fluxo do Deploy
O fluxo do nosso processo de deploy seguirá as seguintes etapas:
-
Envio das Imagens para o ECR: Inicialmente, enviaremos as imagens conteinerizadas da nossa aplicação para o ECR. Teremos três imagens no total: uma para o frontend, uma para o backend e uma para o banco de dados. O ECR garantirá que essas imagens sejam armazenadas de forma segura e prontas para serem implantadas no ambiente do ECS.
-
Configuração do ECS: Com as imagens armazenadas no ECR, passaremos para a configuração do ECS. No ECS, criaremos uma task definition (definição de tarefa) que define como nossa aplicação será executada em contêineres. Nessa definição, especificaremos as imagens a serem utilizadas, a configuração de recursos, as variáveis de ambiente, as portas de comunicação e outros detalhes necessários para a execução correta da aplicação.
-
Criação do Serviço com o Fargate: Com a task definition configurada, iremos criar um serviço no ECS utilizando o AWS Fargate. Esse serviço representará a instância em execução da nossa aplicação, garantindo que ela esteja sempre disponível e escalável. O Fargate cuidará do provisionamento dos recursos necessários, como capacidade de computação e memória, conforme a demanda da aplicação.
Ao seguir esse fluxo de deploy, garantiremos a implantação automatizada, segura e escalável da nossa aplicação