Closed deniojunior closed 4 years ago
Como se trata de um código open source, iremos tentar incluir o máximo viável de serviços gratuitos. Com isso, podemos atingir o pior caso no contexto de infra como código: utilizar serviços de diversos provedores diferentes, de forma que nenhuma ferramenta consiga cobrir as nossas necessidades.
Mesmo neste pior caso, acredito seja uma boa mantermos a infra como código, mesmo que a alternativa seja construir um código que opera a infra via chamadas de API.
O terraform é equivalente ao ansible ou seriam escopos diferentes?
@rodrigondec Desculpa, só hoje que vi a sua dúvida...
Pelo vídeo que você me mandou lá no Discord, acho que você já deve ter entendido a diferença hehe, mas só pra deixar registrado, pelo o que eu conheço do Ansible, vejo que são escopos diferentes.
O Ansible é uma ferramenta de automação enquanto que o Terraform é uma ferramenta que descreve a infra em si (como código), mantendo o estado atual e permitindo que alterações de infra sejam feitos seguindo um pipeline de código mesmo, como uma entrega de uma feature no backend, por exemplo.
Neste sentido, não vejo Ansible e Terraform como ferramentas excludentes, mas sim complementares. Você pode manter a sua infra utilizando Terraform e ter algumas automações com o Ansible também.
Achei essa imagem aqui que ilustra bem as diferenças:
Conforme reunião pelo Discord, definimos que iremos utilizar a abordade de Infra como Código com Terraform.
Resumo
Premissa inicial: hospedar os nossos serviços em algum(s) PaaS de Cloud Computing (ainda à ser definido qual(is)).
Acredito que um ponto muito importante do projeto é termos a nossa infra como código, pois assim teremos uma melhor documentação e controle sobre ela, facilitando o gerenciamento, operação e contribuições da comunidade.
Pontos positivos dessa abordagem
Ferramentas
A escolha da ferramenta utilizada irá depender diretamente da arquitetura da aplicação e da escolha do PaaS Cloud Computing que iremos hospedar os nossos serviços, isto porque algumas ferramentas podem não dar suporte para o que precisamos.
Particularmente, tenho utilizado o Terraform e acredito que seja uma ferramenta excelente para ser aplicada, muito pela flexibilidade e suporte a diversas plataformas em nuvem. Gostaria de levantar esta discussão e documentar as nossas definições nesta issue.