O que é DevOps e como funciona?

-

DevOps é um conjunto de conceitos e uma forma de trabalho que se originou das abordagens Agile e Lean para operações. Ele se refere a equipes de desenvolvimento de software (Dev) e operações de tecnologia da informação (Ops) trabalhando juntas para melhorar a produtividade, automatizar a infraestrutura e medir continuamente o desempenho do aplicativo. Tudo isso para entregar mais soluções de software em um período mais curto.

DevOps também recebeu uma definição acadêmica de três pesquisadores de ciência da computação que trabalham no Centro americano de pesquisa e desenvolvimento na Pensilvânia e Organização de Pesquisa Científica e Industrial da Commonwealth. Len baixo, Dr.Ingo Weber e Dr. definiram-no como um "conjunto de práticas destinadas a reduzir o tempo entre a confirmação de uma mudança em um sistema e a mudança ser colocada em produção normal, garantindo alta qualidade."

Desenvolvedores e administradores de sistema estão trabalhando juntos em todos os estágios do ciclo de desenvolvimento. Isso inclui a escrita real do código, teste e suporte à produção.

Para entender melhor as diferenças que essa abordagem traz para a mesa, vamos dar uma olhada no que significa um ciclo de desenvolvimento normal, desde a escrita do código real até o teste, implementação e produção. Em seguida, veremos como esse processo é efetivamente transformado por meio de uma forma de trabalho DevOps e falaremos um pouco sobre os principais princípios da história por trás do DevOps.

Visão geral do DevOps Graphic Steer Desenvolver Teste Implementar Operate

O lado do desenvolvimento de software da codificação

As empresas de software estão competindo umas com as outras para criar produtos ou atualizações novos e interessantes para seus clientes. O software começa com um desenvolvedor ou uma equipe inteira que escreve o código para novos produtos, recursos, atualizações, correções de bugs e assim por diante. Em um ambiente de trabalho não DevOps, o desenvolvedor não saberá se o código funciona até que seja colocado em produção.

No entanto, isso leva semanas antes que o código entre em produção. Nesse meio tempo, eles também precisam cuidar do próximo lote de códigos com antecedência e, ao mesmo tempo, ter o código pendente em mente.

Também interessante: DevOps e projetos de TI no mundo real

Quando um grande pedaço de código é eventualmente implantado no ambiente de produção, o erro ocasional pode ocorrer. Isso significa que os desenvolvedores precisam parar no que estão trabalhando e recuperar o código que escreveram há algumas semanas para ajustá-lo de forma que nenhum erro ocorra.

Por que os erros em primeiro lugar? Principalmente porque o ambiente de desenvolvimento é um pouco diferente do ambiente de produção.

O lado das operações de TI da codificação

A equipe de operações é responsável por manter o ambiente de produção. Isso se traduz em dezenas de servidores que eles precisam administrar corretamente. Isso ocorre para que os clientes e consumidores nunca fiquem de fora de seus produtos e softwares favoritos.

Quando não estão lidando com problemas de servidor, a equipe de operações se encarrega de implantar o novo código neste ambiente de produção. Normalmente, as coisas não vão bem e poucos ajustes precisam ser feitos para que o código se ajuste adequadamente ao ambiente. É por isso que a implantação de código geralmente é programada para acontecer uma ou duas vezes por mês.

Depois que o código é implantado, é responsabilidade das equipes de operação garantir que não haja erros e resolvê-los, se houver. Nesta fase, um membro da equipe de operações pode se sentir um pouco frustrado porque os desenvolvedores acabaram de lançar um monte de código e agora eles têm que lidar com isso e seus muitos problemas.

As pessoas se perguntavam como colocar essas duas equipes na mesma sala e deixá-las trabalhar melhor juntas. Como podemos levá-los a aprender a pensar da mesma forma e quebrar qualquer mal-entendido sobre o ambiente uns dos outros e compartilhar suas responsabilidades? Foi aí que a ideia do DevOps aconteceu.

Entre na equipe DevOps

O primeiro pré-requisito principal para que qualquer equipe de DevOps funcione adequadamente é uma pequena mudança de mentalidade. Eles trabalhariam juntos para automatizar a infraestrutura, automatizar fluxos de trabalho e medir o desempenho dos aplicativos juntos. Isso visa melhorar a produtividade geral e a eficácia de todo o ciclo de desenvolvimento.

