o que é devops afinal?

80
Ceilândia/DF 2013-04-27 O que é DevOps afinal? Guto Carvalho sábado, 27 de abril de 13

Upload: guto-carvalho

Post on 30-Nov-2014

1.059 views

Category:

Technology


2 download

DESCRIPTION

Apresentação do termo devops, apresentação das origens do termo, devopsdays, conceituando o tema, conflitos entre infra e devel, solução para conflitos, adoção da cultura e ganhos a partir da adoção.

TRANSCRIPT

Page 1: O que é DevOps afinal?

Ceilândia/DF 2013-04-27

O que é DevOps afinal?Guto Carvalho

sábado, 27 de abril de 13

Page 2: O que é DevOps afinal?

O que é DevOps Afinal?Entenda a cultura

Guto [email protected]

sábado, 27 de abril de 13

Page 3: O que é DevOps afinal?

José Augusto (Guto) Carvalho

Consultor/SysAdmin/Instrutor (LPIC-3 e PCP-201);

13 anos de experiência com tecnologias FOSS;

Blogueiro FOSS há 6 anos no site gutocarvalho.net;

Atuação em vários projetos de Governo no MDA, MINC, EBC/RADIOBRÁS, MPS/DATAPREV, ITI/PR, CAIXA, MD/SIPAM, DETRAN/DF;

Entusiasta DevOps (sysadmin em recuperação) desde 2010

whoami

FOSS => Free and Open Source Software

sábado, 27 de abril de 13

Page 4: O que é DevOps afinal?

Plano de Trabalho

40 minutos de apresentação

10 minutos para debate

80 Slides

Faça perguntas quando quiser

Palestra disponível em slideshare.com/gutocarvalho

sábado, 27 de abril de 13

Page 5: O que é DevOps afinal?

Agenda

Apresentação do Conceito

Surgimento do termo e DevOpsDays

Conflito Infra vs Devel

Cultura DevOps e o Profissional DevOps

Como Aplicar a cultura

sábado, 27 de abril de 13

Page 6: O que é DevOps afinal?

sábado, 27 de abril de 13

Page 7: O que é DevOps afinal?

DEVOPS

Developers (Dev)Operations (Ops)

sábado, 27 de abril de 13

Page 8: O que é DevOps afinal?

Principais dúvidas

O que significa DevOps?

DevOps é um movimento?

DevOps é uma filosofia, é um conceito ou uma cultura?

DevOps é uma metodologia?

DevOps é algum tipo de ambiente ou grupo de ferramentas ?

sábado, 27 de abril de 13

Page 9: O que é DevOps afinal?

Principais dúvidas (cont.)

O especialista DevOps é um devel que entende de infra?

O especialista DevOps é um sysadmin que entende de devel?

DevOps é um cargo? é um setor ou um departamento?

DevOps só funciona em startups ?

DevOps pode funcionar no meio corporativo?

O DevOps é algo novo?

sábado, 27 de abril de 13

Page 10: O que é DevOps afinal?

É difícil afirmar onde ou quando começaram a falar sobre devops

sábado, 27 de abril de 13

Page 11: O que é DevOps afinal?

Seguindo pistas...

Agile 2008 início do interesse sobre infra ágil em listas

Patrick Debois grande entusiasta e colaborador da lista agile-sysamin ajudava a fomentar o assunto

Objetivo era trazer boas práticas de metologias ágeis para operação da infraestrutura

sábado, 27 de abril de 13

Page 12: O que é DevOps afinal?

Seguindo pistas...

O’Reilly Velocity 2009 palestra 10 deploys per day at Flickr: Dev and Ops colaboration por John Allspaw.

Patrick estava presente no evento e na palestra

Ele decide criar o evento DevOpsDays

O primeiro evento ocorreu em 2009 em Ghent

sábado, 27 de abril de 13

Page 13: O que é DevOps afinal?

sábado, 27 de abril de 13

Page 14: O que é DevOps afinal?

DevOpsDays

Abordar formas eficientes de administrar infraestrutura

Abordar formas eficientes de colaboração entre dev e ops

Apresentar cases, tecnologias e metodologias inovadoras

sábado, 27 de abril de 13

Page 15: O que é DevOps afinal?

DevOpsDays

