65
A Practical Look at Architectural Challenges and Opportunities in the Cloud Anna Liu Manager – Emerging Technologies Microsoft Australia

Thinking Strategically about Cloud Computing

Embed Size (px)

DESCRIPTION

By Anna Liu, Microsoft

Citation preview

Page 1: Thinking Strategically about Cloud Computing

A Practical Look at Architectural Challenges and Opportunities in the Cloud

Anna LiuManager – Emerging TechnologiesMicrosoft Australia

Page 2: Thinking Strategically about Cloud Computing

Code: How?Architecture: What/When?

Business: Why?

Page 3: Thinking Strategically about Cloud Computing
Page 4: Thinking Strategically about Cloud Computing

1 gallon of fuel -> ¼ ton of ‘freight’ ; 20 miles 1 gallon of fuel -> 1 ton of freight ; 436 miles

Economy of ScaleLow High

ControlHigh Low

butCan mostly go from A to BLeaves 2x day at 9.12am and 11.14pm

butCan goes anywhere there is a roadReady to go anytime

Page 5: Thinking Strategically about Cloud Computing

Economy of ScaleLow High

ControlHigh Low

Build vs. Buy

Page 6: Thinking Strategically about Cloud Computing

Economy of ScaleLow High

ControlHigh Low

On premises vs. in the cloud

Page 7: Thinking Strategically about Cloud Computing

Application runs on-premises

Buy my own hardware, and

manage my own data center

Application runs on-premises

Buy my own hardware, and

manage my own data center

Application runs at a hoster

Co-locationor

Managed servers

Application runs at a hoster

Co-locationor

Managed servers

Application runs using cloud

services

“cloud fabric”(elastic,

infini-scale)

Application runs using cloud

services

“cloud fabric”(elastic,

infini-scale)

Economy of ScaleLow High

ControlHigh Low

Page 8: Thinking Strategically about Cloud Computing

“Packaged”Application

An application that I buy “off the

shelf” and run myself

“Packaged”Application

An application that I buy “off the

shelf” and run myself

Self Hosted “Home Built”

An application that I develop and

run myself

Self Hosted “Home Built”

An application that I develop and

run myself

Build

vs.

Buy

Build

Buy

Hosted “Home Built”

An application that I develop

myself, but run at a hoster

Hosted “Home Built”

An application that I develop

myself, but run at a hoster

Hosted “Packaged”

An application that I buy “off the

shelf” and then run at a hoster

Hosted “Packaged”

An application that I buy “off the

shelf” and then run at a hoster

Cloud Platform

An application that I develop

myself, but run in the cloud

Cloud Platform

An application that I develop

myself, but run in the cloud

“Software as a Service”

A hosted application that

I buy from a vendor

“Software as a Service”

A hosted application that

I buy from a vendor

On premises vs. CloudOn premises Cloud

Page 9: Thinking Strategically about Cloud Computing

Hosted “Home Built”

An application that I develop

myself, but run at a hoster

Hosted “Home Built”

An application that I develop

myself, but run at a hoster

Cloud Platform

An application that I develop

myself, but run in the cloud

Cloud Platform

An application that I develop

myself, but run in the cloud

“Packaged”Application

An application that I buy “off the

shelf” and run myself

“Packaged”Application

An application that I buy “off the

shelf” and run myself

Hosted “Packaged”

An application that I buy “off the

shelf” and then run at a hoster

Hosted “Packaged”

An application that I buy “off the

shelf” and then run at a hoster

“Home Built”Application

An application that I develop and run myself

“Home Built”Application

An application that I develop and run myself

Build

vs.

Buy

Build

Buy

On premises vs. CloudOn premises Cloud

Maximum Economy of Scale

All acceptable options (trade off)

Maximum Control

“Software as a Service”

A hosted application that

I buy from a vendor

“Software as a Service”

A hosted application that

I buy from a vendor

Page 10: Thinking Strategically about Cloud Computing

“Packaged”Application“Packaged”Application

“Home Built”Application

“Home Built”Application

Hosted “Home Built”

Hosted “Home Built”

Hosted “Packaged”

Hosted “Packaged”

“Software as a Service”

“Software as a Service”

Cloud PlatformCloud Platform

Clinical TrialClinical Trial

Molecule ResearchMolecule Research

HR SystemHR System

EmailEmail

Issue TrackingIssue Tracking

ERPERP

“Too costly to run this myself, but I’ve made too many customizations”

“Too costly to run this myself, but I’ve made too many customizations”

Build

vs.

