Taller aproxima relacionamento com a Canonical
Juju vai bem, obrigado!
No dia 01/08/2014, aconteceu um hangout on air entre a galera da Taller e o pessoal da Canonical (empresa responsável pelo sistema operacional Ubuntu e que promove o software livre, com colaboradores em mais de 30 países) com o objetivo de receber feedbacks acerca do Juju. O convite surgiu devido ao fato de sermos uma das primeiras empresas que adotaram o Juju para trabalhar no ambiente local e, por conta disso, podermos identificar melhorias.
Esta é uma ferramenta que ninguém sabia como usar e nós fomos early adopters; somos uma das únicas com a possibilidade de fornecer a eles este tipo de feedback.
Para que você possa entender a importância deste momento, nossa relação com a Canonical e o quanto ele foi animador, vamos contextualizar.
Um dos grandes problemas que podem estar relacionados ao deploy é a divergência de configuração de ambientes. A partir disto, dificuldades começam a surgir somente quando já estamos no ambiente final de produção, pois ele é muito trabalhoso de replicar e também de construir o mesmo ambiente/topologia só para testes, já que são topologias complexas e vários softwares e máquinas são envolvidos.
Com base nisto nós, da Taller, começamos a pensar em como criar um sistema para solucionar esse tipo de dificuldade. Iniciamos a arquitetura de um sistema orientado a serviços, onde haveria a utilização de tipos de relações entre serviços que facilitariam o arranjo da topologia. Assim fizemos uma pesquisa para ver se já existia algo que atendesse essas necessidades, e foi quando encontramos o Juju.
Juju trata-se, resumidamente, de uma maneira de automatizar sua infraestrutura em nuvem. Nosso primeiro contato com a ferramenta foi através do Docker, que é um mecanismo de gerenciamento deLinux Containers (LXC) e, a partir dele, pensamos em como poderíamos criar uma ferramenta que orquestrasse um ambiente e os diferentes tipos de topologia.Podemos considerar esta a maior vantagen na utilização do Juju: solucionar a mão de obra repetitiva e mecânica na replicação de ambientes e topologias inteiras.
Juju na prática
Esta é uma ferramenta que atualmente está em desenvolvimento e em período de testes. A maior instabilidade está no uso em ambiente de desenvolvimento. Com o início dos estudos e utilização do Juju, reparamos que não havia um charm de Drupal, ou seja, não tinha uma maneira de você instalá-lo e configurá-lo, não possuía esse serviço pronto e otimizado para enterprise com todas as experiências e o know how que nós estamos habituados. Diante deste quadro, nós decidimos desenvolve-lo.
Como estávamos testando o Juju, nós fizemos o charm em Bash, e uma vez que conseguimos fazê-lo funcionar e passamos a utilizá-lo, optamos por empregar uma ferramenta que facilitasse esse gerenciamento de configuração e setup do serviço. Entre as opções encontradas, analisamos Puppet, Chef, Saltstack e Ansible, optando pela última por ser a mais simples, compreensível e possuir uma pequena curva de aprendizado. O resultado desta experimentação foi o charm para Drupal em Ansible.
Durante esta jornada, chamamos a atenção do time responsável pelo Juju na Canonical, com o qual já vínhamos nos comunicando via IRC. Então os informamos de que tínhamos alguns pontos a tratar, como alguns problemas e propostas de soluções pelas quais optamos e mais sugestões de melhoria.
A partir disto foi marcado o hangout que contou com a participação do time da Taller, contando diretamente com o Sebas, Handrus e Renato(que, inclusive, já estão trabalhando com o Juju localmente) e o time da Canonical representados por Jorge Castro, Antonio Rosales e José Antonio Rey.
Durante o hangout foi criado um documento onde foram registradas todas as sugestões e que ainda está sendo construído diante das novas definições que vem acontecendo.
Melhoria contínua
Mais do que apenas uma conversa entre duas empresas, este foi um momento que tornou palpável a visão de que essa é uma das ferramentas que se alinham à cultura DevOps, onde poderemos automatizar os processos de deploy, configuração e setup de topologia e ainda garantir a qualidade e redução de desperdício. Isto libera tempo para nos concentrarmos no que realmente importa: criar soluções inovadoras.
Nossos colegas da Canonical receberam muito bem as sugestões e o feedback, sendo que alguns deles serão tratados nos próximos sprints do Juju. Este cenário só reforça o potencial da criação coletiva, de ter uma comunidade colaborando e participando da construção de uma tecnologia. Nós não queremos só utilizar algo, queremos ser parte ativa do processo de concepção e execução de ferramentas transformadoras. E é por isso que ficamos tão animados em participar deste processo específico e com a atenção que recebemos.
Neste link você pode ter acesso ao vídeo gravado do hangout.