Basis Tecnologia da Informação S.A. - 2019
História e Apresentação
DevOps e Entrega Contínua
Técnicas
Ferramentas
Especializações: GitOps e DevSecOps
Com o uso crescente do ágil necessidade de entregar mais rapidamente
Em desenvolvimentos clássicos a implantação pode demorar mais que o desenvolvimento…
DevOps é
Metodologia
Cultura
Práticas
Movimento
DevOps não é um produto
Developers + Operators (+ Profissionais de Segurança)
Minimizar o desafio de entregar rapidamente
Unificação da Cadeia de Produção
Gerentes de Projetos
Assegurar a colaboração entre as áreas
Arquitetos
Criar uma arquitetura com baixo acoplamento
Colaborar com os desenvolvedores e usuários para definir as melhores ferramentas e tecnologias
DBA
Permitir as migrações de banco de maneira automática e transparente
Gestão de Configuração abrangente
Integração contínua
Testes contínuos
Defende:
Integração contínua
Entrega contínua
Práticas Lean
Cultura colaborativa
Ágil feito corretamente
DevOps não é um mercado, mas uma filosofia centrada em ferramentas que suporta a cadeia de valor da entrega contínua
Construir o código fonte o tempo todo
Integrar as mudanças com frequência
Achar os problemas o mais cedo possível
Deixar a construção reproduzível
Entregar em produção:
O mais rapidamente possível
Da maneira mais segura
Automação de todo o processo de entrega
Construir orientado a qualidade
Trabalhar com pequenos incrementos
Computadores são bons para executar tarefas repetitivas, pessoas para resolver problemas
Sempre ir atrás da Melhoria contínua
Todo mundo na equipe é responsável
Manifestação automatizada do processo de entrega
Colaboração entre as áreas envolvidas no pipeline
Automação do Processo = Retorno rápido
Gerenciar os recursos de configuração junto com o código fonte
A configuração é versionada também
Os passos de construção (pipelines) fazem parte do código fonte
Jenkinsfile
Scripts Liquibase
Dockerfile
Helm Charts
O código fonte e o banco de dados devem estar compatíveis
Não deve ter dúvidas sobre quais scripts executar
Automação da cadeia completa
Gerenciamento e disponibilização da infraestrutura com código
Não efetuar mais configuração da infra manualmente
Permite:
Disponibilizar ambiente mais rapidamente
Ter um backup em caso de falha
Chef
Puppet
Ansible
Terraform
Cloud Formation (Amazon)
Deployment Manager (Google)
Projeto open-source
Anunciado em 15/03/2013 por Solomon Hykes
Em 2015 a empresa vale 1 bilhão de dólares
Vários projetos baseados no Docker
Compartilhamento dos recursos da máquina
Recursos isolados
Controle de versão e reuso
Empacotamento das dependências
Implantação rápida
Plataforma de gerenciamento de Containers
Agilidade para implantar e escalar Containers
API e ferramentas CLI
Disponível nos maiores provedores de Cloud
Permite definir o estado desejado de uma aplicação
Toda a configuração é código (YAML)
Projeto iniciado em 2004 com o Nome Hudson por Kohsuke Kawaguchi
Primeira Release em 2005
2007: Início da popularidade
2011: Mudança de nome para Jenkins
2014: Jenkins Produto Principal de Cloudbees
Mais de 1.600 Plugins (https://plugins.jenkins.io/)
Mais de 260.000 instâncias instaladas
Sistema de Integração/Entrega Contínua mais utilizado
Desde a sáida da Versão 2.0 em 2016 176 versões foram publicadas
Novos projetos: Jenkins-X, Config as Code, Evergreen..
Git é a fonte de verdade
Verificar estado atual contra estado desejado
Utilizar o fluxo do Git como gancho para automação
A equipe de segurança deve fazer parte integral do time do projeto
Pensar na segurança das aplicações e da infraestrutura desde do início
Inspeção contínua e automatizada
Automatizar as barreiras de segurança para não atrasar o fluxo DevOps

Perguntas?