SlideShare uma empresa Scribd logo
Meu cliente não
permite DevOps. E
agora?
Everton Emilio Tavares
Developer
Cenário ideal
• Builds automatizados;
• Alta cobertura de testes;
• Entrega ou deploy continuo;
• Criação do ambiente automatizado;
Possíveis barreiras.
• Infraestrutura;
• Restrição de Segurança;
• Processos / Politicas;
• Implantação em terceiros;
• Falta de interesse (ou falta de conhecimento);
O que pode ser automatizado?
• Produção;
• Homologação;
• Desenvolvimento;
Nossas Barreiras...
• Servidor interno;
• Produção;
• Homologação;
• Restrições de segurança;
... e nossa infra
• Servidor Central
• WebLogic;
• Banco de Dados – Oracle;
• Servidor Filial
• Weblogic:
• Fila de Sincronização;
• Fila de tratamento de erros;
• Banco de Dados – Mysql
• 3 instâncias: Gravação, Leitura, Leitura – Espelho;
• Com configurações específicas;
Problemas com desenvolvimento
• Conexão com o cliente
instável (VPN);
• Banco de Dados concorrente;
• Tempo para configuração de
ambiente;
• Manter histórico de
atualizações do Banco de
Dados;
Solução:
• Docker
• 2 Weblogic;
• Oracle;
• Mysql;
• Flyway:
• Banco Mysql (legado);
• Banco Oracle;
O que foi automatizado:
• Weblogic (central e filial)
• Filas JMS;
• DataSources;
• Oracle
• Migrations;
• Mysql
• Migrations (apenas tabelas relevantes);
• Dados de teste;
• Jenkins
• Integração continua;
O que ganhamos?
• Acabou problema com VPN;
• Tempo de configuração de ambiente caiu;
• Cliente adotou as migrations;
• Configuração do Weblogic ficou documentada
(Python);
• Outras aplicações do mesmo cliente adotaram o
Docker;
• Cliente tem a infra configurada caso desejar adotar
adotar;
Por que não Vagrant?
Próximos passos
Cenário
• Equipe de TI e Devs isoladas;
• Equipes aprendendo “por conta”;
• Equipes com ambiente de dev nas nuvens;
• Algumas equipes sem nenhum tipo de
automatização;
• Inclusive algumas equipes sem teste automatizado;
Mudança na equipe de Ops
• Disseminar a cultura de DevOps
• Construção de uma nuvem privada;
• CloudStack + Chef;
• Utilização de ambientes dev, hom e QA;
• Aproximação dos Ops dos Devs;
• Equipe de Ops “circulando” entre as equipes de dev;
• Estreitar laços entre as equipes;
• Devs aprender um pouco de ops;
Mudança na equipe de Devs
• Equipe apoiando o monitoramento das aplicações;
• Zabbix, NewRelic, etc...
• Definição de um responsável por apoiar as equipes
em automatização;
• Disseminar conhecimento entre as equipes;
• Automatizar tudo o que for possível;
• Tornar as equipes responsáveis pelas suas automatizações;
• Meta: 100% das equipes automatizadas;
Dicas
Não apanhe como a gente
apanhou...
Organização
Fragmentação Flyway
• 1__estrutura_inicial.sql
• 2__enderecos_funcionarios.sql
• 3__financeiro.sql
• 4__compras.sql
Fragmentação Flyway
• 1_1_1__estrutura_funcionarios.sql
• 1_1_2__dados_funcionarios.sql
• 1_2_1__estrutura_funcionario_endereco.sql
• 1_2_2__dados_funcionario_endereco.sql
• 1_3_1__estrutura_financeiro_contas.sql
• 1_3_2__dados_financeiro_contas.sql
• 1_4_1__nova_coluna_cep_funcionario_endereco.sql
• 1_4_2__dados_cep_funcionario_endereco.sql
Docker compose
• Disponível no Windows a partir da versão 1.9.0-rc3
(30/10/2015);
• Facilita levantar as maquinas em conjunto;
• Antes o projeto usava um arquivo .sh;
Obrigado!
@ezidiu
everton.tavares.dev@gmail.com

