Nesta palestra demonstra-se algumas limitações encontradas para aplicação de DevOps em projetos, e qual foi a saída para utilização de algumas técnicas de DevOps num projeto específico.
Mostra-se também a importância de pensar em automação em todos os estágios da aplicação, sendo que no exemplo a utilização de algumas automações se iniciou em ambiente de desenvolvimento o que levou o cliente a aplicar também em produção visto os benefícios adquiridos.
3. O que pode ser automatizado?
• Produção;
• Homologação;
• Desenvolvimento;
4. 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);
6. ... 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;
7. 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. 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;
10. 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;
15. 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;