Uma equipe de DevOps começará a se concentrar na automação no início, desde o teste de código até fluxos de trabalho e infraestrutura. Seu fluxo de trabalho mudará. Os desenvolvedores não escreverão um grande pacote de código e, em seguida, entregá-lo-ão mais à equipe de operações. Eles escreverão pequenos pedaços de código e esses bits serão implantados no mesmo dia ou no próximo.

Gráfico de processo de fluxo de trabalho DevOps

Eles vão consertar todos os bugs juntos. Se o código for escrito em pequenos pedaços, ele pode ser implantado com mais frequência. Isso irá melhorar a produtividade e eficiência de todo o departamento.

Uma coisa é certa: uma equipe de DevOps está mais bem preparada para responder às necessidades do mercado e entregar produtos em uma escala maior. Em vez de construir software e configurar a infraestrutura manualmente, eles trabalham de acordo com um código de gerenciamento de configuração que descreve como tudo deve ser construído. Uma grande mudança que uma equipe de DevOps terá que trabalhar é implementar e adotar uma disciplina de monitoramento e otimização de desempenho de aplicativos quase em tempo real.

A história do DevOps

Podemos chamar o DevOps de filho adotivo do movimento Agile System Administration e também neto do movimento Enterprise Systems Management (ESM). O ESM ganhou fama em meados dos anos 2000 e, desde então, surgiram várias conferências e campos de treinamento e caras falando sobre um processo de desenvolvimento melhor.

O primeiro Conferência Velocity aconteceu em 2008, e era tudo sobre desempenho da web e melhores práticas de operações. Isso seguiu vários exemplos importantes de colaboração de desenvolvedor / operações de como um ciclo de desenvolvimento mais seguro e rápido poderia ser implantado. Mais profissionais começaram a pensar sobre esse novo conceito e como podem implementá-lo em seu fluxo de trabalho.

Em 2009, a primeira conferência nomeada Dias DevOps teve lugar na Bélgica. Um praticante ágil e gerente de projeto, Patrick Debois, fundou a conferência. Em 2012, tivemos o primeiro relatório State of DevOps, concebido e lançado por Alanna Brown da Fantoche. Mais se seguiram, e a adoção do DevOps começou uma coisa real.

Ferramentas necessárias para implementar DevOps

A metodologia DevOps não pode ser aplicada sem um conjunto de ferramentas que ajudam a automatizar e monitorar o fluxo de trabalho multifuncional, além de auxiliar na entrega final do software. Na “linguagem DevOps”, essas ferramentas são chamadas de “conjuntos de ferramentas. ” Existem sete categorias principais de conjuntos de ferramentas:

  1. Ferramentas de desenvolvimento de código
  2. Construir ferramentas para integração contínua de novo código e para manter o status de construção (como Jenkins, Gitlab, bitbucket)
  3. Ferramentas de teste
  4. Ferramentas de embalagem
  5. Ferramentas de automação de lançamento
  6. Ferramentas de configuração que ajudam na configuração e gestão da infraestrutura (tais ferramentas são Terraform, Ansible, Fantoche)
  7. Ferramentas de monitoramento que ajudam a rastrear o desempenho do aplicativo e a experiência do usuário final.

No geral, DevOps é um conjunto de práticas e metodologia que promove a colaboração entre desenvolvedores e operações. Isso ajuda a inovar com mais rapidez, ser mais responsivo a quaisquer necessidades de negócios e mercado, colaborar melhor e lançar recursos mais frequentes e novos códigos. DevOps começa com uma nova mentalidade, todo um novo grupo de ferramentas e um pouco de polimento de habilidades no meio.

Crédito da foto: o recurso foto foi levado por Aqui é Engenharia RA Eng..
Fonte: Len baixo, Dr.Ingo Weber e Dr. (DevOps: a perspectiva de um arquiteto de software)

Ana maria filip
Ana maria filip
Jornalista de tecnologia na TechAcute
- Publicidade -
- Publicidade -
- Publicidade -
- Publicidade -
- Publicidade -
- Publicidade -
- Publicidade -
- Publicidade -
- Publicidade -
- Publicidade -
- Publicidade -