Cloud Models Virtualized Software as a Service (SaaS) Subscribe to web editions of traditional packaged applications Platform as a Service (PaaS) Write applications specifically to run on a Cloud platform Web Based Services Internet Web Sites, finished web experiences Application Components as a Service Building block services and features Infrastructure as a Service (IaaS) Host existing applications as Virtualized Machines in the Cloud
Off Premises On Premises Off Premises Homogeneous Heterogeneous Homogeneous OpEx CapEx OpEx Lease/Rent Own Lease/Rent Third Party Self Third Party Location Infrastructure Business Model Ownership Management
So, here are the various options Application runs on-premises Buy my own hardware, and manage my own data center Application runs on-premises
Bring my own machines, connectivity, software, etc.
Platform as a Service Your Application Cloud Computing Infrastructure DataSync AppMgmt Identity Services DatabaseServices WorkflowServices ConnectivityServices Building Block Services ConnectedDevices Foundation Services Compute Storage Mgmt Networking Deployment Operations Hardware
Windows Azure Platform – One Pager Fabric Fabric Controller Developer Experience Third party Cloud Web applications Use existing skills and tools. Compute Storage Windows Azure Platform Compute Management Connectivity Access control Storage Management Relational data SOAP/REST/XML Composite applications LOB Applications On-premises
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
Cloud infrastructure, built bottom up Developer Tools Programming Model Storage Abstractions: Blobs, Tables, … Service Management Load Balanced Partitions Replicated Data Store Service Model Processing; Service Health Model VM Image Deployment; Network Programming; VM Allocation Microsoft Global Datacenters
A Closer Look At Windows Azure Application C O N F I G Compute Storage Fabric Virtual Machine Images VM VM VM VM VM VM Windows Server 2008 64 Bit
Windows Azure Compute Web Role Worker Role Load Balancer HTTP(S) Endpoint Agent Agent Fabric
Windows Azure Storage Storage that is Durable Scalable (capacity and throughput) Highly Available Security Performance Efficient Rich Data Abstractions Service workflow: queues Large user data items: blobs Service state: tables Existing NTFS service migration : drives (new) Simple and Familiar Programming Interfaces REST (http & https) Supported Storage Client library (new) NTFS(new)
Windows Azure Data Storage Concepts Container Blobs Account Table Entities http://<account>.blob.core.windows.net/<container> Queue Messages http://<account>.table.core.windows.net/<table> http://<account>.queue.core.windows.net/<queue>
Azure Services Platform Roadmap Commercial Availability Free usage CTP Testing Version 1 features Launch Developer CTP for Services SDKs, and Tools Charged Usage Windows Azure .NET Services SQL Azure Feb 1st 2010 Nov 17th 2009 Dec 31st 2009 Jan 1st 2010
Setup & Resources Environment: Windows Vista SP1 (when installing on Windows Vista) / Windows 7 .NET Framework 3.5 SP1 IIS 7.0 (with ASP.NET and WCF HTTP Activation) Microsoft SQL Server Express 2005 or Microsoft SQL Server Express 2008 /R2 Windows PowerShell (optional) Microsoft .NET Framework 3.5 Service Pack 1 / .NET 4.0 Microsoft Visual Studio 2008 Service Pack 1 (Installer) / VS 2010 Beta 2 SDKs: Windows® Azure™ Software Development Kit (Nov 2009 CTP) Windows Azure Tools for Microsoft Visual Studio Nov 2009 CTP Azure services training kit Nov Update
Software + Services Azure Services Platform Developer Services SOAP SOAP REST REST Partner applications and Web Services XML XML Your cloud application Your software application End users Microsoft Visual Studio Development Environment Developers
2009 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. 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.