Patrick Debois, Gildas Le Nadan (endemics), Andrew Clay Shafer (rackspace), Kris Buytaert, Jezz Humble (continuousdelivery.com), Lindsay Holmwood (visage), John W i l l i s (opscode ) , Chr i s Read ( fo rmer ThoughtWorks employee) , Ju l ian S impson (buildoctor), R.I.Piennar (mcollective/puppetlabs) e muitos outros começaram a levar o DevOpsDays para outros países.

sábado, 27 de abril de 13

Page 16: O que é DevOps afinal?

DevOpsDays

Rio 2013 (17 Agosto)New York 2012Rome 2012Mountain View 2012India 2012Tokyo 2012Austin 2012Goteborg 2011Bangalore 2011Melbourne 2011

Mountain View 2011Boston 2011Göteborg 2011Sao Paulo 2010Hamburg 2010Mountain View 2010 (video intro)Sydney 2010Ghent 2009

sábado, 27 de abril de 13

Page 17: O que é DevOps afinal?

Revolução discretaÉ importante falar que ao levar o evento para diversos países, estas pessoas foram responsáveis por disseminar a cultura DevOps pelo globo, com isso, direta ou indiretamente eles se tornaram a força motriz de uma discreta revolução no mundo da TI.

sábado, 27 de abril de 13

Page 18: O que é DevOps afinal?

DevOps & CorporationInicialmente a cultura DevOps se mostrou muito presente no ambiente das startups, porém, algum tempo depois começou a fazer parte do mundo corporativo, aqui vamos abordar a visão da cultura DevOps no meio corporativo.

sábado, 27 de abril de 13

Page 19: O que é DevOps afinal?

Existe algum DevOps manifest? não!

sábado, 27 de abril de 13

Page 20: O que é DevOps afinal?

First things firstAntes de falarmos mais sobre DevOps precisamos primeiro entender algumas coisas que serão importantes para a compreensão plena deste conceito.

sábado, 27 de abril de 13

Page 21: O que é DevOps afinal?

Cotidiano de trabalhoTalvez a melhor entender o que DevOps significa, seja analisar de forma prática e direta a vida de sysadmins (ops), desenvolvedores (dev) e o cotidiano de trabalho destas áreas.

sábado, 27 de abril de 13

Page 22: O que é DevOps afinal?

CenárioVamos imaginar - hipoteticamente - uma empresa de comunicação que desenvolve aplicações web em sua maioria para portais de notícias, e em alguns casos também faz aplicações web internas (rh, financeiro, administrativo), nesta empresa, o devel trabalha com PHP, PYTHON, RUBY e JAVA.

sábado, 27 de abril de 13

Page 23: O que é DevOps afinal?

ConsideraçõesConsidere as duas características abaixo como cotidianas nesta empresa fictícia:

O Devel está começando a trabalhar com metodologias ágeis (pró-ativo, evolutivo e contínuo) e pretente fazer vários deploys por dia.

A Infra continua trabalhando no modelo tradicional de administração (manual, caótico e reativo) artesenal.

sábado, 27 de abril de 13

Page 24: O que é DevOps afinal?

sábado, 27 de abril de 13

Page 25: O que é DevOps afinal?

Devel em foco (dev)

Composta por analistas, programadores, testadores, arquitetos e engenheiros

Desenvolvem e aprimoram aplicações, trabalham com lógica e criatividade

Sua missão: Entregar o que o cliente solicita (requisitos)

Sua missão 2: Entregar no tempo acordado

Depende da equipe de infra para realizar seu trabalho

Configuração de ambientes, deploys, rollbacks, backups e restore

Sua preocupação: Agregar valor ao negócio

sábado, 27 de abril de 13

Page 26: O que é DevOps afinal?

Infra em foco (ops)Composta por sysadmins, sysops, engenheiros e analistas

Administra, monitora e opera os sistemas, serviços e infraestrutura

Sustenta ambientes de teste, homologação e desenvolvimento para o devel

Sua missão: Manter tudo funcionando de forma estável

Apóia o devel nos processos de Deploy e Rollback

Tem que cumprir o Acordo de nível de serviço (SLA/ANS) para diversos sistemas

Sua preocupação é proteger o valor do negócio.

sábado, 27 de abril de 13

