Your SlideShare is downloading. ×
MS Cloud Day - Deploying and monitoring windows azure applications
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Saving this for later?

Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime - even offline.

Text the download link to your phone

Standard text messaging rates apply

MS Cloud Day - Deploying and monitoring windows azure applications

3,385
views

Published on

Published in: Technology

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
3,385
On Slideshare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
42
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
  • This session discusses your data and the Windows Azure platform.
  • This session discusses your data and the Windows Azure platform.
  • This session discusses your data and the Windows Azure platform.
  • This session discusses your data and the Windows Azure platform.
  • This session discusses your data and the Windows Azure platform.
  • Twitter template
  • Transcript

    • 1. Deploying and Monitoring Windows Azure Application
      Wely Lau (wely@ncs.com.sg)
      Microsoft MVP, Windows Azure
      Solutions Architect, NCS
      Blog : http://wely-lau.net
    • 2. Microsoft Cloud Day
      Wely Lau Windows Azure MVP / Solutions Architect, NCS Pte Ltd
      Deploying and Monitoring Windows Azure Application
      Wely is the first Windows Azure MVP in Southeast Asia.
      In NCS, he focuses on Cloud Computing, specifically on Windows Azure Platform. Performing cloud consultancy, architecting cloud solution, designing cloud framework, and delivering cloud training are his day-to-day activities.
      This session learn how we can deploy application to Windows Azure ,install program on Windows Azure, and how do we monitor our application on Windows Azure.
    • 3. Agenda
      Basic Concept
      Deploying
      Upgrading
      Monitoring
      Start-up Task
      Q & A
    • 4. Understanding Packaging and Config
      Windows Azure Services are described by two important artifacts:
      Service Definition (*.csdef)
      Service Configuration (*.cscfg)
      Your code is zipped and packaged with definition (*.cspkg)
      Encrypted(Zipped(Code + *.csdef)) == *.cspkg
      Windows Azure consumes just (*.cspkg + *.cscfg)
    • 5. Service Definition
      Contains metadata needed by the Windows Azure environment to understand the requirements of your application.
      Describes the shape of your Windows Azure Service
      Defines Roles, Ports, Certificates, Configuration Settings, Startup Tasks, IIS Configuration, and more…
      Can only be changed by upgrades or new deployments
    • 6. Service Configuration
      Sets values for the configuration settings defined in the service definition file and specifies the number of instances to run for each role.
      Supplies Runtime Values (Scale, Config Settings, Certificates to use, VHD, etc.)
      Can be updated any time through Portal or API
    • 7. Fault and Upgrade Domains
      Fault Domains
      Represent groups of resources anticipated to fail together
      i.e. Same rack, same server
      Fabric spreads instances across fault domains
      Default of 2
      Upgrade Domains
      Represents groups of resources that will be upgraded together
      Specified by upgradeDomainCountin ServiceDefinition
      Default of 5
      Fabric splits Upgrade Domains across Fault Domains and Across Roles
    • 8. Fault and Upgrade Domains Visualized
      Fault Domain
      Fault Domain
      Rack
      Rack
      U/G Domain #1
      U/G Domain #2
      U/G Domain #1
      U/G Domain #2
      Web Role
      Web Role
      VM
      VM
      VM
      VM
      Worker Role
      Worker Role
      VM
      VM
      VM
      VM
    • 9. Deployment Environments
      Two Environments to choose from
      Nearly Identical…
      <servicename>.cloudapp.net
      <deploymentID>.cloudapp.net
      VIP Swap between them
    • 10. Agenda
      Basic Concept
      Deploying
      Upgrading
      Monitoring
      Start-up Task
      Q & A
    • 11. Various Techniques Deploying to the Cloud
      Windows Azure Portal
      Visual Studio 2010
      Windows Azure Service Management Cmdlets
    • 12. Windows Azure Portal
      • http://windows.azure.com
      You must create an Azure account, then a service, and then you deploy your code.
      VS builds two files.
      Encrypted package of your code
      Your config file
    • 13. Visual Studio
      • Deploy a management certificate
      • 14. Connect to your service account
      • 15. Publish inside of VS2010
      • 16. Easy integration with IntelliTrace and Storage
    • Windows Azure Service Management Cmdlets
      • Set of PowerShell cmdlets
      • 17. http://archive.msdn.microsoft.com/azurecmdlets
      • 18. Wraps Management REST API and Diagnostics API
      • 19. Enables building of sophisticated deployment scripts
      • 20. Works with rest of .NET CLR
    • Deploy through Visual Studio
      Deploy through PowerShell
      demo
    • 21. Agenda
      Basic Concept
      Deploying
      Upgrading
      Monitoring
      Start-up Task
      Q & A
    • 22. Upgrading Windows Azure Application
      Deployment Consideration
      Downtime tolerance
      VIP Address
      Cost
      Various options
      Delete & Recreate
      In Place Upgrade
      Web Deploy
      VIP Swap
      DNS Swap*
      Sometimes you MUST delete a deployment
      Changes in endpoints, VM size, and binding
      Try to minimize by specifying what you might need in advance
    • 23. Delete & Recreate
      Down time between deployments
      You can change almost everything in your app
      1 X your instance cost
      New VIP
      Hosted Service
      Deployment v2
      Deployment v1
      Web Role
      Web Role
      Worker Role
      Worker Role
      VM
      VM
      VM
      VM
      VM
      VM
      VM
      VM
    • 24. In Place Upgrade
      Reuses existing VMs (Preserves VM state i.e. local cache data)
      Can update a single role
      1 X your instance cost
      Cannot change the service definition
      size, endpoints, roles, etc.
      Utilizing Upgrade Domain to avoid downtime
    • 25. In Place Upgrade
      Rack
      Rack
      Web Role
      Web Role
      Load Balancer:
      #1
      #2
      #1
      #2
      VM
      VM
      Prod
      VM
      VM
      Worker Role
      Worker Role
      VM
      VM
      VM
      VM
    • 26. Web Deploy
      Newly built-in in SDK 1.4.1
      Quickly push incremental changes
      Caveats:
      Only applicable for single instance web role
      Changes made will not be persistence
      Development and testing purpose, not production!
    • 27. VIP swap
      Easier to undo
      Requires 2 identical environments
      Cannot update endpoints
      2 X your instance cost
      Happen very fast
      Typically within 1 mins
      Hosted Service
      Deployment v1
      Worker Role
      Web Role
      VM
      VM
      Load Balancer:
      VM
      VM
      Prod
      Prod
      Deployment v2
      Stage
      Stage
      Web Role
      Worker Role
      VM
      VM
      VM
      VM
    • 28. DNS Swap
      Use DNS as another layer of abstraction
      Requires your own domain name
      2 X your instance cost
      Updating the domain record is not immediate
      New VIP
      DNS:
      whatever.com
      Hosted Service (foo.cloudapp.net)
      Hosted Service (bar.cloudapp.net)
      Deployment
      Deployment
      Web Role
      Worker Role
      Web Role
      Worker Role
      VM
      VM
      VM
      VM
      VM
      VM
      VM
      VM
    • 29. Web Deploy
      VIP Swap
      demo
    • 30. Agenda
      Basic Concept
      Deploying
      Upgrading
      Monitoring
      Start-up Task
      Q & A
    • 31. Diagnostic: Common Task & Challenges
      • Common Diagnostic Task
      • 32. Performance measurement
      • 33. Troubleshooting and debugging
      • 34. Capacity planning
      • 35. Traffic analysis (users, views, peak times)
      • 36. Billing & Auditing
      • 37. Challenges in the Cloud
      • 38. Many instances
      • 39. Local storage is not persistence
      • 40. They move around
      • 41. Massive amount of data
      • 42. Can’t remote desktop in
      • 43. now you can do it with SDK >= 1.3 
    • Windows Azure Diagnostic API
      • Collects diagnostic data from your instances and copies it to a storage account
      • 44. IIS Logs, Crash Dumps, FREB Logs
      • 45. Arbitrary log files
      • 46. Performance Counters
      • 47. Event Logs
      • 48. Debug/Trace statements
      • 49. Infrastructure events
      • 50. MonAgentHost.exe is started automatically by default.
      • 51. Listener wired up in app/web.config
      • 52. Need to define a storage account connection string
    • How does it work?
      Role Instance
      • Role Instance Starts
      • 53. Diagnostic Monitor Starts
      • 54. Monitor is configured
      • 55. Imperatively at Start time
      • 56. Remotely any time
      • 57. Monitor buffers data locally
      • 58. User can set a quota (FIFO)
      • 59. User initiates transfer to storage
      • 60. Scheduled or On Demand
      • 61. Where to store?
      Role
      Local directory storage
      Diagnostic Monitor
    • 62. Sample Results
    • 63. Visualizing the data
    • 64. Diagnostics Considerations
      Volume of Data Storage
      Standard costs apply for transactions, storage & bandwidth
      Reaction Time
      $ Cost
      Monitoring 5 Performance Counters
      every 5 seconds for 100 instances costs > $260 US dollar per month
    • 65. Remote Desktop
    • 66. Remote Desktop
      Role 2
      Role 1
      IN_0
      IN_0
      IN_1
      Port 3389
      LB
      IN_1
      IN_2
      Remote Forwarder
      Internal Port 3389
    • 67. Remote Desktop to Windows Azure
      Installing Program on Windows Azure
      demo
    • 68. Agenda
      Basic Concept
      Deploying
      Upgrading
      Monitoring
      Start-up Task
      Q & A
    • 69. Windows Azure Startup Tasks
      • Includes scripts that automate the preparation and configuration of roles
      • 70. Scenarios: Perform short, unattended setups on role startup. E.g.
      • 71. COM Component
      • 72. Registry Key
      • 73. Configuring a Windows Server Role, such as IIS
      • 74. Installation
      Startup.cmd
      start /w pkgmgr /iu:IIS-ASP
      REG ADD "HKEY_LOCAL_MACHINESOFTWAREMicrosoftActive SetupInstalled Components{A509B1A7-37EF-4b3f-8CFC-}" /v "IsInstalled" /t REG_DWORD /d 0 /f
      winrar-x64-40b7.exe /s
    • 75. Windows Azure Startup Tasks
      <WebRolename="foo">
      <Startup>
      <Taskcommandline="relativepathToSetupExecutable"
      executionContext="limited|elevated"
      taskType="simple|foreground|background"/>
      </Startup>
      </WebRole>
      Task Types:
      • Simple [Default] – System waits for the task to exit before any other tasks are launched
      • 76. Background – System does not wait for the task to exit
      • 77. Foreground – Similar to background, except role is not restarted until all foreground tasks exit
    • Installing through Start-up Task
      demo
    • 78. Resources
      • Windows Azure Platform Training Course
      • 79. http://msdn.microsoft.com/en-us/wazplatformtrainingcourse.aspx
      • 80. Building, deploying, and managing Windows Azure Applications
      • 81. http://channel9.msdn.com/Events/PDC/PDC10/CS03
      • 82. Deploying, Troubleshooting, Managing and Monitoring Applications on Windows Azure
      • 83. http://www.msteched.com/2010/Europe/COS324
      • 84. Windows Azure CmdLet
      • 85. http://archive.msdn.microsoft.com/azurecmdlets
      • 86. Remote Desktop to Windows Azure
      • 87. http://tinyurl.com/azure-remote-desktop
      • 88. Custom Domain Name in Windows Azure
      • 89. http://tinyurl.com/azure-custom-domain
    • Any questions?
      Q & A
    • 90. Thank you!
      Wely Lau (wely@ncs.com.sg)
      Microsoft MVP, Windows Azure
      Solutions Architect, NCS
      Blog : http://wely-lau.net