Mais conteúdo relacionado

Apresentações para você(20)

Similar a DevOps com Exemplos Práticos - QConRio 2014(20)

Último(20)

DevOps com Exemplos Práticos - QConRio 2014

  1. DevOps com Exemplos Práticos
  2. CAMS
  3. J . Paul Reed: VIDS
  4. I/O
  5. Era assim...
  6. De repente...
  7. Então, o que é DevOps ? Cloud Automação Integração Contínua Ferramentas
  8. Então, o que é DevOps ? Cloud Automação Integração Contínua Ferramentas
  9. C.O.CO
  10. O que é Não é DevOps ?
  11. Exemplo 1 THE Multiprogramming System
  12. MEDO !!!!!
  13. Exemplo 2 Integração entre empresas
  14. Visão de Business: Funciona na empresa deles Lorieri sabe tudo de nuvem Rapidão instala aqui
  15. Visão técnica: Migração para Nuvem, …só que ao contrário
  16. Tarefa 1 - QA para integração Ambiente de Dev na empresa terceira ~= 20 módulos .Net ( com HA) Pool de SQL Server 2 Pools de MySQL 2 Pools de busca Pool de Proxy Pool de Roteamento Pool de Fila “Igual da Grande Nuvem”, Aka: REST + Delayed Object Storage “Igual da Grande Nuvem” Sistema de deploy “Igual da Grande Nuvem”
  17. Vocês por favor poderiam me arrumar os manuais ?
  18. Eles Nós *****Ná época do Projeto Negócio: Um sistema para diversas lojas médias e pequenas Uma grande loja Infra: Nuvem Virtualização Desenvolvimento: Times distribuídos autônomos Times especializados Característica: Agilidade para lidar com riscos altos Riscos baixos para evitar lidar com situações críticas e desvalorização da marca Deploys/Dia Centena Dúzia
  19. Sempre desatualizado Sempre dessincronizado Homologação demorada (QA) Report binário: Funciona / Não Funciona Impossível conhecer todos os módulos em tão pouco tempo
  20. Solução 1: esperar Solução 2: Devops !!!
  21. Vamos pro Rio !!!
  22. Expôr a Infra ?
  23. Problema e Soluções Expôr a rede: acesso via VPN, Vlan separada, proxy dedicado Expôr código da Infra: Submódulos do Git Expôr as senhas: Encrypted Databags Tempo: Máquinas Pares - Dev Máquinas Ímpares - QA Roteamento por Cookies /setcookie /unsetcookie
  24. Falta uma coisa: Deploy Igual da Grande Nuvem
  25. Dá pra melhorar….
  26. Logio.org http://cdn.teckler.com/images/XxETDxX/dd6d683e6d84b4a28f27de0e9706b6bc.jpg
  27. Produção: NewRelic
  28. Como configurar 20 módulos ?
  29. template "C:wwwrootwebconfig.conf" do local true source "C:wwwrootwebconfig.conf.erb” end
  30. “A sua liberdade começa onde a minha termina”
  31. Era do Garbage Collection
  32. Terceiros github submodulo no git do chef
  33. github teamcity Amazon S3
  34. Amazon S3 beanstalk repositório
  35. repositório Jenkins Máquinas de QA deles
  36. Terceiros repositório Jenkins Máquinas de QA deles Chef email com detalhes para o desenvolvedor
  37. Máquinas de QA Automático Varnish Cookies Terceiros
  38. Terceiros email com detalhes para o desenvolvedor Jenkins Máquinas de QA deles Objetos Ceph Logs
  39. Terceiros beanstalk repositório
  40. Terceiros email com detalhes para o desenvolvedor repositório Jenkins Chef Nosso QA
  41. Nosso QA Varnish Cookies QA
  42. QA Prod
  43. Pré & Prod DEV QA J E N K I N S C H E F G I T Sub/Git Sub/Git Sub/Git Sub/Git Sub/Git Time A Time B Empresa A Empresa B Empresa C
  44. Realidade
  45. Obrigado :) @againstty0