Page 27: O que é DevOps afinal?

Se uma aplicação para de funcionar isso significa prejuízo para o dono da aplicação (ex. loja online), além disto, a prestadora do serviço de sustentação pode ser multada devido a um acordo de nível de serviço (SLA/ANS). É uma situação ruim para todos.

sábado, 27 de abril de 13

Page 28: O que é DevOps afinal?

Onde está o conflito?sábado, 27 de abril de 13

Page 29: O que é DevOps afinal?

Onde está o conflito?

Desenvolvedores quer subir novas versões rapidamente

Sysadmins querem ter certeza que a aplicação está estável antes de subir

Desenvolvedores querem entregar os novos recursos ao cliente

Sysadmins querem evitar incidentes e downtime

sábado, 27 de abril de 13

Page 30: O que é DevOps afinal?

Onde está o conflito (cont.) ?

Deploys em dias específicos do mês ou semana

Abertura de tickets para cada passo do deploy , rollback

Excesso de regras na tentativa de proteger o negócio

Este conflito tem sido latente nos últimos anos

sábado, 27 de abril de 13

Page 31: O que é DevOps afinal?

Limitações da infra

Equipe não conhece o ambiente devel e seus processos

Equipe trabalha de forma manual e artesanal

Estavam acostumados a fazer deploy 1 vez por semana ou mês

Seus ambientes não estão preparados para 10 deploys por dia

Seus integrantes não estão preparados para 10 deploys por dia

sábado, 27 de abril de 13

Page 32: O que é DevOps afinal?

Limitações do devel

Equipe não conhece o ambiente de infra e seus processos

Equipe está experimentando um metodologia que ainda não domina

Equipe não sabe como pedir ou como expressar suas necessidades

Equipe não sabe se sua aplicação vai quebrar em produção

Tudo passa a ser muito incerto

sábado, 27 de abril de 13

Page 33: O que é DevOps afinal?

ConsequênciasEquipe de infra não dá vazão as demandas

O que é produzido no devel não roda bem na produção

Pequenos e constantes incidentes pós-deploy

Aumento no índice incidentes e rollbacks

Diminuição do valor do negócio

Infração do acordo de nível de serviço

sábado, 27 de abril de 13

Page 34: O que é DevOps afinal?

ReaçõesCliente insatisfeito, administrando prejuízo. Gerência de TI inicia um processo de repasse da insatisfação de forma equivocada (caça as bruxas) pressionando ambas equipes.

sábado, 27 de abril de 13

Page 35: O que é DevOps afinal?

Troca de acusaçõesDe um lado o devel dizendo que infra é engessada, lenta e que não oferece um ambiente adequado para desenvolverem suas aplicações. Do outro lado a infra dizendo que o devel faz código ruim e instável e que não é culpa deles se a aplicação não funciona.

sábado, 27 de abril de 13

Page 36: O que é DevOps afinal?

O combustível do conflito (infra)

sábado, 27 de abril de 13

Page 37: O que é DevOps afinal?

O combustível do conflito

Eles falam não

Eles falam não pela segunda vez

Eles falam não pela terceira vez

Eles falam não o tempo todo por diversas razões, para diversos pedidos

Eles demoram, atrasam e perdem prazos de atendimento

sábado, 27 de abril de 13

Page 38: O que é DevOps afinal?

O combustível do conflito (cont.)

Eles se recusam a quebrar as coisas mesmo que seja para encontrar o problema

Eles se preocupam com UPTIME e não com o negócio

Eles acham que o devel só quer saber de perfumarias e coisas do gênero

Eles não se esforçam para ajudar o devel a encontrar o problema

Eles acham que o problema do devel não é problema deles

Eles não conseguem enxergar o negócio

Eles não enxergam que infra e devel são parte de um todo

sábado, 27 de abril de 13

Page 39: O que é DevOps afinal?

Nova realidadeLembra do parte que dissemos que a infra se preocupa em proteger o negócio e o devel se preocupa com as formas de agregar valor ao negócio?

Esqueça isto, esse modelo funcionou nos anos 80/90/2000 mas agora é preciso mudar, vivemos uma nova realidade em TI.

sábado, 27 de abril de 13

Page 40: O que é DevOps afinal?