Buy

Build

Buy

On premises vs. CloudOn premises Cloud

Page 11: Thinking Strategically about Cloud Computing

“Packaged”Application“Packaged”Application

“Home Built”Application

“Home Built”Application

Hosted “Home Built”

Hosted “Home Built”

Hosted “Packaged”

Hosted “Packaged”

“Software as a Service”

“Software as a Service”

Cloud PlatformCloud Platform

Clinical TrialClinical Trial

Molecule ResearchMolecule Research

HR SystemHR System

EmailEmail

Issue TrackingIssue Tracking

ERPERP

“CRM and Email are commodity services – They have no customizations, and it’s cheaper for someone else to run these”

“CRM and Email are commodity services – They have no customizations, and it’s cheaper for someone else to run these”

Build

vs.

Buy

Build

Buy

On premises vs. CloudOn premises Cloud

Page 12: Thinking Strategically about Cloud Computing

“Packaged”Application“Packaged”Application

Hosted “Home Built”

Hosted “Home Built”

Hosted “Packaged”

Hosted “Packaged”

ERPERP

“Home Built”Application

“Home Built”Application

“Software as a Service”

“Software as a Service”

Cloud PlatformCloud Platform

Clinical TrialClinical Trial

Molecule ResearchMolecule Research

HR SystemHR System

EmailEmail

Issue TrackingIssue Tracking

“I can’t afford to maintain this old HR application written in VB – it’s driving me mad!”

“I can’t afford to maintain this old HR application written in VB – it’s driving me mad!”

“…but due to privacy issues, I prefer keeping my HR data on-premises”

“…but due to privacy issues, I prefer keeping my HR data on-premises”

Build

vs.

Buy

Build

Buy

On premises vs. CloudOn premises Cloud

Page 13: Thinking Strategically about Cloud Computing

Hosted “Home Built”

Hosted “Home Built”

Hosted “Packaged”

Hosted “Packaged”

ERPERP

“Packaged”Application“Packaged”Application

“Home Built”Application

“Home Built”Application

“Software as a Service”

“Software as a Service”

Cloud PlatformCloud Platform

Clinical TrialClinical Trial

Molecule ResearchMolecule Research

EmailEmail

Issue TrackingIssue Tracking

HR SystemHR System

“I wish I had access to cheaper compute and storage when I need it”

“I wish I had access to cheaper compute and storage when I need it”

Build

vs.

Buy

Build

Buy

On premises vs. CloudOn premises Cloud

Page 14: Thinking Strategically about Cloud Computing

Hosted “Home Built”

Hosted “Home Built”

Hosted “Packaged”

Hosted “Packaged”

ERPERP

“Packaged”Application“Packaged”Application

“Home Built”Application

“Home Built”Application

“Software as a Service”

“Software as a Service”

Cloud PlatformCloud Platform

Clinical TrialClinical Trial

Molecule ResearchMolecule Research

EmailEmail

Issue TrackingIssue Tracking

HR SystemHR System

“THIS is where I want to spend my IT resources – I’m going to double down on this application!”

“THIS is where I want to spend my IT resources – I’m going to double down on this application!”

Build

vs.

Buy

Build

Buy

On premises vs. CloudOn premises Cloud

Page 15: Thinking Strategically about Cloud Computing

Hosted “Home Built”

Hosted “Home Built”

Hosted “Packaged”

Hosted “Packaged”

ERPERP

“Packaged”Application“Packaged”Application

“Home Built”Application

“Home Built”Application

“Software as a Service”

“Software as a Service”

Cloud PlatformCloud Platform

Clinical TrialClinical Trial

Molecule ResearchMolecule Research

EmailEmail

Issue TrackingIssue Tracking

HR SystemHR System

Build

vs.

Buy

Build

Buy

On premises vs. CloudOn premises Cloud

Page 16: Thinking Strategically about Cloud Computing

Hosted “Home Built”

Hosted “Home Built”

Hosted “Packaged”

Hosted “Packaged”

ERPERP

“Packaged”Application“Packaged”Application

“Home Built”Application

“Home Built”Application

“Software as a Service”

“Software as a Service”

Cloud PlatformCloud Platform

Clinical TrialClinical Trial

Molecule ResearchMolecule Research

EmailEmail

Issue TrackingIssue Tracking

HR SystemHR System

Build

vs.

Buy

Build

Buy

On premises vs. CloudOn premises Cloud

“Run On Premises”Control SLA of Applications

Page 17: Thinking Strategically about Cloud Computing

Hosted “Home Built”

