2. Your Own Data Center Someone Else’s Data Center Many Views of Cloud Computing Use (services, information, etc.) Build (applications, data, etc.) Host (software, database, etc.)
3. Private Cloud Public Cloud Many Views of Cloud Computing Service Delivery Models Software(as-a-service) Platform(as-a-service) Infrastructure(as-a-service) Community Dedicated Hybrid Cloud Cloud Deployment Models
4. (On-Premise) Infrastructure (as a Service) Platform (as a Service) Service Delivery Models Software (as a Service) You manage Applications Applications Applications Applications You manage Data Data Data Data Runtime Runtime Runtime Runtime Managed by vendor Middleware Middleware Middleware Middleware You manage Managed by vendor O/S O/S O/S O/S Managed by vendor Virtualization Virtualization Virtualization Virtualization Servers Servers Servers Servers Storage Storage Storage Storage Networking Networking Networking Networking
6. IT as a Strategic Value Enabler Hybrid Public Private
7. Microsoft Cloud Strategy Extendour enterprise software that runs core functions for business today to the cloud at internet scale Developinnovative new services that expand the way end users, developers, and consumers can access and utilize the information they need, when they need it Focus IT resources on business innovation; reduce complexity Familiar, consistent, and unified development platform and tools Interoperability support for heterogeneous platforms Blended and hybrid solutions spanning on-premise and cloud-based options Simplified management with financially-backed uptime guarantees
8. Fundamentals Automated Service Management High Availability Scale out Multi-tenancy Considerations Location On premises Off premises Infrastructure Heterogeneous Homogeneous OpEx CapEx Business model Lease/Rented Owned Ownership Third Party Self Management Microsoft Cloud Strategy
9. A Hybrid World Scalability & Availability Consistency & Control On-Premise Public Cloud Manageability Redundancy & Resiliency Global Reach Security & Privacy Customizability Ease of Provisioning Abstract/Shared Resources Dedicated Resources Microsoft Cloud Strategy Homogeneity Heterogeneity
21. The Microsoft Cloud Globally Distributed Data Centers Quincy, WA Chicago, IL San Antonio, TX Dublin, Ireland Generation 4 DCs
22. The Microsoft Cloud Highly available, scalable, and consistent application fabric environment
23. Categories of Services Application Services Software Services Platform Services Infrastructure Services The Microsoft Cloud
24. Application Marketplace Information Marketplace Personal Data Repository Application Services Workflow Hosting Distributed Cache Services Hosting Frameworks Claims-Based Identity Federated Identities Secure Token Service Declarative Policies Security Registry On-Premise Bridging Service Bus Connectivity Transact-SQL Data Synchronization Relational Database ADO.NET, ODBC, PHP Data Compute C / C++ Win32 VHD Dynamic Tabular Data Blobs Message Queues Distributed File System Content Distribution Storage Windows Azure Platform
25. Application Services “Dublin” “Velocity” Frameworks “Geneva” Security Access Control Project “Sydney” Connectivity Service Bus SQL Azure Data Sync Data Compute Windows Azure Platform Table Storage Blob Storage Queue Drive Content Delivery Network Storage
62. Windows Azure Compute – instance types: Web Role & Worker Role. Windows Azure applications are built with web role instances, worker role instances, or a combination of both. Operating system as an online service; with automated provisioning and services management Development, service hosting, & management environment .NET, Java PHP, Python, Ruby, native code (C/C++, Win32, etc.) ASP.NET providers, FastCGI, memcached, MySQL, Tomcat Full-trust – supports standard languages and APIs Secure certificate store Management API’s, and logging and diagnostics systems Multiple roles – Web, Worker, Virtual Machine (VHD) Multiple VM sizes 1.6 GHz CPU x64, 1.75GB RAM, 100Mbps network, 250GB volatile storage Small (1X), Medium (2X), Large (4X), X-Large (8X) In-place rolling upgrades, organized by upgrade domains Walk each upgrade domain one at a time Each instance runs on its own VM (virtual machine), replicated as needed The Fabric Controller communicates with every server within the Fabric. It manages Windows Azure, monitors every application, decides where new applications should run – optimizing hardware utilization. Guest VM 3 Guest VM 2 Guest VM 1 Host VM Maintenance OS Guest VM 1 Host VM Host VM
63. SQL Azure Highly available, scalable, and consistent distributed relational database service; with geo-replication and geo-location of data VM 5 VM 6 VM 4 DBA role places more focus on policy/logical management SQL Server SQL Server SQL Server SQL DB SQL DB SQL DB Shared infrastructure at SQL database and below Each user database is replicated to one or more servers (configurable based on SLA) Client requests are routed to current “primary server” for read and write operations (based on SQL session) Security, lockdown and isolation enforced in SQL tier Highly scalable and state-of-the-art HA technology Automatic failure detection; client request re-routed to new primary on failure High SLA guarantee using logical replication (hot standby replicas) Automatic management, self-healing and load balancing across shared resource pool Security Model Uses regular SQL security model Authenticate logins, map to users and roles Authorize users and roles to SQL objects Supports standard SQL logins Logins are username + password strings Service enforces use of SSL to secure credentials Upcoming support for AD Federation, WLID, etc. Connectivity Model Connect using common client libraries ADO.NET, OLE DB, ODBC, etc. Clients connect to a database directly Cannot hop across DBs UserDB1 UserDB2 UserDB3 UserDB4 UserDB1 UserDB2 UserDB3 UserDB4 UserDB1 UserDB2 UserDB3 UserDB4 SQL Azure database provisioning (databases, accounts, roles, …, metering, and billing) Scalability and Availability: fabric, failover, replication, and load balancing
64. Windows Azure platform AppFabric Internet-scoped overlay-network bridging across IP NATs and firewalls with federated access control Service Bus Expose RESTful or SOAP services over the internet through firewall and NAT boundaries Communicate bi-directionally between apps and services in an interoperable manner Choose relays, queues, routers, and other message patterns and types Scale out naturally and reliably as apps and services grow Access Control Integrate authorization into apps to control “what users are allowed to do” Federate with multiple identity systems across organizations and ID providers Easily apply fine-grained access control rules Secure Service Bus communications Scale out naturally and reliably as apps and services grow
65. Web Role and Worker Role Service Instance Service Instance Worker Role Web Role .NET in Windows Azure default.aspx RoleEntry Point IIS bind port(x) SQL Database http://instance:x http://instance:y Service Bus Access Control http://app:80 Fabric Controller Load Balancer Table Storage Blob Storage Queue
66. Web Role and IIS/FastCGI with Native Runtime Service Instance Service Instance Web Role PHP in Windows Azure php -cgi index.php FastCGI IIS bind port(x) SQL Database http://instance:x http://instance:y Service Bus Access Control http://app:80 Fabric Controller Load Balancer Table Storage Blob Storage Queue
67. Worker Role and Sub-Process Invoking Native Code Service Instance Java and Tomcat in Windows Azure listen port(x) Service Instance Worker Role Sub-Process Tomcat server.xml Catalina index.jsp new Process() RoleEntry Point bind port(x) get runtime info SQL Database JVM http://instance:x http://instance:y Service Bus Access Control http://app:80 Fabric Controller Load Balancer Table Storage Blob Storage Queue
92. Global data centersLower costs Efficiency Stay Competitive Innovation Generate New Revenue Quickly Agility Reduced Risk Reliability
93. Generalized Application Model Always Available Service-Oriented Model-Driven Scale-Out Staged Production Self-Service Failure Resilient Federated Multi-Tenant Elastic Microsoft Cloud Strategy
110. After 6/30/10 quantities may be reduced NO-COST Windows Azure Compute 750 hrs Storage 10 GB Storage Transaction 1M SQL Azure - 3 Web DB (1 GB) Service Bus and Access Control Service Messages 1 Million Data Transfer 7GB In/14GB Out
155. Application Patterns Composite Services Application User Silverlight Application Web Browser Mobile Browser WPF Application ASP.NET (Web Role) Web Svc (Web Role) Jobs (Worker Role) ASP.NET (Web Role) ASP.NET (Web Role) ASP.NET (Web Role) ASP.NET (Web Role) ASP.NET (Web Role) ASP.NET (Web Role) Private Cloud Public Services ASP.NET (Web Role) ASP.NET (Web Role) ASP.NET (Web Role) ASP.NET (Web Role) ASP.NET (Web Role) ASP.NET (Web Role) Enterprise Application Application Service Enterprise Web Svc Data Service Table Storage Service Blob Storage Service Queue Service Enterprise Data Storage Service Identity Service Enterprise Identity Service Bus Access Control Service Workflow Service User Data Application Data Reference Data
156. Application Patterns Cloud Agent Application User Silverlight Application Web Browser Mobile Browser WPF Application ASP.NET (Web Role) Web Svc (Web Role) Jobs (Worker Role) ASP.NET (Web Role) ASP.NET (Web Role) ASP.NET (Web Role) ASP.NET (Web Role) ASP.NET (Web Role) ASP.NET (Web Role) Private Cloud Public Services ASP.NET (Web Role) ASP.NET (Web Role) ASP.NET (Web Role) ASP.NET (Web Role) ASP.NET (Web Role) ASP.NET (Web Role) Enterprise Application Application Service Enterprise Web Svc Data Service Table Storage Service Blob Storage Service Queue Service Enterprise Data Storage Service Identity Service Enterprise Identity Service Bus Access Control Service Workflow Service User Data Application Data Reference Data
157. Application Patterns B2B Integration Application User Silverlight Application Web Browser Mobile Browser WPF Application ASP.NET (Web Role) Web Svc (Web Role) Jobs (Worker Role) ASP.NET (Web Role) ASP.NET (Web Role) ASP.NET (Web Role) ASP.NET (Web Role) ASP.NET (Web Role) ASP.NET (Web Role) Private Cloud Public Services ASP.NET (Web Role) ASP.NET (Web Role) ASP.NET (Web Role) ASP.NET (Web Role) ASP.NET (Web Role) ASP.NET (Web Role) Enterprise Application Application Service Enterprise Web Svc Data Service Table Storage Service Blob Storage Service Queue Service Enterprise Data Storage Service Identity Service Enterprise Identity Service Bus Access Control Service Workflow Service User Data Application Data Reference Data
158. Application Patterns Grid / Parallel Computing Application User Silverlight Application Web Browser Mobile Browser WPF Application ASP.NET (Web Role) Web Svc (Web Role) Jobs (Worker Role) ASP.NET (Web Role) ASP.NET (Web Role) ASP.NET (Web Role) ASP.NET (Web Role) ASP.NET (Web Role) ASP.NET (Web Role) Private Cloud Public Services ASP.NET (Web Role) ASP.NET (Web Role) ASP.NET (Web Role) ASP.NET (Web Role) ASP.NET (Web Role) ASP.NET (Web Role) Enterprise Application Application Service Enterprise Web Svc Data Service Table Storage Service Blob Storage Service Queue Service Enterprise Data Storage Service Identity Service Enterprise Identity Service Bus Access Control Service Workflow Service User Data Application Data Reference Data
159. Application Patterns Hybrid Enterprise Application User Silverlight Application Web Browser Mobile Browser WPF Application ASP.NET (Web Role) Web Svc (Web Role) Jobs (Worker Role) ASP.NET (Web Role) ASP.NET (Web Role) ASP.NET (Web Role) ASP.NET (Web Role) ASP.NET (Web Role) ASP.NET (Web Role) Private Cloud Public Services ASP.NET (Web Role) ASP.NET (Web Role) ASP.NET (Web Role) ASP.NET (Web Role) ASP.NET (Web Role) ASP.NET (Web Role) Enterprise Application Application Service Enterprise Web Svc Data Service Table Storage Service Blob Storage Service Queue Service Enterprise Data Storage Service Identity Service Enterprise Identity Service Bus Access Control Service Workflow Service User Data Application Data Reference Data
160. Windows Azure Compute Development, service hosting, & management environment .NET, Java PHP, Python, Ruby, native code (C/C++, Win32, etc.) ASP.NET providers, FastCGI, memcached, MySQL, Tomcat Full-trust – supports standard languages and APIs Secure certificate store Management API’s, and logging and diagnostics systems Multiple roles – Web, Worker, Virtual Machine (VHD) Multiple VM sizes 1.6 GHz CPU x64, 1.75GB RAM, 100Mbps network, 250GB volatile storage Small (1X), Medium (2X), Large (4X), X-Large (8X) In-place rolling upgrades, organized by upgrade domains Walk each upgrade domain one at a time Compute
161. Windows Azure Diagnostics Configurable trace, performance counter, Windows event log, IIS log & file buffering Local data buffering quota management Query & modify from the cloud and from the desktop per role instance Transfer to storage scheduled & on-demand Filter by data type, verbosity & time range Compute
162. Windows Azure Storage Rich data abstractions – tables, blobs, queues, drives, CDN Capacity (100TB), throughput (100MB/sec), transactions (1K req/sec) High accessibility Supports geo-location Language & platform agnostic REST APIs URL: http://<account>.<store>.core.windows.net Client libraries for .NET, Java, PHP, etc. High durability – data is replicated 3 times within a cluster, and (Feb 2010) across datacenters High scalability – data is automatically partitioned and load balanced across servers Storage Storage
163. Windows Azure Table Storage Designed for structured data, not relational data Data definition is part of the application A Table is a set of Entities (records) An Entity is a set of Properties (fields) No fixed schema Each property is stored as a <name, typed value> pair Two entities within the same table can have different properties No schema is enforced Table Storage
164. Windows Azure Blob Storage Storage for large, named files plus their metadata Block Blob Targeted at streaming workloads Each blob consists of a sequence of blocks Each block is identified by a Block ID Size limit 200GB per blob Page Blob Targeted at random read/write workloads Each blob consists of an array of pages Each page is identified by its offset from the start of the blob Size limit 1TB per blob Blob Storage
165. Windows Azure Queue Performance efficient, highly available and provide reliable message delivery Asynchronous work dispatch Inter-role communication Polling based model; best-effort FIFO data structure Queue operations Create Queue Delete Queue List Queues Get/Set Queue Metadata Message operations Add Message Get Message(s) Peek Message(s) Delete Message Queue
166. Windows Azure Drive Provides a durable NTFS volume for Windows Azure applications to use Use existing NTFS APIs to access a durable drive Durability and survival of data on application failover Enables migrating existing NTFS applications to the cloud Drives can be up to 1TB; a VM can dynamically mount up to 8 drives A Windows Azure Drive is a Page Blob Example, mount Page Blob as X:br />http://<account>.blob.core.windows.net/<container>/<blob> All writes to drive are made durable to the Page Blob Drive made durable through standard Page Blob replication Drive
167. Windows Azure Content Delivery Network Provides high-bandwidth global blob content delivery 18 locations globally (US, Europe, Asia, Australia and South America), and growing Blob service URL vs. CDN URL Blob URL: http://<account>.blob.core.windows.net/ CDN URL: http://<guid>.vo.msecnd.net/ Support for custom domain names Access details Blobs are cached in CDN until the TTL passes Use per-blob HTTP Cache-Control policy for TTL (new) CDN provides only anonymous HTTP access Content Delivery Network
168. SQL Azure Highly available, scalable, and consistent distributed relational database; geo-replication and geo-location of data Relational database, provided as a service Highly symmetrical development and tooling experience (use TDS protocol and T-SQL) Highly scaled out, on commodity hardware Built on the SQL Server technology foundation Editions: Web (1GB), Business (10GB) Data
169. SQL Azure Data Sync Tools for data synchronization with SQL Azure Connect on-premises apps with the cloud Create cached-mode clients Built on Microsoft Sync Framework and ADO.NET Sync Services SQL Azure Data Sync
170. AppFabric Service Bus Securely connect applications Over the internet Across any network topology Across organizational boundaries Primary application patterns Eventing– notify applications and/or devices Service Remoting– securely project on-premises services out to the cloud Tunneling– app-to-app communication with NAT/Firewall traversal Connectivity Service Bus
171. AppFabric Access Control Provides outsourcing of claims-based access control for REST web services Key capabilities: Usable from any platform Low friction way to onboard new clients Integrates with ADFS v2 Supports OAuth WRAP / SWT Enables simple delegation Used today by Service Bus and “Dallas” Security Access Control
172. “Geneva” Next generation identity and access management platform Claims-based access and single sign-on for on-premise and cloud-based applications in the enterprise, across organizations, and on the Web “Geneva Framework“ (Windows Identity Foundation) Provides .NET development tools, which includes pre-built, user-access logic that externalizes authentication from applications. It helps developers build claims-aware .NET applications, plus build custom security token services (STS) “Geneva Server“ An STS for IT that issues and transforms claims and other tokens, manages user access and enables federation and access management for simplified single sign-on “Geneva” “CardSpace Geneva” For helping users navigate between multiple logons for simplified single sign-on while providing complete user control and transparency for how personal information is shared
173. “Velocity” Distributed in-memory cache platform for developing scalable, available, and highly-performance applications Caches any serializable CLR object and provides access through simple cache APIs Supports enterprise scale: tens to hundreds of computers Configurable to run as a service accessed over the network “Velocity” Supports dynamic scaling and automatic load balancing Supports continuous availability of cached data by storing copies on separate cache hosts Integration with administration and monitoring tools such as Event Tracing for Windows (ETW) and System Center.
174. “Dublin” Evolution of WAS/IIS and Windows App Server role to run and manage WF and WCF services Enhances the hosting of Windows Communication Foundation (WCF) and Windows Workflow (WF) in the Windows Process Activation Service (WAS) Simplified deployment and management of WCF and WF services hosted in WAS Configuration of persistence for durable workflows Customizable tracking profiles with dedicated, queryable storage for tracked data Customizable monitoring of hosted services “Dublin”
175. “Dallas” Information-as-a-service Discover, acquire, and consume structured, blob, and real-time data to power any application – on any platform and any screen size Brokerage Business – partner driven ecosystem and global reach to deliver data and functionality to developers and information workers Analytics and Reporting – single click analysis to augment private data with public data Built on Windows Azure and SQL Azure
Hinweis der Redaktion
Microsoft sees four fundamental requirements for any cloud computing offering. First it must have the ability to scale as customer demand requires. Second, it must provide automated service management, delivering more than just disk space and processors; it must have but the to seamlessly failover scale up scaled down and optimize management of the applications and services it hosts. Third must be highly available, with the highest level of reliability as well as redundancy and fail-over. Finally a must for multi-tenancy, concurrent hosting of multiple customers to optimize utilization and control costs.Beyond these fundamental requirements, there are also a number of considerations -- variables -- for cloud computing platforms. They may be located on premises (within IT data center) or remotely hosted by the provider and accessed over the Internet. The infrastructure they provide may support a single type of technology, or have the ability to host heterogeneous, interoperable technologies. The business model costs might be optimized for operating expenses or towards capital investment. The hardware and networking resources might be leased or owned. And the management of the IT systems might be self directed by the business or performed by a third party, perhaps cloud computing platform provider.
From the customer’s perspective, SQL Azure provides logical databases for application data storage. In reality, each customer’s data is actually stored in multiple SQL Server databases, which are distributed across multiple physical servers. Many customers may share the same physical database, but the data is presented to the customer through a logical database that abstracts the physical storage architecture and uses automatic load balancing and connection routing to access the distributed data. Security and isolation is managed automatically.The key impact of this model for the customer is a move from managing physical servers to focus on logical management of data storage through policies.