Chef, Nginx e Capistrano: Como usar!

  • 549 views
Uploaded on

Apresentação sobre a infraestrutura linux que desenvolvi para aplicações Rails e como o Chef, Nginx e capistrano foram utilizados

Apresentação sobre a infraestrutura linux que desenvolvi para aplicações Rails e como o Chef, Nginx e capistrano foram utilizados

More in: Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
549
On Slideshare
0
From Embeds
0
Number of Embeds
1

Actions

Shares
Downloads
4
Comments
0
Likes
0

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. Chef,Nginx eCapistranoComo usar!Felipe Augusto Navasfelipen@7prods.com.br
  • 2. Chef,Nginx eCapistranoComo usar!Felipe Augusto Navasfelipen@7prods.com.br
  • 3. Fluxo de umarequisição ao ServidorBrowser DNS integration-app Quem é o http://control.integration.7prods.corp/ ? É o 172.16.32.30 172.16.32.30 http://control.integration.7prods.corp/ HTTP/1.1 302 Moved Temporarily Server: nginx/1.1.19 Date: Wed, 08 Aug 2012 21:15:35 GMT Content-Type: text/html; charset=utf-8 Connection: keep-alive Location: http://control.integration.7prods.corp/admin/login <html><body>You are being <a href="http://control.integration...
  • 4. Fluxo de umarequisição ao ServidorBrowser DNS integration-app Quem é o http://control.integration.7prods.corp/ ? É o 172.16.32.30 172.16.32.30 http://control.integration.7prods.corp/ HTTP/1.1 302 Moved Temporarily Server: nginx/1.1.19 Date: Wed, 08 Aug 2012 21:15:35 GMT Content-Type: text/html; charset=utf-8 Connection: keep-alive Location: http://control.integration.7prods.corp/admin/login <html><body>You are being <a href="http://control.integration...
  • 5. Fluxo de umarequisição ao ServidorBrowser DNS integration-app Quem é o http://control.integration.7prods.corp/ ? É o 172.16.32.30 172.16.32.30 http://control.integration.7prods.corp/ } HTTP/1.1 302 Moved Temporarily Server: nginx/1.1.19 Date: Wed, 08 Aug 2012 21:15:35 GMT Content-Type: text/html; charset=utf-8 MÁGICA Connection: keep-alive Location: http://control.integration.7prods.corp/admin/login <html><body>You are being <a href="http://control.integration...
  • 6. Fluxo de umarequisição ao ServidorBrowser DNS integration-app Quem é o http://control.integration.7prods.corp/ ? É o 172.16.32.30 172.16.32.30 SHOW ME HOW!!! http://control.integration.7prods.corp/ PLZ!!! } HTTP/1.1 302 Moved Temporarily Server: nginx/1.1.19 Date: Wed, 08 Aug 2012 21:15:35 GMT Content-Type: text/html; charset=utf-8 MÁGICA Connection: keep-alive Location: http://control.integration.7prods.corp/admin/login <html><body>You are being <a href="http://control.integration...
  • 7. DIG – Consulta ao DNS● dig @8.8.8.8 +short homolog.7prods.com.br● dig @10.100.20.2 +short homolog.7prods.com.brCURL – Canivete suiço do HTTP● curl control.integration.7prods.corp --head --verbose
  • 8. SERVIDOR DE APLICAÇÃO:: Estrutura 172.16.32.30 http://control.integration.7prods.corp/ integration-app
  • 9. SERVIDOR DE APLICAÇÃO:: Estrutura integration-app
  • 10. SERVIDOR DE APLICAÇÃO:: Estrutura Interna UBUNTU LINUX 12.04 LTS RVM NGINX Ruby 1.9.2-p290 THIN 7CONTROL Ruby 1.9.2-p318 THIN 7ACCOUNT
  • 11. SERVIDOR DE APLICAÇÃO:: Multi-instância por Aplicação UBUNTU LINUX 12.04 LTS RVM NGINX Ruby 1.9.2-p290 THIN THIN 7CONTROL THIN
  • 12. SERVIDOR DE APLICAÇÃO:: Unix Domain Sockets UBUNTU LINUX 12.04 LTS RVM NGINX Ruby 1.9.2-p290 THIN THIN 7CONTROL Unix domain Socket ou THIN Inter-process Communication Socket
  • 13. Servidor de AplicaçãoUBUNTU LINUX 12.04 LTS RVM NGINX Ruby 1.9.2-p290 thin.0.sock thin.1.sock Unix domain Socket ou thin.2.sock Inter-process Communication Socket
  • 14. Servidor de AplicaçãoUBUNTU LINUX 12.04 LTS RVM NGINX Ruby 1.9.2-p290 thin.0.sock NÃO TEMOS MAIS PORTAS!!!! thin.1.sock Unix domain Socket ou thin.2.sock Inter-process Communication Socket
  • 15. SERVIDOR DE APLICAÇÃO:: Comunicação entre Aplicações UBUNTU LINUX 12.04 LTS RVM NGINX Ruby 1.9.2-p290 7CONTROL Ruby 1.9.2-p318 7ACCOUNT DNSMASQ
  • 16. MAS CADÊO CHEF EO CAPISTRANO????
  • 17. Primeiro uma história...
  • 18. Em uma reunião qualquer... Tava na hora da***Felipe gente adotar Servidores Linux
  • 19. Em uma reunião qualquer... Mas quem vai montar o servidor?
  • 20. Em uma reunião qualquer... Eu monto !
  • 21. Em uma reunião qualquer...
  • 22. Em uma reunião qualquer... É um servidor só né ?
  • 23. Em uma reunião qualquer... Tem um de desenvolvimento
  • 24. Em uma reunião qualquer... Tem um de desenvolvimento E um de homologação
  • 25. Em uma reunião qualquer... Tem um de desenvolvimento E um de homologação E um de produção
  • 26. Em uma reunião qualquer... Mas é só fazer uma máquina virtual e pronto né ?
  • 27. Em uma reunião qualquer... Temos que fazer também em Máquina Física
  • 28. Em uma reunião qualquer... Temos que fazer também em Máquina Física E na Locaweb
  • 29. Em uma reunião qualquer... Temos que fazer também em Máquina Física E na Locaweb Talvez na Amazon
  • 30. CHEF● Diferentes formas de utilizar: CHEF CHEF CHEF SERVER HOSTED SOLO
  • 31. CHEF● Diferentes formas de utilizar: CHEF CHEF CHEF SERVER HOSTED SOLO
  • 32. CHEF-SOLO● Node → Cliente que será configurado● Ohai → Coleta informações do Node● Cookbooks → Conjuto de Recipes (Receitas)● Recipes = Comandos + Templates
  • 33. CAPISTRANO● Dois papéis principais: 1. Enviar o código para o(s) servidor(es) 2. Executar comandos no(s) servidor(es)
  • 34. SERVIDOR DE APLICAÇÃO:: O quê Chef e Capistrano fazem afinal ? UBUNTU LINUX 12.04 LTS RVM RVM NGINX Ruby 1.9.2-p290 Ruby 1.9.2-p290 THIN 7CONTROL Ruby 1.9.2-p318 Ruby 1.9.2-p318 THIN 7ACCOUNT DNSMASQ
  • 35. SERVIDOR DE APLICAÇÃO:: Responsabilidades do Chef UBUNTU LINUX 12.04 LTS RVM NGINX Ruby 1.9.2-p290 Ruby 1.9.2-p290 THIN 7CONTROL Ruby 1.9.2-p318 Ruby 1.9.2-p318 THIN 7ACCOUNT DNSMASQ
  • 36. SERVIDOR DE APLICAÇÃO:: Responsabilidades do Capistrano UBUNTU LINUX 12.04 LTS RVM NGINX Ruby 1.9.2-p290 Ruby 1.9.2-p290 THIN 7CONTROL Ruby 1.9.2-p318 Ruby 1.9.2-p318 THIN 7ACCOUNT DNSMASQ
  • 37. Perguntas ?Felipe Augusto Navasfelipen@7prods.com.br
  • 38. GG