A infra deve entender que sua obrigação é oferecer os meios para fazer o negócio fluir, e isso também é papel do devel.

sábado, 27 de abril de 13

Page 41: O que é DevOps afinal?

Ambas equipes precisam mudar a forma de pensar e de agir, porém é preciso ter consciência de que mudanças estão associadas a problemas, uma mudança pode quebrar seu produto e afetar o seu negócio. Mude consciente.

sábado, 27 de abril de 13

Page 42: O que é DevOps afinal?

Então qual é a receita mágica?Como mudar sem afetar o negócio?

sábado, 27 de abril de 13

Page 43: O que é DevOps afinal?

Mudanças necessárias

A infra precisa evoluir, e precisa fazer isto rápido

O devel precisa ter autonomia

O devel precisa ter e controle de todas as fases de deploy

O devel precisa ter condições de fazer rollback se necessário

sábado, 27 de abril de 13

Page 44: O que é DevOps afinal?

A infra precisa começar a trabalhar de forma automatizada e dinâmica, precisa ser mais veloz para subir novos ambientes ou mesmo reconstruir/duplicar os ambientes existentes para suprir as necessidades do devel, não dá mais para trabalhar de forma manual e usar as mesmas metodologias da época dos mainframes.

sábado, 27 de abril de 13

Page 45: O que é DevOps afinal?

O devel precisa conseguir passar para infra suas necessidades de forma clara, e tem que se esforçar para fazer a infra entender isto - e eles não vão entender na primeira vez.

sábado, 27 de abril de 13

Page 46: O que é DevOps afinal?

Busca por soluçõesE foi a busca de soluções para estas necessidades que motivou importantes discussões no mundo da TI, foi então que começaram a falar de ‘Infraesturura ágil’ no ano de 2008, vamos agora entender o que é isso.

sábado, 27 de abril de 13

Page 47: O que é DevOps afinal?

Tendência: Virtualização

sábado, 27 de abril de 13

Page 48: O que é DevOps afinal?

Tendência: Cloud Computing

sábado, 27 de abril de 13

Page 49: O que é DevOps afinal?

Infraestrutura ágil

Infra precisa evoluir e começar a trabalhar de forma ágil

Infra como código

Deploy automatizado de aplicações

Rollback automatizado

Deploy de ambientes e infra de forma automatizado

É necessário fazer em minutos o que antes fazíamos em dias manualmente

sábado, 27 de abril de 13

Page 50: O que é DevOps afinal?

Ferramentas de infra ágil

Orquestradores

Ferramentas de gerência de configurações

Ferramentas de provisionamento

sábado, 27 de abril de 13

Page 51: O que é DevOps afinal?

Equipes de infra ágil

Versionamento do código e arquivos de configuração (git)

Organização de atividades de forma visual (KANBAN BOARD)

Trabalho em pares

Divisão das atividades em sprints

Reuniões ágeis diárias (standup meeting de 10 minutos - em pé)

Reuniões ágeis periódicas (retrospectiva e planejamento de sprints).

sábado, 27 de abril de 13

Page 52: O que é DevOps afinal?

DevOps e infra ágil são a mesma coisa? não!

sábado, 27 de abril de 13

Page 53: O que é DevOps afinal?

DevOps & Infra ÁgilInfraestrutura ágil é parte da cultura DevOps, ela depende de infraestutura ágil, mas ainda existe muito mais, este é apenas o lado OPS.

sábado, 27 de abril de 13

Page 54: O que é DevOps afinal?

DevOps Chegou a hora de entrar neste assunto, agora nós vamos aprofundar nossos estudos em relação a cultura DevOps.

sábado, 27 de abril de 13

Page 55: O que é DevOps afinal?

Devops aspectos culturais

Cultura

Colaboração, fim das divisões, relações saudáveis, novo comportamento

Automação

Deploy, controle, monitoração, gerência de configuração, orquestração

Avaliação

Métricas, medições, performance, logs e integração

Compartilhamento

Feedback e boa comunicação entre a equipe

sábado, 27 de abril de 13

Page 56: O que é DevOps afinal?

Aprofundando

sábado, 27 de abril de 13

Page 57: O que é DevOps afinal?

Um ambiente DevOps deve oferecer

sábado, 27 de abril de 13

