Successfully reported this slideshow.
Your SlideShare is downloading. ×

A busca pelo deploy continuo

More Related Content

Related Books

Free with a 30 day trial from Scribd

See all

Related Audiobooks

Free with a 30 day trial from Scribd

See all

A busca pelo deploy continuo

  1. 1. A busca pelo Deploy Contínuo. @lornlab
  2. 2. Barreiras
  3. 3. Cultura
  4. 4. Confiança
  5. 5. Software Livre
  6. 6. Startups
  7. 7. Lean
  8. 8. Qual o seu ciclo de deploy?
  9. 9. Você fica assustado em dias de deploy?
  10. 10. Bugfix na noite anterior ao deploy?
  11. 11. Existe outro jeito :)
  12. 12. Automatize tudo!
  13. 13. Automatize tudo! build
  14. 14. Automatize tudo! build test
  15. 15. Automatize tudo! build test deploy
  16. 16. Integração
  17. 17. • SCM • Testes • CI • Deploy/Rollback Script • Máquinas automatizadas • puppet/chef • Monitoramento
  18. 18. Testes
  19. 19. Deploy / Rollback script
  20. 20. Puppet / Chef
  21. 21. Monitorament o
  22. 22. DEVOPS
  23. 23. DEVOPS • logs • debug • erro conhecido é erro tratado • menos trabalho pra você, mais trabalho pra ops
  24. 24. Arquitetura
  25. 25. Load balance
  26. 26. if ( $user->cfg =~ /funcionalidade42/ ){ // nova funcionalidade do site } else { // modo antigo }
  27. 27. nginx + starman
  28. 28. upstream myapp_starman {   server unix:/tmp/starman.sock fail_timeout=0; } server {   listen 80;   client_max_body_size 1024m;   client_body_buffer_size 8k;   proxy_read_timeout 300;   server_name www.localhost.com; https://gist.github.com/   root /var/www/myapp.current;   keepalive_timeout 0; 1126172   access_log /var/log/nginx/myapp.access combined;   error_log /var/log/nginx/myapp.error;      location /static {         root /var/www/myapp.current/root/;         autoindex on;   }   location / {     proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;     proxy_set_header Host $http_host;     proxy_redirect off;     proxy_buffering off;     if (!-f $request_filename) {       proxy_pass http://myapp_starman;     }   } }
  29. 29. “It’s a unix system”
  30. 30. kill -s USR2 1337
  31. 31. /var/www/ myapp.current /var/www/ myapp-0.1 /var/www/ myapp-0.2
  32. 32. Conclusão • A busca pelo deploy continuo é ... continua • O hype está ajudando a melhorar a qualidade, ou pelo menos se preocupando mais com com a qualidade, do que é entregue
  33. 33. Obrigado! • lorn @ cpan dot org • http://twitter.com/lornlab

Editor's Notes

  • \n
  • \n
  • \n
  • Cultura enterprise dificulta bastante a implementação o conceito de torres não ajuda em nada, torre de design, torre de infra etc\n
  • \n
  • As pessoas te contrataram para fazer aquilo, te pagam para aquilo mais não confiam naquilo que você faz O_o\nDesenvolvedores gostam de ver suas coisas sendo usadas / em produção, isso o motiva a trabalhar melhor\nSe você não confia no seu funcionario, demita-o e contrate um que você confie\n
  • \n
  • Startups que se enterpriserisam, criando processos desnecessarios\n
  • Cultura de startup facilita muito isso\npensando lean, o conceito de deploy/integração continua tá enraizado em muitos "frameworks" de startups como Lean e afins\nStartup precisa entregar valor rapido ao cliente para se diferencia, se não tem deploy continuo não há como garantir isso\nEnterprise2startup como faz//\n\n
  • \n
  • \n
  • \n
  • Antes somente uma pessoa estava ‘autorizada’a fazer o deploy\nagora todos podem fazer, quando quiser\nvocê tem que fazer um deploy no seu 1o dia de trabalho\nAntes o rollback era tenebroso, agora é vitorioso\n
  • \n
  • \n
  • Tudo o que você precisa fazer para fazer o deploy, incluindo testes unitario, integração, segurança, desempenho e interface\nQuando você diminui esse ciclo, você aumenta sua competitividade\n\n
  • \n
  • \n
  • (thats not me :-)\n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • Unitario, integração, performance, segurança\n
  • o 1o passo é ter um script magico, que faz deploy/rollback apenas executando ele\n
  • \n
  • \n
  • \n
  • \n
  • Como você vai saber que algo deu errado? como combate o “feeling” do seu chefe\n“não sei não o site tá estranho, acho que esse ultimo deploy diminuiu o numero de vendas”\nmeça tudo, tire estatisticas de tudo e deixe isso facil para o dev\nuse o graphite e o statsd\n\n
  • Quando devs trabalha com ops\n
  • - menos trabalho pra você, mais trabalho pra ops\ncitar exemplo de quando o cara de ops te liga e fica te falando mensagem que está acontecendo no terminal, como se ele fosse um terminal via telefone :P\n
  • \n
  • \n
  • Com um load balance você consegue fazer deploy aos poucos, isolando as maquinas e verificando se tem algum erro\nex: ldiretord, perlball, haproxy\n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n

×