SlideShare uma empresa Scribd logo
1 de 32
Case Abril Mídia
1
DevOps
Johnny Santos
JohnSantos@abril.com.br
Robson Chikasawa
rchikasawa@abril.com.br
2
2
Dev
Robson Chikasawa
Editora Abril – Arquiteto de Soluções
Site Exame.com
Ops
Johnny Santos
Editora Abril – Arquiteto de Soluções
2
2
3
Overview
• Abril
• Exame.com
• Conceito DevOps
• Dividir para conquistar
• IaaS - Infrastructure as a service
• Gerenciamento de configuração
• Continuos Integration/Delivery
• Benefícios
• Resultados
3
4
Abril Mídia é responsável pela estratégia e pelo desenvolvimento dos produtos e
serviços digitais da Abril.
Áreas em que atuamos:
• Desenvolvimento de Produtos, QA e Processos
• Mídias Digitais
• E-commerce
• Infraestrutura & Operações
• Segurança da Informação
• Desenvolvimento de plataformas (mobile, CMS, Aplicativos)
5
Algumas de Nossas Marcas
2
66
2
7
Arquitetura Lógica
7
2
8
Equipe
1 – P.O (Diretora do Site)
1 – Coordenador Técnico (Scrum Master)
5 – Devs
2 – QA’s
2 – Arquiteto
20 – Jornalistas/Redatores
8
Infra (CMS/Site)
2 WsADM / 6 WS / 1 CronJobs
1 MySQL Master / 4 Slaves (replicação)
1 Memcached / 1 Redis
CDN (Akamai)
9
Visão do P.O da Exame TI
• Lenta
• Burocrática
• Inflexível
• Custo
• Improdutiva
• Não escalável
Block
Point
10
Fluxo
E-commerce -
Desenvolvimento
Operações - Projetos -
POC
Qualidade -
Segurança - Treinamento -
LAB
Service Desk
Infraestrutura
provisionamentoCobrança
Servidor Físico
40 DIAS
Servidor
Virtual
5 DIAS
2
11
Como enxergavamos
a exame
11
2
12
Antes...
• Mudanças Frequentes, com poucos deploys
• Alto Risco
• Alto o número de rollback
12
2
13
Antes...
• Arquitetura de infra-estrutura diferente de produção
• Configurações diferentes de produção
• Passagem a produção complexa
• Falta de integração contínua entre os ambientes
• Confiança entre as areas Dev/Ops
• Build Manuais
• Segurança?
13
2
1414
2
1515
2
16
Wikipedia – Definição ‘DevOps’
"DevOps (amálgama de Desenvolvedor e Operador) é uma
metodologia de desenvolvimento de software que explora
a comunicação, colaboração e integração entre desenvolvedores
de software e profissionais de TI (Tecnologia da
Informação).1 DevOps é a reação à interdependência entre
desenvolvimento de software e operações de TI. Pretende ajudar
organizações a produzir software e serviços rapidamente".
16
"DevOps (amálgama de Desenvolvedor e Operador) é uma
metodologia de desenvolvimento de software que explora
a comunicação, colaboração e integração entre desenvolvedores
de software e profissionais de TI (Tecnologia da
Informação).1 DevOps é a reação à interdependência entre
desenvolvimento de software e operações de TI. Pretende ajudar
organizações a produzir software e serviços rapidamente".
2
17
Funciona no Mundo Real?
“Se eu perguntasse para os meus clientes o que eles
desejavam, eles diriam: um cavalo mais veloz” Henry Ford
17
18
Dividir para Conquistar
• Arquitetura de infra-estrutura diferente de produção
• Configurações diferentes de produção
• Falta de integração contínua entre ambiente
• Passagem a produção complexa
• Confiança entre as areas Dev/Ops
• Segurança?
• Build Manuais
• Lenta
• Burocrática
• Inflexível
• Custo
• Improdutiva
• Não escalável
• Mudanças Frequentes, com poucos deploys
• Arquitetura de infra-estrutura diferente de produção
• Configurações diferentes de produção
• Falta de integração contínua entre ambiente
• Passagem a produção complexa
• Confiança entre as areas Dev/Ops
• Segurança?
• Build Manuais
• Lenta
• Burocrática
• Inflexível
• Custo
• Improdutiva
• Não escalável
• Mudanças Frequentes, com poucos deploys
IaaS - Infrastructure as a service
19
20
Arquitetura Lógica IaaS
21
Framework
BACKUP
STORAGE
NETWORKING
SERVIDORES
MONITORAÇÃO
COBRANÇA
Private Cloud Portal
provisionamento
22
Dividir para Conquistar
• Arquitetura de infra-estrutura diferente de produção
• Configurações diferentes de produção
• Falta de integração contínua entre ambiente
• Passagem a produção complexa
• Confiança entre as areas Dev/Ops
• Segurança?
• Build Manuais
• Lenta
• Burocrática
• Inflexível
• Custo
• Improdutiva
• Não escalável
• Mudanças Frequentes, com poucos deploys
• Arquitetura de infra-estrutura diferente de produção
• Configurações diferentes de produção
• Falta de integração contínua entre ambiente
• Passagem a produção complexa
• Confiança entre as areas Dev/Ops
• Segurança?
• Build Manuais
• Lenta
• Burocrática
• Inflexível
• Custo
• Improdutiva
• Não escalável
• Mudanças Frequentes, com poucos deploys
Gestão de Configuração
23
24
25
Arquitetura Funcional PuppetMaster
26
Dividir para Conquistar
• Arquitetura de infra-estrutura diferente de produção
• Configurações diferentes de produção
• Falta de integração contínua entre ambiente
• Passagem a produção complexa
• Confiança entre as areas Dev/Ops
• Segurança?
• Build Manuais
• Lenta
• Burocrática
• Inflexível
• Custo
• Improdutiva
• Não escalável
• Mudanças Frequentes, com poucos deploys
• Arquitetura de infra-estrutura diferente de produção
• Configurações diferentes de produção
• Falta de integração contínua entre ambiente
• Passagem a produção complexa
• Confiança entre as areas Dev/Ops
• Segurança?
• Build Manuais
• Lenta
• Burocrática
• Inflexível
• Custo
• Improdutiva
• Não escalável
• Mudanças Frequentes, com poucos deploys
27
Integração Contínua (CI)
28
Benefícios
• Agilidade para os times (DEV, QA, Ops ...)
• Redução dos chamados no service desk (25%)
• Redução no tempo para provisionamento uma máquina virtual (
30s )
• Compatibilidade Stack EC2
• Autonomia para as equipes (dev, qa e, Ops ...)
• Arquitetura próxima a produção
• Baixo custo
• Builds Automatizados
• Continuos Integration
• Continuos Delivery
• Ambiente Controlado
• Escalabilidade
2
29
Analytics
Janeiro/2012
UV: 2.288.329
PV:21.530.175
29
Junho/2013
UV: 3.965.613
PV:51.541.455
2
30
Resultados
30
31
http://digital.abril.com.br
32
Contatos
@chikasawa
@john00santos
rchikasawa@abril.com.br
JohnSantos@abril.com.br