Mais conteúdo relacionado

PPTX
TDC2016SP - Trilha DevOps Java
PDF
TDC 2016 SP - Cobertura de código de procedures T-SQL com SQLCC
PDF
TDC 2016 SP - Desmistificando cobertura de código como métrica de qualidade
PDF
TDC 2016 Floripa - Aprendendo Docker sem bruxaria
PDF
Scrum Gathering Rio 2016 - Conteinerizando Testes com Docker Compose
PDF
VR Dev Summit 2016 - Primeiros Passos em Automação de Testes
PPTX
Cloud Computing e Integração Contínua com o Windows Azure
PDF
TDC 2016 Floripa - Criando APIs REST em minutos com Spark + Java 8
TDC2016SP - Trilha DevOps Java
TDC 2016 SP - Cobertura de código de procedures T-SQL com SQLCC
TDC 2016 SP - Desmistificando cobertura de código como métrica de qualidade
TDC 2016 Floripa - Aprendendo Docker sem bruxaria
Scrum Gathering Rio 2016 - Conteinerizando Testes com Docker Compose
VR Dev Summit 2016 - Primeiros Passos em Automação de Testes
Cloud Computing e Integração Contínua com o Windows Azure
TDC 2016 Floripa - Criando APIs REST em minutos com Spark + Java 8

Mais procurados (20)

PDF
Agile Brazil 2016 - 5 fundamentos essenciais de padrões xUnit
PDF
TDC 2015 Floripa - Testes Automatizados de todos os tipos utilizando bibliote...
PDF
Agile Testers Conference 2016 - GoCD + Docker + Docker Compose: uma história ...
PDF
1º Encontro do Grupo de Testes Carioca - Primeiros Passos em Automação de Testes
PDF
Meetup DevOps Carioca - Testes de Carga com Locust
PDF
Criando Desktop Apps com Electron
PPTX
Deploy Automatizado usando Octopus
PPT
IC-Testes Invasao
PDF
Ideais Cowabunga - Headless Testing com GhostDriver
PDF
TDC 2015 Floripa - Criando ambientes de forma simples com Docker e Ansible
PDF
4º Encontro do Grupo de Testes Carioca - Testes de Carga com Locust
PDF
Meetup DevOps Carioca - GoCD + Docker + Docker Compose: uma história de amor
PPTX
Docker para Desenvolvedores - Developers-BR - Agosto-2018
PDF
Testadores 2015 - O Fantástico Mundo de Docker
PPTX
Dev ops integração contínua com jenkins
PPTX
Docker para Desenvolvedores - Developers-BR - Julho-2018
PDF
Minas Testing Conference 2015 - Visual Regression Testing em ambientes na nuvem
PDF
Criando uma grid para execução de teste automatizado funcional e e2e
PDF
Minas Testing Conference 2016 - Testes de Carga com Locust
PDF
Jenkins, o CI ao seu dispor
Agile Brazil 2016 - 5 fundamentos essenciais de padrões xUnit
TDC 2015 Floripa - Testes Automatizados de todos os tipos utilizando bibliote...
Agile Testers Conference 2016 - GoCD + Docker + Docker Compose: uma história ...
1º Encontro do Grupo de Testes Carioca - Primeiros Passos em Automação de Testes
Meetup DevOps Carioca - Testes de Carga com Locust
Criando Desktop Apps com Electron
Deploy Automatizado usando Octopus
IC-Testes Invasao
Ideais Cowabunga - Headless Testing com GhostDriver
TDC 2015 Floripa - Criando ambientes de forma simples com Docker e Ansible
4º Encontro do Grupo de Testes Carioca - Testes de Carga com Locust
Meetup DevOps Carioca - GoCD + Docker + Docker Compose: uma história de amor
Docker para Desenvolvedores - Developers-BR - Agosto-2018
Testadores 2015 - O Fantástico Mundo de Docker
Dev ops integração contínua com jenkins
Docker para Desenvolvedores - Developers-BR - Julho-2018
Minas Testing Conference 2015 - Visual Regression Testing em ambientes na nuvem
Criando uma grid para execução de teste automatizado funcional e e2e
Minas Testing Conference 2016 - Testes de Carga com Locust
Jenkins, o CI ao seu dispor
Anúncio

