Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
© 2016 New Relic, Inc. | +55 800 8783134 | br.newrelic.com | www.twitter.com/newrelic
eBook
Explorando
a DevOps
O que ela ...
© 2016 New Relic, Inc. | +55 800 8783134 | br.newrelic.com | www.twitter.com/newrelic
Sumário
INTRODUÇÃO 	 	03
CAPÍTULO 1	...
eBook
03
Explorando a DevOps: O que ela é e por que é importante para sua empresa
© 2016 New Relic, Inc. | +55 800 8783134...
© 2016 New Relic, Inc. | +55 800 8783134 | br.newrelic.com | www.twitter.com/newrelic
CAPÍTULO 1
O que é DevOps?
eBook
05
Explorando a DevOps: O que ela é e por que é importante para sua empresa
© 2016 New Relic, Inc. | +55 800 8783134...
© 2016 New Relic, Inc. | +55 800 8783134 | br.newrelic.com | www.twitter.com/newrelic
CAPÍTULO 2
De onde surgiu
a DevOps?
eBook
07
Explorando a DevOps: O que ela é e por que é importante para sua empresa
© 2016 New Relic, Inc. | +55 800 8783134...
© 2016 New Relic, Inc. | +55 800 8783134 | br.newrelic.com | www.twitter.com/newrelic
CAPÍTULO 3
Quais problemas levaram
à...
eBook
09
Explorando a DevOps: O que ela é e por que é importante para sua empresa
© 2016 New Relic, Inc. | +55 800 8783134...
© 2016 New Relic, Inc. | +55 800 8783134 | br.newrelic.com | www.twitter.com/newrelic
CAPÍTULO 4
Como a DevOps
“funciona”?
eBook
11
Explorando a DevOps: O que ela é e por que é importante para sua empresa
© 2016 New Relic, Inc. | +55 800 8783134...
eBook
12
Explorando a DevOps: O que ela é e por que é importante para sua empresa
© 2016 New Relic, Inc. | +55 800 8783134...
eBook
13
Explorando a DevOps: O que ela é e por que é importante para sua empresa
© 2016 New Relic, Inc. | +55 800 8783134...
© 2016 New Relic, Inc. | +55 800 8783134 | br.newrelic.com | www.twitter.com/newrelic
CAPÍTULO 5
Quem está adotando
a DevO...
eBook
15
Explorando a DevOps: O que ela é e por que é importante para sua empresa
© 2016 New Relic, Inc. | +55 800 8783134...
© 2016 New Relic, Inc. | +55 800 8783134 | br.newrelic.com | www.twitter.com/newrelic
CAPÍTULO 6
Por que seus parceiros
es...
eBook
17
Explorando a DevOps: O que ela é e por que é importante para sua empresa
© 2016 New Relic, Inc. | +55 800 8783134...
eBook
18
Explorando a DevOps: O que ela é e por que é importante para sua empresa
© 2016 New Relic, Inc. | +55 800 8783134...
eBook
19
Explorando a DevOps: O que ela é e por que é importante para sua empresa
© 2016 New Relic, Inc. | +55 800 8783134...
© 2016 New Relic, Inc. | +55 800 8783134 | br.newrelic.com | www.twitter.com/newrelic
CAPÍTULO 7
Como eu vou me beneficiar...
eBook
21
Explorando a DevOps: O que ela é e por que é importante para sua empresa
© 2016 New Relic, Inc. | +55 800 8783134...
eBook
22
Explorando a DevOps: O que ela é e por que é importante para sua empresa
© 2016 New Relic, Inc. | +55 800 8783134...
eBook
23
Explorando a DevOps: O que ela é e por que é importante para sua empresa
© 2016 New Relic, Inc. | +55 800 8783134...
©2008-16 New Relic, Inc. All rights reserved. 02.2016
Upcoming SlideShare
Loading in …5
×

Ebook DevOps | Por New Relic

2,292 views

Published on

Explorando a DevOps - Disponibilizado Por New Relic, no endereço: https://try.newrelic.com/rs/412-MZS-894/images/NavigatingDevOps_ptbr-A4.pdf

Published in: Technology

