The Windows Azure Platform: A Perspectivedownload.microsoft.com/documents/uk/msdn/The... · Hosting...

Post on 08-Jun-2020

3 views 0 download

transcript

The Windows Azure Platform:

A Perspective

David Chappell

Chappell & Associates

Copyright © 2009 David Chappell

Goals

Describe the Windows Azure platform

Look at some typical scenarios for using the Windows Azure platform

Compare the Windows Azure platform with other cloud platforms

An Overview of the Windows Azure

Platform

The Windows Azure PlatformFormerly known as the Azure Services Platform

SQL Azure

Windows Azure

Cloud

Applications

.NET Services

On-Premises

Applications

OthersWindows

Windows AzureAn illustration

Fabric

Compute Storage

Config

Application

SQL Azure

Windows Azure

Applications

Applications

.NET Services

OthersWindows

Fabric

Storage

VMs VMs

Windows Azure Compute Service A closer look

Load Balancer

HTTP/

HTTPS

IIS

Web

Role

Instance

Worker

Role

Instance

Compute

Application

AgentAgent

Fabric

Compute

Windows Azure Storage ServiceA closer look

Blobs Tables

Storage

HTTP/

HTTPS

Queues

Fabric

Controller

Fabric

Agent

Storage

Fabric

Agent

Web Role

Instance

Worker Role

Instance

Windows Azure FabricAn illustration

SQL AzureFormerly known as SQL Services

Windows Azure

Applications

Applications

.NET Services

OthersWindows

SQL Azure Database

SQL Azure

Others (Future)

SQL Azure

SQL Azure Database

Others (Future)

SQL Azure DatabaseAn Illustration

Database

Database

Database

SQL Azure Database

TDS

Application

Database

Database

Database

Application

Application

Database

SQL Azure Database

SQL Azure DatabaseUsing one or multiple databases

Max database

size is 10 GB

.NET ServicesInfrastructure in the cloud

.NET Services

SQL Azure

Windows Azure

Applications

Applications

OthersWindows

.NET Services

?

Service Bus

Access Control

.NET Services

Service Bus

The problem: Exposing internal applications on the Internet isn’t easy

– Network address translation (NAT) and firewalls get in the way

The solution:

– Service Bus provides a cloud-based intermediary between clients and internal applications

– It also provides a service registry that clients can use to find the services they need

Access Control

Service Bus

Service Bus

Registry

Endpoints

Organization YOrganization X

Application Application

Illustrating Service Bus

2) Discover endpoints

1) Register endpoints

3) Access application

Windows Azure Platform Pricing (1)

Windows Azure

– Compute: $0.12/hour for each VM instance

– Storage:

• Data: $0.15/GB per month (tables, blobs)

• Access: $0.01/10,000 operations (tables, blobs, queues)

– Bandwidth: $0.10/GB in, $0.15/GB out

.NET Services

– Messages: $0.15/100,000 message operations

• Includes Service Bus messages and Access Control tokens

– Bandwidth: $0.10/GB in, $0.15/GB out

Windows Azure Platform Pricing (2)

SQL Azure Database

– Web Edition

• Data: $9.99/month for a database up to 1 GB

• Bandwidth: $0.10/GB in, $0.15/GB out

– Business Edition

• Data: $99.99/month for a database up to 10 GB

• Bandwidth: $0.10/GB in, $0.15/GB out

Using the Windows Azure

Platform: Scenarios

Applying Azure (1)Some characteristics of Azure-appropriate applications

Apps that need massive scale

Apps that need high reliability

Apps with variable load

Apps with a short or unpredictable lifetime

Applying Azure (2)Some characteristics of Azure-appropriate applications

Apps created by start-ups

– And internal start-ups

Apps that don’t fit well in an organization’s data center

– A firm with no data center

– Joint ventures

– A business unit that wishes to avoid its IT department

Apps that can benefit from external storage

Blobs Tables

Building on AzureA non-Azure app using Windows Azure storage

SQL Azure

On-Premises

or Hosted

Application

Web Role

Instance

Tables

Building on Azure A massively scalable web app exposed on the public Internet

Users

BlobsQueuesTables

Users

Worker Role

Instance

Web Role

Instance

Building on Azure A massively scalable web app with background processing

Web Role

Instance

SQL Azure

Users

Building on Azure A web app with relational storage

Web Role

Instance

SQL Azure

Users

Building on Azure A web app using cloud and on-premises data

Service Bus

On-premises

Database

User

Blobs

Web Role

Instance

Queues

Worker Role

Instance

Building on Azure A parallel processing application