Mais conteúdo relacionado

Mais procurados

DevOps, por onde começar
DevOps, por onde começarDevOps, por onde começar
DevOps, por onde começarAdriano Tavares
 
Virtualização de Desktops
Virtualização de DesktopsVirtualização de Desktops
Virtualização de Desktopsapsegundo
 
DevOps - Estado da Arte
DevOps - Estado da ArteDevOps - Estado da Arte
DevOps - Estado da Arteilegra
 
Aplicações Distribuídas com .NET e Apache Kafka
Aplicações Distribuídas com .NET e Apache KafkaAplicações Distribuídas com .NET e Apache Kafka
Aplicações Distribuídas com .NET e Apache KafkaGustavo Bellini Bigardi
 
Introdução a DevOps e Continuous delivery agileday
Introdução a DevOps e Continuous delivery   agiledayIntrodução a DevOps e Continuous delivery   agileday
Introdução a DevOps e Continuous delivery agiledayCarlos Felippe Cardoso
 
Continuous delivery
Continuous deliveryContinuous delivery
Continuous deliveryMarco Valtas
 
Scrum X DevOps - A eficácia encontra a eficiência
Scrum X DevOps - A eficácia encontra a eficiênciaScrum X DevOps - A eficácia encontra a eficiência
Scrum X DevOps - A eficácia encontra a eficiênciaAnderson Santos
 
Boas Práticas em Aplicações na Nuvem: Twelve-Factor App | MVPConf Latam 2021
Boas Práticas em Aplicações na Nuvem: Twelve-Factor App | MVPConf Latam 2021Boas Práticas em Aplicações na Nuvem: Twelve-Factor App | MVPConf Latam 2021
Boas Práticas em Aplicações na Nuvem: Twelve-Factor App | MVPConf Latam 2021Renato Groffe
 

