Understanding The Azure Platform March 2010


Published on

Understanding The Azure Platform Technical overview

Published in: Technology
1 Like
  • Be the first to comment

No Downloads
Total Views
On Slideshare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide
  • Slide objectives: Ensure that the audience understands our experience and investments in running and operating services.Speaking Points: IntroMicrosoft hasn’t been running services quite as long as we’ve been making software – but we have been in the business for a while and at huge scale. Just a few numbers from our consumer businessLive Search: 2.16B queries per month, 41 languagesMSN: 550M unique users, 10B+ page views per monthLive ID: 1B+ Authentications/dayMessenger: 8.2B messages/dayMicrosoft has rapidly expanded its data center operations since embarking on the Software + Services strategy in 2005, and willcontinue to do so for the foreseeable future. Initially the company focused on leased facilities. Now we design and build our own data centers. These will soon be the largest and most advanced such facilities in the world—the Northlake facility near Chicago, for instance, will cover more than 500,000 square feet and deliver significant gains in energy efficiency and environmental performance. Data CentersThis is a listing of just the new Microsoft-owned data centers. Designing and building these facilities ourselves allows Microsoft greater control over power efficiency and related environmental impacts. The list below is partial; Microsoft does not comment on exactly how many data centers are operating worldwide. Quincy, WA: Complete, approx 500K sq ft, 27MW, uses entirely hydro-electric powerSan Antonio, TX: Opening Fall 08, approx 475K sq ft, 27MW, uses recycled water for coolingChicago, IL: Opening Spring/Summer 09, approx 550K sq ft, up to 60MW when full, 1st floor up to 220 double-stacked containers, 2nd floor standard raised-floor data center space, will use outside air for coolingDublin, Ireland: Opening Summer 09, approx 570K sq ft, up to 27MW, will use outside air for coolingDes Moines, Iowa: Recently announced purchase of land in the Des Moines area with the intent to build a data centerInnovation:With the Chicago data center, the entire first floor will house containerstrucks will haul up to 200 containers into the building and back them into their slotsFacilities personnel will hook up Internet connections and power and cooling equipment; then each of the containers will be up and runningContainers provide: Energy efficiency, Cost, Deployment speedNotes:
  • The components of the Azure Services Platform can be used by local applications running on a variety of systems, including various flavors of Windows, mobile devices, and others. Those components include:  Windows Azure: Provides a Windows-based environment for running applications and storing data on servers in Microsoft data centers.  Microsoft .NET Services: Offers distributed infrastructure services to cloud-based and local applications.  Microsoft SQL Services: Provides data services in the cloud based on SQL Server.  Live Services: Through the Live Framework, provides access to data from Microsoft’s Live applications and others. The Live Framework also allows synchronizing this data across desktops and devices, finding and downloading applications, and more.
  • Windows Azure runs on a large number of machines, all located in Microsoft data centers and accessible via the Internet. A common Windows Azure fabric knits this plethora of processing power into a unified whole. Windows Azure compute and storage services are built on top of this fabric. The Windows Azure compute service is based, of course, on Windows. For the initial availability of this service, a Community Technology Preview (CTP) made public in the fall of 2008, Microsoft allowed Windows Azure to run only applications built on the .NET Framework. The company has announced plans to support unmanaged code as well, i.e., applications that aren’t built on the .NET Framework, on Windows Azure in 2009. In the CTP version of Windows Azure, developers can create .NET-based software such as ASP.NET applications and Windows Communication Foundation (WCF) services. To do this, they can use C# and other .NET languages, along with traditional development tools such as Visual Studio 2008. And while many developers are likely to use this initial version of Windows Azure to create Web applications, the platform also supports background processes that run independently—it’s not solely a Web platform. Both Windows Azure applications and on-premises applications can access the Windows Azure storage service, and both do it in the same way: using a RESTful approach. The underlying data store is not Microsoft SQL Server, however. In fact, Windows Azure storage isn’t a relational system, and its query language isn’t SQL. Because it’s primarily designed to support applications built on Windows Azure, it provides simpler, more scalable kinds of storage. Accordingly, it allows storing binary large objects (blobs), provides queues for communication between components of Windows Azure applications, and even offers a form of tables with a straightforward query language. Running applications and storing their data in the cloud can have clear benefits. Rather than buying, installing, and operating its own systems, for example, an organization can rely on a cloud provider to do this for them. Also, customers pay just for the computing and storage they use, rather than maintaining a large set of servers only for peak loads. And if they’re written correctly, applications can scale easily, taking advantage of the enormous data centers that cloud providers offer. Yet achieving these benefits requires effective management. In Windows Azure, each application has a configuration file. By changing the information in this file manually or programmatically, an application’s owner can control various aspects of its behavior, such as setting the number of instances that Windows Azure should run. The Windows Azure fabric monitors the application to maintain this desired state. To let its customers create, configure, and monitor applications, Windows Azure provides a browser-accessible portal. A customer provides a Windows Live ID, then chooses whether to create a hosting account for running applications, a storage account for storing data, or both. An application is free to charge its customers in any way it likes: subscriptions, per-use fees, or anything else. Windows Azure is a general platform that can be used in various scenarios.
  • Understanding The Azure Platform March 2010

    1. 1. Understanding Azure<br />David Gristwood<br />Application Architect, Microsoft <br />blogs.msdn.com/david_gristwood<br />
    2. 2. Why a Cloud Platform?<br />Reduce capital & operations costs<br />Simplify application deployment & management <br />Simplify scaling to internet scale<br />Cost effectively handle peak loads<br />Focus on new functionality & not infrastructure<br />
    3. 3. Azure is Live…..<br />
    4. 4. The Azure Philosophy<br />
    5. 5. Azure is about Scale<br /><ul><li>Azure is designed from the ground up for true Internet scale
    6. 6. Global presence
    7. 7. Ride the “network effect”
    8. 8. LinkedIn: 16 months for first million users, 11 days for most recent million
    9. 9. Facebook: 5 years to hit 250m users, 8 months to double
    10. 10. Scale up and scale down
    11. 11. Supports the “Scale Fast, Fail Fast” model</li></ul>www.flickr.com/photos/januszbc/1776184496<br />
    12. 12. Characteristics of Azure Applications<br />“Scale & Elasticity” <br /><ul><li>Need massive scale
    13. 13. Need high reliability
    14. 14. Have variable load
    15. 15. Have short or unpredictable lifetime</li></ul>http://www.flickr.com/photos/39919537@N06/3666813048/<br />
    16. 16. Helps your Systems Scale<br /><ul><li>Most architecture is hidden inside code
    17. 17. Azure encourages you to define your application into constituent parts
    18. 18. Azure can scale the parts of your application as appropriate</li></ul>www.flickr.com/photos/39818355@N00/2128626176<br />
    19. 19. Flexible Architecture <br /><ul><li>Systems evolve over time
    20. 20. Cloud is not an “all or nothing” proposition
    21. 21. Azure makes it easier to extend to the cloud</li></ul>www.flickr.com/photos/tomkpunkt/3695066577<br />
    22. 22. Opening up the Cloud<br /><ul><li>Allow developers to apply their existing skills to the cloud
    23. 23. Support for .NET, Ruby, PHP, Java
    24. 24. Interoperability with any platform, tools or technology </li></ul>www.flickr.com/photos/h19/2306213399/in/set-72157594224557858<br />
    25. 25. Natural Platform Evolution<br /><ul><li>Windows Server 2008
    26. 26. Virtualisation
    27. 27. Windows Services, such as IIS, logging, diagnostics, etc
    28. 28. Visual Studio & .NET</li></li></ul><li>Flexible Business Model<br /><ul><li>No up front hardware purchase
    29. 29. Pay as you go costing model
    30. 30. Ideal in current economical climate </li></ul>www.flickr.com/photos/cleebster/2508660124<br />
    31. 31. Data Centers<br />
    32. 32. Windows Azure Platform Availability <br />Northern Europe<br />North Central USA<br />Eastern Asia<br />Western Europe <br />South Central USA<br />Southeast Asia<br />
    33. 33. Delivering an Efficient & Sustainable Cloud<br />Microsoft has run Online Servicessince 1994<br />1st MSFT datacentre built in 1989 <br />Running Online Services 24x7x365 <br />MSN launched beta in 1994/public in 1995<br />Global service delivery to 59 markets/36 languages<br />∙ 30B Live ID authentications/month ∙ 2B Bing queries/month<br /> ∙ 10B MSN page views/month ∙ 240B Messenger messages/month<br />Global Infrastructure to Run Your Services World Wide<br />Quincy, WA: Approx 500K sq ft, hydro-powered<br />San Antonio, TX: Approx 475K sq ft, recyclable water<br />Chicago, IL: Approx 700K sq ft, water economization<br />Dublin, Ireland: Approx 303+K sq ft, air economization<br />
    34. 34. Chicago Datacentre – Scalable, Sustainable <br />One of world’s largest datacentres using containers, on-line on July 2009<br />Cost $500 million, 700k sq ft facility (approx 16 football fields)<br />30 MegaWatts today, 60 MW for future use<br />ISO 27001:2005 Accreditation<br />SAS 70 Type I and II Attestations<br />40 ft containers with 1800-2500 servers <br />Density of 10 times amount of compute in equivalent space in traditional datacentres<br />Optimizes efficiency, reduces wastes and carbon footprint <br />Delivers an average PUE of 1.22<br />Plug-and-play infrastructure = Rapid Deployment <br />
    35. 35. Dublin Datacentre<br /><ul><li>First Mega Datacentre built outside the US, on-line on July 2009
    36. 36. Cost $500 million, 303+sq ft facility and growing
    37. 37. EU Datacenter Best Practice Award Winner
    38. 38. Stand-alone Server Pods
    39. 39. Environmentally Sustainable
    40. 40. Free Air-Cooling via Air-Side Economization
    41. 41. 50% less energy use vs. traditional facilities
    42. 42. 1 % water use vs. traditional facilities
    43. 43. 1.25 PUE
    44. 44. 5.4MegaWatts today, 22.2 MW for future use
    45. 45. ISO 27001:2005 Accreditation
    46. 46. SAS 70 Type I and II Attestations</li></li></ul><li>Windows Azure<br />
    47. 47. The Azure PlatformThe Big Picture<br />AppFabric<br />SQL Azure<br />Applications<br />Windows Azure<br />Applications<br />Others<br />Mobile<br />Desktop<br />Server<br />
    48. 48. Application<br /> Compute<br />Storage<br />Fabric<br />Config<br />AppFabric<br />Applications<br />SQL Azure<br />Windows Azure<br />Applications<br />Mobile<br />Desktop<br />Server<br />Others<br />
    49. 49. Azure Development<br />
    50. 50. Windows Azure for Application Developers<br />Hosted<br />Service<br />Portal<br />SDK<br />Storage<br />Develop<br />Run<br />Deploy<br />
    51. 51. Development Fabric and Storage<br />Local Machine<br />Windows Azure Simulation Environment <br />Development Storage<br />Development Fabric<br />
    52. 52. Visual Studio 2010<br />
    53. 53. Visual Studio 2010<br />
    54. 54. Visual Studio 2010<br />
    55. 55. Portal<br />
    56. 56. Azure Building Blocks<br />
    57. 57. Azure Compute Building Blocks<br />Worker Role<br />Web Role<br />System Host<br />IIS Host<br />Your Code<br />Your Code<br />
    58. 58. Windows Azure Roles<br />RoleEntryPoint represents role, RoleEnvironmentrepresents Azure environment <br />OnStart for initialization <br />Run for work<br />GetHealthStatus to report application health<br />RoleEnvironmentChanging to respond to number of instances in the service<br />StatusCheck event to be removed from LB rotation<br />
    59. 59. Azure Storage Building Blocks<br />Storage<br />Queue<br />Blobs &Drives<br />Account<br />Tables<br />
    60. 60. Common Azure Pattern<br />Worker Role<br />Web Role<br />Queue<br />Storage<br />Blob<br />Storage<br />
    61. 61. Windows Azure Blobs<br />Provide simple interface for storing named files along with metadata for the file<br />Blobs<br />Containers<br />Photo1.png<br />Photo2.png<br />Pictures<br />Photo3.png<br />
    62. 62. Windows Azure Blob features<br />REST based API<br />http://myaccount.blob.core.windows.net/mycontainer/myblob<br />PutBlob, GetBlob, DeleteBlob, CopyBlob, SnapshotBlob, LeaseBlob, etc<br />Block Blob for streaming + commit-based writes<br />Sequence of blocks, size limit 200GB per blob<br />Page Blob for random read/write<br />Array of pages, size limit 1TB per blob<br />
    63. 63. Windows Azure Drives<br />Page Blob formatted as a NTFS single volume Virtual Hard Drive (VHD)<br />NTFS APIs providing durable file storage<br />Drives can be up to 1TB, up to 16 can be mounted<br />Can upload VHD via Page Blob then mount<br />Ease migration of existing Windows applications to Azure<br />Durability and survival of data on application failover or hardware failure<br />
    64. 64. Windows Azure Tables<br />Structured storage via entities, containing sets of properties<br />Entities<br />Tables<br />Genre = …<br />Title = …<br />Movies<br />Genre = …<br />Title = …<br />Actors<br />Name = …<br />DOB = …<br />
    65. 65. Windows Azure Tables<br />Provides Massively Scalable Structured Storage<br />Billions of entities (rows) and TBs of data<br />Familiar and Easy to use API<br />WCF Data Services, LINQ<br />Each entity can have up to 255 properties<br />PartitionKey & RowKey as key and index<br />Timestamp for optimistic concurrency<br />No fixed schema for all other properties<br />Property is stored as a <name, typed value> pair<br />
    66. 66. Partitions and Rows<br />
    67. 67. Partitions and Rows<br />Server A<br />Table = Movies<br />[MinKey - Comedy)<br />Server A<br />Table = Movies<br />Server B<br />Table = Movies<br />[Comedy - MaxKey)<br />
    68. 68. Queues<br />Provide reliable storage and delivery of messages<br />Messages<br />Queues<br />“Body1”<br />“Body2”<br />ThumbnailJobs<br />“Body3”<br />
    69. 69. Azure Features<br />
    70. 70. Service Management API<br />Provide Lights-Out Service Management <br />Manage services programmatically via REST-based API<br />X509 client certificates for authentication <br />Viewing, creating, deleting, swapping, modifying configuration settings, etc on deployments <br />
    71. 71. Windows Azure Diagnostics<br />42<br />Cloud is much harder than single server<br />Dynamic environment, no local access<br />Azure Diagnostics built for monitoring & data collection<br />Focus on what to collect and when<br />Designed for Azure <br />Based on standard APIs<br />Traces, logs, crash dumps, IIS logs, perfcounters, ETW, etc<br />Upload to Azure storage as required<br />Logging & Diagnostics<br />
    72. 72. Service Management CmdLets<br />PowerShell cmdlets wrapping Azure Service Management and Diagnostics API <br />Simple to script out deployments, upgrades, scaling<br /><ul><li>Deploy new services
    73. 73. Upgrade services
    74. 74. Manage storage accounts
    75. 75. Transfer diagnostics information
    76. 76. etc</li></li></ul><li>Service Upgrade Models<br />Rolling upgrade (aka “In-place”)<br />Roles are updated across update domains one at a time<br />Service remains available during upgrade<br />Real-time hot swap (aka “VIP Swap”)<br />Virtual IP swap between staging & production<br />Swap service endpoints of old/new version<br />Enables complex architectural changes<br />Planned downtime<br />Stop and replace service with new version<br />
    77. 77. Azure Content Delivery Network<br />Better performance and user experience by caching Azure blobs at strategically placed locations<br />18 locations globally (United States, Europe, Asia, Australia and South America) and growing <br />Content Delivery Network<br />Edge Location<br />Edge Location<br />pic1.jpg<br />Edge Location<br /> Windows Azure Blob Service<br />pic1.jpg<br />
    78. 78. The Fabric<br />
    79. 79. Fault Domains<br />
    80. 80. SQL Azure<br />
    81. 81. 49<br />“SQL Server in the Cloud”<br />“Database as a Service”<br />
    82. 82. SQL Azure vs SQL Server<br />Similarities<br />Scalable, reliable, robust, SQL Server technology foundation<br />Same SQL Server core database service<br />Same TDS access<br />Differences<br />Supports subset of SQL Server 2008 T-SQL <br />Limited to 1Gb or 10Gb database <br />Different pricing model<br />No Reporting Services, Analysis Services, etc<br />
    83. 83. T-SQL<br />
    84. 84. SQL Azure related projects<br />Codename "Houston" <br />Web management tooling<br />SQL Server Management Studio 2008 R2 works today<br />Codename "Dallas“<br />“Information as a service”<br />Codename "Sydney“<br />Punch holes through firewalls to integrate cloud and on-premise databases <br />SQL Azure Data Sync <br />For Sync Framework<br />
    85. 85. Codename “Dallas”<br />
    86. 86. Information as a Service<br />54<br />Data or functionality that is “of value to many” – enabling applications, reports, BI analysis, etc…<br />Examples include GIS/Spatial, traffic, movie show times, crime, real-estate sales, financial data, navigation, census data, reviews, etc…<br />Various Classifications: <br />Commercial: clean, supported, and regularly updated from ISVs and Content Providers <br />Trusted Public Domain: clean, unsupported data from academia and governments (Census, FDA, …)<br />Crowd Sourced: unreliable data in the public domain from anyone and everyone<br />
    87. 87. Information in the Cloud<br />Codename “Dallas”<br />Atom 1.0, RAW<br /><ul><li>Find
    88. 88. Subscribe
    89. 89. Interact</li></ul>Data Provider<br />Data Consumer<br />
    90. 90. Accessing Data from “Dallas”<br />
    91. 91. AppFabric<br />
    92. 92. “Infrastructure to help build and manage applications more easily” <br />Windows Server AppFabric<br />Caching capabilities (“Velocity”)<br />Workflow + service hosting (“Dublin”)<br />Windows Azure AppFabric (“.NET Services”) <br />Service Bus<br />Access Control<br />
    93. 93. Service Bus<br />59<br />Exposing internal applications on the Internet isn’t easy<br />Network address translation (NAT) and firewalls get in the way<br />The Service Bus:<br />Provides a cloud-based intermediary between clients and internal applications<br />Provides a service registry that clients can use to find the services they need<br />
    94. 94. Service Bus<br />60<br />
    95. 95. Access Control<br />61<br />Different organizations identify users through many different techniques<br />Applications can be faced with a confusing mess of security related code<br />The Access Control Service: <br />Implements a security token service (STS) in the cloud<br />It accepts one token and issues another<br />An administrator can define rules for how this claims transformation is done<br />
    96. 96. Access Control<br />62<br />
    97. 97. Commercial Information<br />
    98. 98. Azure Pricing<br />Money & Architecture are rarely divorced<br />Pricing for launch reflect our costs<br />Biggest cost is Windows Azure compute<br />c.f. Supermarket checkout model<br />Deals and bundles should follow<br />
    99. 99. Windows Azure Platform Consumption Prices <br />Pay as you go and grow for only what you use when you use it <br />Elastic, scalable, secure, & highly available automated service platform<br />Highly available, scalable, and self managed distributed database service<br />$9.99/month(up to 1 GB DB/month) <br />Compute<br />Web Edition<br />Per service hour<br />Per database/month <br />$0.12/hour<br />+ Variable Instance Sizes <br />Windows Azure platform AppFabric Service Bus & Access Control<br />Scalable, automated, highly available services for secure connectivity<br />Business Edition <br />Storage <br />Access Control<br />Service Bus<br />$99.99/month(up to 10 GB DB/month)<br />$0.015/10k Message Operations<br />Per GB stored & transactions<br />Per database/month <br />$0.015/10k Message Operations<br />Per Message Operation<br />Per Message Operation<br />$0.15 GB/month<br />$0.01/10K transactions <br />Prices shown in USD only<br />International prices are available<br />
    100. 100.  <br />Windows Azure Instance Sizes<br />Variable instance sizes to handle complex workloads of any size <br />X Large<br />Large <br />Medium<br />Small<br />$0.96 <br />$0.48 <br />$0.24 <br />$0.12 <br />Per service hour<br />Per service hour<br />Per service hour<br />Per service hour<br />Unit of Compute Defined <br />Equivalent compute capacity of a 1.6Ghz processor (on 64bit platform) <br />X-Large<br />Large <br />Medium<br />Small<br />8 x 1.6Ghz<br />4 x 1.6Ghz <br />2 x 1.6Ghz <br />1 x 1.6Ghz <br />(high IO)<br />(high IO) <br />(high IO)<br />(moderate IO) <br />14 GB memory<br />7.0 GB memory<br />3.5 GB memory <br />1.75 GB memory <br />2000 GB <br />(instance storage) <br />1000 GB storage<br />(instance storage)<br />500 GB storage<br />(instance storage) <br />250 GB storage<br />(instance storage) <br />
    101. 101. Windows Azure Platform Data Transfer <br />Priced per GB transferred/month (prices shown in USD) <br />North America Region <br />Asia Pacific Region<br />Europe Region<br />$0.10 GB Ingress<br />$0.15 GB Egress <br />$0.10 GB Ingress<br />$0.15 GB Egress <br />$0.30 GB Ingress<br />$0.45 GB Egress <br />N. Europe <br />Sub-region <br />N. Central – US <br />Sub-region <br />E. Asia<br />Sub-region <br />W. Europe <br />Sub-region <br />S. Central - US <br />Sub-region<br />S.E. Asia<br />Sub-region <br />No Charge For Off Peak Ingress Promotion (ends 6/30/10)<br />On-board to Windows Azure platform at no charge <br />Off peak times defined as: 10pm-6am Mon-Fri & from 10pm-Fri to 6am-Mon for weekends in each designated regional time zones below <br />Europe <br />WET = UTC<br />North America<br /> PST = UTC-8 <br />Asia Pacific<br />SST = UTC+8<br />
    102. 102. Azure Resources<br />
    103. 103. www.Azure.com<br />
    104. 104. © 2010 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.<br />The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.<br />
    1. A particular slide catching your eye?

      Clipping is a handy way to collect important slides you want to go back to later.