Usage ScenariosISV (1)

ISV uses Windows Azure platform storage

– Example: Blobs for serving up videos

ISV builds a shared multi-tenant app running on Windows Azure, with usage-based pricing

– This is commonly called Software as a Service (SaaS)

– The customer pays the ISV, and the ISV pays Microsoft for Azure usage

Usage ScenariosISV (2)

ISV builds a single-tenant app for Windows Azure, then licenses copies to its customers

– The customer runs the app on Azure and pays Microsoft directly for the costs of running the app

A start-up builds a Web 2.0 application

– It can fail fast or scale fast

Usage ScenariosCustom software development firm

Firm builds a custom Windows Azure app for a client, and the client manages the app

– The client pays Microsoft directly for Windows Azure services

Firm builds a custom Windows Azure app for a client, then manages the app for the client

– The client pays the firm, and the firm pays Microsoft for the costs of Azure usage

Usage ScenariosEnterprise

Enterprise uses Windows Azure platform storage

– Example: Blobs for archiving data

– Example: SQL Azure Database for sharing data

Enterprise creates a customer-facing web app

– Perhaps connecting to on-premises data or apps via Service Bus

Enterprise builds a new enterprise application on Windows Azure and SQL Azure

The Windows Azure Platform and

Its Competitors

Hosting vs. the Windows Azure PlatformA comparison

Advantages of dedicated hosting

– Allows full control

– Resource costs might be lower

Advantages of Windows Azure

– No lead time and no commitment

– Admin costs might be lower

– Can grow and shrink resources more quickly

– Provides services designed for high reliability, e.g., the Fabric, built-in data replication

– Provides services designed for high scale, e.g., Windows Azure Storage tables

EC2 VM

Amazon Web Services

Linux or Windows

Amazon Web Services (AWS)

AWS Elastic Compute Cloud (EC2) provides virtual machines running Linux or Windows

Windows Azure Fabric

VM

Windows Server 2008

Windows Azure Platform

Your

DBMS

Windows Azure Storage

SQL Azure DatabaseYour

Application

AWS Storage

Your

Application

Amazon Web Services Windows Azure Platform

Blob storageSimple Storage Service

(S3)

Windows Azure Storage

Blobs

Scale-out storage SimpleDBWindows Azure Storage

Tables

Amazon Web Services Comparing storage options

Queues Simple Queue Service

(SQS)

Windows Azure Storage

Queues

Relational storage RDBMS running in a VM SQL Azure

Datastore, Task Lists

Google AppEngine

AppEngine runs Python and Java applications

Google AppEngine

Python/Java Runtime

Windows Azure Fabric

Windows Azure Platform

Windows Azure Storage

SQL Azure Database

Windows Server 2008

Worker

Role

Web

Role

Task

App

Google AppEngine Windows Azure Platform

Blob storage Datastore (Blob type)Windows Azure Storage

Blobs

Scale-out storage DatastoreWindows Azure Storage

Tables

Google AppEngineComparing storage options

Queues Task Queues Windows Azure Storage

Queues

Relational storage None SQL Azure

Force.com Database

Force.com and Windows Azure

Salesforce.com’s Force.com focuses on data-driven enterprise applications

Force.com

Force.com Runtime

Enterprise

Application

Windows Azure Fabric

Windows Azure Platform

Windows Azure Storage

SQL Azure Database

Windows Server 2008

Worker

Role

Web

Role

Conclusions

Cloud platforms are here

– Microsoft is placing a big bet with the Windows Azure platform

A new world is unfolding

– Prepare to be part of it

About the Speaker

David Chappell is Principal of Chappell & Associates (www.davidchappell.com) in San Francisco, California. Through his speaking, writing, and consulting, he helps people around the world understand, use, and make better decisions about new technology. David has been the keynote speaker for many events and conferences on five continents, and his seminars have been attended by tens of thousands of IT decision makers, architects, and developers in forty countries. His books have been published in a dozen languages and used regularly in courses at MIT, ETH Zurich, and other universities. In his consulting practice, he has helped clients such as Hewlett-Packard, IBM, Microsoft, Stanford University, and Target Corporation adopt new technologies, market new products, train their sales staffs, and create business plans. Earlier in his career, David wrote networking software, chaired a U.S. national standards working group, and played keyboards with the Peabody-award-winning Children’s Radio Theater. He holds a B.S. in Economics and an M.S. in Computer Science, both from the University of Wisconsin-Madison.

Copyright © 2009 David Chappell

Chappell & Associates

www.davidchappell.comSOAP/WS-*