Notas do Editor

  1. quem sou eu:
  2. morei no rio
  3. O que é: definicao oficial -- Cultura, Automação, Métricas e “Compartilhamento” ----- http://pom-tec.com/wp-content/uploads/2011/11/cameras.jpg
  4. Nova definição: -- Realinhamento de Valores -- Individualidade -- “Don’t be an Asshole” -- Auto Conhecimento - Conhecimento do Sistema ----- http://afv.com/wp-content/uploads/2013/11/VHS.jpg
  5. Fim lei de moore -- multi cpu-core-threaded-cached -- cache e buffers pra todo lado -- sistemas nao cabem no hardware
  6. i/o nao acompanhou -- buffers+caches na controladora, no hd, no filesystem, mais camada de rede
  7. http://www.lampdevelopers.com/images/lamp-cluster.jpg
  8. Tudo virando software ------ (imagem netflix blog)
  9. especializacao de tarefas: dba, storage, rede, frontend, backend, segurança…. -- criou-se o abismo ------- http://s3.amazonaws.com/rapgenius/the_abyss_by_nightpisces-d4cc8tu.jpg
  10. grandes empresas começaram a comprar empresas menores, mais dinâmicas ------- foi quando surgiu devops
  11. Mil ferramentas, mas falta atitude
  12. Criei minha própria definição: "Comprometimento e Objetivo Comum” -- consequencias: gestao de riscos mais inteligentes, priorizacoes (time-to-market), colaboracao, transparencia -- Sem problemas do tipo 2 ------- http://www.geek.com/wp-content/uploads/2014/01/puppypoopin-590x330.jpg
  13. e vamos mostrar que dá pra ser devops sem gohorse
  14. Edsger W. Dijkstra (déquistra), inventou os semaforos, se nao fosse ele nao existiria nunca 2 coisas rodando ao mesmo tempo no computador ------ http://upload.wikimedia.org/wikipedia/commons/d/d9/Edsger_Wybe_Dijkstra.jpg
  15. transformou o acesso aos desenvolvedores -- batch -> multiprogram (explicar) -------- http://faculty.washington.edu/ http://askubuntu.com/questions/7605/
  16. medo de bug, tudo muito complexo + equipe mal preparada -- criou os niveis de acesso (explicar) -- criou a tolerancia a bugs !!!! -- no final ele percebeu que era um medo besta, problemas triviais -- Compartilhou o micro ! ----- http://upload.wikimedia.org/wikipedia/commons/6/6d/Metallic_shield_bug444.jpg
  17. Bugs + controle de acesso = Hackers ! -- relação niveis de acesso com DEV/QA /Pre-Prod/Prod ------- http://arquivoufo.com.br/wp-content/uploads/2012/04/hackers_thumb.jpg
  18. Dica: não tenha medo, teste, brinque, experimente -- Dev, QA são para error imprevisíveis, abuse disso -- Na falta de tempo, ignore os erros previsíveis, eles são previsíveis afinal -- varios ambientes pra brincar, mas cuide bem de prod, sem gohorse ------- http://www.technobuffalo.com/wp-content/uploads/2013/01/clippy.jpg
  19. Contexto: muita coisa já mudou
  20. Agravante: windows windows enterprise (GPOs e UAC) Poderia dizer: nao trabalho com windows
  21. Ficariam desatualizados rapidamente durante desenvolvimento
  22. Na epoca do projeto
  23. situação após instalação
  24. vamos integrar ! -- implementar mesmas iniciativas devops de dentro do empresa -- descobrimos o CI deles -- total apoio deles -- vamos juntar tudo, fazer o nosso CI ser parte da integração contínua deles -- Vamos criar ambiente de dev dentro da empresa -- acesso total em DEV, acesso read-only em QA = colaboração ------ http://cdn.teckler.com/images/XxETDxX/dd6d683e6d84b4a28f27de0e9706b6bc.jpg
  25. Segurança: expor rede, expor codigo da infra, expor senhas da infra, expor infra como um todo --------- http://www.hardmob.com.br/content/attachments/8992d1391654072-battlefieldcop.jpg.html
  26. Transparencia, visibilidade, certeza do que foi feito, sem control+c e control+v, menos debug, mais confiança, ganha tempo ------- http://static.indianexpress.com/m-images/Mon%20Apr%2029%202013,%2011:15%20hrs/M_Id_380862_Infra.jpg
  27. mas não tínhamos tempo ------ http://viccareers.files.wordpress.com/2014/03/no-time-to-prepare-for-interview.png?w=860&h=450&crop=1
  28. Enfrentar + Kiss (Keep it Simple Stupid), Entender a necessidade, fazer o mais simples possível -- Script besta gera lista dos pacotes disponíveis para ir e volar versões
  29. Simplicidade, agilidade
  30. simplicidade: streaming de log, tempo real, sem retenção, máquinas de dev fazendo chamadas via proxy com origem, destino, http code, request e response headers, filtro por regex
  31. sem documentacao: mapa automatico de dependencia, debug, debug, debug, minutos pra instalar, time enxuto justifica ferramentas
  32. Eu era o “gargalo de I/O”, centenas de configurações para 3 ambientes, impossível de manter o controle por planilha, impossível de manter o controle, medo de perder o controle, medo besta, erros previsíveis
  33. terceiros mandavam o template junto com o pacote, já pronto, acesso no submódulo para criar as variáveis, “local true”, Contra: Perda do “controle”, Pró: diversos times trabalhando juntos e ajudando
  34. Todo mundo quer autonomia, mas ninguem quer dar, pq dá trabalho, Solução: Garbage Collection
  35. todo mundo entende garbage collection, “responda rapido, limpe as coisas depois”, assincrono, distribuicao dos sistemas, problemas de I/O, etc -- Tempo de controlar vira tempo de “Limpar” -- mesmo vale para ips, máquinas, sing-ins, DNS, blobs -- confiar, trabalhar junto ----------- http://latimesphoto.files.wordpress.com/2010/10/la-1026-pin10.jpg
  36. Como ficou… na outra empresa o dev criava as variaveis para os nossos templates, e comeca a integracao continua deles
  37. nesse instante a o sistemas deles estava no ar
  38. Detalhes completos do deploy, com print dos arquivos de configuração
  39. Escolhe a versão que funcionou para o deploy no nosso QA
  40. Virou padrão para todos projetos de software Contratacoes novas, mudanca de times, manutenção, tudo igual
  41. nao eh todo mundo que viu valor nessas coisas, nao eh todo mundo que colaborou, mas nao podemos nivelar nossas empresas por baixo, deixar quem é bom ir pra frente, ser humano sempre vai reclamar :) ---------- http://img.izismile.com/img/img4/20110721/640/expectation_vs_reality_part_2_640_05.jpg
  42. nao eh todo mundo que viu valor nessas coisas nao eh todo mundo que colaborou mas nao podemos nivelar nossas empresas por baixo tem caso, serodio, foi longe, reclamacoes nivel MASTER, quem dera todo mundo reclamasse das mesmas coisas ser humano sempre vai reclamar :)