Meu Cliente não permite DevOps. E agora?

Post on 25-Jan-2017

78 views 0 download

Transcript of Meu Cliente não permite DevOps. E agora?

Meu cliente não permite DevOps. E agora?

Everton Emilio TavaresDeveloper

O que pode ser automatizado?

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

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

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;

DicasNã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!@ezidiueverton.tavares.dev@gmail.com