Mais procurados (11)

Startups e DevOps
Startups e DevOpsStartups e DevOps
Startups e DevOps
 
DevOps, por onde começar
DevOps, por onde começarDevOps, por onde começar
DevOps, por onde começar
 
Virtualização de Desktops
Virtualização de DesktopsVirtualização de Desktops
Virtualização de Desktops
 
DevOps - Estado da Arte
DevOps - Estado da ArteDevOps - Estado da Arte
DevOps - Estado da Arte
 
Aplicações Distribuídas com .NET e Apache Kafka
Aplicações Distribuídas com .NET e Apache KafkaAplicações Distribuídas com .NET e Apache Kafka
Aplicações Distribuídas com .NET e Apache Kafka
 
Introdução a DevOps e Continuous delivery agileday
Introdução a DevOps e Continuous delivery   agiledayIntrodução a DevOps e Continuous delivery   agileday
Introdução a DevOps e Continuous delivery agileday
 
Continuous delivery
Continuous deliveryContinuous delivery
Continuous delivery
 
DevOps é SIM uma questão de QA
DevOps é SIM uma questão de QADevOps é SIM uma questão de QA
DevOps é SIM uma questão de QA
 
Scrum X DevOps - A eficácia encontra a eficiência
Scrum X DevOps - A eficácia encontra a eficiênciaScrum X DevOps - A eficácia encontra a eficiência
Scrum X DevOps - A eficácia encontra a eficiência
 
Boas Práticas em Aplicações na Nuvem: Twelve-Factor App | MVPConf Latam 2021
Boas Práticas em Aplicações na Nuvem: Twelve-Factor App | MVPConf Latam 2021Boas Práticas em Aplicações na Nuvem: Twelve-Factor App | MVPConf Latam 2021
Boas Práticas em Aplicações na Nuvem: Twelve-Factor App | MVPConf Latam 2021
 
DevOps
DevOpsDevOps
DevOps
 

Destaque

Conectividade com a Cloud - Citrix Netscaler Unified Gateway & CloudBridge
Conectividade com a Cloud - Citrix Netscaler Unified Gateway & CloudBridgeConectividade com a Cloud - Citrix Netscaler Unified Gateway & CloudBridge
Conectividade com a Cloud - Citrix Netscaler Unified Gateway & CloudBridgeRui Lopes
 
Computacao na Nuvem com Azure
Computacao na Nuvem com AzureComputacao na Nuvem com Azure
Computacao na Nuvem com AzureLuciano Condé
 
Viabilizando suas iniciativas na nuvem com LumisCloud
Viabilizando suas iniciativas na nuvem com LumisCloudViabilizando suas iniciativas na nuvem com LumisCloud
Viabilizando suas iniciativas na nuvem com LumisCloudLumis
 
Amazon WebServices Architectur
Amazon WebServices ArchitecturAmazon WebServices Architectur
Amazon WebServices ArchitecturRafael Nunes
 
3. conectando o seu data center de forma segura na aws
3. conectando o seu data center de forma segura na aws3. conectando o seu data center de forma segura na aws
3. conectando o seu data center de forma segura na awsAmazon Web Services LATAM
 
DevOps @ Enterprise - Lessons from the trenches
DevOps @ Enterprise - Lessons from the trenchesDevOps @ Enterprise - Lessons from the trenches
DevOps @ Enterprise - Lessons from the trenchesMarcelo Sousa Ancelmo
 
Abril Mídia - Projeto AMC - Infraestrutura&Operações
Abril Mídia - Projeto AMC - Infraestrutura&OperaçõesAbril Mídia - Projeto AMC - Infraestrutura&Operações
Abril Mídia - Projeto AMC - Infraestrutura&OperaçõesAllysson Maia
 
Write once, run "everywhere"
Write once, run "everywhere"Write once, run "everywhere"
Write once, run "everywhere"Stefan Horochovec
 
UM ESTUDO PARA A IMPLANTAÇÃO DE UM MODELO DE GERÊNCIA DE NUVEM HÍBRIDA UTILIZ...
UM ESTUDO PARA A IMPLANTAÇÃO DE UM MODELO DE GERÊNCIA DE NUVEM HÍBRIDA UTILIZ...UM ESTUDO PARA A IMPLANTAÇÃO DE UM MODELO DE GERÊNCIA DE NUVEM HÍBRIDA UTILIZ...
UM ESTUDO PARA A IMPLANTAÇÃO DE UM MODELO DE GERÊNCIA DE NUVEM HÍBRIDA UTILIZ...Marcelo Dieder
 
