Blog Post

Os passos para começar a implantar o DevOps no seu negócio

A implantação do DevOps vai depender do nível de maturidade das equipes de TI

Para começar a jornada para implantação de DevOps nas equipes de TI nas empresas é preciso saber em que momento a empresa está, ou seja, é preciso identificar qual o Grau de Maturidade DevOps, e antes de começar a ler esse texto faça o teste aqui.

Depois de identificado o Grau de Maturidade podemos organizar uma estratégia de evolução, seguindo o nível de maturidade de cada um dos 5 pilares, Cultura, Automação, Fluxo, Medição e Compartilhamento. É muito importante que a estratégia esteja bem definida, sem metas e sem visibilidades não é possível alcançar o objetivo final.

Os passos para chegar lá

1) Aumentar as visibilidades de tudo o que está acontecendo. Dessa forma, fica mais fácil compreender onde estão os desperdícios e encontrar oportunidades de melhoria.

2) Saber quanto tempo leva uma implantação, quais os problemas são encontrados durante o processo, assim, fica mais fácil identificar em que momento estão os gargalos e como atacar. É possível utilizar diversas ferramentas que fornecem inúmeros dados.

3) Ter uma ferramenta de integração contínua, onde seja possível rodar os testes, ter uma suíte de testes automatizadas que irá informar o status dos testes realizados. A ideia é que você possa utilizar ferramentas de automação para ter esse processo visível e automatizado.

Resumindo, em um processo perfeito a automação começa ao realizar um commit na branch master e fazer a entrega em produção sem qualquer outra intervenção, passando pelas etapas de qualidade, incluindo testes pós produção, até chegar em ambiente de produção sem que ninguém perceba o que aconteceu.

Eu preciso ter uma infraestrutura para cada ambiente?

Não necessariamente.

Existem diversas tecnologias de computação em nuvem, conteinerização, orquestração e várias ferramentas que ajudam a utilizar a infraestrutura de forma mais dinâmica, deixando as configurações de provisionamento também automatizadas, fazendo isso de forma rápida.

Infraestrutura como código (IaC)

Isso significa trazer para o código as configurações esperadas de infraestrutura, dessa forma muitas das configurações que são manuais e precisam de documentações passam a ser codificadas.

Normalmente são usados arquivos de configuração onde o desenvolvedor passa a estar muito mais envolvido em configurações de infraestrutura e o pessoal de operações passa a ser exigido mais cedo nas fases de desenvolvimento.

Da mesma forma que a aplicação é codificada, também são escritos códigos que descrevem o comportamento da infraestrutura, dessa forma as ferramentas de infraestrutura como código fazem essa configuração de forma automatizada.

Se você consegue transformar todas as configurações de infraestrutura como código é muito mais fácil repetir os ambientes apenas com as declarações sem precisar se preocupar em fazer todo o setup de uma nova máquina.

Com o uso de infraestrutura como código fica até mais fácil para visualizar quais as configurações que foram adotadas e de certa forma serve também como documentação.

Ao invés de alguém precisar acessar a máquina e alterar uma configuração, ao documentar isso, basta olhar as declarações do código escrito, dando até mais segurança para as mudanças, pois os arquivos de configuração podem ser versionados e adotados processos de pull requests, rastreabilidade de alterações e logs de mudanças.

Bom… já partimos da ideia de que do ponto de vista do desenvolvedor o mais importante é desenvolver uma funcionalidade mais rápido.

Chegamos a ideia de que na verdade, a aplicação precisa ser entregue em produção da forma mais estável possível, aqui os conceitos de Dev e Ops se misturam e cada responsável passa a estar mais envolvido com os outros processos.

Lembrando que o DevOps é bem mais do que apenas ferramentas, é alinhar as motivações das equipes e ter mudança de cultura.

Transforme com a Datainfo, converse com um consultor