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.

Windows Azure - Automating app lifecycle

1,377 views

Published on

Talk from PDC 2009

Published in: Technology
  • Be the first to comment

  • Be the first to like this

Windows Azure - Automating app lifecycle

  1. 1.
  2. 2. Automating the App Lifecycle<br />Sriram Krishnan<br />Microsoft Corporation<br />SVC25<br />
  3. 3. automate aw-tuh-meytTo replace or enhance human labor with machines<br />
  4. 4. &lt;1&gt;<br />
  5. 5. October 2008<br />
  6. 6.
  7. 7.
  8. 8. ?<br />
  9. 9. Windows Azure Service Management API<br />announcing<br />
  10. 10. API<br />
  11. 11. Important portal functionality<br />
  12. 12. What does this mean?<br />
  13. 13.
  14. 14.
  15. 15.
  16. 16.
  17. 17.
  18. 18.
  19. 19. REST + XML<br />
  20. 20. Everything over HTTPS<br />
  21. 21. POST https://management.core.windows.net/&lt;subscription-id&gt;/services/hostedservices/&lt;service-name&gt;/deploymentslots/&lt;slot-name&gt;<br />
  22. 22. 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 />
  23. 23.
  24. 24.
  25. 25. X509 certs<br />
  26. 26. Any valid cert<br />Multiple certs<br />Add/revoke anytime<br />
  27. 27.
  28. 28.
  29. 29. Operations supported<br />
  30. 30. C/R/U/D deployments<br />Role status<br />Change config (no. of VMs, settings, etc)<br />Upgrade<br />Storage keys<br />Much more…<br />
  31. 31.
  32. 32. How can you use it?<br />
  33. 33. csmanage.exe<br />
  34. 34. Client library / WCF bindings<br />
  35. 35. Use REST+XML to roll your own<br />
  36. 36.
  37. 37. Service Management API<br />demo <br />
  38. 38. Pricing<br />
  39. 39. Free!<br />
  40. 40. What can you build with it?<br />
  41. 41. http://www.flickr.com/photos/ejpphoto/2314610838/<br />
  42. 42. http://www.flickr.com/photos/balakov/3082423010/<br />
  43. 43.
  44. 44. Integrate with tools/dashboards<br />Nightly build/continuous integration<br />Monitoring systems<br />
  45. 45.
  46. 46. &lt;/1&gt;<br />
  47. 47. December 4th, 1996<br />
  48. 48.
  49. 49.
  50. 50.
  51. 51. Oh Oh!<br />
  52. 52.
  53. 53. Trickiest patch ever<br />
  54. 54.
  55. 55. &lt;2&gt;<br />
  56. 56. Upgrades can be hard<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 />announcing<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. Role- specific upgrade<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. When to use in-place upgrade<br />
  77. 77. Changes affecting a single role<br />When you have ‘soft-state’<br />When you don’t want to maintain a staging environment<br />
  78. 78. In-place upgrade<br />demo <br />
  79. 79. &lt;/2&gt;<br />
  80. 80.
  81. 81.
  82. 82.
  83. 83.
  84. 84. &lt;3&gt;<br />
  85. 85. Auto scaling<br />
  86. 86. App<br />Control<br />Diag.API<br />
  87. 87. Auto scaling<br />demo <br />
  88. 88.
  89. 89.
  90. 90. &lt;/3&gt;<br />
  91. 91. sriramk@microsoft.comwww.sriramkrishnan.com <br />

×