Mwds01 - Introdução a Arquitetura e Projeto de Soluções Mobile
Mwds01 - Introdução a Arquitetura e Projeto de Soluções MobileMwds01 - Introdução a Arquitetura e Projeto de Soluções Mobile
Mwds01 - Introdução a Arquitetura e Projeto de Soluções MobileWsdevs Desenvolvedores
 
Cloud Server Embratel
Cloud Server EmbratelCloud Server Embratel
Cloud Server EmbratelAlex Hübner
 

Destaque (15)

Conectividade com a Cloud - Citrix Netscaler Unified Gateway & CloudBridge
Conectividade com a Cloud - Citrix Netscaler Unified Gateway & CloudBridgeConectividade com a Cloud - Citrix Netscaler Unified Gateway & CloudBridge
Conectividade com a Cloud - Citrix Netscaler Unified Gateway & CloudBridge
 
Computacao na Nuvem com Azure
Computacao na Nuvem com AzureComputacao na Nuvem com Azure
Computacao na Nuvem com Azure
 
Viabilizando suas iniciativas na nuvem com LumisCloud
Viabilizando suas iniciativas na nuvem com LumisCloudViabilizando suas iniciativas na nuvem com LumisCloud
Viabilizando suas iniciativas na nuvem com LumisCloud
 
Amazon WebServices Architectur
Amazon WebServices ArchitecturAmazon WebServices Architectur
Amazon WebServices Architectur
 
3. conectando o seu data center de forma segura na aws
3. conectando o seu data center de forma segura na aws3. conectando o seu data center de forma segura na aws
3. conectando o seu data center de forma segura na aws
 
DevOps @ Enterprise - Lessons from the trenches
DevOps @ Enterprise - Lessons from the trenchesDevOps @ Enterprise - Lessons from the trenches
DevOps @ Enterprise - Lessons from the trenches
 
Abril Mídia - Projeto AMC - Infraestrutura&Operações
Abril Mídia - Projeto AMC - Infraestrutura&OperaçõesAbril Mídia - Projeto AMC - Infraestrutura&Operações
Abril Mídia - Projeto AMC - Infraestrutura&Operações
 
Write once, run "everywhere"
Write once, run "everywhere"Write once, run "everywhere"
Write once, run "everywhere"
 
UM ESTUDO PARA A IMPLANTAÇÃO DE UM MODELO DE GERÊNCIA DE NUVEM HÍBRIDA UTILIZ...
UM ESTUDO PARA A IMPLANTAÇÃO DE UM MODELO DE GERÊNCIA DE NUVEM HÍBRIDA UTILIZ...UM ESTUDO PARA A IMPLANTAÇÃO DE UM MODELO DE GERÊNCIA DE NUVEM HÍBRIDA UTILIZ...
UM ESTUDO PARA A IMPLANTAÇÃO DE UM MODELO DE GERÊNCIA DE NUVEM HÍBRIDA UTILIZ...
 
Mwds01 - Introdução a Arquitetura e Projeto de Soluções Mobile
Mwds01 - Introdução a Arquitetura e Projeto de Soluções MobileMwds01 - Introdução a Arquitetura e Projeto de Soluções Mobile
Mwds01 - Introdução a Arquitetura e Projeto de Soluções Mobile
 
Quem quer ser um arquiteto?
Quem quer ser um arquiteto?Quem quer ser um arquiteto?
Quem quer ser um arquiteto?
 
Cloud Server Embratel
Cloud Server EmbratelCloud Server Embratel
Cloud Server Embratel
 
3 Telas e uma nuvem
3 Telas e uma nuvem3 Telas e uma nuvem
3 Telas e uma nuvem
 
Apresentação AWS - TDC Floripa
Apresentação AWS - TDC FloripaApresentação AWS - TDC Floripa
Apresentação AWS - TDC Floripa
 
Flisol 2015
Flisol 2015 Flisol 2015
Flisol 2015
 

Semelhante a DevOps Exame.com

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 DevOpsJosé Alexandre Macedo
 
MIT DevOps IaC - Infra como Código
MIT DevOps IaC - Infra como CódigoMIT DevOps IaC - Infra como Código
MIT DevOps IaC - Infra como CódigoCaio Candido
 
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âniaRodrigo Marques Teixeira
 
Arquitetura de Microservicos
Arquitetura de MicroservicosArquitetura de Microservicos
Arquitetura de MicroservicosNorberto Enomoto
 