Hosted “Home Built”

Hosted “Packaged”

Hosted “Packaged”

ERPERP

“Packaged”Application“Packaged”Application

“Home Built”Application

“Home Built”Application

“Software as a Service”

“Software as a Service”

Cloud PlatformCloud Platform

Clinical TrialClinical Trial

Molecule ResearchMolecule Research

EmailEmail

Issue TrackingIssue Tracking

HR SystemHR System“Home Built”

Control Features of Applications

Page 18: Thinking Strategically about Cloud Computing
Page 19: Thinking Strategically about Cloud Computing

“Packaged”Application“Packaged”Application

“Home Built”Application

“Home Built”Application

Clinical TrialClinical Trial

Molecule ResearchMolecule Research

HR SystemHR System

EmailEmail

CRMCRM

ERPERP

Hosted “Home Built”

Hosted “Packaged”

“Software as a Service”

Cloud Platform

“Crossing corporate boundaries!”“Crossing corporate boundaries!”

Page 20: Thinking Strategically about Cloud Computing
Page 21: Thinking Strategically about Cloud Computing

Identity Challenges

Access ControlAuthN, SSO, AuthZ

Identity LifecycleIdentity PortabilityInteroperability

Page 22: Thinking Strategically about Cloud Computing

Identity Solution

Federated IDClaim based Access Control

accesscontrol.windows.netGeneva FxGeneva ServerCardspace

Page 23: Thinking Strategically about Cloud Computing

Monitoring and Management Challenges

SLA MonitoringHalting/Pausing/Throttling…Trigger action

e.g. Backup

Page 24: Thinking Strategically about Cloud Computing

Management Solution

Programmatic access to Health ModelSynthetic TxManagement APIsFirewall friendly protocols

SCOMMMCPowershell

Page 25: Thinking Strategically about Cloud Computing

Application Integration

UI IntegrationProcess IntegrationData Integration

servicebus.windows.netOsloSSSAzure StorageSynch framework

Page 26: Thinking Strategically about Cloud Computing
Page 27: Thinking Strategically about Cloud Computing
Page 28: Thinking Strategically about Cloud Computing

offered

“as a service”“on premises”

Cloud as a deployment option

Cloud as a deployment option

Page 29: Thinking Strategically about Cloud Computing

powered by…

server “cloud fabric”

Cloud as an underlying platform

Cloud as an underlying platform

Page 30: Thinking Strategically about Cloud Computing

server “cloud fabric”

“as a service”“on premises”

Page 31: Thinking Strategically about Cloud Computing

server “cloud fabric”

“as a service”“on premises”

Customer Choice

Page 32: Thinking Strategically about Cloud Computing

server “cloud fabric”

“as a service”“on premises”

Platform Choice

Page 33: Thinking Strategically about Cloud Computing
Page 34: Thinking Strategically about Cloud Computing

server “cloud fabric”

“as a service”“on premises”

Platform Choice

Page 35: Thinking Strategically about Cloud Computing

“powered by servers”

“powered by cloud”

1

+

Economy of Scale:Reduce CAPEXPay as you go

Capacity PlanningElastic

“Infiniscale”

Control:“Own” the SLA“Own” the data

“Own” compliance

Page 36: Thinking Strategically about Cloud Computing

ServerServer ‘Hosted Server’‘Hosted Server’ Cloud FabricCloud Fabric

Page 37: Thinking Strategically about Cloud Computing

Two ‘instantiations’ of the cloud

•Hosted version of what you have been using so far•Requires few changes if any to what you know and do

•New capabilities•New cost structure•Requires embracing a specific app model

Windows ServerWindows Server ‘Hosted Server’‘Hosted Server’ Compute FabricCompute Fabric

SQL ServerSQL Server ‘Hosted SQL Server’

‘Hosted SQL Server’ Storage FabricStorage Fabric

…… …… ……

•What you have been using so far

… … …

Page 38: Thinking Strategically about Cloud Computing

Not a replacementAsk yourself: what ‘tool’ do I

need?

Page 39: Thinking Strategically about Cloud Computing
Page 40: Thinking Strategically about Cloud Computing

Thread A

ThreadB

SharedCount

Count++

GetCount()10

? 13?Exception?

10

GetCount()11

GetCount()

12

13Count++

GetCount()12

11Count++ 11

Count++12

12

Page 41: Thinking Strategically about Cloud Computing

Thread A

ThreadB

SharedCount

[Begin Tx] GetCount() 1212

GetCount()

13Count++

14

13

