Veja como funciona a gestão de configuração no mundo DevOps
A gestão de configuração nada mais é do que um conjunto de atividades realizadas para administrar alterações nos softwares. Estas atividades são feitas a partir da identificação do que precisa ser alterado e também do estabelecimento de relação entre os diversos artefatos tecnológicos. Também a definição de mecanismos para gerenciar diferentes versões, controlando e auditando o que foi modificado, faz parte do processo.
Em outras palavras, estamos falando de acompanhar de forma proativa as versões e atualizações que são aplicadas aos pacotes de software instalados, bem como dos locais e endereços de rede dos dispositivos de hardware.
Assim, quando um sistema precisa de um upgrade de hardware ou software, por exemplo, os profissionais responsáveis podem acessar a solução de gerenciamento de configuração e o banco de dados para ver o que está atualmente instalado. Com este controle, eles podem tomar uma decisão mais assertiva acerca das atualizações necessárias.
Agora, você sabe como funciona a gestão de configuração no mundo DevOps? É sobre isso que vamos conversar neste artigo. Continue lendo para entender como as ferramentas atuam para gerar os códigos de infraestrutura e de que forma a cultura DevOps auxilia na aceleração deste processo!
O que é e para que serve a gestão de configuração
Tradicionalmente, a gestão de configuração serve para assegurar que as ferramentas tecnológicas são como deveriam ser e estão em conformidade com os requisitos. Também visa a verificação contínua de que qualquer alteração seja adequadamente avaliada, autorizada e implementada.
Com a gestão de configuração, as empresas garantem que estão tomando decisões de negócios informadas, executando ações corretas e que todos os seus sistemas são úteis durante todo seus ciclos de vida.
E esta não é uma tarefa fácil! Muitas organizações lidam com centenas de milhares de requisitos, documentos, desenhos, planos de teste etc. que estão em constante mudanças. Esses itens devem estar prontamente disponíveis, protegidos e mantidos corretos em todos os momentos.
Com a gestão de configuração, é possível garantir que nada deve ser alterado sem revisão adequada e autorização. Além disso, é preciso projetar, produzir, distribuir, operar, manter, atualizar e modernizar centenas a milhares de itens, peças, montagens, programas de software etc.
O gerenciamento de configuração também é usado no desenvolvimento de software, onde é chamado de Unified Configuration Management (UCM). Usando UCM, os desenvolvedores podem manter código-fonte, documentação, problemas, mudanças solicitadas e as alterações realizadas sob controle.
Como a gestão de configuração funciona com a abordagem DevOps
Como sabemos, DevOps é uma abordagem de desenvolvimento de aplicações de software que prioriza comunicação, colaboração e integração entre o time de desenvolvedores e o de operações de TI. Ou seja, uma metodologia que busca fundir desenvolvimento e implantação em um processo mais simples, transferindo parte das responsabilidades da equipe de operação de volta para a equipe de desenvolvimento.
DevOps facilita desenvolvimento, integração, entrega e processos de monitoramento contínuos, derrubando os tradicionais ‘silos’ que existem entre as duas equipes, o que torna os projetos bem mais rápidos e eficientes.
Dentro disso, ao fazer gestão de configuração dentro de um projeto que está calcado em DevOps, o gestor de desenvolvimento está trabalhando para melhorar todo o processo (da criação das linhas de código à implementação), de uma forma otimizada, simplificada e eficiente.
Fazendo uma analogia um tanto quanto rudimentar, podemos ver DevOps como uma linha de montagem automatizada. Já as práticas de gestão de configuração seriam alguns dos robôs que executam seus trabalhos de forma consistente, para ajudar a garantir a produção contínua sem maiores problemas.
Para tanto, além das boas práticas, também são usadas algumas ferramentas que aceleram a geração de códigos de infraestrutura. Estas ferramentas preenchem as lacunas existentes e ajudam a diminuir os conflitos entre desenvolvedores e profissionais de operações.
De que forma a cultura DevOps acelera o processo de gestão de configuração
As práticas de DevOps aceleram e otimizam o processo de gestão de configuração. Isso porque, quando a infraestrutura é gerenciada como código, várias equipes podem colaborar e as práticas comprovadas de desenvolvimento ágil de software são trazidas também para o nível da operação de TI: versão, revisão por pares, testes automatizados e entrega contínua.
O gerenciamento automatizado de configurações é uma prática chave das equipes bem-sucedidas, que fazem uso da filosofia DevOps. Ou seja, as infraestruturas são geridas como código, fornecendo a base para práticas DevOps, como controle de versão, testes automatizados e entrega ininterrupta. Com isso, é possível implantar mudanças com confiança e obter recuperação de falhas mais rapidamente, liberando as equipes para serem mais ágeis e responsivas às necessidades do negócio.
Basicamente, a gestão de configuração feita dentro dos princípios de DevOps, resulta em:
Falha rápida, correção rápida
Abraçar pequenas mudanças contínuas para minimizar o risco, em vez de restringir e lotear muitas mudanças maiores subjugadas a grandes janelas de controle de mudanças.
Os benefícios disso são: o trabalho e as mudanças são desbloqueados para que o valor flua rapidamente para o cliente; a operação passa a ser automatizada, lançando as bases para a delegação de mudanças em qualquer sistema.
Infraestrutura como código
Capturar o provisionamento da administração do sistema e as tarefas operacionais permite a colaboração, testes e automação para infraestrutura efêmera.
Benefícios: a maioria dos backups de infraestrutura estática se tornam obsoletos porque o estado necessário para ser preservado é representado por dados; a infra pode se tornar efêmera, robusta, repetível, testável e delegável através de automação.
Conclusão: Gestão de configuração no mundo DevOps é a evolução da TI
Uma abordagem DevOps permite agilidade para fornecer valor aos clientes rapidamente. Para isso, é preciso que as auditorias sejam feitas com mais frequência e rigor e as alterações devem ser testáveis.
Também é muito importante que os times (desenvolvimento e operações) se ambiente com a filosofia DevOps. Ela representa uma quebra de paradigmas não apenas para o gestor, mas também para todos os profissionais envolvidos nos projetos.
Você já usa DevOps nos processos de gestão de configuração da sua empresa? O que achou deste artigo? Compartilhe-o em suas redes sociais e aproveite para nos seguir também no Facebook, Twitter, LinkedIn e Youtube!