Page 58: O que é DevOps afinal?

Devops aspectos técnicos

Infraestrutura como código

Orquestração de servidores

Gerência de configurações

Provisionamento dinâmico de ambientes

Controle de versões compartilhado entre infra e devel

Ambiente de desenvolvimento, teste e produção (no mínimo)

sábado, 27 de abril de 13

Page 59: O que é DevOps afinal?

Devops aspectos técnicosO ambiente de devel deve possibilitar TDD

Infra deve participar dos projetos desde o início [1]

Infra deve participar das reuniões de devel [2]

Devel deve participar das reuniões de infra [3]

Ambiente de entrega contínua [4]

Os desenvolvedores devem conseguir fazer o deploy sem interferência da infra [5]

Monitoramento eficaz com processamento adequado dos eventos e métricas

Capacidade de resposta rápida a incidentes e problemas

Backup e restore confiável

sábado, 27 de abril de 13

Page 60: O que é DevOps afinal?

Para a adoção da cultura funcionar, a equipe precisa observar e exercitar alguns valores

sábado, 27 de abril de 13

Page 61: O que é DevOps afinal?

Devops valores humanosConfiança no trabalho de sua equipe

Respeito pessoal e profissional por todos da equipe

Sinceridade sobre eventos e incidentes ocorridos

Honestidade sobre as causas dos incidentes (não esconda nada da sua equipe)

Entendimento de que o problema é responsabilidade de todos

Entendimento de a solução é responsabilidade de todos

Entendimento de que os resultados são o reflexo do trabalho de toda a equipe

Comunicação efetiva e dinâmica

Postura construtiva sempre

Espírito de colaboração

sábado, 27 de abril de 13

Page 62: O que é DevOps afinal?

Aplicando a cultura

sábado, 27 de abril de 13

Page 63: O que é DevOps afinal?

Devops e métodos de trabalho

Internalize e adapte métodos ágeis como KABAN e SCRUM para seu dia-a-dia

Aprofunde estudos em entrega contínua

Aprofunde estudos em gerência de configurações, orquestração e provisionamento

sábado, 27 de abril de 13

Page 64: O que é DevOps afinal?

Aplicando a cultura

Ambiente StartUP

Ocorre naturalmente

Ambiente Corporativo

Necessita de um agente de mudanças

sábado, 27 de abril de 13

Page 65: O que é DevOps afinal?

O especialista Devops

Está na casa dos 30 anos ou mais

É um profissional sênior em infraestrutura

Tem um bom background em desenvolvimento

Tem um bom background em metodologias ágeis

Tem sólidos conhecimentos em soluções opensource e similares

Trabalha intensamente com automação e infraestrutura como código

sábado, 27 de abril de 13

Page 66: O que é DevOps afinal?

Onde ele atua?

sábado, 27 de abril de 13

Page 67: O que é DevOps afinal?

Ganhos na adoção da cultura

sábado, 27 de abril de 13

Page 68: O que é DevOps afinal?

Ganhos para infra

Infraestrutua como código (equipe para de administrar e passa a desenvolver a infra)

Infra mais eficiente e rápida usando métodos ágeis

Equipe de Infra mais organizada

Equipe de Infra se comunicando melhor

Infra fazendo mais em menos tempo com menos gente

Ambientes de gerência de configuração, orquestração e provisionamento implantados

Deploys de infra (novos ambientes) mais rápidos e seguros => entrega rápida

Ambiente padronizado e sob-controle

Feedback rápido em todas as atividades de infra

sábado, 27 de abril de 13

Page 69: O que é DevOps afinal?

Ganhos para o devel

Devel tem ambiente mais adequado para trabalhar (dev/teste/prod)

Devel passa a contar com ambiente de desenvolvimento contínuo

Devel passa a contar com testes automatizados

Deploys de apps (novas versões) mais rápidos e seguros => entrega rápida

Feedback rápido em todas as fases de desenvolvimento

sábado, 27 de abril de 13

Page 70: O que é DevOps afinal?

Ganhos mútuos (Infra e Devel)

Acaba a divisão Infra vs Devel (acaba a guerra)

Infra participa dos projetos e acompanha de perto tudo o que acontece

Infra participando resulta em melhor planejamento do ambiente de produção