Ebook DevOps | Por New Relic

  1. 1. © 2016 New Relic, Inc. | +55 800 8783134 | br.newrelic.com | www.twitter.com/newrelic eBook Explorando a DevOps O que ela é e por que é importante para sua empresa
  2. 2. © 2016 New Relic, Inc. | +55 800 8783134 | br.newrelic.com | www.twitter.com/newrelic Sumário INTRODUÇÃO 03 CAPÍTULO 1 O que é DevOps? 04 CAPÍTULO 2 De onde surgiu a DevOps? 06 CAPÍTULO 3 Quais problemas levaram à criação da DevOps? 08 CAPÍTULO 4 Como a DevOps “funciona”? 10 CAPÍTULO 5 Quem está adotando a DevOps? 14 CAPÍTULO 6 Por que seus parceiros estão aderindo à DevOps? 16 CAPÍTULO 7 Como eu vou me beneficiar com a DevOps? 20 CONCLUSÃO 22
  3. 3. eBook 03 Explorando a DevOps: O que ela é e por que é importante para sua empresa © 2016 New Relic, Inc. | +55 800 8783134 | br.newrelic.com | www.twitter.com/newrelic Introdução Existem muitas opiniões diferentes sobre a DevOps, mas uma coisa é certa: ela é real. Em poucos anos, as manchetes sobre DevOps foram de “Mas o que é DevOps?”1 e “DevOps é uma fraude mal elaborada”2 para “DevOps chegou para ficar”3 e “Três razões por que sua startup vai sofrer sem DevOps.”4 Desde pequenas startups até as maiores empresas do mundo, o setor de TI está adotando a DevOps em ritmo acelerado. E mesmo assim, a maioria dos profissionais de TI não sabem nada sobre DevOps ou tem apenas um conhecimento superficial sobre o panorama geral. Se você está em alguma dessas categorias, este eBook foi feito para você. Nas próximas páginas, vamos responder algumas perguntas básicas, que lhe ajudarão a entender melhor a DevOps:5 • O que é DevOps? • De onde surgiu? • Quais problemas levaram à DevOps? • Como a DevOps “funciona”? • Qual a extensão da DevOps hoje em dia? • Por que as pessoas estão adotando a DevOps? • Quais são as vantagens? 1 James Turnbull, “What the F*** is DevOps?”, publicação em blog, https://coderwall.com/p/zhf8gq, maio de 2010. 2 Ted Dziuba, “Devops is a Poorly Executed Scam”, publicação em blog, http://widgetsandshit.com/teddziuba/2011/03/devops-scam.html, março de 2011. 3 “The New Normal of DevOps”, white paper da CA Technologies, http://www.ca.com/us/~/media/Files/whitepapers/the-new-normal-of-devops.pdf, dezembro de 2013. 4 “Three Reasons Your Startup Will Suffer Without DevOps”, Readwrite, http://readwrite.com/2014/01/01/three-reasons-your-startup-needs-devops-or-else. 5 Damon Edwards, “The History of DevOps”, IT Revolution Press, http://itrevolution.com/the-history-of-devops.
  4. 4. © 2016 New Relic, Inc. | +55 800 8783134 | br.newrelic.com | www.twitter.com/newrelic CAPÍTULO 1 O que é DevOps?
  5. 5. eBook 05 Explorando a DevOps: O que ela é e por que é importante para sua empresa © 2016 New Relic, Inc. | +55 800 8783134 | br.newrelic.com | www.twitter.com/newrelic O termo DevOps nasceu em 2009 por Patrick Debois, que se tornou um de seus gurus. O termo foi formado pela combinação de “desenvolvimento” e “operações”, o que oferece um ponto de partida para entender exatamente o que as pessoas querem dizer quando falam “DevOps”. É importante notar que DevOps não é um processo, tecnologia nem um padrão. Muitos devotos se referem à DevOps como uma “cultura”, um termo que a New Relic se favorece. Nós também utilizamos o termo “movimento DevOps”, quando falamos sobre tópicos como taxas de adesão e tendências para o futuro, e “ambiente DevOps”, para nos referirmos a uma organização de TI que tenha adotado a cultura DevOps. Este eBook ainda terá muito a dizer sobre DevOps, mas, para começar, precisamos de uma definição prática: DevOps (um amálgama de desenvolvimento e operações) é um método de desenvolvimento de software que enfatiza a comunicação, a colaboração e a integração entre os desenvolvedores de software e os profissionais de operações de tecnologia da informação (TI).6 6 “Big Data Drives Rapid Changes in Infrastructure and $232 Billion in IT Spending Through 2016”, Gartner Research, outubro de 2012. 7 Entrevista, 13 de março de 2014 O que é DevOps? “A DevOps bem-sucedida é o respeito mútuo entre o desenvolvimento e as operações. Você fornece um código de qualidade e eu vou fornecer uma plataforma de qualidade para executar esse código. Nós podemos ter opiniões diferentes sobre como fazer isso, mas, no fim do dia, nós estaremos juntos fornecendo um software que funciona como o prometido e atende às necessidades dos clientes”.7 —Mike Surma, Engenheiro de DevOps, Rackspace
  6. 6. © 2016 New Relic, Inc. | +55 800 8783134 | br.newrelic.com | www.twitter.com/newrelic CAPÍTULO 2 De onde surgiu a DevOps?
  7. 7. eBook 07 Explorando a DevOps: O que ela é e por que é importante para sua empresa © 2016 New Relic, Inc. | +55 800 8783134 | br.newrelic.com | www.twitter.com/newrelic Apesar do tom mítico de algumas histórias sobre sua origem, a DevOps não foi criada do nada. Na verdade, as sementes da DevOps foram plantadas há muito tempo e cultivadas por especialistas de TI que pensavam a frente de seu tempo em inúmeras disciplinas. Um comentarista disse que a DevOps é uma “plataforma perfeita”8 e existem muitas evidências para corroborar isso. Os dois antecedentes principais da DevOps são: • Gestão de sistemas corporativos. Muitos dos envolvidos na definição inicial de DevOps eram administradores de sistemas. Esses especialistas em operações trouxeram as práticas recomendadas da gestão de sistemas corporativos fundamentais para a DevOps, incluindo gerenciamento de configuração, monitoramento de sistemas, provisão automatizada e a abordagem com cadeias de ferramentas. • Desenvolvimento de Agile. Um observador chamou a DevOps de “Agile bombado”.9 A DevOps incorpora diversos princípios, métodos e práticas de Agile, como fornecimento contínuo, integração contínua, e colaboração.10 A DevOps leva os princípios do Agile à administração de sistemas e, finalmente, ao espectro completo das operações de TI. Nas palavras de um pioneiro da DevOps com 15 anos de experiência em administração de sistemas, o setor de operações estava precisando ser atualizado há muito tempo: Os administradores de sistemas se permitiram ficar para trás com relação ao que há de mais moderno. Essas novas tecnologias estão finalmente nos obrigando a modernizar nosso modo de trabalho. E eu acho que esse é um desafio bem-vindo e saudável.11 Por que isso é importante? Tem a ver com a credibilidade básica do movimento. Longe de ser um manifesto estranho de alguns geeks da TI, a origem da DevOps é, na verdade, bastante convencional. A DevOps une uma disciplina bem-estabelecida de operações com uma metodologia de desenvolvimento comprovada, onde cada metade do acrônimo representa as práticas recomendadas de cada ofício. E essa união reflete o fato da DevOps integrar desenvolvimento e operações em uma entidade resoluta com objetivos comuns: software de alta qualidade, lançamentos mais rápidos e maior satisfação dos clientes. Mais uma vez, são preocupações corporativas totalmente convencionais. De onde surgiu a DevOps? 8 Ernest Mueller, “What is DevOps?” the agile admin, http://theagileadmin.com/what-is-devops (dezembro de 2011). 9 Aniket Deshpande, “DevOps” an Extension of Agile Methodology – How It will Impact QA?”, Software Testing Help, http://www.softwaretestinghelp.com/devops-and-software-testing. 10 Jack Crews, “Agile Values, Principles and Practices”, apresentação online, http://www.slideshare.net/jackcrews/agile-values-principles-and-practices. 11 Ernest Mueller, “Q&A: Ernest Mueller on Bringing Agile to Operations”, http://dev2ops.org/2010/04/qa-ernest-mueller-on-bringing-agile-to-operations, 2010.
  8. 8. © 2016 New Relic, Inc. | +55 800 8783134 | br.newrelic.com | www.twitter.com/newrelic CAPÍTULO 3 Quais problemas levaram à criação da DevOps?
  9. 9. eBook 09 Explorando a DevOps: O que ela é e por que é importante para sua empresa © 2016 New Relic, Inc. | +55 800 8783134 | br.newrelic.com | www.twitter.com/newrelic Desenvolvedores e administradores de sistemas discordam em muitos aspectos, mas concordam que os clientes no setor corporativo frequentemente os puxam em duas direções diferentes. Por um lado, os usuários corporativos exigem mudanças: novos recursos, novos serviços, novos fluxos de receita, tudo o mais rapidamente possível. Ao mesmo tempo, eles também querem um sistema estável e sem interrupções. Isso gera um problema: O problema com o processo tradicional de fornecimento de software (ou sua ausência) é que ele não está bem adaptado para oferecer suporte a essas duas exigências simultaneamente. Portanto, as empresas precisam escolher entre fornecer mudanças rápidas e ficar com um ambiente de produção bagunçado ou manter um ambiente estável, porém ultrapassado.12 Não é de surpreender que nenhuma das opções sejam aceitáveis para os executivos corporativos. E, mais importante do que isso, nenhuma delas permite que as empresas ofereçam as melhores soluções possíveis para os clientes. Todos os desenvolvedores também estão querendo lançar os softwares cada vez mais rápido, afinal, é para isso que eles costumam ser contratados. A parte de operações, por outro lado, sabe que as mudanças aceleradas sem as medidas de segurança adequadas ameaçam desestabilizar o sistema, o que vai diretamente contra seu estatuto. A DevOps foi criada para solucionar esse dilema, integrando todos aqueles que estão associados ao desenvolvimento e à implantação de software, como usuários empresariais, engenheiros de testes e administradores de sistemas, em um fluxo de trabalho único e altamente automatizado com a atenção voltada para apenas isto: fornecimento rápido de softwares de alta qualidade que atendam a todas as exigências dos usuários, ao mesmo tempo em que mantêm a integridade e a estabilidade de todo o sistema. Como esses grupos díspares unem forças? Subscrevendo a uma série comum de princípios que transcendem os limites e os papeis tradicionais da disciplina como, por exemplo: • Garantia de que todas as equipes estejam trabalhando tendo em vista o mesmo objetivo e sendo avaliadas pelas mesmas métricas empresariais. • Manutenção de ciclos de desenvolvimento curtos que permitam que a empresa responda rapidamente aos requisitos de mudanças. • Utilização de estratégias de implantação progressiva e sinalização de recursos que facilitem a ativação ou desativação de novos recursos na produção sem reimplantações. • Criação de um ciclo de retorno extremamente rápido que permita a identificação e a correção de problemas quase imediatamente pelas equipes adequadas. • Reflexão sobre como se tornar mais eficiente como uma equipe e, então, ajustar e adaptar seu comportamento de acordo.13 Quais problemas levaram à criação da DevOps? 12 Niek Bartholomeus, “My experience with introducing DevOps in a traditional enterprise”, http://niek.bartholomeus.be/2013/01/28/introducing-a-devops-culture-in-a-traditional-enterprise, 28 de janeiro de 2013. 13 Ernest Mueller, “A DevOps Manifesto”, the agile admin, http://theagileadmin.com/2010/10/15/a-devops-manifesto, 15 de outubro de 2010.
  10. 10. © 2016 New Relic, Inc. | +55 800 8783134 | br.newrelic.com | www.twitter.com/newrelic CAPÍTULO 4 Como a DevOps “funciona”?
  11. 11. eBook 11 Explorando a DevOps: O que ela é e por que é importante para sua empresa © 2016 New Relic, Inc. | +55 800 8783134 | br.newrelic.com | www.twitter.com/newrelic Como todas as culturas, a DevOps tem muitas variações nesse tema. Contudo, a maioria dos espectadores concordam que as seguintes qualidades são comuns a, virtualmente, todas as culturas DevOps: colaboração, automatização, integração, fornecimento contínuo, testes contínuos, monitoração contínua e correção imediata. Colaboração Em vez de ficarem se acusando, o desenvolvimento e as operações de TI trabalham juntos (de verdade). Embora a falta de conexão entre esses dois grupos tenha gerado o ímpeto para sua criação, a DevOps se estende para muito além da organização de TI, pois a necessidade de colaboração abrange todos que participam do fornecimento de software (não apenas entre Dev e Ops, mas todas as equipes, inclusive testes, gestão de produtos e executivos): A DevOps bem-sucedida requer corporatividade, desenvolvimento, controle de qualidade e organizações de operações para coordenar e desempenhar papeis significativos em diferentes fases do ciclo de vida do aplicativo. Pode ser difícil, até impossível, eliminar os silos, mas a colaboração é essencial.14 Automação A DevOps depende muito da automação, e isso significa que você precisa de ferramentas. Ferramentas que você constrói. Ferramentas que você compra. Ferramentas de código aberto. Ferramentas proprietárias. E essas ferramentas não ficam espalhadas pelo laboratório à toa: a DevOps depende de cadeias de ferramentas para automatizar grande parte do desenvolvimento total de software e do processo de implantação. Aviso: como as ferramentas DevOps são incríveis, tendemos a ver a DevOps como uma simples coleção de ferramentas. Embora seja verdade que a DevOps dependa de ferramentas, ela é muito mais do que isso. Integração contínua Você geralmente encontra integração contínua nas culturas DevOps porque ela surgiu de uma cultura de Agile, sendo que a integração contínua é um princípio fundamental da abordagem de Agile: A integração contínua (IC) é uma prática de engenharia de software na qual mudanças isoladas são imediatamente testadas e relatadas quando são adicionadas a uma base de códigos maior. O objetivo da IC é oferecer retorno rápido, de modo que, se um defeito for introduzido na base de código, ele poderá ser identificado e corrigido o mais rápido possível. A regra mais comum é que cada membro da equipe envie o trabalho diariamente (ou com mais frequência) e que uma compilação seja realizada com cada alteração significativa.15 O princípio de integração contínua do desenvolvimento de Agile tem implicação cultural para o grupo de desenvolvimento. Forçar os desenvolvedores a integrar seu trabalho com o de outros desenvolvedores frequentemente, pelo menos diariamente, expõe problemas de integração e conflitos muito antes do que como acontece com o desenvolvimento em cascata. Como a DevOps “funciona”? 14 Laurie Wurster et al, “Emerging Technology Analysis: DevOps a Culture Shift, Not a Technology”, relatório da Gartner, agosto de 2013. 15 Margaret Rouse, “Continuous Integration (CI)”, SearchSoftwareQuality, http://searchsoftwarequality.techtarget.com/definition/continuous-integration, julho de 2008.
  12. 12. eBook 12 Explorando a DevOps: O que ela é e por que é importante para sua empresa © 2016 New Relic, Inc. | +55 800 8783134 | br.newrelic.com | www.twitter.com/newrelic Contudo, para alcançar esse benefício, os desenvolvedores precisam se comunicar entre si com muito mais frequência, o que vai contra a imagem daquele programador gênio e solitário que trabalha durante semanas ou meses em um módulo até estar “pronto” para mostra-lo ao mundo. A semente da comunicação aberta e frequente floresce na DevOps. Testes contínuos É fácil negligenciar a parte de testes da DevOps... até você se dar mal. Como explica um especialista no setor, “o custo da qualidade é o custo da falha”.16 Embora a integração e o fornecimento contínuos dominem as manchetes, os testes contínuos estão, aos poucos, encontrando seu lugar como uma parte igualmente crucial da DevOps. Os testes contínuos não são apenas uma função de controle de qualidade, na verdade, eles começam no ambiente de desenvolvimento. Os dias em que os desenvolvedores podiam simplesmente jogar o código nas mãos do controle de qualidade e dizer “Toma aí” acabaram. Em um ambiente DevOps, todo mundo se envolve nos testes. Os desenvolvedores certificam-se de, além de entregar códigos sem erros, fornecer conjuntos de dados de teste. Eles também ajudam os engenheiros de teste a configurar o ambiente de teste de modo a ficar o mais parecido possível com o ambiente de produção.17 Já para o controle de qualidade, a maior necessidade é velocidade. Afinal, se o ciclo de controle de qualidade levar dias ou semanas, você voltará àquele longuíssimo cronograma típico do modelo em cascata. Os engenheiros de teste enfrentam o desafio das respostas rápidas, não só por terem que automatizar grande parte do processo de teste, mas por redefinir as metodologias de teste: Em vez de fazer do teste uma sequência separada e longa no processo ainda maior de implantação, os praticantes do fornecimento contínuo lançam pequenas atualizações quase constantemente, avaliam seu desempenho e rapidamente as revertem, se for necessário.18 Embora possa ser uma surpresa, as funções de operações têm um papel importante a desempenhar no teste e no controle de qualidade: As operações têm acesso aos padrões de carga e uso de produção. Esses padrões são essenciais para a equipe de controle de qualidade criar um teste de carga que exercite adequadamente o aplicativo.19 As operações também podem garantir que as ferramentas de gerenciamento estejam implantadas e os ambientes de teste configurados adequadamente. Elas podem participar de testes funcionais, de carga, estresse e vazamento, além de oferecer análises com base na experiência com aplicativos parecidos em fase de produção. A recompensa dos testes contínuos vale o esforço. A função de testes em um ambiente DevOps ajuda os desenvolvedores a equilibrar qualidade e velocidade. Usar ferramentas automatizadas reduz o custo dos testes e permite que os engenheiros de teste aproveitem seu tempo com mais eficiência. Acima de tudo, os testes contínuos encurtam os ciclos de teste permitindo que testes de integração antecipados no processo. 16 Wayne Ariola, SYS-CON.tv, entrevista na 13º International Cloud Expo®, http://devopssummit.sys-con.com/node/2912573, 4 a 7 de novembro de 2013. 17 Sanjeev Sharma, “Understanding DevOps – Part 4: Continuous Testing and Continuous Monitoring”, publicação em blog, http://sdarchitect.wordpress.com/2012/10/30/understanding-devops-part-4-continuous-testing-and-continuous-monitoring, outubro de 2012. 18 http://www.pwc.com/us/en/technology-forecast/2013/issue2/features/devops-continuous-delivery.jhtml. 19 Jim Hirschauer, “DevOps Scares Me – Part 4: Dev and Ops Collaborate Across the Lifecycle”, DZone, http://java.dzone.com/articles/devops-scares-me-part-4-dev, agosto de 2013.
  13. 13. eBook 13 Explorando a DevOps: O que ela é e por que é importante para sua empresa © 2016 New Relic, Inc. | +55 800 8783134 | br.newrelic.com | www.twitter.com/newrelic Os testes contínuos também eliminam os gargalos nos testes por meio de serviços dependentes virtualizados e simplificam a criação de ambientes de teste virtualizados que podem ser facilmente implantados, compartilhados e atualizados conforme o sistema muda. Esses recursos encurtam o custo de provisionamento e manutenção dos ambientes de teste, além de encurtarem o tempo do ciclo de teste permitindo os testes de integração antecipados no ciclo de vida.20 Fornecimento contínuo Nas palavras de um comentarista, “o fornecimento contínuo não é nada além de levar o conceito de integração contínua para a próxima etapa”.21 Em vez de terminar na porta do laboratório de desenvolvimento, a integração contínua na DevOps se estende para toda a cadeia de lançamento, incluindo controle de qualidade e operações. O resultado disso é que lançamentos individuais são muito menos complexos e são realizados com muito mais frequência. A frequência de lançamento real varia bastante, dependendo do legado e dos objetivos da empresa. Por exemplo, uma empresa da lista Fortune 100 aprimorou seu ciclo de lançamento de uma vez por ano para uma vez por trimestre, uma taxa de lançamento que parece ínfima comparada às centenas de lançamentos por hora alcançados pela Amazon. O que exatamente é lançado também varia. Em algumas organizações, controle de qualidade e operações fazem a triagem dos potenciais lançamentos: muitos vão diretamente para os usuários, alguns voltam para o desenvolvimento e poucos simplesmente não são implantados. Outras empresas, onde a Flickr é um exemplo notável, lançam tudo o que sai dos desenvolvedores para os usuários e contam com o monitoramento em tempo real e a correção imediata para minimizar o impacto de uma falha rara. Monitoramento contínuo Devido à grande quantidade de lançamentos, não é possível implementar o tipo de teste rigoroso pré-lançamento que caracteriza o desenvolvimento em cascata. Portanto, em um ambiente DevOps, as falhas devem ser encontradas e corrigidas em tempo real. Como isso é feito? Uma grande parte é pelo monitoramento contínuo. De acordo com um conhecedor, os objetivos do monitoramento contínuo são determinar rapidamente quando um serviço está indisponível, entender as causas subjacentes e, sobretudo, aplicar esses aprendizados para antecipar os problemas antes que ocorram.22 Na verdade, alguns especialistas em monitoramento defendem que a definição de um serviço deve incluir o monitoramento, pois o veem como parte integrante do fornecimento de serviço. Como os testes, o monitoramento começa no desenvolvimento. As mesmas ferramentas que monitoram o ambiente de produção podem ser empregadas no desenvolvimento para localizar problemas de desempenho antes que cheguem à produção. Dois tipos de monitoramento são exigidos na DevOps: monitoramento do servidor e monitoramento do desempenho do aplicativo. As discussões sobre monitoramento levam rapidamente a discussões sobre ferramentas, pois não existe monitoramento eficiente sem as ferramentas adequadas. Para ver uma lista de ferramentas de DevOps (e mais conteúdo relacionado a DevOps), visite o DevOps Hub da New Relic. 20 “Enterprise testing capability for continuous software delivery”, http://www.ibm.com/ibm/devops/us/en/build/test/. 21 Sanjeev Sharma, “Understanding DevOps – Part 2: Continuous Integration and Continuous Delivery”, publicação em blog, http://sdarchitect.wordpress.com/2012/09/25/understanding-devops-part-2-continuous-integration-and-continuous-delivery, setembro de 2012. 22 Julien Pivotto, “The devops approach to monitoring”, apresentação no Open World Forum, http://www.slideshare.net/roidelapluie/devops-andmonitoringowf13, outubro de 2013.
  14. 14. © 2016 New Relic, Inc. | +55 800 8783134 | br.newrelic.com | www.twitter.com/newrelic CAPÍTULO 5 Quem está adotando a DevOps?
  15. 15. eBook 15 Explorando a DevOps: O que ela é e por que é importante para sua empresa © 2016 New Relic, Inc. | +55 800 8783134 | br.newrelic.com | www.twitter.com/newrelic A adesão à DevOps está acelerando. Um estudo feito em dezembro de 2012 com mais de 4.000 profissionais de TI descobriu que 63% dos participantes haviam implementado práticas de DevOps, um surpreendente aumento de 26% em relação ao ano anterior.23 Embora ainda não seja uma tendência dominante, a DevOps está claramente ganhando força.24 Quais tipos de empresas estão, ou deveriam estar aderindo à DevOps? Depende de para quem você pergunta. Uma escola de pensamento vê a DevOps como a resposta certa para todo mundo, desde pequenas startups até gigantes da tecnologia: “A DevOps, agora, é um modo de vida e ignorá-la pode levar ao êxito ou ao fracasso uma empresa de qualquer porte”.25 Outros afirmam que o tamanho importa... e muito. De acordo com essa visão, a DevOps é facílima para as empresas menores, mas a cultura das corporações maiores pode ser um problema significativo: “Se não há boa colaboração no DNA da empresa, será preciso mais tempo e esforço para introduzir a DevOps com sucesso.”26 O fato é que a DevOps está evoluindo tão rapidamente que é difícil até mesmo caracterizar o nível de adesão de maneira significativa. Contudo, existem muitas evidências mostrando que o tamanho em si não prediz o sucesso da DevOps. Considere primeiro os figurões. Peça a uma dúzia de convertidos à DevOps para nomear as maiores histórias de sucesso e a maioria dirá os mesmos quatro ou cinco nomes: Google, Twitter, Amazon, Netflix e Facebook. Sua capitalização de mercado combinada de mais de USD $717 bilhões em 2014 ultrapassa o PIB de quase todos os países do mundo, exceto de dezenove. Muitos observadores da indústria acreditam que a DevOps, ou algo que se parece muito com ela, foi um componente essencial em seu crescimento meteórico. “Esses são os sucessos de arranque que só puderam acontecer devido a uma nova filosofia de operação... O sucesso deles, em muitas maneiras, é um mapa que mostra como a DevOps pode ser bem-sucedida em organizações de todos os tamanhos”.27 Na outra ponta do espectro estão as startups “modernas, originais e interessantes”, como Tumblr, Evernote, Etsy, e Github, para nomear algumas, que brincam com os figurões em grande parte porque a DevOps as ajuda a impulsionar equipes pequenas para rendimentos gigantescos: “Os processos de TI e as metodologias de desenvolvimento de produtos tradicionais não ajudariam essas pequenas empresas a competir com corporações muito maiores.”28 Quem está adotando a DevOps? 23 “2013 State of DevOps Report”, Puppet Labs e IT Revolution Press, https://puppetlabs.com/wp-content/uploads/2013/03/2013-state-of-devops-report.pdf. 24 Kyt Dotson, “DevOps Interview: Raja Bhargava, CEO da JumpCloud http://devopsangle.com/2014/01/07/devops-interview-rajat-bhargava-ceo-of-jumpcloud/. 25 Adam Duro, “Three Reasons Your Startup Will Suffer Without DevOps”, readwrite, http://readwrite.com/2014/01/01/three-reasons-your-startup-needs-devops-or-else, 1º de janeiro de 2014. 26 “The New Normal of DevOps”, white paper da CA Technologies, http://www.ca.com/us/~/media/Files/whitepapers/the-new-normal-of-devops.pdf, dezembro de 2013. 27 James B. Brown, “5 Reasons Why DevOps is Hitting Its Stride”, Innovation Insights, http://insights.wired.com/profiles/blogs/5-reasons-why-devops-is-hitting-its-stride#ixzz2x6O8QnIA, março. 28 Ibid.
  16. 16. © 2016 New Relic, Inc. | +55 800 8783134 | br.newrelic.com | www.twitter.com/newrelic CAPÍTULO 6 Por que seus parceiros estão aderindo à DevOps?
  17. 17. eBook 17 Explorando a DevOps: O que ela é e por que é importante para sua empresa © 2016 New Relic, Inc. | +55 800 8783134 | br.newrelic.com | www.twitter.com/newrelic A DevOps tem algo a oferecer para todo mundo na corrente de software: desenvolvedores, operações e testes. Além disso, a DevOps alcança até o setor empresarial: gerentes que monetizam o software e executivos que se preocupam com o resultado final. Aqui estão algumas das vantagens citadas por cada grupo. Desenvolvedores O provisionamento automatizado é excelente para os programadores, porque eles podem levantar um ambiente de desenvolvimento por conta própria sem burocracia, sem ciclos de aprovação longos, sem precisar esperar que a TI providencie um servidor, ou seja, não há perda de tempo. Quando os desenvolvedores conseguem provisionar um ambiente de trabalho em 15 minutos, com todos os recursos certos, como energia de computação, armazenamento, rede e aplicativos, a maneira como eles trabalham muda. Eles podem ser muito mais criativos e inovadores. É muito mais fácil experimentar várias opções, executar diferentes cenários e testar o código mais minuciosamente. Quando os desenvolvedores começam a trabalhar em um mundo de DevOps pela primeira vez, para muitos, uma experiência verdadeiramente reveladora é entender o que realmente acontece dentro daquela caixa-preta nomeada “Operações”. Esse conhecimento ajuda os desenvolvedores a trabalharem de modo eficaz com as operações em um modo de resolução de problemas conjunto. Os problemas são resolvidos mais rapidamente e causam menos distrações. O melhor de tudo é que os telefonemas frenéticos tarde da noite se tornam coisa do passado, o que leva diretamente a maior satisfação no trabalho e melhor qualidade de vida para os desenvolvedores. Operações Há uma crença muito difundida de que os administradores de sistemas ficam constantemente obcecados pela estabilidade do sistema e, de fato, isso é verdade. Os piores pesadelos deles são um lançamento de software que tire o sistema do ar segundos após a implantação de produção, desenvolvedores que se eximem das responsabilidades (“O código é seu agora!”), usuários em vários níveis de indignação e nenhum caminho claro para uma solução rápida e eficaz. Os pioneiros da adoção dos métodos de DevOps descobriram que o maior envolvimento dos desenvolvedores realmente melhora a estabilidade do sistema. A automatização também ajuda a eliminar as falhas humanas comuns em operações manuais e tem a vantagem adicional de reduzir o tempo gasto em tarefas de rotina. Também há a questão da qualidade de vida para os administradores de sistemas, na forma de construção de habilidades, oportunidades de carreira, além de muito mais horas de sono ininterruptas e mais tempo para si. Em um ambiente de DevOps, o setor de operações depende muito mais de ferramentas do que em um ambiente tradicional, muitas vezes construindo suas próprias ferramentas e escrevendo scripts que automatizem porções do processo de implantação. Por que seus parceiros estão aderindo à DevOps?
  18. 18. eBook 18 Explorando a DevOps: O que ela é e por que é importante para sua empresa © 2016 New Relic, Inc. | +55 800 8783134 | br.newrelic.com | www.twitter.com/newrelic Engenheiros de teste O impacto que a DevOps teve no setor de testes pode ser resumido em duas palavras: Chaos Monkey. A Netflix desenvolveu essa ferramenta notável e inovadora para quebrar o seu próprio software!29 O Chaos Monkey funciona sob o princípio de que a melhor maneira de evitar falhas grandes é falhando constantemente. O software simula falhas em instâncias de serviços, derrubando uma ou mais máquinas virtuais. Assim, é possível se preparar para falhas maiores inesperadas, em vez de só ficar esperando a catástrofe acontecer para então ver se é possível administrá-la.30 A DevOps requer novas maneiras para testar softwares, o que desafia os engenheiros de testes a inovarem no setor, exatamente o estimulo que levou à criação do Chaos Monkey. Com o provisionamento automatizado, os engenheiros de teste podem provisionar um ambiente de teste virtualmente idêntico ao ambiente de produção, resultando em testes mais precisos e maior capacidade de previsão do desempenho de novos lançamentos. Como com os outros grupos, a produtividade dos engenheiros de teste aumenta graças à automatização e à colaboração. Gerentes de produto Tecnicamente, a DevOps só diz respeito à função de TI da empresa. Contudo, aqueles que fizeram a transição vão dizer que a DevOps muda tudo: Uma estratégia de DevOps eficaz permite que a organização analise, pela primeira vez e em tempo real, dados de análise da web, dados de máquina e dados estruturados existentes, para obter uma visão completa de como os sistemas voltados aos clientes estão ou não fornecendo valor comercial. A DevOps permite que as organizações entendam o comportamento de clientes individuais, quais ações eles tomam e como seu comportamento se compara ao de outros clientes. Ela permite que uma organização execute análises hipotéticas de variações em sua interface do usuário ou ofertas de produto. Com base nos resultados dessas análises preditivas e da experiência de campo real, o lado do “desenvolvimento” de Agile da DevOps permite, então, que as organizações respondam às necessidades de mercado mais rapidamente do que nunca.31 Vamos esmiuçar isso um pouco. Em um ambiente de DevOps, as partes comerciais interessadas têm maior influência sobre o processo de desenvolvimento. Graças ao espírito colaborativo da DevOps, os desenvolvedores realmente se importam com os requisitos comerciais e criam relações com os gerentes de produto. A DevOps também fornece aos gerentes de produtos retorno imediato sobre o impacto de novos preços, recursos e pacotes de produtos, permitindo que eles testem as variações e avaliem sua eficácia. Gerentes de linha de negócios adoram a DevOps porque o software entra no mercado mais rapidamente, dando a eles a vantagem competitiva que desejam. Como a DevOps melhora a estabilidade do sistema, os clientes enfrentam menos interrupções e são, portanto, mais leais, o que é a solução ideal para as altas taxas de cancelamento. 29 http://techblog.netflix.com/2012/07/chaos-monkey-released-into-wild.html. 30 Margaret Rouse, “Chaos Monkey”, WhatIs.com, http://whatis.techtarget.com/definition/Chaos-Monkey, agosto de 2013. 31 Kapil Apshankar, “How DevOps Drives Real-Time Business Growth”, white paper da Cognizant, http://www.cognizant.com/InsightsWhitepapers/How-DevOps-Drives-Real-Time-Business-Growth.pdf, 2013.
  19. 19. eBook 19 Explorando a DevOps: O que ela é e por que é importante para sua empresa © 2016 New Relic, Inc. | +55 800 8783134 | br.newrelic.com | www.twitter.com/newrelic Executivos Quando Patrick Debois e outros magos da TI iniciaram o movimento DevOps, eles certamente não estavam preocupados com como ela seria recebida pelo conselho empresarial. Apenas cinco anos depois, a DevOps é tendência nesses mesmos conselhos. Do que os executivos gostam na DevOps? Em primeiro lugar, ela ajuda a organização a fornecer produtos de alta qualidade e colocá-los no mercado muito mais rapidamente do que os concorrentes com métodos tradicionais de desenvolvimento de software. Essas são ações que têm impacto sobre o resultado final e valorizam a marca. Outro motivo é a habilidade de atrair e manter os melhores talentos: desenvolvedores, administradores de sistemas e engenheiros de testes de alta qualidade querem trabalhar com o que há de melhor e mais atual. Por fim, quando desenvolvedores, operações e controle de qualidade trabalham juntos, os principais executivos raramente são puxados para disputas interdepartamentais, liberando o tempo deles para elaborarem os objetivos empresariais concentrados que todo mundo, agora, une esforços para alcançar com sucesso. 32 Entrevista, quinta-feira, 6 de fevereiro de 2014 “A minha mentalidade foi desacelerar o processo de lançamento. Eu queria ter o mínimo possível de lançamentos, para que pudesse ter certeza de que o sistema seria estável. Após trabalhar por vários anos em um ambiente de DevOps, eu dei uma virada completa de 180 graus. Agora, minha filosofia é: quanto mais frequentemente a gente implanta, melhor”.32 —Aaron Bento, Engenheiro de confiabilidade de site, New Relic
  20. 20. © 2016 New Relic, Inc. | +55 800 8783134 | br.newrelic.com | www.twitter.com/newrelic CAPÍTULO 7 Como eu vou me beneficiar com a DevOps?
  21. 21. eBook 21 Explorando a DevOps: O que ela é e por que é importante para sua empresa © 2016 New Relic, Inc. | +55 800 8783134 | br.newrelic.com | www.twitter.com/newrelic Fontes confiáveis relatam algumas vantagens bastante notáveis alcançadas com a DevOps. Contudo, é necessário ter cautela. Suponha que você escute alguém dizer “Eu estou fazendo 10 quilômetros por litro”. Qual carro? Qual tipo de estrada? Se ele estiver falando sobre uma picape F-150 em estradas não pavimentadas, esse número é tão alto que você simplesmente não acreditaria. Por outro lado, para um Celta novo utilizado apenas em autoestradas, 10 quilômetros por litro indicaria problemas sérios. O contexto é importante. Então, sempre que se deparar com relatos sobre melhorias relacionadas à DevOps, saiba que os seus resultados podem variar. Dito isso, uma pesquisa feita pelo Puppet Labs33 revelou que quem adotou a DevOps lança softwares 30 vezes mais rápido do que seus colegas de setor. A qualidade dos produtos de software também é maior, como indicado pela descoberta de que os aplicativos DevOps têm metade dos fracassos que seus concorrentes. Finalmente, o efeito líquido sobre a estabilidade do sistema é positivo: quando a plataforma sai do ar, os grupos de DevOps restauram o serviço 12 vezes mais rápido do que seus colegas. Uma coisa é óbvia: os profissionais de TI que adotaram a DevOps tendem a ser fanáticos por ela. Não é difícil entender por que, dadas as melhorias citadas no mesmo estudo: • Estabilidade da estrutura: 83 por cento dos participantes relataram “alguma melhoria” ou “melhoria significativa”. • Velocidade de implantação do aplicativo: 83 por cento relataram “alguma melhoria” ou “melhoria significativa”. • Segurança: 45 por cento esperam que a DevOps melhore a segurança, enquanto apenas 7 por cento acham que os sistemas seriam menos seguros graças à DevOps. • Como eu vou me beneficiar com a DevOps? 33 Pesquisa da PuppetLabs, op cit.
  22. 22. eBook 22 Explorando a DevOps: O que ela é e por que é importante para sua empresa © 2016 New Relic, Inc. | +55 800 8783134 | br.newrelic.com | www.twitter.com/newrelic Cinco anos após o grande experimento da DevOps, os dados são claros: ela chegou para ficar e por motivos muito bons. Muitos acharam que seria impossível, mas a DevOps obteve sucesso ao integrar usuários empresariais, desenvolvedores, engenheiros de teste e administradores de sistemas em um único fluxo de trabalho focado em atender às exigências dos clientes. Por que eles fariam isso voluntariamente? Porque é vantajoso para todo mundo. Desenvolvedores e administradores de sistemas param de discutir e começam a se apoiar, acalmando os ânimos de todo mundo. Os gerentes empresariais ficam felizes porque eles realmente recebem os produtos de software de que precisam para vender produtos e serviços. Os executivos observam suas amadas métricas do painel de controle, como receita, satisfação do cliente e confiabilidade do sistema, seguindo firme e forte. E todo mundo consegue fornecer os melhores resultados e experiência geral possíveis para o cliente. Ganhos como esses, contudo, não são obtidos facilmente. Para implantar códigos com sucesso mais frequentemente ao mesmo tempo em que mantém seus sistemas na ativa, você precisa da habilidade de monitorar precisamente todas as alterações que acontecem no seu ambiente. A New Relic oferece os dados necessários para analisar e monitorar os novos recursos que a equipe de Dev fornece, ao mesmo tempo em que garante a estabilidade que a equipe de Ops requer. Para aprender mais sobre DevOps e como a New Relic pode ajudar sua organização a fazer a transição com sucesso, visite: newrelic.com/devops. Conclusão 34 Sascha Bates, “Shenanigans”, http://blog.brattyredhead.com/, 17 de maio de 2013. “Uma das melhores mensagens que a DevOps tem para todos nós é: se você não gosta do jeito como alguém está fazendo algo, converse com a pessoa e descubra o porquê. Você provavelmente aprenderá que haviam ótimas razões para tudo, inclusive “Eu não sabia como fazer isso.”34 —Sascha Bates, Consultora, Chef
  23. 23. eBook 23 Explorando a DevOps: O que ela é e por que é importante para sua empresa © 2016 New Relic, Inc. | +55 800 8783134 | br.newrelic.com | www.twitter.com/newrelic Sobre o New Relic New Relic é uma solução completa de gerenciamento de desempenho de aplicativo com base em SaaS que fornece uma visibilidade em tempo real abrangente em aplicativos da Web e dispositivos móveis, independentemente de onde eles estejam sendo executados. Nossa plataforma combina New Relic Browser, monitoramento da web, monitoramento da Web e de servidor e monitoramento de dispositivos móveis para iOS e Android num painel sofisticado. Nossos mais de 40.000 clientes utilizam nossa solução na nuvem todos os dias para otimizarem mais de 108 bilhões de métricas de desempenho diárias. Saiba mais em: br.newrelic.com. New Relic, San Francisco HQ 188 Spear Street, Suite 1200 San Francisco, CA 94105 New Relic, Portland 111 SW 5th Avenue, Suite 2800 Portland, OR 97204 Tel: +55 800 8783134 support@newrelic.com www.newrelic.com New Relic, Dublin 34-39 Nassau Street, 3rd Floor Dublin 2, Ireland
  24. 24. ©2008-16 New Relic, Inc. All rights reserved. 02.2016

×