Destaque (20)

PDF
TDC2016SP - Trilha Arquitetura Empresarial
PDF
TDC2016SP - Trilha Arquitetura Empresarial
PDF
TDC2016SP - Trilha Arquitetura Empresarial
PPT
Fremdsprachenfolge am KGN (2007/08)
PPTX
PDF
Spendenlauf
PPT
Besuch in Semur 2008
PDF
TDC2016SP - Agile sem indicadores globais funciona?
PDF
James Kevin Thornton Resume
PDF
TDC2016SP - Medição de Diversão a Partir da Face no Apoio ao Game Design
PDF
China overseas investment
 
PDF
The CT Groups Meetings [2011 01 31]
PPT
Presentation1[1]
PPTX
Presentación Curso b-learning
PPTX
BRM project(1)
PDF
TDC2016SP - De São Paulo a Sidney, Ágil em times distribuídos.
PDF
TDC2016SP - Trilha DevOps Java
PPTX
TDC2016SP - Trilha Banco de Dados
PDF
TDC2016SP - Trilha Banco de Dados
PDF
[Challenge:Future] Augmented Education Platform - PLEI
TDC2016SP - Trilha Arquitetura Empresarial
TDC2016SP - Trilha Arquitetura Empresarial
TDC2016SP - Trilha Arquitetura Empresarial
Fremdsprachenfolge am KGN (2007/08)
Spendenlauf
Besuch in Semur 2008
TDC2016SP - Agile sem indicadores globais funciona?
James Kevin Thornton Resume
TDC2016SP - Medição de Diversão a Partir da Face no Apoio ao Game Design
China overseas investment
 
The CT Groups Meetings [2011 01 31]
Presentation1[1]
Presentación Curso b-learning
BRM project(1)
TDC2016SP - De São Paulo a Sidney, Ágil em times distribuídos.
TDC2016SP - Trilha DevOps Java
TDC2016SP - Trilha Banco de Dados
TDC2016SP - Trilha Banco de Dados
[Challenge:Future] Augmented Education Platform - PLEI
Anúncio

Semelhante a TDC2016SP - Trilha DevOps Java (20)