Infra participando resulta em monitoramento mais eficaz da aplicação

Devel começa a compreender melhor a infra e isso resulta em um produto melhor

Equipes trabalhando em conjunto para aumentar o valor do negócio

sábado, 27 de abril de 13

Page 71: O que é DevOps afinal?

Ganhos para a empresa

Acaba a divisão Infra vs Devel (acaba a guerra)

Infra participa dos projetos e acompanha de perto tudo o que acontece

Infra participando resulta em melhor planejamento do ambiente de produção

Infra participando resulta em monitoramento mais eficaz da aplicação

Devel começa a compreender melhor a infra e isso resulta em um produto melhor

Equipes trabalhando em conjunto para aumentar o valor do negócio

sábado, 27 de abril de 13

Page 72: O que é DevOps afinal?

Amarrando as pontas e respondendo as perguntas do início!

sábado, 27 de abril de 13

Page 73: O que é DevOps afinal?

Respostas

DevOps está diretamente relacionado a um melhor feedback entre as áreas de TI.

DevOps é um movimento, é um conceito, é uma cultura e uma filosofia, e não existe uma explicação fácil.

DevOps possibilita diminuição dos riscos de mudanças através do uso de um ferramental adequado e adoção de uma cultura específica.

DevOps busca entregar sistemas melhores, com menor custo, fazendo isto de forma mais rápida e com menor risco.

DevOps envolve a área de Infra e Devel primáriamente.

sábado, 27 de abril de 13

Page 74: O que é DevOps afinal?

Respostas (cont.)DevOps é pura metodologia ágil tando na Infra quanto no Devel.

DevOps só funciona se as equipes de infra e devel estiverem dispostas a ceder, mudar sua cultura e método de trabalho.

DevOPs não é um cargo, tão pouco um setor ou departamento, é uma cultura.

DevOps não está restrito ao ambiente das startups, é possível utilizar essa cultura no meio corporativo.

DevOps não é algo novo, as boas práticas estão ai desde de sempre, logo esse ‘juntado’ de práticas não é novidade para muita gente, mas para alguns serve como uma boa referência para aplicar mudanças necessárias.

sábado, 27 de abril de 13

Page 75: O que é DevOps afinal?

Quero ser um especialista DevOps, mas não sei por onde começar, o que devo fazer?Não há um tutorial para isto, minha r e c o m e n d a ç ã o é q u e v o c ê e s t u d e desenvolvimento ágil e procure entender o processo de desenvolvimento do local onde você t r aba lha , e s t ude f e r r amen ta s pa r a desenvolvimento contínuo, estude ferramentas de gerência de configuração, orquestração e provisionamento,

sábado, 27 de abril de 13

Page 76: O que é DevOps afinal?

Uso ferramentas ágeis, sou um profissional devops?Não existe uma entidade certificadora, uma prova ou alguém que possa lhe conceder este título, não existe um manual de conduta para dizer se você é um DevOps, se você está se esforçando para utilizar as boas práticas, está estimulando uma maior integração entre infra e devel, se você está sendo o agente de mudanças, então você está no caminho certo, continue e persista.

sábado, 27 de abril de 13

Page 77: O que é DevOps afinal?

Não existe caminho rápido ou uma receita mágica, a adoção desta cultura só ocorre se as pessoas estiverem dispostas a mudar.

sábado, 27 de abril de 13

Page 78: O que é DevOps afinal?

Referências

http://www.kartar.net/2010/02/what-devops-means-to-me/http://itrevolution.com/the-convergence-of-devops/http://devopsdays.org/events/http://devopsweekly.com

Twitter@devopsdadys

Google Groupsdevopsdays

DevOps na rede

Palestra baseada no post: http://gutocarvalho.net/octopress/2013/03/16/o-que-e-um-devops-afinal/sábado, 27 de abril de 13

Page 79: O que é DevOps afinal?

Perguntas?

sábado, 27 de abril de 13

Page 80: O que é DevOps afinal?

Obrigado!

Linkedin: http://br.linkedin.com/in/gutocarv

E-mail: [email protected]

Contato

Slides: slideshare.net/gutocarvalhoBlog: gutocarvalho.net

Twitter: @gutocarvalho

sábado, 27 de abril de 13