Count++

[Commit Tx] wait until lock is released

Page 42: Thinking Strategically about Cloud Computing

Thread A

ThreadB

SharedCount

[Begin Tx] GetCount()

Count++

12

13wait until lock released

12GetCount()

Count++

13

14

[Commit Tx]

PRO: ConsistencyCON: Availability (wait on lock)

Page 43: Thinking Strategically about Cloud Computing

Thread A

ThreadB

SharedCount

GetCount()1212

GetCount()

12

Q.PutMsg(“add”)

13

GetCount()

Count++

1213

Q.PutMsg(“add”)

QueueQueueWorkerWorker

Q.GetMsg()

GetCount()

Count++

1314

14

Q.GetMsg()

Page 44: Thinking Strategically about Cloud Computing

InternetInternet

StorageStorageTablesTables

LBLB

BlobsBlobs

Worker ServiceWorker Service

Worker ServiceWorker Service

Worker ServiceWorker Service

Web Site(ASPX, ASMX, WCF)

Web Site(ASPX, ASMX, WCF)Web Site

(ASPX, ASMX, WCF)Web Site

(ASPX, ASMX, WCF)Web Site(ASPX, WCF)

Web Site(ASPX, WCF)

QueueQueue

Windows Azure Datacenter

Page 45: Thinking Strategically about Cloud Computing
Page 46: Thinking Strategically about Cloud Computing

server “cloud fabric”

“as a service”“on premises”

Customer Choice

Page 47: Thinking Strategically about Cloud Computing

The “Cloud”The “Cloud”

employees

Clinical trialsoftware

Firewall

Big Pharma “on premise”

Management

IT

DirectorySTS

supercloudysoftware.com

SDS

Azure

Windows Azure

accesscontrol(Identity)

STS

Page 48: Thinking Strategically about Cloud Computing

SDS

Windows Azure

Windows Azure

The “Cloud”The “Cloud”

employees

Clinical trialsoftware

Firewall

Big Pharma “on premises”

Management

IT

DirectorySTS

accesscontrol(Identity)

STS

Employees access software using the same identity

(leverage existing AuthN/AuthZ policies) through

accesscontrol.windows.net

New Molecule Research goes to the cloud

-Elastic compute-“Infini-store”

Page 49: Thinking Strategically about Cloud Computing

The “Cloud”The “Cloud”

employees

Clinical trialsoftware

Clinical trial patients

Firewall

Big Pharma “on premise”

Management

IT

DirectorySTS

Windows Azure

InternetService Bus

(Connectivity)

InternetService Bus(Identity)

STSRelay

Page 50: Thinking Strategically about Cloud Computing

The “Cloud”The “Cloud”

employees

Clinical trialsoftware

Clinical trial patients

Firewall

ME “on premises”

Cloud StorageSTSRelay Cloud Compute

Management

IT

Directory

Windows Azure

cloudysoftware.com

Hosted ERP @ Hoster

STS

Page 51: Thinking Strategically about Cloud Computing

The “Cloud”

employees

Clinical trialsoftware

(big pharma data in purple)

Clinical trial patients

Firewall

InternetService Bus

(Connectivity)

ME “on premises”

Cloud Storage

(new molecule research in purple)

InternetService Bus(Identity)

STSRelay Cloud Compute

Management

IT

Directory

Windows Strata

cloudysoftware.com

Hosted ERP @ Hoster

STS

Everybody has a relationship with “the cloud”

Page 52: Thinking Strategically about Cloud Computing
Page 53: Thinking Strategically about Cloud Computing
Page 54: Thinking Strategically about Cloud Computing

•Similar to utility companies that: •produce average load•buy/sell variance from average load”

time

Watt

Internal productionActual consumption

Buy Power from Grid

Sell Power to Grid

Page 55: Thinking Strategically about Cloud Computing
Page 56: Thinking Strategically about Cloud Computing

Consistency Availability

tolerance to networkPartition

Dr. Eric A. Brewer, UC Berkeley

Page 57: Thinking Strategically about Cloud Computing
Page 58: Thinking Strategically about Cloud Computing
Page 59: Thinking Strategically about Cloud Computing
Page 60: Thinking Strategically about Cloud Computing

Enterprises ISVs

Page 61: Thinking Strategically about Cloud Computing
Page 62: Thinking Strategically about Cloud Computing
Page 63: Thinking Strategically about Cloud Computing
Page 64: Thinking Strategically about Cloud Computing
Page 65: Thinking Strategically about Cloud Computing

© 2008 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.