PPTX
Meu Cliente não permite DevOps. E agora?
PDF
DevOps Primeiros Passos
PDF
Como automatizar Sistemas Legados utilizando ferramentas de DevOps
PDF
Quebrando barreiras entre desenvolvimento e operação de software com DevOps
PDF
DevOps: Primeiros passos - Lightning Talk
PDF
TDC2016SP - Versionando sua infraestrutura: Como e porque fazer, baseado em c...
PPTX
[DevOps Summit Brasil] Procura-se: DevOps!
PDF
MIT - Estudo de Caso utilizando Cloud & DevOps
PPTX
DevOps: desenvolvedores e sysadmins cooperando na prática
PDF
Procura-se: DevOps #cpbr9
KEY
DevOps, NoOps...afinal que raios é isso?
PDF
DevOps CE - Containers, DevOps e Cloud Security
PPTX
DevOps com Exemplos Práticos - QConRio 2014
PPTX
DevOps - Aula 5 - Docker, Kubernetes e Outras Plataformas de Orquestração.pptx
PPTX
PPTX
Automação total: Na infraestrutura o “Chef” é você
PDF
Como montar um DevOps Toolchain
PDF
Apresentacao dev ops
PDF
MIT DevOps IaC - Infra como Código
PDF
Phprs meetup - deploys automatizados com gitlab
Meu Cliente não permite DevOps. E agora?
DevOps Primeiros Passos
Como automatizar Sistemas Legados utilizando ferramentas de DevOps
Quebrando barreiras entre desenvolvimento e operação de software com DevOps
DevOps: Primeiros passos - Lightning Talk
TDC2016SP - Versionando sua infraestrutura: Como e porque fazer, baseado em c...
[DevOps Summit Brasil] Procura-se: DevOps!
MIT - Estudo de Caso utilizando Cloud & DevOps
DevOps: desenvolvedores e sysadmins cooperando na prática
Procura-se: DevOps #cpbr9
DevOps, NoOps...afinal que raios é isso?
DevOps CE - Containers, DevOps e Cloud Security
DevOps com Exemplos Práticos - QConRio 2014
DevOps - Aula 5 - Docker, Kubernetes e Outras Plataformas de Orquestração.pptx
Automação total: Na infraestrutura o “Chef” é você
Como montar um DevOps Toolchain
Apresentacao dev ops
MIT DevOps IaC - Infra como Código
Phprs meetup - deploys automatizados com gitlab

Mais de tdc-globalcode (20)

PDF
TDC2019 Intel Software Day - Visao Computacional e IA a servico da humanidade
PDF
TDC2019 Intel Software Day - Tecnicas de Programacao Paralela em Machine Lear...
PDF
TDC2019 Intel Software Day - ACATE - Cases de Sucesso
PDF
TDC2019 Intel Software Day - Otimizacao grafica com o Intel GPA
PDF
TDC2019 Intel Software Day - Deteccao de objetos em tempo real com OpenVino
PDF
TDC2019 Intel Software Day - OpenCV: Inteligencia artificial e Visao Computac...
PDF
TDC2019 Intel Software Day - Inferencia de IA em edge devices
PDF
Trilha BigData - Banco de Dados Orientado a Grafos na Seguranca Publica
PPT
Trilha .Net - Programacao funcional usando f#
PDF
TDC2018SP | Trilha Go - Case Easylocus
PDF
TDC2018SP | Trilha Modern Web - Para onde caminha a Web?
PDF
TDC2018SP | Trilha Go - Clean architecture em Golang
PDF
TDC2018SP | Trilha Go - "Go" tambem e linguagem de QA
PDF
TDC2018SP | Trilha Mobile - Digital Wallets - Seguranca, inovacao e tendencia
PDF
TDC2018SP | Trilha .Net - Real Time apps com Azure SignalR Service
PDF
TDC2018SP | Trilha .Net - Passado, Presente e Futuro do .NET
PDF
TDC2018SP | Trilha .Net - Novidades do C# 7 e 8
PDF
TDC2018SP | Trilha .Net - Obtendo metricas com TDD utilizando build automatiz...
PDF
TDC2018SP | Trilha .Net - .NET funcional com F#
PDF
TDC2018SP | Trilha .Net - Crie SPAs com Razor e C# usando Blazor em .Net Core
TDC2019 Intel Software Day - Visao Computacional e IA a servico da humanidade
TDC2019 Intel Software Day - Tecnicas de Programacao Paralela em Machine Lear...
TDC2019 Intel Software Day - ACATE - Cases de Sucesso
TDC2019 Intel Software Day - Otimizacao grafica com o Intel GPA
TDC2019 Intel Software Day - Deteccao de objetos em tempo real com OpenVino
TDC2019 Intel Software Day - OpenCV: Inteligencia artificial e Visao Computac...
TDC2019 Intel Software Day - Inferencia de IA em edge devices
Trilha BigData - Banco de Dados Orientado a Grafos na Seguranca Publica
Trilha .Net - Programacao funcional usando f#
TDC2018SP | Trilha Go - Case Easylocus
TDC2018SP | Trilha Modern Web - Para onde caminha a Web?
TDC2018SP | Trilha Go - Clean architecture em Golang
TDC2018SP | Trilha Go - "Go" tambem e linguagem de QA
TDC2018SP | Trilha Mobile - Digital Wallets - Seguranca, inovacao e tendencia
TDC2018SP | Trilha .Net - Real Time apps com Azure SignalR Service
TDC2018SP | Trilha .Net - Passado, Presente e Futuro do .NET
TDC2018SP | Trilha .Net - Novidades do C# 7 e 8
TDC2018SP | Trilha .Net - Obtendo metricas com TDD utilizando build automatiz...
TDC2018SP | Trilha .Net - .NET funcional com F#
TDC2018SP | Trilha .Net - Crie SPAs com Razor e C# usando Blazor em .Net Core

