meu cliente não permite devops. e agora?

16
Meu cliente não permite DevOps. E agora?

Upload: ezidiu

Post on 25-Jan-2017

78 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: Meu Cliente não permite DevOps. E agora?

Meu cliente não permite DevOps. E agora?

Page 2: Meu Cliente não permite DevOps. E agora?

Everton Emilio TavaresDeveloper

Page 3: Meu Cliente não permite DevOps. E agora?

O que pode ser automatizado?

• Produção;•Homologação;•Desenvolvimento;

Page 4: Meu Cliente não permite DevOps. E agora?

Possíveis barreiras para Entrega Continua.

• Infraestrutura;• Restrição de Segurança;• Processos / Politicas;• Implantação em terceiros;• Falta de interesse (ou falta de conhecimento);

Page 5: Meu Cliente não permite DevOps. E agora?

Nossas Barreiras...

• Servidor interno;• Produção;• Homologação;

• Restrições de segurança;

Page 6: Meu Cliente não permite DevOps. E agora?

... 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;

Page 7: Meu Cliente não permite DevOps. E agora?

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;

Page 8: Meu Cliente não permite DevOps. E agora?

Solução:

•Docker• 2 Weblogic;• Oracle;• Mysql;

• Flyway:• Banco Mysql (legado);• Banco Oracle;

Page 9: Meu Cliente não permite DevOps. E agora?

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;

Page 10: Meu Cliente não permite DevOps. E agora?

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;

Page 11: Meu Cliente não permite DevOps. E agora?

DicasNão apanhe como a gente apanhou...

Page 12: Meu Cliente não permite DevOps. E agora?

Organização

Page 13: Meu Cliente não permite DevOps. E agora?

Fragmentação Flyway

• 1__estrutura_inicial.sql• 2__enderecos_funcionarios.sql• 3__financeiro.sql• 4__compras.sql

Page 14: Meu Cliente não permite DevOps. E agora?

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

Page 15: Meu Cliente não permite DevOps. E agora?

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;