Projeto CP-Planta
Introdução
Este documento descreve a infraestrutura necessária para o projeto CP-Planta, incluindo o provisionamento de recursos na AWS, arquiteturas de referência e estratégias de contingência com uso de infraestrutura alternativa na Azure.
Requisitos de Infraestrutura
Recursos AWS
Serão utilizada duas instâncias EC2 do tipo t2.medium
na região us-east-2
(Ohio). A estimativa de custos pode ser visualizada no link abaixo:
Estimativa de Custos - AWS Pricing Calculator
Arquitetura
A arquitetura inicial envolve a utilização de um orquestrador como Docker Swarm para gerenciar os componentes do backend, banco de dados, frontend e runners do projeto, abstraindo a necessidade de balancemento de carga de processamento e de escolher uma VM específica para cada componente.
Contingência e Alternativas
Além do provisionamento na AWS, há um plano alternativo usando a assinatura Azure Students da PUCRS.
Implementações em Terraform
Apesar de o plano principal utilizar a infraestrutura fornecida pela AGES e PUCRS, implementações em Terraform para Cloud Azure foram preparadas. Estas implementações estão disponíveis e funcionais, podendo ser acionadas em caso de problemas que inviabilizem o uso da infraestrutura principal. Assim, teremos uma segunda cloud disponível no caso de indiponibilidade, evitando transtornos em apresentações para o cliente.
Sumário do Planejemento de Custos e Artefatos ded Código
Os artefatos de código estão presentes no repositório CP-Planta/Infrastructure. Na branch main já está presente o projeto de Ansible a ser utilizado em qualquer uma das situações de deploy (padrão/backup). Na branch backup-azure_cloud_deploy consta além do projeto Ansible, o código Terraforn para deploy na Azure. Por fim, backup-aws_deploy_custom, que traduz o Terraform para AWS. Este úlitmo provavelmente nõa será utilizado dado as combinações com o arquiteto de Software da Ages, que relatou que tal processo pode ser delagado à ele, abstraindo complexidade potencialmente desnecessária ao projeto.
Segue também o .pdf exportado diretamente do 'Price Calculator' na AWS com detalhes sobre o orçamento:
Considerações Finais
A infraestrutura proposta será suficiente para suportar o desenvolvimento e operações do projeto CP-Planta, fornecendo a flexibilidade necessária para lidar com possíveis imprevistos.