Último (20)

PDF
Metabolismo_energético_3ano_pre_vest_2026.pdf
PDF
manual-orientacao-asb_5a8d6d8d87160aa636f63a5d0.pdf
PDF
embriologia_animal_aula_share_2026_semestre
PDF
A provisão de jojuador (ramadã) islamismo
PDF
BINGOS_DAS_PALAVRAS_bingo das palavras.pdf
PDF
Organizador Curricular da Educação em Tempo Integral.pdf
PDF
saeb_documentos_de_referencia_versao_1.0.pdf
PDF
CARTÕES DIA DOS ESTUDANTES MORANGO DO AMOR.pdf
PPT
aula de envelecimento.ppt saúde do idoso
PDF
A Revolução Francesa de 1789 slides história
PPTX
ACIDOS NUCLEICOS - REPLICAÇÃO DO DNA - E.M.
PPTX
GUERRAFRIA.pptdddddddddddddddddddddddddx
PPTX
Realismo e Naturalismo: Aluísio Azevedo.
PPTX
disciplulado curso preparatorio para novos
PPTX
ELEMENTOS E FUNÇÕES DE LINGUAGEM (EMOTIVA, REFERENCIAL, CONATIVA, POÉTICA, FÁ...
PDF
Ementa 2 semestre PEI Orientação de estudo
PPTX
Filosofia Ocidental Antiga 2025 - versão atualizada
PPTX
HISTÓRIA DO BRASIL - anos de Democracia.pptx
PPTX
brasilcolnia2-101027184359-phpapp02.pptx
PPTX
biossegurança e segurança no trabalho (6).pptx
Metabolismo_energético_3ano_pre_vest_2026.pdf
manual-orientacao-asb_5a8d6d8d87160aa636f63a5d0.pdf
embriologia_animal_aula_share_2026_semestre
A provisão de jojuador (ramadã) islamismo
BINGOS_DAS_PALAVRAS_bingo das palavras.pdf
Organizador Curricular da Educação em Tempo Integral.pdf
saeb_documentos_de_referencia_versao_1.0.pdf
CARTÕES DIA DOS ESTUDANTES MORANGO DO AMOR.pdf
aula de envelecimento.ppt saúde do idoso
A Revolução Francesa de 1789 slides história
ACIDOS NUCLEICOS - REPLICAÇÃO DO DNA - E.M.
GUERRAFRIA.pptdddddddddddddddddddddddddx
Realismo e Naturalismo: Aluísio Azevedo.
disciplulado curso preparatorio para novos
ELEMENTOS E FUNÇÕES DE LINGUAGEM (EMOTIVA, REFERENCIAL, CONATIVA, POÉTICA, FÁ...
Ementa 2 semestre PEI Orientação de estudo
Filosofia Ocidental Antiga 2025 - versão atualizada
HISTÓRIA DO BRASIL - anos de Democracia.pptx
brasilcolnia2-101027184359-phpapp02.pptx
biossegurança e segurança no trabalho (6).pptx

TDC2016SP - Trilha DevOps Java

  • 1. Meu cliente não permite DevOps. E agora?
  • 3. Cenário ideal • Builds automatizados; • Alta cobertura de testes; • Entrega ou deploy continuo; • Criação do ambiente automatizado;
  • 4. Possíveis barreiras. • Infraestrutura; • Restrição de Segurança; • Processos / Politicas; • Implantação em terceiros; • Falta de interesse (ou falta de conhecimento);
  • 5. O que pode ser automatizado? • Produção; • Homologação; • Desenvolvimento;
  • 6. Nossas Barreiras... • Servidor interno; • Produção; • Homologação; • Restrições de segurança;
  • 7. ... e nossa infra • Servidor Central • WebLogic; • Banco de Dados – Oracle; • Servidor Filial • Weblogic: • Fila de Sincronização; • Fila de tratamento de erros; • Banco de Dados – Mysql • 3 instâncias: Gravação, Leitura, Leitura – Espelho; • Com configurações específicas;
  • 8. Problemas com desenvolvimento • Conexão com o cliente instável (VPN); • Banco de Dados concorrente; • Tempo para configuração de ambiente; • Manter histórico de atualizações do Banco de Dados;
  • 9. Solução: • Docker • 2 Weblogic; • Oracle; • Mysql; • Flyway: • Banco Mysql (legado); • Banco Oracle;
  • 10. O que foi automatizado: • Weblogic (central e filial) • Filas JMS; • DataSources; • Oracle • Migrations; • Mysql • Migrations (apenas tabelas relevantes); • Dados de teste; • Jenkins • Integração continua;
  • 11. O que ganhamos? • Acabou problema com VPN; • Tempo de configuração de ambiente caiu; • Cliente adotou as migrations; • Configuração do Weblogic ficou documentada (Python); • Outras aplicações do mesmo cliente adotaram o Docker; • Cliente tem a infra configurada caso desejar adotar adotar;
  • 12. Por que não Vagrant?
  • 14. Cenário • Equipe de TI e Devs isoladas; • Equipes aprendendo “por conta”; • Equipes com ambiente de dev nas nuvens; • Algumas equipes sem nenhum tipo de automatização; • Inclusive algumas equipes sem teste automatizado;
  • 15. Mudança na equipe de Ops • Disseminar a cultura de DevOps • Construção de uma nuvem privada; • CloudStack + Chef; • Utilização de ambientes dev, hom e QA; • Aproximação dos Ops dos Devs; • Equipe de Ops “circulando” entre as equipes de dev; • Estreitar laços entre as equipes; • Devs aprender um pouco de ops;
  • 16. Mudança na equipe de Devs • Equipe apoiando o monitoramento das aplicações; • Zabbix, NewRelic, etc... • Definição de um responsável por apoiar as equipes em automatização; • Disseminar conhecimento entre as equipes; • Automatizar tudo o que for possível; • Tornar as equipes responsáveis pelas suas automatizações; • Meta: 100% das equipes automatizadas;
  • 17. Dicas Não apanhe como a gente apanhou...
  • 19. Fragmentação Flyway • 1__estrutura_inicial.sql • 2__enderecos_funcionarios.sql • 3__financeiro.sql • 4__compras.sql
  • 20. Fragmentação Flyway • 1_1_1__estrutura_funcionarios.sql • 1_1_2__dados_funcionarios.sql • 1_2_1__estrutura_funcionario_endereco.sql • 1_2_2__dados_funcionario_endereco.sql • 1_3_1__estrutura_financeiro_contas.sql • 1_3_2__dados_financeiro_contas.sql • 1_4_1__nova_coluna_cep_funcionario_endereco.sql • 1_4_2__dados_cep_funcionario_endereco.sql
  • 21. Docker compose • Disponível no Windows a partir da versão 1.9.0-rc3 (30/10/2015); • Facilita levantar as maquinas em conjunto; • Antes o projeto usava um arquivo .sh;