DevOps: introdução, como surgiu, conceitos e ferramentas.

Standard

Meu trabalho de conclusão de curso foi em cima do tema DevOps, no qual vem ganhando bastante atenção nos últimos tempos e que também me manteve motivado até o fim do trabalho. Será abordado um pouco da introdução, como ele surgiu, os principais conceitos e algumas ferramentas indicadas, além de links bons para leitura.

Introdução

DevOps é um movimento cultural que foca no aperfeiçoamento da comunicação, colaboração e integração entre desenvolvedores de software e administradores da
infraestrutura de TI.
O objetivo é fazer com que desenvolvedores e engenheiros trabalhem juntos, com
foco em automação no maior número de processos possíveis no desenvolvimento de
software. Buscando modificar a antiga dinâmica, onde desenvolvedores e gerentes de infra
eram vistos como ilhas isoladas livres de intercomunicação e cooperativismo.

Como surgiu

O movimento DevOps não começou em apenas um lugar, existem muitos lugares que
dão pistas sobre as origens do termo, por volta de 2008 começa-se a utilizar o termo
infraestrutura ágil em algumas listas de discussão com foco em desenvolvimento ágil, e na mesma época durante evento o Agile 2008.
O Agile abriu caminho para o DevOps, desviando as direções das metodologias de
desenvolvimento de software modelo cascata e indo em direção a um ciclo continuo de
desenvolvimento.
O termo DevOps foi criado durante a conferência Velocity da O’Reilly em 2009, onde
John Allspaw (Etsy.com) e Paul Hammond (Typekit) apresentaram um, com o objetivo de
unir desenvolvedores(Dev) e administradores da infra de TI (Ops) de forma a promover a
integração continua até a entrega.
Um dos participantes foi um entusiasta do assunto era Patrick Debois, que após ter
visto a palestra citada a cima ficou muito animado, tendo a grande ideia de criar um encontro chamado DevOpsDay, que teve seu primeiro encontro em Ghent – Bélgica no final de 2009, o encontro durou 2 dias, e foi onde o assunto começou a ser conhecido pelo mundo.

Conceitos

O DevOps se mantêm em quatro pilares principais, conhecidos pelas siglas C.A.M.S,
são eles:

  • Cultura, as equipes precisam ter colaboração, manter uma relação saudável
    entre as áreas, mudança de comportamento, flexibilidade, troca de ideia e
    principalmente trabalharem juntos, evitando responsabilidades centralizadas e
    incentivando a criação de equipes multidisciplinares;
  • Automação, ferramentas entram em cena para automatizar o maior número
    de processos, sendo eles: automação para liberação de versão, automação de
    build, de provisionamento de ambientes para testes, monitoramento ou
    qualquer outro processo, é interessante identificar os processos que sejam
    repetitivos ou que levem bastante tempo e buscar resolver o quanto antes,
    evitando que se torne algo mais difícil de alterar futuramente;
  • Medição/Avaliação, deve-se medir tudo que possível, performance,
    processos e interações e até mesmo pessoas. Sem medir, não se pode melhorar
    nem aperfeiçoar os processos;
  • Compartilhamento, ter uma boa comunicação entre as equipes, incentivar as
    pessoas a se comunicarem e compartilharem ideias e problemas é um ponto
    crucial numa iniciativa do DevOps. Histórias de sucesso atraem novos
    talentos para o movimento e criam um excelente canal de feedback, que
    fomentam um processo de melhoria contínua; O DevOps é um movimento em constante construção e definição, seguir ou aplicar a cultura DevOps em uma empresa parte principalmente da mudança de cultura.

O DevOps é um movimento em constante construção e definição, seguir ou aplicar a
cultura DevOps em uma empresa parte principalmente da mudança de cultura.

Ferramentas

Um dos principais princípios do DevOps é investir em automação. A automação
permite executar tarefas ou processos mais rapidamente e diminuir a possibilidade de erros
humanos e para isso podem ser citadas algumas ferramentas:
Vagrant
Ferramenta que permite a construção de ambientes virtualizados de desenvolvimento
completos, com um fluxo de trabalho fácil e simples de usar e com foco na automação.

Docker
Docker é uma plataforma aberta para desenvolvedores e administradores de sistema,
que ajuda na criação e execução de aplicações distribuídas.

Puppet
Ferramenta de código aberto para gerenciamento de configuração. A ideia é ter a
configuração centralizada e sendo distribuída pra várias maquinas ou servidores na rede;

Chef
Chef permite automatizar a forma como se constrói, implanta e gerencia a
infraestrutura, tornando versionáveis e testável.

Composer
Gerenciador de dependências da aplicação, permite manter e incluir novos
pacotes/bibliotecas necessárias facilmente na aplicação.

New Relic
É uma ferramenta de monitoramento de aplicação onde permite análise da aplicação
e ajuda pessoas que constroem software a entender o que os históricos de dados estão
tentando dizer-lhes, através da coleta, armazenamento e analise dos mesmos.
Ferramentas existem muitas e surgem mais a cada dia, basta analisar qual a
necessidade real para cada caso.

Links para leitura

Link apresentação monografia I:
http://pt.slideshare.net/alefevariani/devops-49735272

Link monografia completa:
https://github.com/AlefeVariani/MonografiaDevOpsAlefeVariani

O que é DevOps afinal?
http://gutocarvalho.net/octopress/2013/03/16/o-que-e-um-devops-afinal

Agile DevOps: Quebrando os silos.
http://www.ibm.com/developerworks/br/library/a-devops9/#ibm-pcon

O que é DevOps? Metodologia, benefícios e ferramentas.
http://newrelic.com/devops/what-is-devops

Cultura DevOps e integração entre infra e devel
http://pt.slideshare.net/GutoCarvalho/cultura-devops-e-integrao-entre-infra-e-devel

DevOps.com
http://devops.com/

Blog do Patrick Debois referencias sobre DevOps
http://www.jedi.be/blog/

DevOps Brasil
http://devops-br.org/

SecOps – Segurança em DevOps
http://imasters.com.br/infra/seguranca/secops-seguranca-em-devops/

Ferramentas para criar uma cultura eficiente de DevOps
http://computerworld.com.br/tecnologia/2015/01/30/7-ferramentas-para-criar-uma-cultura-de-devops-correta

Eventos oficiais do DevOps que acontecem pelo mundo
http://www.devopsdays.org/

Conclusão

A ideia deste artigo era dar uma visão geral sobre o assunto DevOps e continuar a pesquisa/leitura com os links de ajuda, os quais me ajudaram bastante, principalmente o artigo do Guto Carvalho.

Anúncios

Deixe uma Resposta

Preencha os seus detalhes abaixo ou clique num ícone para iniciar sessão:

Logótipo da WordPress.com

Está a comentar usando a sua conta WordPress.com Terminar Sessão / Alterar )

Imagem do Twitter

Está a comentar usando a sua conta Twitter Terminar Sessão / Alterar )

Facebook photo

Está a comentar usando a sua conta Facebook Terminar Sessão / Alterar )

Google+ photo

Está a comentar usando a sua conta Google+ Terminar Sessão / Alterar )

Connecting to %s