Distribuição e monitoração de aplicações dentro do Windows Azure <br />Luciano Condé<br />Arquiteto de Soluções<br />Micro...
Ciclo de vida de um serviço<br />
Windows Azure Service Lifecycle<br />Manter a saúde<br />Provisiona-mento<br />Deployment<br />Codificar e modelar<br /><u...
Novosserviços e atualizações
Mapear e distribuirpara o hardware
Configuração de rede
Monitorar
Reagiraoseventos</li></ul>Developer/<br />Deployer<br />Automatizado<br />Automatizado<br />Developer<br />
Três perguntas<br />
Perguntas<br />Como instrumentar os meus serviços?<br />Como gerenciarosmeusserviços?<br />Como enviaratualizações dos meu...
&lt;1&gt;<br />
Outubro 2008<br />
?<br />
Windows Azure Service Management API<br />Novidade<br />
Funcionalidadesimportantes do portal<br />
REST + XML<br />
Tudosobre HTTPS<br />
POST https://management.core.windows.net/&lt;subscription-id&gt;/services/hostedservices/&lt;service-name&gt;/deploymentsl...
POST https://management.core.windows.net/&lt;subscription-id&gt;/services/hostedservices/&lt;service-name&gt;/deploymentsl...
X509 certs<br />
Qualquercertificadoválido<br />Múltiploscertificados<br />Adicionar/revogar a qualquerhora<br />
Operações suportadas<br />
C/R/U/D deployments<br />Role status<br />Change config (no. of VMs, settings, etc)<br />Upgrade<br />Storage keys<br />Mu...
Como podemosusar?<br />
csmanage.exe<br />
Client library / WCF bindings<br />
Use REST+XML paramontar o seu<br />
Service Management API<br />demo <br />
Preço?<br />
O quevocêfazer?<br />
http://www.flickr.com/photos/ejpphoto/2314610838/<br />
http://www.flickr.com/photos/balakov/3082423010/<br />
Integrar com ferramentas e dashboards<br />Builds<br />Sistemas de monitoramento<br />
&lt;/1&gt;<br />
 4 de dezembro, 1996<br />
Oh Oh!<br />
&lt;2&gt;<br />
Atualizar, àsvezes, é muitodíficil<br />
3<br />
+<br />
2<br />
Stage Deployment<br />Production Deployment<br />
Stage Deployment<br />Production Deployment<br />
1<br />
&apos;In-place&apos; upgrade<br />Novidade<br />
Production Deployment<br />
Production Deployment<br />(new bits)<br />
Upgrade Domain<br />
Production Deployment<br />
Web<br />Web<br />Web<br />Web<br />Web<br />Web<br />Worker<br />Worker<br />Worker<br />Worker<br />Worker<br />Worker<b...
upgradeDomainCount=“2”<br />Web<br />Web<br />Web<br />Web<br />Web<br />Web<br />Worker<br />Worker<br />Worker<br />Work...
Automatic vs Manual<br />
upgradeDomainCount=“2”<br />Web<br />Web<br />Web<br />Web<br />Web<br />Web<br />Worker<br />Worker<br />Worker<br />Work...
upgradeDomainCount=“3”<br />Web<br />Web<br />Web<br />Web<br />Web<br />Web<br />Worker<br />Worker<br />Worker<br />Work...
upgradeDomainCount=“1”<br />Web<br />Web<br />Web<br />Web<br />Web<br />Web<br />Worker<br />Worker<br />Worker<br />Work...
Atualizaçãoemcima<br />de uma role específica<br />
Web<br />Web<br />Web<br />Web<br />Web<br />Web<br />Worker<br />Worker<br />Worker<br />Worker<br />Worker<br />Worker<b...
Exemplo<br />
Atualizando o protocolo <br />Passo 1: Atualize as roles paraqueentenda ambos protocolos<br />Passo 2: Dispare o uso da no...
In-place upgrade<br />demo <br />
&lt;/2&gt;<br />
Hoje, comovocêinstrumentaa suaaplicaçãoemprodução?<br />
Ambienteestático<br />Instânciasbemconhecidas<br />Transaçõessãorastreáveis<br />Tenhoacessofísicoaoservidores<br />Termin...
&lt;3&gt;<br />
Faço da mesma maneira na nuvem?<br />
NÃO<br />
Porque?<br />
Múltiplas instâncias<br />Web<br />Web<br />Web<br />Web<br />Web<br />Web<br />Worker<br />Worker<br />Worker<br />Worker...
Não tenho acesso as máquinas<br />
Virtualmente distribuído<br />
Entãocomoeufaço?<br />
Windows Azure Diagnostics API<br />Novidade<br />
Usa o próprio Azure (APIs Standard)<br />SDK<br />Cloud-Friendly<br />Escalável<br />Developer no controle<br />
Configuration<br />Role Instance<br />Role<br />Data collection<br />(traces, logs, crash dumps)<br />Quota enforcement <b...
Request upload<br />Role Instance<br />Windows Azure Storage<br />Role<br />Diagnostic Monitor<br />Local directory storag...
Quaisos dados quepossopegar?<br />
Windows Azure diagnostics API<br />demo <br />
&lt;/3&gt;<br />
&lt;4&gt;<br />
Auto scaling<br />
Upcoming SlideShare
Loading in …5
×