Apresentando o OpsWorks - Bemobi
Apresentando o OpsWorks - BemobiApresentando o OpsWorks - Bemobi
Apresentando o OpsWorks - BemobiRicardo Martins ☁
 
A Evolução da Arquitetura de Sistemas Corporativos
A Evolução da Arquitetura de Sistemas CorporativosA Evolução da Arquitetura de Sistemas Corporativos
A Evolução da Arquitetura de Sistemas CorporativosOziel Moreira Neto
 
Women@MicrosoftCommunities - DevOps e Azure: uma combinação perfeita!
Women@MicrosoftCommunities - DevOps e Azure: uma combinação perfeita!Women@MicrosoftCommunities - DevOps e Azure: uma combinação perfeita!
Women@MicrosoftCommunities - DevOps e Azure: uma combinação perfeita!Jaqueline Ramos
 
Application Insights
Application InsightsApplication Insights
Application InsightsCDS
 
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 DevOpsEdson Celio
 
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 DevOpsGuilherme Cardoso
 
DevOps & Docker com a stack Microsoft
DevOps & Docker com a stack MicrosoftDevOps & Docker com a stack Microsoft
DevOps & Docker com a stack MicrosoftGraziella Bonizi
 
Como automatizar Sistemas Legados utilizando ferramentas de DevOps
Como automatizar Sistemas Legados utilizando ferramentas de DevOpsComo automatizar Sistemas Legados utilizando ferramentas de DevOps
Como automatizar Sistemas Legados utilizando ferramentas de DevOpsRafael Salerno de Oliveira
 
[O Palco é Delas!] Azure DevTest Labs
[O Palco é Delas!] Azure DevTest Labs[O Palco é Delas!] Azure DevTest Labs
[O Palco é Delas!] Azure DevTest LabsJaqueline Ramos
 
Escalando infra em ops em um ambiente de hiper crescimento
Escalando infra em ops em um ambiente de hiper crescimentoEscalando infra em ops em um ambiente de hiper crescimento
Escalando infra em ops em um ambiente de hiper crescimentoRenan Capaverde
 
Um método para o desenvolvimento de software baseado em microsserviços
Um método para o desenvolvimento de software baseado em microsserviçosUm método para o desenvolvimento de software baseado em microsserviços
Um método para o desenvolvimento de software baseado em microsserviçosThiago Pereira
 
Arquitetura de Software e o DNAD2013
Arquitetura de Software e o DNAD2013Arquitetura de Software e o DNAD2013
Arquitetura de Software e o DNAD2013André Borgonovo
 

Semelhante a DevOps Exame.com (20)

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
 
Engenharia de Software Aula 1 - Intro
Engenharia de Software Aula 1 - IntroEngenharia de Software Aula 1 - Intro
Engenharia de Software Aula 1 - Intro
 
MIT DevOps IaC - Infra como Código
MIT DevOps IaC - Infra como CódigoMIT DevOps IaC - Infra como Código
MIT DevOps IaC - Infra como Código
 
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
 
Arquitetura de Microservicos
Arquitetura de MicroservicosArquitetura de Microservicos
Arquitetura de Microservicos
 
Software
SoftwareSoftware
Software
 
Apresentando o OpsWorks - Bemobi
Apresentando o OpsWorks - BemobiApresentando o OpsWorks - Bemobi
Apresentando o OpsWorks - Bemobi
 
A Evolução da Arquitetura de Sistemas Corporativos
A Evolução da Arquitetura de Sistemas CorporativosA Evolução da Arquitetura de Sistemas Corporativos
A Evolução da Arquitetura de Sistemas Corporativos
 
Women@MicrosoftCommunities - DevOps e Azure: uma combinação perfeita!
Women@MicrosoftCommunities - DevOps e Azure: uma combinação perfeita!Women@MicrosoftCommunities - DevOps e Azure: uma combinação perfeita!
Women@MicrosoftCommunities - DevOps e Azure: uma combinação perfeita!
 
Application Insights
Application InsightsApplication Insights
Application Insights
 
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
 
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
 
DevOps & Docker com a stack Microsoft
DevOps & Docker com a stack MicrosoftDevOps & Docker com a stack Microsoft
DevOps & Docker com a stack Microsoft
 
Como automatizar Sistemas Legados utilizando ferramentas de DevOps
Como automatizar Sistemas Legados utilizando ferramentas de DevOpsComo automatizar Sistemas Legados utilizando ferramentas de DevOps
Como automatizar Sistemas Legados utilizando ferramentas de DevOps
 
