Windows Azure
-
Upload
john-alioto -
Category
Technology
-
view
1.864 -
download
3
description
Transcript of Windows Azure
Windows Azure Platform
John AliotoArchitectMicrosoft [email protected]
What is cloud?
Public Cloud
Pool of computing resources offered by a vendor, typically
using a “pay as you go” model
Private Cloud
Pool of computing resources that lives within a self-managed
datacenter
Defining Cloud
Application runs using cloud
platform
Application runs on-premises
• Bring my own machines, connectivity, software, etc.
• Complete control and responsibility
• Upfront capital costs for the infrastructure
Application runs at a hoster
• Rent machines, connectivity, software
• Less control, but fewer responsibilities
• Lower capital costs, but pay for fixed capacity, even if idle
• Shared • multi-tenant
environment• Offers pool of
computing resources, abstracted from infrastructure
• Pay as you go
Private(On-Premise)
Infrastructure
(as a Service)
Platform(as a
Service)
Types of Clouds
Storage
Server HW
Networking
Servers
Databases
Virtualization
Runtimes
Applications
Security & Integration
Storage
Server HW
Networking
Servers
Databases
Virtualization
Runtimes
Applications
Security & Integration
Storage
Server HW
Networking
Servers
Databases
Virtualization
Runtimes
Applications
Security & Integration
You m
anage M
anaged b
y v
endor
Managed b
y v
endor
You m
anage
You m
anage
Types of Clouds
Operating System
Web Server
Runtimes
Your Application
OS Services
Unit of Deployment
ProvidedBy
AmazonEC2
Virtualized Instance
Hardware
Provided byWindows Azure
Deployment
Infrastructure as a Service (IaaS)
Types of Clouds
Platform as a Service (PaaS)
Operating System
Web Server
Runtimes
Your Application
OS ServicesProvided byGoogle
AppEngine
Virtualized Instance
Hardware
Unit of Deployment
Provided byWindows Azure
Deployment
Can swap out
Types of Clouds
Providedby
SaaS
Software as a Service (SaaS)
Operating System
Web Server
Runtimes
Your Application
OS Services
Virtualized Instance
Hardware
Economy of ScaleLow High
ControlHigh Low
Control Versus Economy of Scale
Economy of ScaleLow High
ControlHigh Low
This is Not New …
Build vs. Buy
Economy of ScaleLow High
ControlHigh Low
This is New …
On Premises vs. In the Cloud
Fundamentals
How Microsoft Views the Cloud
Scale Out/InAutomated
Service Management
High Availability Multi-Tenancy
Infrastructure
Business model
Ownership
HeterogeneousHomogeneous
OpEx CapEx
Lease/Rented Owned
Considerations
ManagementThird Party Self
Location On premisesOff premises
Sample Workloads for the Cloud
Usage
Com
pute
Time
Average
Inactivity
Period
• On & off workloads (e.g. batch job)• Over provisioned capacity is wasted • Time to market can be cumbersome
Com
pute
Time
“Unpredictable Bursting“
Average Usage
• Unexpected/unplanned peak in demand • Sudden spike impacts performance • Can’t over provision for extreme cases
Average UsageCom
pute
Time
“Growing Fast“
• Successful companies need to grow/scale • Keeping up w/ growth is big IT challenge • Complex lead time for deployment
Com
pute
Time
Average Usage
“Predictable Bursting“
• Services with micro seasonality trends • Peaks due to periodic increased demand• IT complexity and wasted capacity
“On and Off”
StorageDynamic Tabular Data
BlobsMessage Queues
Distributed File System
Content Distribution
Data Transact-SQL
Data Synchronizati
on
Relational Database
ADO.NET, ODBC, PHP
Connectivity
RegistryOn-Premise
BridgingService Bus
SecurityClaims-Based
Identity
Federated Identities
Secure Token
Service
Declarative Policies
Application Services
ApplicationMarketplac
e
Information Marketplac
e
Personal Data
Repository
Frameworks
Workflow Hosting
Distributed Cache
Services Hosting
Windows Azure Platform
Compute C / C++Win32 VHD
Compute
Storage
Data SQL Azure Data Sync
Connectivity
Project “Sydney”
Security “Geneva”
Application Services
Frameworks
“Dublin” “Velocity”
Windows Azure Platform
Service Bus
Access Control
Table Storage
Blob Storage
Queue DriveContent Delivery Network
Platform Services
Software Services
Application Services
Infrastructure Services
The Microsoft CloudCategories of Services
The Microsoft Cloud~100 Globally Distributed Data Centers
Quincy, WA Chicago, IL San Antonio, TX Dublin, Ireland Generation 4 DCs
Large Scale Datacenters
The Microsoft CloudData Center Infrastructure
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.
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.
•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
Operating system as an online service; with automated provisioning and services management
Maintenance OS
Host VMGuest VM
1Host VM
Guest VM 3Guest VM 2Guest VM 1
Host VM
SQL Azure
• 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
DBA role places more focus on policy/logical management
Scalability and Availability: fabric, failover, replication, and load balancing
VM 5SQL Server
SQL DBUserDB1
UserDB2
UserDB3
UserDB4
SQL Azure database provisioning (databases, accounts, roles, …, metering, and billing)
VM 6SQL Server
SQL DBUserDB1
UserDB2
UserDB3
UserDB4
VM 4SQL Server
SQL DBUserDB1
UserDB2
UserDB3
UserDB4
>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
Highly available, scalable, and consistent distributed relational database service; with geo-replication and geo-location of data
Windows Azure platform AppFabric
• 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
Internet-scoped overlay-network bridging across IP NATs and firewalls with federated access control
Sign up at the Windows Azure Platform developers’ portal
Windows Azure accessDeveloper tools White papersSample applications
Plan pilot applications, proofs of concept, and architectural design sessions with Windows Azure partners
http://www.azure.com
Service Instance
Worker Role
Service Instance
Web Role
.NET in Windows Azure
Fabric Controller
Load Balancer
TableStorage
BlobStorage
Queue
ServiceBus
Access Control
SQL Database
bind port(x)
http://instance:x
http://instance:y
http://app:80
default.aspx
Web Role and Worker Role
IISRoleEntry
Point
Service Instance
Service Instance
Web Role
PHP in Windows Azure
Fabric Controller
Load Balancer
TableStorage
BlobStorage
Queue
ServiceBus
Access Control
SQL Database
bind port(x)
http://instance:x
http://instance:y
http://app:80
index.php
Web Role and IIS/FastCGI with Native Runtime
php-cgi
IIS
FastCGI
Service Instance
Service Instance
Worker Role
Java and Tomcat in Windows Azure
RoleEntry Point
Sub-Process
JVM
Tomcat
server.xmlCatalina
Fabric Controller
Load Balancer
TableStorage
BlobStorage
Queue
ServiceBus
Access Control
SQL Database
new Process()
bind port(x)
http://instance:x
http://instance:y
listen port(x)
http://app:80
getruntimeinfo
index.jsp
Worker Role and Sub-Process Invoking Native Code
[email protected]/johnalioto
Thank you
© 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.