Monitoring e Logging no Windows Azure - S+S Day 09

1,221 views

Published on

O desenvolvimento sobre a plataforma Windows Azure também oferece um novo modelo de implantação (deployment) e monitoração de aplicações na nuvem. Venha discutir mais sobre essas questões nesta sessão.

Published in: Technology
  • Be the first to comment

  • Be the first to like this

Monitoring e Logging no Windows Azure - S+S Day 09

  1. 1. Distribuição e monitoração de aplicações dentro do Windows Azure <br />Luciano Condé<br />Arquiteto de Soluções<br />Microsoft<br />twitter.com/luconde<br />blogs.msdn.com/conde<br />
  2. 2. Ciclo de vida de um serviço<br />
  3. 3. Windows Azure Service Lifecycle<br />Manter a saúde<br />Provisiona-mento<br />Deployment<br />Codificar e modelar<br /><ul><li>Ajustar a configuraçãodesejada
  4. 4. Novosserviços e atualizações
  5. 5. Mapear e distribuirpara o hardware
  6. 6. Configuração de rede
  7. 7. Monitorar
  8. 8. Reagiraoseventos</li></ul>Developer/<br />Deployer<br />Automatizado<br />Automatizado<br />Developer<br />
  9. 9. Três perguntas<br />
  10. 10. Perguntas<br />Como instrumentar os meus serviços?<br />Como gerenciarosmeusserviços?<br />Como enviaratualizações dos meusserviços?<br />
  11. 11. &lt;1&gt;<br />
  12. 12. Outubro 2008<br />
  13. 13.
  14. 14.
  15. 15. ?<br />
  16. 16. Windows Azure Service Management API<br />Novidade<br />
  17. 17. Funcionalidadesimportantes do portal<br />
  18. 18.
  19. 19.
  20. 20.
  21. 21. REST + XML<br />
  22. 22. Tudosobre HTTPS<br />
  23. 23. POST https://management.core.windows.net/&lt;subscription-id&gt;/services/hostedservices/&lt;service-name&gt;/deploymentslots/&lt;slot-name&gt;<br />
  24. 24. POST https://management.core.windows.net/&lt;subscription-id&gt;/services/hostedservices/&lt;service-name&gt;/deploymentslots/&lt;slot-name&gt;<br />&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&gt;<br />&lt;Deployment xmlns=”http://schemas.microsoft.com/windowsazure”&gt;<br /> &lt;Name&gt;deployment-name&lt;/Name&gt;<br /> &lt;PackageUrl&gt;package-url-in-blob-storage&lt;/PackageUrl&gt;<br /> &lt;Configuration&gt;base64-encoded-configuration-file&lt;/Configuration&gt;<br /> &lt;Label&gt;base64-encoded-deployment-label&lt;/Label&gt;<br />&lt;/Deployment&gt;<br />
  25. 25.
  26. 26.
  27. 27. X509 certs<br />
  28. 28. Qualquercertificadoválido<br />Múltiploscertificados<br />Adicionar/revogar a qualquerhora<br />
  29. 29.
  30. 30.
  31. 31. Operações suportadas<br />
  32. 32. C/R/U/D deployments<br />Role status<br />Change config (no. of VMs, settings, etc)<br />Upgrade<br />Storage keys<br />Muitomais…<br />
  33. 33.
  34. 34. Como podemosusar?<br />
  35. 35. csmanage.exe<br />
  36. 36. Client library / WCF bindings<br />
  37. 37. Use REST+XML paramontar o seu<br />
  38. 38. Service Management API<br />demo <br />
  39. 39. Preço?<br />
  40. 40.
  41. 41. O quevocêfazer?<br />
  42. 42. http://www.flickr.com/photos/ejpphoto/2314610838/<br />
  43. 43. http://www.flickr.com/photos/balakov/3082423010/<br />
  44. 44.
  45. 45. Integrar com ferramentas e dashboards<br />Builds<br />Sistemas de monitoramento<br />
  46. 46. &lt;/1&gt;<br />
  47. 47. 4 de dezembro, 1996<br />
  48. 48.
  49. 49.
  50. 50.
  51. 51. Oh Oh!<br />
  52. 52.
  53. 53.
  54. 54.
  55. 55. &lt;2&gt;<br />
  56. 56. Atualizar, àsvezes, é muitodíficil<br />
  57. 57. 3<br />
  58. 58. +<br />
  59. 59. 2<br />
  60. 60. Stage Deployment<br />Production Deployment<br />
  61. 61. Stage Deployment<br />Production Deployment<br />
  62. 62. 1<br />
  63. 63. &apos;In-place&apos; upgrade<br />Novidade<br />
  64. 64. Production Deployment<br />
  65. 65. Production Deployment<br />(new bits)<br />
  66. 66. Upgrade Domain<br />
  67. 67. Production Deployment<br />
  68. 68. Web<br />Web<br />Web<br />Web<br />Web<br />Web<br />Worker<br />Worker<br />Worker<br />Worker<br />Worker<br />Worker<br />
  69. 69. upgradeDomainCount=“2”<br />Web<br />Web<br />Web<br />Web<br />Web<br />Web<br />Worker<br />Worker<br />Worker<br />Worker<br />Worker<br />Worker<br />
  70. 70. Automatic vs Manual<br />
  71. 71. upgradeDomainCount=“2”<br />Web<br />Web<br />Web<br />Web<br />Web<br />Web<br />Worker<br />Worker<br />Worker<br />Worker<br />Worker<br />Worker<br />
  72. 72. upgradeDomainCount=“3”<br />Web<br />Web<br />Web<br />Web<br />Web<br />Web<br />Worker<br />Worker<br />Worker<br />Worker<br />Worker<br />Worker<br />
  73. 73. upgradeDomainCount=“1”<br />Web<br />Web<br />Web<br />Web<br />Web<br />Web<br />Worker<br />Worker<br />Worker<br />Worker<br />Worker<br />Worker<br />
  74. 74. Atualizaçãoemcima<br />de uma role específica<br />
  75. 75. Web<br />Web<br />Web<br />Web<br />Web<br />Web<br />Worker<br />Worker<br />Worker<br />Worker<br />Worker<br />Worker<br />
  76. 76. Exemplo<br />
  77. 77. Atualizando o protocolo <br />Passo 1: Atualize as roles paraqueentenda ambos protocolos<br />Passo 2: Dispare o uso da nova versão<br />Web Role<br />Web Role<br />Web Role<br />Código<br />Versão 1<br />Web Role<br />Web Role<br />Web Role<br />Web Role<br />Web Role<br />Web Role<br />Versão 1.5<br />Versão 2<br />Cache Role<br />Cache Role<br />Cache Role<br />Protocolo<br />UD0<br />UD1<br />UD2<br />UD0<br />UD1<br />UD2<br />Cache Role<br />Cache Role<br />Cache Role<br />Cache Role<br />Versão 1<br />Cache Role<br />Cache Role<br />Versão 2<br />
  78. 78. In-place upgrade<br />demo <br />
  79. 79. &lt;/2&gt;<br />
  80. 80.
  81. 81.
  82. 82. Hoje, comovocêinstrumentaa suaaplicaçãoemprodução?<br />
  83. 83.
  84. 84. Ambienteestático<br />Instânciasbemconhecidas<br />Transaçõessãorastreáveis<br />Tenhoacessofísicoaoservidores<br />Terminal services<br />Dados e ferramentasjuntos<br />Alterações in-place<br />
  85. 85. &lt;3&gt;<br />
  86. 86. Faço da mesma maneira na nuvem?<br />
  87. 87. NÃO<br />
  88. 88. Porque?<br />
  89. 89. Múltiplas instâncias<br />Web<br />Web<br />Web<br />Web<br />Web<br />Web<br />Worker<br />Worker<br />Worker<br />Worker<br />Worker<br />Worker<br />
  90. 90. Não tenho acesso as máquinas<br />
  91. 91. Virtualmente distribuído<br />
  92. 92. Entãocomoeufaço?<br />
  93. 93. Windows Azure Diagnostics API<br />Novidade<br />
  94. 94. Usa o próprio Azure (APIs Standard)<br />SDK<br />Cloud-Friendly<br />Escalável<br />Developer no controle<br />
  95. 95. Configuration<br />Role Instance<br />Role<br />Data collection<br />(traces, logs, crash dumps)<br />Quota enforcement <br />Diagnostic Monitor<br />Local directory storage<br />Windows Data Sources<br />IIS Logs & Failed Request Logs<br />Perf Counters<br />Windows Event Logs<br />
  96. 96. Request upload<br />Role Instance<br />Windows Azure Storage<br />Role<br />Diagnostic Monitor<br />Local directory storage<br />Windows Data Sources<br />Scheduled or on-demand upload<br />
  97. 97. Quaisos dados quepossopegar?<br />
  98. 98.
  99. 99. Windows Azure diagnostics API<br />demo <br />
  100. 100. &lt;/3&gt;<br />
  101. 101.
  102. 102.
  103. 103.
  104. 104.
  105. 105. &lt;4&gt;<br />
  106. 106. Auto scaling<br />
  107. 107. App<br />Controle<br />Diag.API<br />
  108. 108. Autoscaling<br />demo <br />
  109. 109. &lt;/4&gt;<br />
  110. 110. Referências<br />Diagnostics API<br />http://msdn.microsoft.com/en-us/library/ee758705.aspx<br />Service Management API<br />http://msdn.microsoft.com/en-us/library/ee517250.aspx<br />Windows Azure Software Development Kit (November 2009) <br />http://www.microsoft.com/downloads/details.aspx?familyid=772990DA-8926-4DB0-958F-95C1DA572C84&displaylang=en<br />Windows Azure Tools for Microsoft Visual Studio (November 2009) <br />http://www.microsoft.com/downloads/details.aspx?familyid=6967FF37-813E-47C7-B987-889124B43ABD&displaylang=en<br />

×