Moving applications to the cloud

3,944
-1

Published on

101 on moving application to the Windows Azure Cloud using new features like Remote Desktop, Windows Azure Connect, Admin Mode and Startup Tasks, VM Role.

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,944
On Slideshare
0
From Embeds
0
Number of Embeds
22
Actions
Shares
0
Downloads
25
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide
  • Task Types:Simple [Default] – System waits for the task to exit before any other tasks are launchedBackground – System does not wait for the task to exitForeground – Similar to background, except role is not restarted until all foreground tasks exit
  • Moving applications to the cloud

    1. 1. Powered by MVP<br />Independent Experts. Real World Answers.<br />2011 vasario18, Vilnius<br />
    2. 2. Moving Applications to the Cloud…<br />Sergejus Barinovas<br />Architect, Windows Azure MVP<br />
    3. 3. Q: Why this topic?<br />A: This is the most uncovered topic so far…<br />
    4. 4. Back to BasicsQ: What is Cloud?<br />A: Elastic compute resource on demand<br />A: This is not a technology, this is a THINKING<br />
    5. 5. Cloud as a way of THINKING<br />Existing technologies adopted in a new way<br />Utility model is welcomed by small companies and enterprises<br />Symbiosis of IT Professionals and Developers called DevOps<br />
    6. 6. Windows Azure is a PaaS Offering<br />IaaS<br />SaaS<br />PaaS<br />Infrastructure-as-a-Service<br />Platform-as-a-Service<br />Software-as-a-Service<br />consume<br />build<br />host<br />
    7. 7. Windows Azure Compute<br />...in less than 5 minutes<br />
    8. 8. Windows Azure Compute Primer<br />Azure Storage<br />Web Role<br />Port80<br />Web Role<br />Web Role (IIS)<br />Port 80<br />Web Role<br />SQL Azure<br />LoadBalancer<br />Worker Role 1<br />Worker Role 2<br />Port 1234<br />Port1234<br />Internet Services<br />Monitoring<br />Provisioning<br />Recovering from failure<br />Fabric Controller<br />
    9. 9. Windows Azure Compute<br />Web Role<br />Worker Role<br />Windows Server x64 2008 / 2008 R2<br />.NET Framework 3.5 SP1 / 4.0<br />Native Code, PHP, Java, <your runtime here><br />Full Trust and Admin Mode<br />
    10. 10. Windows Azure Compute<br />Web Role<br />Worker Role<br />Role is an executable<br />HTTP(S) and TCP<br /><your process here><br />Role is hosted on IIS<br />HTTP(S)<br />ASP.NET<br />Fast CGI + PHP<br />
    11. 11. Windows Azure Portal<br />demo <br />
    12. 12. Oops!<br />We need some way to diagnose the issue…<br />
    13. 13. Windows Azure Monitoring<br />Windows Azure Diagnostics API<br />System Center Operation Manager (SCOM) Windows Azure Management Pack<br />Remote Desktop Connectionto Role Instance<br />
    14. 14. RDP to Role Instance<br />demo <br />
    15. 15. Remote Desktop Configuration<br /><?xml version="1.0" encoding="utf-8"?><br /><ServiceDefinition name="RemoteAccess" xmlns="http://schemas.microsoft.com/ServiceHosting/2008/10/ServiceDefinition"><br /> <WorkerRole name="GatewayRole"><br /> <ConfigurationSettings><br /> <Setting name="DiagnosticsConnectionString" /><br /></ConfigurationSettings><br /><Imports><br /><ImportmoduleName="RemoteAccess" /><br /><ImportmoduleName="RemoteForwarder" /><br /></Imports><br /></WorkerRole><br /><WorkerRole name="TargetRole"><br /> <ConfigurationSettings><br /> <Setting name="DiagnosticsConnectionString" /><br /> </ConfigurationSettings><br /><Imports><br /><ImportmoduleName="RemoteAccess" /><br /></Imports><br /></WorkerRole><br /></ServiceDefinition><br />
    16. 16. Remote Desktop Configuration<br /><Role name="WorkerRole1"><br /> <Instances count="1" /><br /> <ConfigurationSettings><br /> <Setting name="Microsoft.WindowsAzure.Plugins.RemoteAccess.Enabled“ value="true" /><br /> <Setting name="Microsoft.WindowsAzure.Plugins.RemoteAccess.AccountUsername" value="myuser" /><br /> <Setting name="Microsoft.WindowsAzure.Plugins.RemoteAccess.AccountEncryptedPassword" value="[base64]" /><br /><Setting name="Microsoft.WindowsAzure.Plugins.RemoteAccess.AccountExpiration" value="2010-06-16T13:04:02.9666425-07:00" /><br /></ConfigurationSettings><br /><Certificates><br /><Certificate name="Microsoft.WindowsAzure.Plugins.RemoteAccess.PasswordCertificate" thumbprint="c0c23e1cdd7bfb20c14dce97b37ea67bd9f24918"thumbprintAlgorithm="sha1" /><br /></Certificates><br /></Role><br />
    17. 17. But I Can’t Use SQL Azure!<br />Let’s say for security reasons…<br />
    18. 18. Hybrid Windows Azure Model<br />Your applications can be<br />Entirely On-Premises<br />Entirely in the Cloud<br />Both in the Cloud and On-Premises<br />
    19. 19. Hybrid Windows Azure Model<br />Cloud<br />On-premises<br />Windows Azure Connect<br />
    20. 20. Windows Azure Connect<br />demo <br />
    21. 21. Windows Azure Connect<br />Secure connectivity<br />Super simple setup<br />Active Directory support<br />
    22. 22. But I Need Customizations!<br />Configure Windows, Install Applications, etc…<br />
    23. 23. Admin Mode & Startup Tasks<br />Execute BAT and PowerShell scripts<br />Configure Windows Server and IIS<br />Install additional software<br />Update registry keys<br />
    24. 24. “PING in the Cloud”<br />demo <br />
    25. 25. Admin Mode & Startup Tasks<br /><WebRolename="WorkerRole1"><br /> <Startup><br /> <Taskcommandline="relativepathToSetupExecutable"<br />executionContext="limited|elevated" <br />taskType="simple|foreground|background"/><br /> </Startup><br /></WebRole><br />
    26. 26. Let’s Have Some FUN!<br />And give away some prizes for…<br />
    27. 27. Yell “I LOVE Windows Azure”<br />I told you my talks are a little bit crazy…<br />
    28. 28. OK, Let’s Continue…<br />
    29. 29. But <your excuse here><br />… and Startup Tasks can’t help you<br />
    30. 30. VM Role<br />Worker Role – role is an executable<br />Web Role – role is hosted on IIS<br />VM Role – role is the virtual machine<br />Admin Web / Worker Role<br />VM Role<br />Web / Worker Role<br />Abstraction<br />Control<br />
    31. 31. VM Role In a Nutshell<br />Base.VHD<br />Blob Storage<br />Cloud<br />On-Premises<br />
    32. 32. VM Role<br />demo <br />
    33. 33. VM Role<br /><ServiceDefinitionname="MyVMRoleService"xmlns="…"><br /> <VirtualMachineRolename="MachineRole"vmsize="Medium"><br /> <Imports><br /> </Imports><br /> </VirtualMachineRole><br /></ServiceDefinition><br />
    34. 34. VM Role<br /><ServiceConfigurationserviceName="MyVMRoleService"xmlns="…"><br /> <Rolename="MachineRole"><br /> <OsImagehref="20101020BaseVM.vhd" /><br /><Instancescount="2" /><br /><ConfigurationSettings><br /></ConfigurationSettings><br /><Certificates><br /> <Certificatename="Microsoft.WindowsAzure.Plugins.RemoteAccess.PasswordEncryption"thumbprint="195FD938F86D8785FF53C660BCBD283819E0271A"thumbprintAlgorithm="sha1" /><br /> </Certificates><br /> </Role><br /></ServiceConfiguration><br />
    35. 35. VM Role<br />Ability to upload customized Windows Server x64 2008 R2 Enterprise image<br />You are now responsible for patching and maintenance<br />OS image is not durable (yet)<br />
    36. 36. VM Role<br />It’s NOT an Infrastructure as a Service!<br />Windows Azure does automate many management tasks<br />
    37. 37. Recap: Moving Apps to the Cloud<br />It’s really easier than you thought, isn’t it?<br />
    38. 38. Moving Applications to the Cloud<br />Use Remote Desktop for easier diagnostics<br />Use Azure Connect to interconnect cloud and on-premise applications<br />Use Admin Mode and Startup Tasks to customize Windows and install software<br />Use VM Role to migrate legacy and native applications<br />
    39. 39. Thank You!<br />Sergejus Barinovas<br />http://sergejus.blogas.lt<br />@sergejusb<br />

    ×