[O Palco é Delas!] Azure DevTest Labs
[O Palco é Delas!] Azure DevTest Labs[O Palco é Delas!] Azure DevTest Labs
[O Palco é Delas!] Azure DevTest Labs
 
[O Palco é Delas!] Azure DevTest Labs
[O Palco é Delas!] Azure DevTest Labs[O Palco é Delas!] Azure DevTest Labs
[O Palco é Delas!] Azure DevTest Labs
 
Escalando infra em ops em um ambiente de hiper crescimento
Escalando infra em ops em um ambiente de hiper crescimentoEscalando infra em ops em um ambiente de hiper crescimento
Escalando infra em ops em um ambiente de hiper crescimento
 
Arquitetura evolutiva
Arquitetura evolutivaArquitetura evolutiva
Arquitetura evolutiva
 
Um método para o desenvolvimento de software baseado em microsserviços
Um método para o desenvolvimento de software baseado em microsserviçosUm método para o desenvolvimento de software baseado em microsserviços
Um método para o desenvolvimento de software baseado em microsserviços
 
Arquitetura de Software e o DNAD2013
Arquitetura de Software e o DNAD2013Arquitetura de Software e o DNAD2013
Arquitetura de Software e o DNAD2013
 

DevOps Exame.com

  • 1. Case Abril Mídia 1 DevOps Johnny Santos JohnSantos@abril.com.br Robson Chikasawa rchikasawa@abril.com.br
  • 2. 2 2 Dev Robson Chikasawa Editora Abril – Arquiteto de Soluções Site Exame.com Ops Johnny Santos Editora Abril – Arquiteto de Soluções 2
  • 3. 2 3 Overview • Abril • Exame.com • Conceito DevOps • Dividir para conquistar • IaaS - Infrastructure as a service • Gerenciamento de configuração • Continuos Integration/Delivery • Benefícios • Resultados 3
  • 4. 4 Abril Mídia é responsável pela estratégia e pelo desenvolvimento dos produtos e serviços digitais da Abril. Áreas em que atuamos: • Desenvolvimento de Produtos, QA e Processos • Mídias Digitais • E-commerce • Infraestrutura & Operações • Segurança da Informação • Desenvolvimento de plataformas (mobile, CMS, Aplicativos)
  • 8. 2 8 Equipe 1 – P.O (Diretora do Site) 1 – Coordenador Técnico (Scrum Master) 5 – Devs 2 – QA’s 2 – Arquiteto 20 – Jornalistas/Redatores 8 Infra (CMS/Site) 2 WsADM / 6 WS / 1 CronJobs 1 MySQL Master / 4 Slaves (replicação) 1 Memcached / 1 Redis CDN (Akamai)
  • 9. 9 Visão do P.O da Exame TI • Lenta • Burocrática • Inflexível • Custo • Improdutiva • Não escalável Block Point
  • 10. 10 Fluxo E-commerce - Desenvolvimento Operações - Projetos - POC Qualidade - Segurança - Treinamento - LAB Service Desk Infraestrutura provisionamentoCobrança Servidor Físico 40 DIAS Servidor Virtual 5 DIAS
  • 12. 2 12 Antes... • Mudanças Frequentes, com poucos deploys • Alto Risco • Alto o número de rollback 12
  • 13. 2 13 Antes... • Arquitetura de infra-estrutura diferente de produção • Configurações diferentes de produção • Passagem a produção complexa • Falta de integração contínua entre os ambientes • Confiança entre as areas Dev/Ops • Build Manuais • Segurança? 13
  • 16. 2 16 Wikipedia – Definição ‘DevOps’ "DevOps (amálgama de Desenvolvedor e Operador) é uma metodologia de desenvolvimento de software que explora a comunicação, colaboração e integração entre desenvolvedores de software e profissionais de TI (Tecnologia da Informação).1 DevOps é a reação à interdependência entre desenvolvimento de software e operações de TI. Pretende ajudar organizações a produzir software e serviços rapidamente". 16 "DevOps (amálgama de Desenvolvedor e Operador) é uma metodologia de desenvolvimento de software que explora a comunicação, colaboração e integração entre desenvolvedores de software e profissionais de TI (Tecnologia da Informação).1 DevOps é a reação à interdependência entre desenvolvimento de software e operações de TI. Pretende ajudar organizações a produzir software e serviços rapidamente".
  • 17. 2 17 Funciona no Mundo Real? “Se eu perguntasse para os meus clientes o que eles desejavam, eles diriam: um cavalo mais veloz” Henry Ford 17
  • 18. 18 Dividir para Conquistar • Arquitetura de infra-estrutura diferente de produção • Configurações diferentes de produção • Falta de integração contínua entre ambiente • Passagem a produção complexa • Confiança entre as areas Dev/Ops • Segurança? • Build Manuais • Lenta • Burocrática • Inflexível • Custo • Improdutiva • Não escalável • Mudanças Frequentes, com poucos deploys • Arquitetura de infra-estrutura diferente de produção • Configurações diferentes de produção • Falta de integração contínua entre ambiente • Passagem a produção complexa • Confiança entre as areas Dev/Ops • Segurança? • Build Manuais • Lenta • Burocrática • Inflexível • Custo • Improdutiva • Não escalável • Mudanças Frequentes, com poucos deploys
  • 19. IaaS - Infrastructure as a service 19
  • 22. 22 Dividir para Conquistar • Arquitetura de infra-estrutura diferente de produção • Configurações diferentes de produção • Falta de integração contínua entre ambiente • Passagem a produção complexa • Confiança entre as areas Dev/Ops • Segurança? • Build Manuais • Lenta • Burocrática • Inflexível • Custo • Improdutiva • Não escalável • Mudanças Frequentes, com poucos deploys • Arquitetura de infra-estrutura diferente de produção • Configurações diferentes de produção • Falta de integração contínua entre ambiente • Passagem a produção complexa • Confiança entre as areas Dev/Ops • Segurança? • Build Manuais • Lenta • Burocrática • Inflexível • Custo • Improdutiva • Não escalável • Mudanças Frequentes, com poucos deploys
  • 24. 24
  • 26. 26 Dividir para Conquistar • Arquitetura de infra-estrutura diferente de produção • Configurações diferentes de produção • Falta de integração contínua entre ambiente • Passagem a produção complexa • Confiança entre as areas Dev/Ops • Segurança? • Build Manuais • Lenta • Burocrática • Inflexível • Custo • Improdutiva • Não escalável • Mudanças Frequentes, com poucos deploys • Arquitetura de infra-estrutura diferente de produção • Configurações diferentes de produção • Falta de integração contínua entre ambiente • Passagem a produção complexa • Confiança entre as areas Dev/Ops • Segurança? • Build Manuais • Lenta • Burocrática • Inflexível • Custo • Improdutiva • Não escalável • Mudanças Frequentes, com poucos deploys
  • 28. 28 Benefícios • Agilidade para os times (DEV, QA, Ops ...) • Redução dos chamados no service desk (25%) • Redução no tempo para provisionamento uma máquina virtual ( 30s ) • Compatibilidade Stack EC2 • Autonomia para as equipes (dev, qa e, Ops ...) • Arquitetura próxima a produção • Baixo custo • Builds Automatizados • Continuos Integration • Continuos Delivery • Ambiente Controlado • Escalabilidade

