A Afilio, empresa focada em marketing de performance, migrou para a nuvem da Amazon Web Services (AWS) por meio da Mandic Cloud Solutions, empresa brasileira especializada em serviços profissionais em cloud com ofertas que contemplam consultoria, implantação, migração e gerenciamento de nuvem privada, pública e híbrida; automação em DevOps; engenharia de dados e analytics; entre outras soluções exclusivas. A companhia possui as principais certificações de qualidade, como ISO 20.000 e PCI-DSS e é reconhecida como AWS Managed Service Provider (MSP).
Anteriormente, a empresa tinha sua infraestrutura baseada em um data center na Europa e gostaria de migrar este workload para a AWS seguindo as práticas de arquitetura definidas pelo Well-Architected Framework. Dentre os requisitos do projetos é possível destacar os seguintes:
Inicialmente a Mandic Cloud Solutions, referência brasileira em gestão de cloud corporativa e parte do AWS Partner Network (APN) com nível Advanced, realizou um análise da arquitetura atual da aplicação na Afilio. Foram identificados que serviços da AWS seriam necessários para replicar a arquitetura. Apresentados alguns pontos de melhorias, foi iniciado este cenário de backlog para execução da migração.
Implementar uma pipeline de deployment para a aplicação foi essencial para permitir a evolução do software.
Na arquitetura proposta pela Manidc Cloud, algumas aplicações antes instaladas em servidores e gerenciados manualmente foram substituídos por serviços gerenciados pela própria AWS, resultando em uma gestão mais simples e com alta disponibilidade.
Ocorreu uma melhora significativa na performance da aplicação com o uso de serviços gerenciados da AWS, como Auto Scaling Groups, S3 e RDS.
A implantação do projeto seguiu os padrões de arquitetura definidos pelo Well-Architected Framework, que converteu-se em um no alto nível de disponibilidade geral da aplicação. O uso de escalonamento horizontal permite aumentar e diminuir o poder de processamento conforme a demanda.
A equipe de implantação da Mandic Cloud utilizou os serviços de pipeline da AWS para automatizar os processos de deployments da aplicação. O CodeCommit foi usado como repositório de código e um disparo automático foi configurado no CodePipeline sempre que um commit era feito na branch master. Como a aplicação é desenvolvida em PHP, não há necessidade de utilizar o CodeBuild para realizar o build da aplicação, pois o CodeDeploy foi formatado para atualizar a aplicação nas máquinas de um pool de Auto Scaling utilizando a estratégia de in-place deployment.
A infraestrutura de código aberta, Terraform, foi provisionada para a criação da infraestrutura necessária para a aplicação. As ferramentas Packer e Ansible foram formatadas para criar golden images com as dependências necessárias para o funcionamento da aplicação e realização do tuning de sistema operacional.
Diversas ferramentas são usadas para garantir que o ambiente permaneça seguro. A configuração de NACLs, Security Groups e CloudFront com WAF permite atingir um alto nível de segurança para toda a arquitetura e o aplicativo de software, o Client VPN, garante o acesso aos serviços privados provisionados de forma segura.
Segundo a Afilio, os custos com a infraestrutura anterior foram reduzidos em 35%.