Upgrade to Pro — share decks privately, control downloads, hide ads and more …

12 factor app

Sponsored · SiteGround - Reliable hosting with speed, security, and support you can count on. →

12 factor app

Talk sobre 12 factor app no GBG Curitiba

Avatar for Estevam de Moraes Rodrigues

Estevam de Moraes Rodrigues

October 07, 2019

Other Decks in Technology

Transcript

  1. $ whoami Estevam de Moraes Rodrigues DevOps Engineer | Paraná

    Banco https://www.linkedin.com/in/estevamrodrigues/
  2. The Twelve-Factor App • Manifesto com série de boas práticas;

    • Automação, portabilidade, menos divergências entre ambientes; • Implantação na nuvem com elasticidade; • Apps stateless
  3. 12 factor app • Infraestrutura para: • Suportar; • Empacotar;

    • Disponibilizar a app com alto nível de maturidade e agilidade
  4. 1 Base de código • App deve ter apenas 1

    base de código vs implantação em vários ambientes; Codebase deploy prod deploy staging deploy dev
  5. 2 Dependência • Declare todas as dependências da app; •

    Não devemos assumir que nosso container/servidor de app possua algum componente já instalado
  6. 3 Configuração • Configurar a app sem necessitar atualizar o

    código; • As configurações devem considerar o ambiente • Exemplos são: bancos de dados, cache, filas, credenciais de serviços remotos
  7. 4 Serviços de apoio • Qualquer app que o código

    precisa para funcionar; • Não faça distinção entre serviço interno e externo deploy prod MySQL Amazon S3
  8. 5 Construa, lance, execute • Construa: código do repo em

    um pacote executável; • Lance: pacote + configuração; • Execute: inicia a execução do lançamento code build Config release
  9. 6 Processos • A app atende a inicialização de novos

    processos sem comprometer seu funcionamento;
  10. 10 Paridade entre desenvolvimento/produção • Manter os ambientes desde o

    desenvolvimento até produção mais similar possível;
  11. 11 Logs • Trate logs como fluxo de eventos coletados

    dos fluxos de saída de todos os processos em execução e serviços de apoio;
  12. 12 Processos de administração • Tarefas de administração devem ocorrer

    sem afetar a solução como um todo; • Exemplo: migração de dados, execução de scripts de backup
  13. Obrigado Estevam de Moraes Rodrigues DevOps Engineer | Paraná Banco

    https://www.linkedin.com/in/estevamrodrigues/