Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

#noOps?? Transcendendo o DevOps pelo caminho de tijolos (não muito) amarelos

168 views

Published on

Transcender a cultura DevOps não é como atravessar uma estrada de tijolos amarelos, assim como Dorothy fez para encontrar o Mágico de Oz. Muito pelo contrário: essa estrada sequer existe neste momento. Por isso, iremos contar a história de como estamos construindo nossa própria estrada de tijolos rumo ao #noOps e à Arquitetura Serverless. Tudo isto é feito utilizando containers imutáveis e microservices criados e administrados pelos próprios desenvolvedores, em produção, sem indisponibilidade e de uma forma tão simples quanto um clique em uma ferramenta de integração contínua.

Published in: Technology
  • Be the first to comment

  • Be the first to like this

#noOps?? Transcendendo o DevOps pelo caminho de tijolos (não muito) amarelos

  1. 1. #noOps?? Transcendendo o DevOps pelo caminho de tijolos (não muito) amarelos
  2. 2. Quem Somos? Wagner Hitomi • Primeiro programa aos 16 • Trabalha na Geofusion desde 2015 • Delivery Engineer • Empreendedor quando da tempo • Quase casando! o/ Evandro Silvestre • Primeiro código aos 15 anos, agilista desde 2003 • Trabalha na Geofusion há 8 anos • Responsável pela Engenharia e Infraestrutura • Gamer nas horas vagas • Futuro pai de primeira viagem :)
  3. 3. E a Geofusion? “Somos uma empresa de Location Analytics, que facilita a tomada de decisões por meio de tecnologia e dados de mercado”
  4. 4. Nossa Estrutura de Times GP UX LT Dev QA GP UX LT Dev QA GP UX LT Dev QA GP UX LT Dev QA GP LT Dev Vamos falar desse time! O Delivery Engineering Team
  5. 5. Existiam o… Dev Ops Escreve código! Cuida do Ambiente Joga o código para Ops implementar
  6. 6. DevOps
  7. 7. DevOps se Deriva do padrão The Three Ways • Conceito apresentado em The Phoenix Project • Fortemente baseado em: ○ Lean ○ Improvement Kata ○ Continuous Delivery ○ Teoria das Restrições • Descreve o valor e a filosofia que guia processos e práticas de DevOps
  8. 8. • Fluxo e feedback constante da esquerda para direita (Dev => Ops) • Pequena quantidade de trabalho em intervalos curtos • Entrega constante de valor para o cliente • Só está pronto quanto está em produção • Nunca passar problemas para frente • Práticas necessárias: ○ Integração, Deploy e Entrega Contínua (Delivery Pipeline) ○ Devs e Ops em constante interação The First Way Dev Ops
  9. 9. The Second Way Dev Ops • Fluxo e feedback constante da direita para esquerda (Dev <= Ops) • Permitir detecção de problemas rápido e aprender com eles • Práticas necessárias: ○ Stop the Production Line (quando o build ou teste quebrar, tudo deve parar) ○ Bateria de testes automatizadas rápidas ○ O código sempre deve estar em estado “deployable” ○ Dor compartilhada entre Dev e Ops ○ Telemetria onde todos possam ver o que está acontecendo nos ambientes
  10. 10. The Third Way Dev Ops • Criação de uma cultura que foca em dois pontos: ○ Experimentação e Aprendizado Contínuo ○ Repetição e prática são pré-requisitos para maestria • Práticas necessárias: ○ Cultura de inovação e tolerante a erros ○ Alocar pelo menos 20% dos times em requisitos não funcionais ○ PDCA e Improvement Kata ○ Confiança!
  11. 11. O próximo slide pode causar desconforto Atenção!
  12. 12. Não existe um cargo DevOps Não existe um time de DevOps DevOps é CULTURA!
  13. 13. Algumas fontes • https://www.thoughtworks.com/pt/radar/techniques/separate-devops-team • https://landing.google.com/sre/interview/ben-treynor.html • https://continuousdelivery.com/2012/10/theres-no-such-thing-as-a-devops-team/ • https://www.rallydev.com/blog/engineering/you-don-t-need-devops-team-you-need-tools-team
  14. 14. Como fazemos? Delivery Engineer Team • Time multidisciplinar responsável por um conjunto de ferramentas de Entrega Contínua • Nós pavimentamos o caminho para produção, permitindo os outros times seguirem por ele • Orientamos e damos suporte aos times, mas não administramos ambientes e nem fazemos deploy
  15. 15. Delivery Engineering Team GP UX LT Dev QA GP UX LT Dev QA GP UX LT Dev QA GP UX LT Dev QA GP LT Dev Participa dos outros times auxiliando e construindo junto
  16. 16. Ok! Mas o que é #noOps?
  17. 17. #noOps? • Ainda estamos descobrindo o que é isso, ok!? • O modelo de DevOps atual tem o Delivery Engineer Team como gargalo • Nosso objetivo é Infraestrutura Self Service ○ Através de uma ferramenta de Entrega Contínua cada time pode escolher como rodar seu código (quantas máquinas? tamanho?) • Source-to-Container => Container Imutáveis gerados diretamente pelo processo de build • Telemetria, logs, load balance, etc => Centralizados e Não invasivos
  18. 18. Source-to-Container
  19. 19. Source-to-Container mvn clean install docker:build docker:push constrói o container empurra o container para o nosso registry
  20. 20. Instâncias
  21. 21. Como fazemos… Nossas instâncias são construídas utilizando as tecnologias... Serviço de Descoberta (Consul.io) Serviço de Log Centralizado (Elasticsearch, Logstash, Kibana) Containeres (Docker) Gerenciamento de Configuração (Puppet) Continuous Delivery Tool (GoCD)
  22. 22. Infrastructure As Code
  23. 23. Infrastructure As Code class new_host{ include firewall include users include docker-host include default_folders include consul_stack include elk_stack # mount_points gfn::mounttab{ "/earth" : device => "/dev/vg-app/lv-app", owner => 'god', group => 'universe', checkDir => 'false', options => "defaults" } }
  24. 24. Logs
  25. 25. Log Center Logstash Elasticsearch Kibana Log Log Log Log
  26. 26. Discovery
  27. 27. Service Discovery
  28. 28. Delivery
  29. 29. Pipelines de deploy
  30. 30. Value
  31. 31. Entrega de Valor Fim-A-Fim
  32. 32.
  33. 33. “Fear is the path to the dark side. Fear leads to anger. Anger leads to hate. Hate leads to suffering.” - Yoda
  34. 34. Estamos contratando! Temos vagas em Campinas o/
  35. 35. Slides e vagas disponíveis em: http://geofusion.tech
  36. 36. OBRIGADO! evandro.silvestre@geofusion.com.br Evandro Silvestre wagner.hitomi@geofusion.com.br Wagner Hitomi

×