• Save
Windows Azure introduction
Upcoming SlideShare
Loading in...5

Like this? Share it with your network


Windows Azure introduction

Uploaded on

Windows Azure introduction...

Windows Azure introduction
Dr. Neil Roodyn

Ráðstefnan 2009

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


Total Views
On Slideshare
From Embeds
Number of Embeds



Embeds 2

http://www.slideshare.net 2

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

    No notes for slide


  • 1. Introducing Windows Azure Dr. Neil Roodyn
  • 2. This talk is for developers.
  • 3. The islands in our digital lives Data People Devices Apps Synchronization Bringing this all together
  • 4. What are we seeing? • People share with other people • People have multiple devices • Software+services (both cloud and client) • Building this stuff today is hard or impossible
  • 5. Microsoft Azure Services Platform Microsoft Microsoft Live Services .NET Services SQL Services Dynamics CRM SharePoint Services Services
  • 6. What Is The Cloud? • A set of connected servers • On which developers can: –Install and run services –Store and retrieve data
  • 7. What Is Windows Azure? • It is an operating system for the cloud • It is designed for utility computing • It has four primary features: – Service management – Compute – Storage – Developer experience
  • 8. Imagine Building A Desktop Application In This Way: • Select your hardware, wire it all together • Find some device drivers • Write a file system • Write a job scheduler • Write an application installer • … • This would be a complete waste of time!
  • 9. But This Is What Every Cloud Service Developer Has To Do Today! Business logic … Expand to new locale Perform live upgrade for new feature Apply OS patches Service “glue” Diagnose service failures and operations Add storage capacity Handle increase in traffic Respond to hardware failures Datacenter
  • 10. What's The Answer On The Desktop? • An application execution environment that abstracts away the hardware • A shared file system with access control • Resource allocation from a shared pool • Support for powerful programming environments • Inter-operability with other systems
  • 11. What's Missing In The Cloud? An operating system for the cloud: …. …… Service 1 Service 2 Service 3 Service N
  • 12. What Should The Cloud OS Provide? • The same facilities that a desktop OS provides, but on a set of connected servers: – Abstract execution environment – Shared file system – Resource allocation – Programming environments • And more: Utility computing – 24/7 operation – Pay for what you use – Simpler, transparent administration
  • 13. How Is The Cloud OS Manifested? • Automated service management – You define the rules and provide your code – The platform follows the rules: deploys, monitors, and manages your service • A powerful service hosting environment – All of the hardware: servers; load balancers; … – Virtualized and direct execution • Scalable, available cloud storage – Blobs, tables, queues, … • A rich, familiar developer experience
  • 14. Demo Hello Cloud World
  • 15. Automated Service Management Develop and Deploy and Maintain Model Run Service Health • What’s in the model? – Service topology and size – Health constraints – Configuration settings
  • 16. Automated Service Management Maintaining service health • Abstraction is the key – All resources are logical, and must be declared in the service model – Service code calls platform APIs to map logical resources to physical entities – Service code then uses standard APIs • The OS can replace resources transparently – In the face of failures – When performing upgrades
  • 17. Automated Service Management The bottom line • A balance between power and ease of use – Write well behaved services, reduce your TCO – Designed for a full range of scenarios, from the hobbyist to the enterprise developer
  • 18. Scalable, Available Cloud Storage • Simple, essential storage abstractions: – Large items of user data: Blobs, file streams, … – Service state: Simple tables, caches, … – Service communication: Queues, locks, … • With an emphasis on: – Massive scale, availability and durability – Geo-distribution and geo-replication • This is not a database service in the cloud
  • 19. Rich, Familiar Developer Experience • A cloud environment on the desktop • Support for a variety of programming languages – ASP.NET, .NET languages, native code, PHP • An ecosystem of tools and support – Integration with Visual Studio, Eclipse – Logging, alerts, tracing, … – Samples, documentation, MSDN, forums, …
  • 20. Putting It All Together Simple architectures for scalability Example: n m LB Web Role Worker Role Cloud Storage (blob, table, queue)
  • 21. Windows Azure Is • Designed to encourage best practices – Stateless compute + durable storage – Co-location of computation and data – Queues for asynchronous processing • An open platform – Connect outbound to any server – Open protocols and APIs on all components
  • 22. Technical Preview Started at PDC 2008 • Open release of the desktop SDK • Limited preview of the cloud infrastructure – Free usage, with quotas • Key features: – VMs with dedicated resources – Automated service management – Simple service architectures – ASP.net websites, managed code workers – Storage: Blobs, tables, queues – Single, large datacenter on U.S. west coast
  • 23. Making things concrete.
  • 24. • Developing an service • Testing and debugging locally • Deploying to the cloud • Maintaining a running service
  • 25. No Surprises
  • 26. Consistent, Familiar Development • Visual Studio – Templates – Debugging • .NET platform – .NET, IIS7, WCF • “The cloud on your desktop” – Complete offline cloud simulation – Like Cassini (web development server)
  • 27. So What? Default.aspx
  • 28. We Got Scalability For Free! LB Default.aspx • Scalability • Availability • Zero-downtime upgrades • All with existing tools and skills
  • 29. Horizontal Scaling What about state? (e.g., shopping cart)
  • 30. Separating State Durable Store
  • 31. Durable Storage • Durable, scalable, available store • Simple abstractions Blobs Tables Queues … • Simple interface – REST – ADO.NET Data Services
  • 32. DEMO Windows Azure Storage
  • 33. Simple Storage LB Default.aspx Storage (Blobs, Tables, Queues)
  • 34. Not Just Websites • Cloud services aren’t just websites • Many other types of work for the cloud – Bulk file conversion – Heavy analytics – Finding extraterrestrials • Even websites can offload async work • We need a more complex architecture
  • 35. Service Architectures Web role LB Default.aspx Worker.cs Storage
  • 36. Service Architectures Worker role LB Default.aspx Worker.cs Storage
  • 37. Service Architectures Web and worker roles LB Default.aspx Worker.cs Storage
  • 38. LB Web And Worker Roles Default.aspx Worker.cs Simple queue interface Storage (Blobs, Tables, Queues)
  • 39. Debugging • Remember, no surprises • Offline, just what you would expect – Set breakpoints – Step into code – Inspect variables • What about in the cloud?
  • 40. Logging • Debugging the cloud really means logging • Simple logging API today • More functionality over time
  • 41. Publishing Your Service To The Cloud 1. Write code on your laptop 2. Upload your package to the web portal 3. Push “deploy” 4. Monitor, upgrade, scale…
  • 42. Summary • Familiar development • Local debugging • Simple deployment • Automated management
  • 43. What Next? • Go to http://azure.com • Download the SDK, write some code
  • 44. Questions?