Eu sou de Infra a muito tempo. Perdi a contas de quantas vezes eu instalei Windows, Active Directory, DNS, DHCP e outros recursos necessários para manter uma rede e uma infraestrutura funcionando. E quando temos que manter vários ambientes, garantindo que a infra funcione tanto no ambiente de produção quanto no de desenvolvimento além de outros ambientes que devem seguir o mesmo padrão.
Para mim,”Infrastructure as a Code” não é algo tão novo para mim. Eu me recordo de quando eu trabalhava em uma escola de informatica e acabamos por automatizar a criação dos ambientes de sala de aula com a instalação do Windows com rede configurada, AD, SQL e outras soluções dos treinamentos. Automatizamos grande parte do processo com scripts, depois centralizamos a execução, e cada vez mais a gente implementava métodos de execução para tivéssemos o minimo de necessidade de intervenção manual.
Claro que essa evolução só foi possível pois os sistemas também evoluíram e permitiram esse tipo de implementação pudesse ser feita. Hoje com Cloud e Virtualização é ainda mais fácil tratar infra como código no gerenciamento de infraestrutura (redes, máquinas virtuais, balanceadores de carga e topologia de conexão).
IaC é uma prática chave para DevOps e é usado em conjunto com a entrega contínua.
Usando um modelo descritivo podemos ter em mão todo o gerenciamento do ciclo de vida da Infra como um código e ainda com podemos contar com uma série de softwares que podem nos auxiliar nessa tarefa:
Algumas das soluções utilizadas no gerenciamento e Vagrant, Puppet e Chef., Ansible, SaltStack e muitos outros…
O maior desafio do profissional de Infra hoje é lidar com essas novas tecnologias que usam código (Muitas vezes um Domain Specific Language (DSL) ou até mesmo Embedded Ruby (ERB)) e talvez alguma outra linguagem que eu acabei deixando passar. De qualquer maneira é hora de repensar e olhar de Infra de outro modo. Esse é o futuro, isso é DevOps.
Dica: Esse site faz um comparativo entre essas principais soluções : https://www.intigua.com/blog/puppet-vs.-chef-vs.-ansible-vs.-saltstack
Seja o primeiro a comentar