Skip to content

GitLab

  • Menu
Projects Groups Snippets
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
  • D decola-wiki
  • Project information
    • Project information
    • Activity
    • Labels
    • Planning hierarchy
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 0
    • Issues 0
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 0
    • Merge requests 0
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Monitor
    • Monitor
    • Metrics
    • Incidents
  • Packages & Registries
    • Packages & Registries
    • Package Registry
    • Infrastructure Registry
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • Plataforma onboarding para novos colaboradores
  • decola-wiki
  • Wiki
  • Infraestrutura

Last edited by Lucas Buffet Jul 03, 2024
Page history

Infraestrutura

Home Escopo Gerência Processo Mockups Configuração Arquitetura DataBase Infra Estudos

Infraestrutura do Sistema

Aqui serão descritas todas as informações referentes à infraestrutura do projeto.

Infraestrutura:

  • Foi utilizado o provedor de infraestrutura na nuvem AWS.

Recursos de Rede:

  • Foi criada uma rede virtual privada, VPC na AWS, para alocar subredes e provisionar os recursos de infraestrutura e aplicações.

  • Foram utilizados Firewalls virtuais, Security Groups na AWS, como um recurso de segurança de rede.

  • Foi utilizado um serviço de entrega de conteúdo (CDN), CloudFront na AWS, para melhorar a performance de entrega de arquivos estáticos.


Recursos de Computação:

  • Foi criada uma instância de máquina virtual, EC2 na AWS, para hospedar os componentes de software.

Recursos de Armazenamento:

  • Foi utilizado um serviço armazenamento de arquivos estáticos, S3 na AWS.

  • Foi utilizado um volume de armazenamento, EBS na AWS, para a persistência dos dados independente da instância computacional que opera sobre ele.


IaC:

  • Para o provisionamento de infraestrutura no provedor AWS, foi utilizada uma ferramenta de infraestrutura como código (IaC), o Terraform.

Resumo:

Componentes de Infraestrutura:

  • VPC e Subnets: alocar os componentes de infra.

  • Instância EC2: hospedagem de três containers (API REST Backend, Banco de dados, GitLab Runner).

  • Volume EBS: persistência dos dados do banco de dados.

  • Repositório ECR: registro das imagens da aplicação backend.

  • Buckets S3: armazenamento/provisionamento dos arquivos da aplicação frontend e conteúdos (PDFs, Videos, Imagens).

  • Distribuições CloudFront: cache dos arquivos dos buckets S3.


Funcionamento:

  • O usuário através do seu navegador vai acessar o sistema com o nome de domínio. O navegador faz uma requisição DNS e descobre o endereço IP da aplicação. O IP aponta para algum dos servidores da AWS do serviço Amazon CloudFront, chamados Edge Servers. Estes servidores, gerenciados pela AWS, possuem cache dos arquivos que estão armazenados no Bucket S3 e são servidos para os clientes. Os arquivos que estão armazenados no Bucket S3 são o próprio código fonte da aplicação frontend (HTML, JS e CSS), que roda no navegador do cliente.

  • A aplicação frontend realiza requisições para o servidor Backend que consta com uma API para operar sobre os dados do banco.



Diagrama de infraestrutura

arquiteturaparte1

arquiteturaparte2

Clone repository
  • Arquitetura
  • Configuração
  • DataBase
  • Escopo
  • Estudos
  • Gerência
  • Infraestrutura
  • Mockups
  • Processo
  • Retrospectivas
  • banco_dados
  • configuracao
  • Home