in de wolken met cloud computing
DESCRIPTION
This presentation provides a cloud computing overview. Windows Azure is described in more detail as an example of a cloud platform.TRANSCRIPT
In de wolken met cloud
computing?
Een introductie, overzicht en vergelijking…
Dec-09
Introducing…
• Class-A
• Kennisprovider
• Microsoft development
• Training & Coaching
• http://www.class-a.nl
• Anko Duizer
• Trainer/ coach
• Blog: http://www.ankoduizer.nl
• Twitter: ankoduizer
Overview
• What is cloud computing?
• What is Windows Azure?
• Scenarios
• Challenges
3
The big switch?
• From your own Burden wheel to large-scale
electricity…
• Large scale electricity was possible by a
series of scientific and engineering
breakthroughs
• But what ensured the triumph was not
technology but economics
• It changed our lives completely: we have
light everywhere and power at each house!
4
The next big switch?
• Cloud computing is moving away from the
personal computer to a public grid: The
Internet
• Centralized data processing
• Computing is turning into a utility
• Is driven by economics
• Is processing information the next electricity?
• Will this change our lives once again?
5
Cloud duurder dan
datacenter
Schneier: cloud
computing niet
onveiliger Computable, 2008
Capaciteit huren in
de cloud
What is cloud
computing?
Cloud computing is Internet
("cloud") based development
and use of computer technology
("computing”)
What is the cloud?
• A set of connected servers
• Offers infrastructure, platform and software
as a service
• An infrastructure on which you can:
• Install and run services
• Store and retrieve data
• We have public and private clouds
9
Characteristics of the cloud
• The management/ administration of the
systems is not in hands of the user
• The user pays a recurring fee
• Pay for what you use (utility based
computing)
• The capacity of the infrastructure is elastic
• Strong focus on integration (cloud-cloud,
cloud-on premises)
10
Kinds of cloud services 11
Cloud
On-
premises
Application
Application
Platform
SaaS
Attached
services
Cloud
platforms
(PaaS)
Application
Browser/
client?
? Extra
functions
Application
IaaS
Cloud computing suppliers
Is there a market? 13
Windows
Azure platform
14
Windows Azure platform 21
Windows Azure
Applications
AppFabric
Live Services
SQL Azure
Applications
OthersWindows
Mobile
Windows 7/
Vista/XP
Windows
Server
Windows Azure 22
Fabric
Storage
Config
Compute
Application
Storage 23
Blobs QueuesTables
HTTP
Windows Azure AppFabric 24
Service Bus
Access Control (ACS) ?
SQL Azure 25
SQL Data
Services
Others
(future)
SQL Azure architecture 26
SQL Azure
TDS + TSQL Model
Web App
SQL Client*
Windows Azure
Browser
application
Application
REST Client
REST
ADO.Net + EF
Application
SQL Client*
Cloud
HT
TP
HT
TP
+R
ES
T
TD
S
Da
ta c
en
ter
ODBC, OLEDB,
ADO.Net PHP,
Ruby, …
Information services “Dallas”
• Information as a Service
• Content brokerage and discovery platform
• Discover, explore and use any type of content
• Blobs, structured, real-time web services
• Tap into an ecosystem of global content
providers
• Process and analyze data
• Empowers developers of all sizes
• Built on Windows Azure and SQL Azure
27
Windows Azure service lifecycle 28
AutomatedAutomatedDeveloper Developer/
Deployer
Coding and Modeling
Provisioning Deployment Maintain goal state
New services
and updates
Desired configuration
- Mapping and deploying to
actual hardware
- Network configuration
- Monitor
- React to events
From on-premises to cloud platforms
Cloud
application
On-premises
application
Cloud foundation
OS
On-premises
infrastructure
services
On-premises
application
services
Cloud
infrastructure
services
Cloud application
services
The Starbucks model 30
Intake
(web role)
Queue
Worker role
Azure : designed for the cloud
• For easy access, from anywhere
• Language agnostic REST APIs
• Client libraries for .NET, Java, PHP, …
• For durability
• All data is replicated 3 times within a cluster, and
across datacenters
• For massive scale
• Data is automatically partitioned and load
balanced across servers
Windows Azure – coming soon…
• Programming model
• Administrator privilege in the VM
• Deployment of pre-configured VM images
• Storage
• User-selectable geo locations for replicas
• Secondary indices on tables
• Service management
• Remote terminal server access to VMs
32
Scenarios
Cloud platform scenarios
1. Running an on-premise app unchanged in
the cloud
2. Scalable web application
3. Parallel processing application
4. Web application with background
processing
5. Archiving
Scenarios versus capabilities
Run On-
Premise
apps
Scalable
web apps
Parallel
processing
apps
Background
processing
Archiving
VM with
standard OSX
Scale-out
web app
platformX X
Scale-out
batch app
platformX X
Relational
storageX X X X
Scale-out
storageX X X
Blobs
Queues X X
35
Amazon Web Services
Run On-
Premise
apps
Scalable
web apps
Parallel
processing
apps
Background
processing
Archiving
VM with
standard OSEC2 VMs
Scale-out
web app
platform
EC2 VMs EC2 VMs
Scale-out
batch app
platform
EC2 VMs EC2 VMs
Relational
storageRDS RDS
RDS
Scale-out
storageSimpleDB SimpleDB
Blobs S3 S3
Queues SQS
36
Google AppEngine
Run On-
Premise
apps
Scalable
web apps
Parallel
processing
apps
Background
processing
Archiving
VM with
standard OS
Scale-out
web app
platform
Java/
Python
runtime
Scale-out
batch app
platform
Relational
storage
Scale-out
storageDatastore
Blobs
Queues
37
Salesforce.com Force.com
Run On-
Premise
apps
Scalable
web apps
Parallel
processing
apps
Background
processing
Archiving
VM with
standard OS
Scale-out
web app
platform
Force.com
runtime
Scale-out
batch app
platform
Relational
storage
Scale-out
storage
Force.com
storage
Blobs
Queues
38
Windows Azure platform
Run On-
Premise
apps
Scalable
web apps
Very
scalable
web apps
Parallel
processing
apps
Background
processing
Archiving
VM with
standard OSVMs
Scale-out
web app
platformWeb role Web role Web role
Scale-out
batch app
platform
Worker
role
Worker
role
Relational
storageSQL
Azure
SQL
Azure
SQL
Azure
Scale-out
storageTables Tables Tables
Blobs Blobs Blobs
Queues Queues
39
Summarize platform comparison
Run On-
Premise
apps
Scalable
web apps
Parallel
processing
apps
Background
processing
Archiving
Mosso X X
Amazon Web
ServicesX X X X X
Microsoft
Windows AzureX X X X X
AppEngineX
Salesforce.com
Force.comX
40
Workload patterns optimal for cloud 41
Usage
Co
mp
ute
Time
Average
Inactivity
Period
“On and Off “
On & off workloads (e.g. batch job)
Over provisioned capacity is wasted
Time to market can be cumbersome
Co
mp
ute
Time
“Unpredictable Bursting“
Average Usage
Unexpected/unplanned peak in demand
Sudden spike impacts performance
Can’t over provision for extreme cases
Average UsageCo
mp
ute
Time
“Growing Fast“
Successful services needs to grow/scale
Keeping up w/ growth is big IT challenge
Complex lead time for deployment
Co
mp
ute
Time
Average Usage
“Predictable Bursting“
Services with micro seasonality trends
Peaks due to periodic increased demand
IT complexity and wasted capacity
Challenges
Trust
Availability
Costs
Vendor lock-in
Software +
Services?
Legal
New
development
API?
Vendor lock-in?
• The interoperability story is quite good.
• Cloud platforms can expose and consume web
services en RESTfull interfaces
• Cloud platform data can be accessed by other
applications
• The portability story is quite different…
• It strongly depends, each vendor is doing it
differently
• Moving apps form on-premise to the cloud and
back is hard!
44
45
Forget about all the other
argumentation
Questions ?
Windows Azure
• Compute : $0.12 / hour
• Storage : $0.15 GB / month
• Bandwidth: $0.10 GB in, $0.15 GB out
48
Windows Azure AppServer
• Messages : $0.15 / 100k
• Bandwidth: $0.10 GB in, $0.15 GB out
49
SQL Azure
• Per database:
• Web edition (1 GB): $9.99 / month
• Business edition (10 GB): $99.99 / month
• Bandwidth: $0.10 GB in, $0.15 GB out
50