Notas do Editor

  1. Boa tarde a todos! É uma satisfação palestrar para os guerreiros aqui presente...São 16h… todo mundo já está cansado… é a penultima palestra do evento...Motivante deste evento... É que conseguimos iteragir com muitas pessoas... E trocar experiencias....Vamos continuar que tem apenas essa e mais uma palestra… e depois vamos embora bebemorar, relaxar…
  2. Eu sou o Robson Chikasawa... trabalho na Editora Abril desde 2008 e há 2 anos como Arquiteto de Soluções no Site Exame.comObrigado johnny pelo convite, em poder palestrar e mostrar juntos o case da Exame.com - Qtos de voces, sabem ou ouviram falar de devops? - Antes disso…. qtos de vcs são desenvolvedores? qtos são operadores (infra)? o restantes são simpatizantes?Muitas empresas dividem Desenvolvimento e Operações em departamentos diferentes.Se a empresa não tiver uma cultura colaborativa entre as áreas técnicas. Vamos encontrar algum tipo de atrito entre asareas.....Quer dizer que “Dev” deixa o ambiente instavel por fazer entregas frequentes...Quer dizer que o “Ops” não consegue deixar o ambiente disponível e estável...
  3. Eu sou o Robson Chikasawa... trabalho na Editora Abril desde 2008 e há 2 anos como Arquiteto de Soluções no Site Exame.comObrigado johnny pelo convite, em poder palestrar e mostrar juntos o case da Exame.com - Qtos de voces, sabem ou ouviram falar de devops? - Antes disso…. qtos de vcs são desenvolvedores? qtos são operadores (infra)? o restantes são simpatizantes?Muitas empresas dividem Desenvolvimento e Operações em departamentos diferentes.Se a empresa não tiver uma cultura colaborativa entre as áreas técnicas. Vamos encontrar algum tipo de atrito entre asareas.....Quer dizer que “Dev” deixa o ambiente instavel por fazer entregas frequentes...Quer dizer que o “Ops” não consegue deixar o ambiente disponível e estável...
  4. Quemconhece o site exame…. Site exame… ecomposto de outraspequenasaplicações… o maisimportantedelassão o CMS (Sistema de gerenciamento de conteudo), ondeosjornalistas/redatoresimputamos dados… e o Site querenderizaosconteudosimputados, entre outros conteúdos.4 anos de existenciaUm legadopassadoparaabrilRuby on railsBlog emwordpressMongoDBLideremnoticiasnegocios/economia…
  5. Quemconhece o site exame….Site exame… ecomposto de outraspequenasaplicações… o maisimportantedelassão o CMS, ondeosjornalistas/redatoresimputamos dados… e o Site querenderizaosconteudosimputados, entre outros conteúdos.A akamai serve conteudosparaosusuariosfinais com altadisponibilidade e alta performance…
  6. Antes…Nãosei se tenhovergonhaquecontaroutenhoorgulho de dizerqueerramos e aprendemos com oserros…Nãotenhamedo de errar… porquesempreaprendemos com oserros, mesmosendomuitodolorido…Antes, sequertinhamosumaequipe… era umapastelaria…NãoquenãotínhamosalgumprocessodefinidoÉramosjuniores, a experienciaquetínhamosatéentãonoscolocavamemcituaçõescríticas…Dev => Tínhamuitademandasrealizadas, mas poucas features emprodução.Ops=> Tinhamuitaocorrencia de problemas no ambiente de produção… (seja com instabilidade do server, memória 100%, utilizando o swap, load da máquinamuito alto...).
  7. Aqui…Tínhamos deploys agendado com muitas features subindoparaprodução… com isso… tinhamos um alto risco de realizar um rollback casouma feature quebrassealgumafuncionalidadecrítica do CMS/Site.
  8. Ambientes DEV/QA/STAGEdiferente de produção… muitascoisasquefoidesenvolvidoatéessafasenãofuncionavamemprodução…Burocracia: Abrirchamadopara dump de banco de dados/ copia do log de produção do apache/aplicação…AmbienteDescontrolado: emdiversasmáquinas de produçãotemosversoesdiferentes de bibliotecas/ferramentasfora do padrao….
  9. Sabemos que não é bem assim que funciona no mundo real...Henry Ford disse:“Se eu perguntasse para os meus clientes o que eles desejavam, eles diriam: um cavalo mais veloz”Não que eu devo ignorar os clientes... E sim fazer o que é o certo... Eu tenho um limitante identificado no próximo slides...
  10. Resumindo… DevOps é igual a qualquer relacionamento homem/mulher…precisa ter comunicação(ouvir/falar)… colaboração(pedir/receber)… integração(ter a mesmo objetivo/ideia)… entre as partes…No início é tudo mil maravilhas… mas vc verá que terão seus altos e baixos… vai rolar um rancor do problema do software…. vai rolar um rancor do problema de infra… e se não tiver a sintonia… a coisa não rolaPor isso que é muito importante a empresa ter essa cultura que todos devem trabalhar por um objetivo único.
  11. Resumindo… DevOps é igual a qualquer relacionamento homem/mulher…precisa ter comunicação(ouvir/falar)… colaboração(pedir/receber)… integração(ter a mesmo objetivo/ideia)… entre as partes…No início é tudo mil maravilhas… mas vc verá que terão seus altos e baixos… vai rolar um rancor do problema do software…. vai rolar um rancor do problema de infra… e se não tiver a sintonia… a coisa não rolaPor isso que é muito importante a empresa ter essa cultura que todos devem trabalhar por um objetivo único.
  12. Sabemos que não é bem assim que funciona no mundo real...Henry Ford disse:“Se eu perguntasse para os meus clientes o que eles desejavam, eles diriam: um cavalo mais veloz”Não que eu devo ignorar os clientes... E sim fazer o que é o certo... Eu tenho um limitante identificado no próximo slides...
  13. Improdutivo – relacionado a roll backs
  14. Improdutivo – relacionado a roll backsInflexiveljanelas de deploy