SlideShare uma empresa Scribd logo
Introdução a DevOps e
Continuous Delivery
Carlos Felippe Cardoso (CFC)
cfc@k21.com.br
@carlosfelippe
slideshare.net/cfelippe
k21.com.br
Do que vamos falar?
1. Conceito de DevOps
2. Disfunções comuns
3. Por que adotarmos?
4. Infra as Code
5. Continuous Delivery
Pra começar, o que é DevOps?
Como falam por aí:
“DevOps é um método para
desenvolvimento de Software que enfatiza a
comunicação, colaboração, integração,
automação e o uso de métricas.”
Patrick Debois
“DevOps é um método para desenvolvimento
de Software que enfatiza a comunicação,
colaboração, integração, automação e o uso
de métricas.”
Patrick Debois
https://blog.newrelic.com/2014/05/16/devops-name/
https://www.slideshare.net/jallspaw/10-deploys-per-day-dev-and-ops-cooperation-at-flickr
Um bom livro
pra entender a
relação entre
DevOps, Agile
etc?
Workshop em 2011
"E se jogarmos nosso servidor de produção pela janela?"
"Quanto tempo para colocar o sistema novamente no ar?"
"Continuous Delivery for DevOps"
Jez Humble / Agosto - 2011
Rio de Janeiro
Você já viu isso acontecer?
“O principal objetivo é aumentar a
colaboração entre os envolvidos no
processo de entrega de software,
de um modo que possamos entregar valor
mais rápido e de modo mais confiável”
Patrick Debois
E por que isso faz tanto sentido?
(Lead time = tempo total) > 30 dias!!!!
A gente pode esperar?
Enquanto isso...
DevOps não resolve só os problemas
técnicos.
Resolve os de negócio!
Pontos-chave para adotarmos
1) Diminuir “Time-to-market”
2) Melhoria na qualidade
3) Aumentar resiliência
“Mas CFC, aqui na empresa é
diferente…”
1) Produz vários documentos para mandar para outro setor,
afinal tudo deve ser bem documentado para servir de “evidência”?
2) Nas “salas de guerra”, é comum haver trocas de acusações
constantes?
3) Alguém sempre diz que não pode ser feito porque a lei SOX não
permite, o ITIL não deixa etc?
4) Você convida com constância os membros de outras
“especialidades” para ajudar no seu trabalho?
5) Somos preocupados com o Kaizen, sempre estamos reunindo os
vários times envolvidos no projeto para levantarmos pontos de
melhoria?
Vamos ver como estamos no teste do
“Wall of Confusion”:
livremente inspirado de http://itrevolution.com/devops-culture-part-2/
Beleza!
Só derrubarmos as barreiras então!
“You can’t directly change culture. But you can
change behavior, and behavior becomes
culture”
Lloyd Taylor
Cavernas (silos) de conhecimento...
Mito do herói!
Na prática, é o
famoso funcionário
que perdeu o
direito de morrer! :(
A transição entre DevOps
como prática / cultura leva tempo...
E por onde começar?
Pilares e práticas para DevOps
May Xu
Infra as Code (Puppet, chef, Docker etc)
Perfil
profissional
diferente!
Infra as Code (Puppet, chef, Docker etc)
Gerência de configuração “automatizada"
● Infrastructure as Code: Track, Test, Deploy, Reproduce, Scale
● Qualquer alteração de código gera log e histórico de mudança na
infraestrutura
● Setups "repetitíveis": Do once, repeat forever
● Escalabilidade mais rápida: Uma instância configurada é o mesmo custo
que configurar várias
● Coerência e consistência nos setups dos vários servidores
● Ambientes consistentes: Dev, QA, Homolog, Prod
Alternativas ao Puppet: Chef, Salt, Ansible
Infra as Code (Puppet, chef, Docker etc)
Inclusive para Windows!
E como é código...
Integração Contínua!
Infra as code
Puppet Script
Cloud
Provisiona
Máquina em
Staging
Scripting Tudo OK?
(testing)
Dashboards!
Nem sempre está verde! =(
Dashboards!
E pode ir até produção!
E o deploy automatizado?
Que tal " tão" simples quanto o apertar de um botão?
Fabric
E o deploy automatizado?
Que tal " tão" simples quanto o apertar de um botão?
Continuous Integration -> Continuous Delivery
Pipeline de Build
Continuous Delivery
Build -> Fase de Integração contínua
Deploy -> Ferramentas Infra as Code
Test -> Smoke Tests, sondas
automatizadas de monitoramento
Release -> Processo automatizado de
release para usuários
(ler sobre feature flags, canary
releasing, blue green deployment)
De onde surgiram as idéias do CD?
● Idéias vindas do artigo
○ The Deployment Production Line
■ Jez Humble, Chris Read, Dan North
■ AGILE '06 proceedings of the conference - IEEE
Computer Society , Pages 113 - 118
"The Problems of delivering Software"
● Deploy manual
● Deploy em homologação
● Configuração manual do ambiente de produção
● Feedback de pequenos grupos de usuários
● "Done Means Released" (Jez Humble)
● Controle de versão
● Gerenciamento de dependências
● Gerenciamento de configuração do software
● Ferramentas para automatizar e gerenciar qualquer
aspecto relacionado ao software!
○ DDL/DML do Banco de dados
○ Máquinas virtuais
■ Servidores de aplicação
○ Infraestrutura de rede
○ Load-Balancing "elástico"
■ Behavior-Driven Monitoring
○ Deploy da aplicação
Vamos sonhar alto?
Continuous Delivery & DevOps
PERGUNTAS?
cfc@k21.com.br
@carlosfelippe
slideshare.net/cfelippe
k21.com.br/treinamentos/

Mais conteúdo relacionado

Mais procurados

Introduction to DevOps
Introduction to DevOpsIntroduction to DevOps
Introduction to DevOps
OCTO Technology
 
CI/CD Best Practices for Your DevOps Journey
CI/CD Best  Practices for Your DevOps JourneyCI/CD Best  Practices for Your DevOps Journey
CI/CD Best Practices for Your DevOps Journey
DevOps.com
 
CICD Pipeline Using Github Actions
CICD Pipeline Using Github ActionsCICD Pipeline Using Github Actions
CICD Pipeline Using Github Actions
Kumar Shìvam
 
DevOps Introduction
DevOps IntroductionDevOps Introduction
DevOps Introduction
Robert Sell
 
An introduction to DevOps
An introduction to DevOpsAn introduction to DevOps
An introduction to DevOps
Alexander Meijers
 
DevOps
DevOpsDevOps
GitOps and ArgoCD
GitOps and ArgoCDGitOps and ArgoCD
GitOps and ArgoCD
Omar Fathy
 
Gitlab CI/CD
Gitlab CI/CDGitlab CI/CD
Gitlab CI/CD
JEMLI Fathi
 
Introduction to DevOps
Introduction to DevOpsIntroduction to DevOps
Introduction to DevOps
Hawkman Academy
 
Gitops: a new paradigm for software defined operations
Gitops: a new paradigm for software defined operationsGitops: a new paradigm for software defined operations
Gitops: a new paradigm for software defined operations
Mariano Cunietti
 
The twelve factor app
The twelve factor appThe twelve factor app
The twelve factor app
Ravi Okade
 
Introducing GitLab
Introducing GitLabIntroducing GitLab
Introducing GitLab
Taisuke Inoue
 
DevOps Foundation
DevOps FoundationDevOps Foundation
DevOps Foundation
Homepree Rloy
 
CI/CD with Github Actions
CI/CD with Github ActionsCI/CD with Github Actions
CI/CD with Github Actions
Md. Minhazul Haque
 
Devops Devops Devops
Devops Devops DevopsDevops Devops Devops
Devops Devops Devops
Kris Buytaert
 
Dev ops != Dev+Ops
Dev ops != Dev+OpsDev ops != Dev+Ops
Dev ops != Dev+Ops
Shalu Ahuja
 
GitOps - Operation By Pull Request
GitOps - Operation By Pull RequestGitOps - Operation By Pull Request
GitOps - Operation By Pull Request
Kasper Nissen
 
DevOps 101
DevOps 101DevOps 101
DevOps 101
Ernest Mueller
 
CI/CD with GitHub Actions
CI/CD with GitHub ActionsCI/CD with GitHub Actions
CI/CD with GitHub Actions
Swaminathan Vetri
 
Introduction to GitHub Actions
Introduction to GitHub ActionsIntroduction to GitHub Actions
Introduction to GitHub Actions
Knoldus Inc.
 

Mais procurados (20)

Introduction to DevOps
Introduction to DevOpsIntroduction to DevOps
Introduction to DevOps
 
CI/CD Best Practices for Your DevOps Journey
CI/CD Best  Practices for Your DevOps JourneyCI/CD Best  Practices for Your DevOps Journey
CI/CD Best Practices for Your DevOps Journey
 
CICD Pipeline Using Github Actions
CICD Pipeline Using Github ActionsCICD Pipeline Using Github Actions
CICD Pipeline Using Github Actions
 
DevOps Introduction
DevOps IntroductionDevOps Introduction
DevOps Introduction
 
An introduction to DevOps
An introduction to DevOpsAn introduction to DevOps
An introduction to DevOps
 
DevOps
DevOpsDevOps
DevOps
 
GitOps and ArgoCD
GitOps and ArgoCDGitOps and ArgoCD
GitOps and ArgoCD
 
Gitlab CI/CD
Gitlab CI/CDGitlab CI/CD
Gitlab CI/CD
 
Introduction to DevOps
Introduction to DevOpsIntroduction to DevOps
Introduction to DevOps
 
Gitops: a new paradigm for software defined operations
Gitops: a new paradigm for software defined operationsGitops: a new paradigm for software defined operations
Gitops: a new paradigm for software defined operations
 
The twelve factor app
The twelve factor appThe twelve factor app
The twelve factor app
 
Introducing GitLab
Introducing GitLabIntroducing GitLab
Introducing GitLab
 
DevOps Foundation
DevOps FoundationDevOps Foundation
DevOps Foundation
 
CI/CD with Github Actions
CI/CD with Github ActionsCI/CD with Github Actions
CI/CD with Github Actions
 
Devops Devops Devops
Devops Devops DevopsDevops Devops Devops
Devops Devops Devops
 
Dev ops != Dev+Ops
Dev ops != Dev+OpsDev ops != Dev+Ops
Dev ops != Dev+Ops
 
GitOps - Operation By Pull Request
GitOps - Operation By Pull RequestGitOps - Operation By Pull Request
GitOps - Operation By Pull Request
 
DevOps 101
DevOps 101DevOps 101
DevOps 101
 
CI/CD with GitHub Actions
CI/CD with GitHub ActionsCI/CD with GitHub Actions
CI/CD with GitHub Actions
 
Introduction to GitHub Actions
Introduction to GitHub ActionsIntroduction to GitHub Actions
Introduction to GitHub Actions
 

Destaque

Transformação ágil ou transformação digital?
Transformação ágil ou transformação digital?Transformação ágil ou transformação digital?
Transformação ágil ou transformação digital?
Carlos Felippe Cardoso
 
Intro a Testes Automatizados
Intro a Testes AutomatizadosIntro a Testes Automatizados
Intro a Testes Automatizados
Carlos Felippe Cardoso
 
Ferramentas para auxiliar na gestão de portfolio e fazer a bola chegar redonda
Ferramentas para auxiliar na gestão de portfolio e fazer a bola chegar redondaFerramentas para auxiliar na gestão de portfolio e fazer a bola chegar redonda
Ferramentas para auxiliar na gestão de portfolio e fazer a bola chegar redonda
Carlos Felippe Cardoso
 
Desenvolvimento Ágil e a mudança de mindset envolvida
Desenvolvimento Ágil e a mudança de mindset envolvidaDesenvolvimento Ágil e a mudança de mindset envolvida
Desenvolvimento Ágil e a mudança de mindset envolvida
Carlos Felippe Cardoso
 
Agile portfolio management - Tools that help to reduce demand
Agile portfolio management - Tools that help to reduce demandAgile portfolio management - Tools that help to reduce demand
Agile portfolio management - Tools that help to reduce demand
Carlos Felippe Cardoso
 
Ferramentas para auxiliar na gestão de portfolio e fazer a bola chegar redonda
Ferramentas para auxiliar na gestão de portfolio e fazer a bola chegar redondaFerramentas para auxiliar na gestão de portfolio e fazer a bola chegar redonda
Ferramentas para auxiliar na gestão de portfolio e fazer a bola chegar redonda
Carlos Felippe Cardoso
 
Testes automatizados - Agile Day
Testes automatizados -  Agile DayTestes automatizados -  Agile Day
Testes automatizados - Agile Day
Carlos Felippe Cardoso
 
ScrumMaster 3.0 - Apresentação no Agile Trends
ScrumMaster 3.0 - Apresentação no Agile TrendsScrumMaster 3.0 - Apresentação no Agile Trends
ScrumMaster 3.0 - Apresentação no Agile Trends
Carlos Felippe Cardoso
 
Coding dojo
Coding dojoCoding dojo
Teste de Mutação
Teste de MutaçãoTeste de Mutação
Teste de Mutação
Luís Bianchin
 
Você precisa de um scrum master, um agile coach ou nenhum dos dois
Você precisa de um scrum master, um agile coach ou nenhum dos dois Você precisa de um scrum master, um agile coach ou nenhum dos dois
Você precisa de um scrum master, um agile coach ou nenhum dos dois
Carlos Felippe Cardoso
 
DevSecOps - Integrating Security in the Development Process (with memes) - Ma...
DevSecOps - Integrating Security in the Development Process (with memes) - Ma...DevSecOps - Integrating Security in the Development Process (with memes) - Ma...
DevSecOps - Integrating Security in the Development Process (with memes) - Ma...
Magno Logan
 

Destaque (12)

Transformação ágil ou transformação digital?
Transformação ágil ou transformação digital?Transformação ágil ou transformação digital?
Transformação ágil ou transformação digital?
 
Intro a Testes Automatizados
Intro a Testes AutomatizadosIntro a Testes Automatizados
Intro a Testes Automatizados
 
Ferramentas para auxiliar na gestão de portfolio e fazer a bola chegar redonda
Ferramentas para auxiliar na gestão de portfolio e fazer a bola chegar redondaFerramentas para auxiliar na gestão de portfolio e fazer a bola chegar redonda
Ferramentas para auxiliar na gestão de portfolio e fazer a bola chegar redonda
 
Desenvolvimento Ágil e a mudança de mindset envolvida
Desenvolvimento Ágil e a mudança de mindset envolvidaDesenvolvimento Ágil e a mudança de mindset envolvida
Desenvolvimento Ágil e a mudança de mindset envolvida
 
Agile portfolio management - Tools that help to reduce demand
Agile portfolio management - Tools that help to reduce demandAgile portfolio management - Tools that help to reduce demand
Agile portfolio management - Tools that help to reduce demand
 
Ferramentas para auxiliar na gestão de portfolio e fazer a bola chegar redonda
Ferramentas para auxiliar na gestão de portfolio e fazer a bola chegar redondaFerramentas para auxiliar na gestão de portfolio e fazer a bola chegar redonda
Ferramentas para auxiliar na gestão de portfolio e fazer a bola chegar redonda
 
Testes automatizados - Agile Day
Testes automatizados -  Agile DayTestes automatizados -  Agile Day
Testes automatizados - Agile Day
 
ScrumMaster 3.0 - Apresentação no Agile Trends
ScrumMaster 3.0 - Apresentação no Agile TrendsScrumMaster 3.0 - Apresentação no Agile Trends
ScrumMaster 3.0 - Apresentação no Agile Trends
 
Coding dojo
Coding dojoCoding dojo
Coding dojo
 
Teste de Mutação
Teste de MutaçãoTeste de Mutação
Teste de Mutação
 
Você precisa de um scrum master, um agile coach ou nenhum dos dois
Você precisa de um scrum master, um agile coach ou nenhum dos dois Você precisa de um scrum master, um agile coach ou nenhum dos dois
Você precisa de um scrum master, um agile coach ou nenhum dos dois
 
DevSecOps - Integrating Security in the Development Process (with memes) - Ma...
DevSecOps - Integrating Security in the Development Process (with memes) - Ma...DevSecOps - Integrating Security in the Development Process (with memes) - Ma...
DevSecOps - Integrating Security in the Development Process (with memes) - Ma...
 

Semelhante a Introdução a DevOps e Continuous delivery agileday

Quem e dev ops
Quem e dev opsQuem e dev ops
Quem e dev ops
Andre "Ramoni" Guimaraes
 
DevOps no mundo real - QCON 2014
DevOps no mundo real - QCON 2014DevOps no mundo real - QCON 2014
DevOps no mundo real - QCON 2014
Rodrigo Campos
 
E se ao invés de Dev e Ops for DevOps? Uma introdução a cultura DevOps
E se ao invés de Dev e Ops for DevOps? Uma introdução a cultura DevOpsE se ao invés de Dev e Ops for DevOps? Uma introdução a cultura DevOps
E se ao invés de Dev e Ops for DevOps? Uma introdução a cultura DevOps
Edson Celio
 
Quebrando barreiras entre desenvolvimento e operação de software com DevOps
Quebrando barreiras entre desenvolvimento e operação de software com DevOpsQuebrando barreiras entre desenvolvimento e operação de software com DevOps
Quebrando barreiras entre desenvolvimento e operação de software com DevOps
José Alexandre Macedo
 
DrupalCamp SP 2015 - DevOps, por onde começar? Por Sebastian Ferrari
DrupalCamp SP 2015 - DevOps, por onde começar? Por Sebastian FerrariDrupalCamp SP 2015 - DevOps, por onde começar? Por Sebastian Ferrari
DrupalCamp SP 2015 - DevOps, por onde começar? Por Sebastian Ferrari
Taller Negócio Digitais
 
DevOps - A Origem
DevOps - A OrigemDevOps - A Origem
DevOps - A Origem
André Dias
 
DevOps - Como remover barreiras para a adoção?
DevOps - Como remover barreiras para a adoção?DevOps - Como remover barreiras para a adoção?
DevOps - Como remover barreiras para a adoção?
Mateus Prado
 
DevOps - Operação contínua
DevOps - Operação contínuaDevOps - Operação contínua
DevOps - Operação contínua
Luís Cesar Teodoro
 
ConnectionDay 2019 - Divinópolis - Transformação digital turbinada
ConnectionDay 2019 - Divinópolis - Transformação digital turbinadaConnectionDay 2019 - Divinópolis - Transformação digital turbinada
ConnectionDay 2019 - Divinópolis - Transformação digital turbinada
André Paulovich
 
IFSP 2015 - Cultura DevOps
IFSP 2015 - Cultura DevOpsIFSP 2015 - Cultura DevOps
IFSP 2015 - Cultura DevOps
Leonardo Comelli
 
DevOps Anti-Patterns - Campus Party
DevOps Anti-Patterns - Campus PartyDevOps Anti-Patterns - Campus Party
DevOps Anti-Patterns - Campus Party
Fernando Ike
 
Azure Bootcamp 2018 - DevOps para profissionais de Infra - Infomach / Goiânia
Azure Bootcamp 2018 - DevOps para profissionais de Infra - Infomach / GoiâniaAzure Bootcamp 2018 - DevOps para profissionais de Infra - Infomach / Goiânia
Azure Bootcamp 2018 - DevOps para profissionais de Infra - Infomach / Goiânia
Rodrigo Marques Teixeira
 
#noOps?? Transcendendo o DevOps pelo caminho de tijolos (não muito) amarelos
#noOps?? Transcendendo o DevOps pelo caminho de tijolos (não muito) amarelos#noOps?? Transcendendo o DevOps pelo caminho de tijolos (não muito) amarelos
#noOps?? Transcendendo o DevOps pelo caminho de tijolos (não muito) amarelos
Evandro Silvestre
 
DevOps pela visão de um QA
DevOps pela visão de um QADevOps pela visão de um QA
DevOps pela visão de um QA
Kamilla Queiroz Xavier
 
O ciclo da vida
O ciclo da vidaO ciclo da vida
O ciclo da vida
Luiz Borba
 
DevOps, NoOps...afinal que raios é isso?
DevOps, NoOps...afinal que raios é isso?DevOps, NoOps...afinal que raios é isso?
DevOps, NoOps...afinal que raios é isso?
Thiago Ganzarolli
 
Vivenciando dev ops para além da automação de infraestrutura 2.0
Vivenciando dev ops para além da automação de infraestrutura 2.0Vivenciando dev ops para além da automação de infraestrutura 2.0
Vivenciando dev ops para além da automação de infraestrutura 2.0
Diego Pacheco
 
Seu código fonte é sustentável?
Seu código fonte é sustentável?Seu código fonte é sustentável?
Seu código fonte é sustentável?
Isaac de Souza
 
DevOps
DevOpsDevOps
Os príncipios por trás do DevOps
Os príncipios por trás do DevOpsOs príncipios por trás do DevOps
Os príncipios por trás do DevOps
Guilherme Cardoso
 

Semelhante a Introdução a DevOps e Continuous delivery agileday (20)

Quem e dev ops
Quem e dev opsQuem e dev ops
Quem e dev ops
 
DevOps no mundo real - QCON 2014
DevOps no mundo real - QCON 2014DevOps no mundo real - QCON 2014
DevOps no mundo real - QCON 2014
 
E se ao invés de Dev e Ops for DevOps? Uma introdução a cultura DevOps
E se ao invés de Dev e Ops for DevOps? Uma introdução a cultura DevOpsE se ao invés de Dev e Ops for DevOps? Uma introdução a cultura DevOps
E se ao invés de Dev e Ops for DevOps? Uma introdução a cultura DevOps
 
Quebrando barreiras entre desenvolvimento e operação de software com DevOps
Quebrando barreiras entre desenvolvimento e operação de software com DevOpsQuebrando barreiras entre desenvolvimento e operação de software com DevOps
Quebrando barreiras entre desenvolvimento e operação de software com DevOps
 
DrupalCamp SP 2015 - DevOps, por onde começar? Por Sebastian Ferrari
DrupalCamp SP 2015 - DevOps, por onde começar? Por Sebastian FerrariDrupalCamp SP 2015 - DevOps, por onde começar? Por Sebastian Ferrari
DrupalCamp SP 2015 - DevOps, por onde começar? Por Sebastian Ferrari
 
DevOps - A Origem
DevOps - A OrigemDevOps - A Origem
DevOps - A Origem
 
DevOps - Como remover barreiras para a adoção?
DevOps - Como remover barreiras para a adoção?DevOps - Como remover barreiras para a adoção?
DevOps - Como remover barreiras para a adoção?
 
DevOps - Operação contínua
DevOps - Operação contínuaDevOps - Operação contínua
DevOps - Operação contínua
 
ConnectionDay 2019 - Divinópolis - Transformação digital turbinada
ConnectionDay 2019 - Divinópolis - Transformação digital turbinadaConnectionDay 2019 - Divinópolis - Transformação digital turbinada
ConnectionDay 2019 - Divinópolis - Transformação digital turbinada
 
IFSP 2015 - Cultura DevOps
IFSP 2015 - Cultura DevOpsIFSP 2015 - Cultura DevOps
IFSP 2015 - Cultura DevOps
 
DevOps Anti-Patterns - Campus Party
DevOps Anti-Patterns - Campus PartyDevOps Anti-Patterns - Campus Party
DevOps Anti-Patterns - Campus Party
 
Azure Bootcamp 2018 - DevOps para profissionais de Infra - Infomach / Goiânia
Azure Bootcamp 2018 - DevOps para profissionais de Infra - Infomach / GoiâniaAzure Bootcamp 2018 - DevOps para profissionais de Infra - Infomach / Goiânia
Azure Bootcamp 2018 - DevOps para profissionais de Infra - Infomach / Goiânia
 
#noOps?? Transcendendo o DevOps pelo caminho de tijolos (não muito) amarelos
#noOps?? Transcendendo o DevOps pelo caminho de tijolos (não muito) amarelos#noOps?? Transcendendo o DevOps pelo caminho de tijolos (não muito) amarelos
#noOps?? Transcendendo o DevOps pelo caminho de tijolos (não muito) amarelos
 
DevOps pela visão de um QA
DevOps pela visão de um QADevOps pela visão de um QA
DevOps pela visão de um QA
 
O ciclo da vida
O ciclo da vidaO ciclo da vida
O ciclo da vida
 
DevOps, NoOps...afinal que raios é isso?
DevOps, NoOps...afinal que raios é isso?DevOps, NoOps...afinal que raios é isso?
DevOps, NoOps...afinal que raios é isso?
 
Vivenciando dev ops para além da automação de infraestrutura 2.0
Vivenciando dev ops para além da automação de infraestrutura 2.0Vivenciando dev ops para além da automação de infraestrutura 2.0
Vivenciando dev ops para além da automação de infraestrutura 2.0
 
Seu código fonte é sustentável?
Seu código fonte é sustentável?Seu código fonte é sustentável?
Seu código fonte é sustentável?
 
DevOps
DevOpsDevOps
DevOps
 
Os príncipios por trás do DevOps
Os príncipios por trás do DevOpsOs príncipios por trás do DevOps
Os príncipios por trás do DevOps
 

Mais de Carlos Felippe Cardoso

LKNA18 - Legally Kanban
LKNA18 - Legally KanbanLKNA18 - Legally Kanban
LKNA18 - Legally Kanban
Carlos Felippe Cardoso
 
Continuous delivery principios e praticas - Knowledge21
Continuous delivery   principios e praticas - Knowledge21Continuous delivery   principios e praticas - Knowledge21
Continuous delivery principios e praticas - Knowledge21
Carlos Felippe Cardoso
 
Intro a Continuous Delivery
Intro a Continuous DeliveryIntro a Continuous Delivery
Intro a Continuous Delivery
Carlos Felippe Cardoso
 
Cultura DevOps
Cultura DevOpsCultura DevOps
Cultura DevOps
Carlos Felippe Cardoso
 
Implantando continuous delivery e seus oito principios
Implantando continuous delivery e seus oito principiosImplantando continuous delivery e seus oito principios
Implantando continuous delivery e seus oito principios
Carlos Felippe Cardoso
 
A integração contínua pode te dar metricas de graca - SGRIO 2014
A integração contínua pode te dar metricas de graca - SGRIO 2014A integração contínua pode te dar metricas de graca - SGRIO 2014
A integração contínua pode te dar metricas de graca - SGRIO 2014
Carlos Felippe Cardoso
 

Mais de Carlos Felippe Cardoso (6)

LKNA18 - Legally Kanban
LKNA18 - Legally KanbanLKNA18 - Legally Kanban
LKNA18 - Legally Kanban
 
Continuous delivery principios e praticas - Knowledge21
Continuous delivery   principios e praticas - Knowledge21Continuous delivery   principios e praticas - Knowledge21
Continuous delivery principios e praticas - Knowledge21
 
Intro a Continuous Delivery
Intro a Continuous DeliveryIntro a Continuous Delivery
Intro a Continuous Delivery
 
Cultura DevOps
Cultura DevOpsCultura DevOps
Cultura DevOps
 
Implantando continuous delivery e seus oito principios
Implantando continuous delivery e seus oito principiosImplantando continuous delivery e seus oito principios
Implantando continuous delivery e seus oito principios
 
A integração contínua pode te dar metricas de graca - SGRIO 2014
A integração contínua pode te dar metricas de graca - SGRIO 2014A integração contínua pode te dar metricas de graca - SGRIO 2014
A integração contínua pode te dar metricas de graca - SGRIO 2014
 

Introdução a DevOps e Continuous delivery agileday

  • 1. Introdução a DevOps e Continuous Delivery Carlos Felippe Cardoso (CFC) cfc@k21.com.br @carlosfelippe slideshare.net/cfelippe k21.com.br
  • 2. Do que vamos falar? 1. Conceito de DevOps 2. Disfunções comuns 3. Por que adotarmos? 4. Infra as Code 5. Continuous Delivery
  • 3. Pra começar, o que é DevOps?
  • 4. Como falam por aí: “DevOps é um método para desenvolvimento de Software que enfatiza a comunicação, colaboração, integração, automação e o uso de métricas.” Patrick Debois
  • 5.
  • 6. “DevOps é um método para desenvolvimento de Software que enfatiza a comunicação, colaboração, integração, automação e o uso de métricas.” Patrick Debois https://blog.newrelic.com/2014/05/16/devops-name/ https://www.slideshare.net/jallspaw/10-deploys-per-day-dev-and-ops-cooperation-at-flickr
  • 7. Um bom livro pra entender a relação entre DevOps, Agile etc?
  • 8. Workshop em 2011 "E se jogarmos nosso servidor de produção pela janela?" "Quanto tempo para colocar o sistema novamente no ar?" "Continuous Delivery for DevOps" Jez Humble / Agosto - 2011 Rio de Janeiro
  • 9. Você já viu isso acontecer?
  • 10.
  • 11.
  • 12.
  • 13.
  • 14. “O principal objetivo é aumentar a colaboração entre os envolvidos no processo de entrega de software, de um modo que possamos entregar valor mais rápido e de modo mais confiável” Patrick Debois
  • 15.
  • 16. E por que isso faz tanto sentido? (Lead time = tempo total) > 30 dias!!!! A gente pode esperar?
  • 18.
  • 19. DevOps não resolve só os problemas técnicos. Resolve os de negócio!
  • 20. Pontos-chave para adotarmos 1) Diminuir “Time-to-market” 2) Melhoria na qualidade 3) Aumentar resiliência
  • 21. “Mas CFC, aqui na empresa é diferente…”
  • 22.
  • 23. 1) Produz vários documentos para mandar para outro setor, afinal tudo deve ser bem documentado para servir de “evidência”? 2) Nas “salas de guerra”, é comum haver trocas de acusações constantes? 3) Alguém sempre diz que não pode ser feito porque a lei SOX não permite, o ITIL não deixa etc? 4) Você convida com constância os membros de outras “especialidades” para ajudar no seu trabalho? 5) Somos preocupados com o Kaizen, sempre estamos reunindo os vários times envolvidos no projeto para levantarmos pontos de melhoria? Vamos ver como estamos no teste do “Wall of Confusion”: livremente inspirado de http://itrevolution.com/devops-culture-part-2/
  • 24.
  • 25. Beleza! Só derrubarmos as barreiras então! “You can’t directly change culture. But you can change behavior, and behavior becomes culture” Lloyd Taylor
  • 26.
  • 27. Cavernas (silos) de conhecimento... Mito do herói! Na prática, é o famoso funcionário que perdeu o direito de morrer! :(
  • 28. A transição entre DevOps como prática / cultura leva tempo...
  • 29. E por onde começar?
  • 30. Pilares e práticas para DevOps May Xu
  • 31. Infra as Code (Puppet, chef, Docker etc)
  • 33. Infra as Code (Puppet, chef, Docker etc) Gerência de configuração “automatizada" ● Infrastructure as Code: Track, Test, Deploy, Reproduce, Scale ● Qualquer alteração de código gera log e histórico de mudança na infraestrutura ● Setups "repetitíveis": Do once, repeat forever ● Escalabilidade mais rápida: Uma instância configurada é o mesmo custo que configurar várias ● Coerência e consistência nos setups dos vários servidores ● Ambientes consistentes: Dev, QA, Homolog, Prod Alternativas ao Puppet: Chef, Salt, Ansible
  • 34.
  • 35. Infra as Code (Puppet, chef, Docker etc) Inclusive para Windows!
  • 36. E como é código... Integração Contínua!
  • 37. Infra as code Puppet Script Cloud Provisiona Máquina em Staging Scripting Tudo OK? (testing)
  • 40. E pode ir até produção!
  • 41. E o deploy automatizado? Que tal " tão" simples quanto o apertar de um botão? Fabric
  • 42. E o deploy automatizado? Que tal " tão" simples quanto o apertar de um botão?
  • 43. Continuous Integration -> Continuous Delivery
  • 45. Continuous Delivery Build -> Fase de Integração contínua Deploy -> Ferramentas Infra as Code Test -> Smoke Tests, sondas automatizadas de monitoramento Release -> Processo automatizado de release para usuários (ler sobre feature flags, canary releasing, blue green deployment)
  • 46. De onde surgiram as idéias do CD? ● Idéias vindas do artigo ○ The Deployment Production Line ■ Jez Humble, Chris Read, Dan North ■ AGILE '06 proceedings of the conference - IEEE Computer Society , Pages 113 - 118
  • 47. "The Problems of delivering Software" ● Deploy manual ● Deploy em homologação ● Configuração manual do ambiente de produção ● Feedback de pequenos grupos de usuários ● "Done Means Released" (Jez Humble) ● Controle de versão ● Gerenciamento de dependências
  • 48. ● Gerenciamento de configuração do software ● Ferramentas para automatizar e gerenciar qualquer aspecto relacionado ao software! ○ DDL/DML do Banco de dados ○ Máquinas virtuais ■ Servidores de aplicação ○ Infraestrutura de rede ○ Load-Balancing "elástico" ■ Behavior-Driven Monitoring ○ Deploy da aplicação