cloud computing patterns t compute inactivity period t t t on and off on & off workloads (e.g....
TRANSCRIPT
![Page 1: Cloud Computing Patterns t Compute Inactivity Period t t t On and Off On & off workloads (e.g. batch job) Over provisioned capacity is wasted Time to](https://reader035.vdocument.in/reader035/viewer/2022070400/56649e255503460f94b140a8/html5/thumbnails/1.jpg)
Introduction To Windows Azure CloudThilina Gunarathne, Indiana University
![Page 2: Cloud Computing Patterns t Compute Inactivity Period t t t On and Off On & off workloads (e.g. batch job) Over provisioned capacity is wasted Time to](https://reader035.vdocument.in/reader035/viewer/2022070400/56649e255503460f94b140a8/html5/thumbnails/2.jpg)
Time
Dem
an
dWhat is a “Cloud”?
• Cloud: on-demand, scalable, multi-tenant, self-service compute and storage resources
TimeD
em
an
d
Server Provisioning Cloud Provisioning
OverprovisionedUnderprovisioned
![Page 3: Cloud Computing Patterns t Compute Inactivity Period t t t On and Off On & off workloads (e.g. batch job) Over provisioned capacity is wasted Time to](https://reader035.vdocument.in/reader035/viewer/2022070400/56649e255503460f94b140a8/html5/thumbnails/3.jpg)
Cloud Computing Patterns
tCom
pute
Inactivity
Period
t
t
t
On and OffOn & off workloads (e.g. batch job)Over provisioned capacity is wasted Time to market can be cumbersome
Unpredictable BurstingUnexpected/unplanned peak in demand Sudden spike impacts performance Can’t over provision for extreme cases
Com
pute
Growing FastSuccessful services needs to grow/scale Keeping up w/ growth is big IT challenge Cannot provision hardware fast enough
Com
pute
Predictable BurstingServices with micro seasonality trends Peaks due to periodic increased demandIT complexity and wasted capacity
Com
pute
![Page 4: Cloud Computing Patterns t Compute Inactivity Period t t t On and Off On & off workloads (e.g. batch job) Over provisioned capacity is wasted Time to](https://reader035.vdocument.in/reader035/viewer/2022070400/56649e255503460f94b140a8/html5/thumbnails/4.jpg)
Cloud Terminology• Infrastructure as a Service (IaaS):
basic compute and storage resources• On-demand servers• Amazon EC2, VMWare vCloud
• Platform as a Service (PaaS): cloud application infrastructure• On-demand application-hosting environment• E.g. Google AppEngine, Salesforce.com, Windows Azure
• Software as a Service (SaaS): cloud applications• On-demand applications• E.g. Office 365, GMail, Microsoft Office Web Companions
![Page 5: Cloud Computing Patterns t Compute Inactivity Period t t t On and Off On & off workloads (e.g. batch job) Over provisioned capacity is wasted Time to](https://reader035.vdocument.in/reader035/viewer/2022070400/56649e255503460f94b140a8/html5/thumbnails/5.jpg)
Cloud: Efficiency Versus Control Packaged Software
Storage
Servers
Networking
O/S
Middleware
Virtualization
Data
Applications
Runtime
You m
anag
e
Infrastructure(as a Service)
Storage
Servers
Networking
O/S
Middleware
Virtualization
Data
Applications
Runtime
Man
ag
ed b
y v
en
dor
You m
anag
e
Platform(as a Service)
Man
ag
ed b
y v
en
dor
You m
anag
e
Storage
Servers
Networking
O/S
Middleware
Virtualization
Applications
Runtime
Data
Software(as a Service)
Man
ag
ed b
y v
en
dor
Storage
Servers
Networking
O/S
Middleware
Virtualization
Applications
Runtime
Data
EfficiencyControl+Cost
![Page 6: Cloud Computing Patterns t Compute Inactivity Period t t t On and Off On & off workloads (e.g. batch job) Over provisioned capacity is wasted Time to](https://reader035.vdocument.in/reader035/viewer/2022070400/56649e255503460f94b140a8/html5/thumbnails/6.jpg)
Operating System
Operating System
VM
WebServer
Operating System
VM
DBMS
2) Choose image, then create and configure VM(s) for
application
1) Choose image, then
create VM for DBMS and
configure DBMS
IaaS
Library
VM Images
Developer
ApplicationDataLoad
Balancer
5) Configure loadbalance
r
6) Manage VMs and DBMS (e.g.,
deploying new OS images in VMs)
3) Provision database,
then create tables and add
data
4) Install
application
![Page 7: Cloud Computing Patterns t Compute Inactivity Period t t t On and Off On & off workloads (e.g. batch job) Over provisioned capacity is wasted Time to](https://reader035.vdocument.in/reader035/viewer/2022070400/56649e255503460f94b140a8/html5/thumbnails/7.jpg)
Operating System
Operating System
VM
Operating System
VM
DBMS
PaaS Developer
ApplicationDataLoad
Balancer
2) Deploy applicat
ion
WebServer
1) Provision database,
then create tables and add
data
![Page 8: Cloud Computing Patterns t Compute Inactivity Period t t t On and Off On & off workloads (e.g. batch job) Over provisioned capacity is wasted Time to](https://reader035.vdocument.in/reader035/viewer/2022070400/56649e255503460f94b140a8/html5/thumbnails/8.jpg)
Windows Azure
• Windows Azure is an OS for the data center• Handles resource management, provisioning, and
monitoring• Manages application lifecycle• Allows developers to concentrate on business logic
• Provides common building blocks for distributed applications• Reliable queuing, simple structured storage, SQL storage• Application services like access control, caching, and
connectivity
![Page 9: Cloud Computing Patterns t Compute Inactivity Period t t t On and Off On & off workloads (e.g. batch job) Over provisioned capacity is wasted Time to](https://reader035.vdocument.in/reader035/viewer/2022070400/56649e255503460f94b140a8/html5/thumbnails/9.jpg)
The Windows Azure Service Model
![Page 10: Cloud Computing Patterns t Compute Inactivity Period t t t On and Off On & off workloads (e.g. batch job) Over provisioned capacity is wasted Time to](https://reader035.vdocument.in/reader035/viewer/2022070400/56649e255503460f94b140a8/html5/thumbnails/10.jpg)
The Windows Azure Service Model• A Windows Azure application is called a “service”• Definition information• Configuration information• At least one “role”
• Roles are like DLLs in the service “process”• Collection of code with an entry point that runs in its own
virtual machine• Windows Azure compute SLA requires two instances
of each role• 99.95% for connectivity to two instances• Achieved with update and fault domains
![Page 11: Cloud Computing Patterns t Compute Inactivity Period t t t On and Off On & off workloads (e.g. batch job) Over provisioned capacity is wasted Time to](https://reader035.vdocument.in/reader035/viewer/2022070400/56649e255503460f94b140a8/html5/thumbnails/11.jpg)
Role Types
• There are currently three role types:• Web Role: IIS7 and ASP.NET in Windows Azure-supplied
OS• Worker Role: arbitrary code in Windows Azure-supplied
OS• VM Role: uploaded VHD with customer-supplied OS
• VM Role: is it a VM?• No, because it is stateless• Good for:• Long install (5+ minutes)• Manual install/config• Fragile install/config
• Linux instances as well
![Page 12: Cloud Computing Patterns t Compute Inactivity Period t t t On and Off On & off workloads (e.g. batch job) Over provisioned capacity is wasted Time to](https://reader035.vdocument.in/reader035/viewer/2022070400/56649e255503460f94b140a8/html5/thumbnails/12.jpg)
Role Contents
• Definition: • Role name• Role type • VM size (e.g. small, medium, etc.)• Network endpoints
• Code: • Web/Worker Role: Hosted DLL
and other executables• VM Role: VHD
• Configuration:• Number of instances• Number of update and fault domains
Cloud ServiceRole: Front-End
DefinitionType: WebVM Size: SmallEndpoints: External-1ConfigurationInstances: 2Update Domains: 2Fault Domains: 2
Role: Middle-Tier
DefinitionType: WorkerVM Size: LargeEndpoints: Internal-1ConfigurationInstances: 3Update Domains: 2Fault Domains: 2
![Page 13: Cloud Computing Patterns t Compute Inactivity Period t t t On and Off On & off workloads (e.g. batch job) Over provisioned capacity is wasted Time to](https://reader035.vdocument.in/reader035/viewer/2022070400/56649e255503460f94b140a8/html5/thumbnails/13.jpg)
Windows Azure Instance Sizes
Unit of Compute Defined
Variable instance sizes to handle complex workloads of any size
Small1 x
1.6Ghz (moderate IO) 1.75 GB memory
225 GB storage(instance storage)
Medium2 x
1.6Ghz (high IO)3.5 GB
memory 490 GB storage(instance storage)
Small
$0.12 Per service
hour
Medium
$0.24 Per service
hour
X-Large
$0.96 Per service
hour
Large
$0.48 Per service
hour
Large 4 x
1.6Ghz (high IO) 7.0 GB
memory1000 GB storage(instance storage)
X-Large8 x
1.6Ghz(high IO)
14 GB memory2040 GB
(instance storage)
$0.02 Per service
hour
Extra Small
Extra Small1 x 1.0Ghz(low IO)
768 MB memory 20 GB storage
(instance storage)
![Page 14: Cloud Computing Patterns t Compute Inactivity Period t t t On and Off On & off workloads (e.g. batch job) Over provisioned capacity is wasted Time to](https://reader035.vdocument.in/reader035/viewer/2022070400/56649e255503460f94b140a8/html5/thumbnails/14.jpg)
Applicationbuilding blocks
StorageBig data
Caching
CDN
Database
Identity
Media
Messaging
Networking
Traffic
![Page 15: Cloud Computing Patterns t Compute Inactivity Period t t t On and Off On & off workloads (e.g. batch job) Over provisioned capacity is wasted Time to](https://reader035.vdocument.in/reader035/viewer/2022070400/56649e255503460f94b140a8/html5/thumbnails/15.jpg)
Windows Azure Storage
![Page 16: Cloud Computing Patterns t Compute Inactivity Period t t t On and Off On & off workloads (e.g. batch job) Over provisioned capacity is wasted Time to](https://reader035.vdocument.in/reader035/viewer/2022070400/56649e255503460f94b140a8/html5/thumbnails/16.jpg)
Windows Azure Storage Fundamentals
• Storage characteristics• Durable – replicated three times• Scalable (capacity and throughput)• Highly available
• Simple and familiar programming interfaces• REST (HTTP and HTTPS)• .NET accessible
![Page 17: Cloud Computing Patterns t Compute Inactivity Period t t t On and Off On & off workloads (e.g. batch job) Over provisioned capacity is wasted Time to](https://reader035.vdocument.in/reader035/viewer/2022070400/56649e255503460f94b140a8/html5/thumbnails/17.jpg)
Storage Objects
• Blobs • Provide a simple interface for storing
named files along with metadata for the file
• Tables • Provide lightly structured storage with a
set of entities that contain a set of properties
• Queues • Provide reliable storage and delivery of
messages
![Page 18: Cloud Computing Patterns t Compute Inactivity Period t t t On and Off On & off workloads (e.g. batch job) Over provisioned capacity is wasted Time to](https://reader035.vdocument.in/reader035/viewer/2022070400/56649e255503460f94b140a8/html5/thumbnails/18.jpg)
Storage Account and Blob Containers
• Storage account• An account can have many blob containers
• Container• A container is a set of blobs• Sharing policies are set at the container level • Public READ or Private
• List the blobs in a container• Content Delivery Network (CDN) • Azure Drives
![Page 19: Cloud Computing Patterns t Compute Inactivity Period t t t On and Off On & off workloads (e.g. batch job) Over provisioned capacity is wasted Time to](https://reader035.vdocument.in/reader035/viewer/2022070400/56649e255503460f94b140a8/html5/thumbnails/19.jpg)
Blob Storage Concepts
BlobContainerAccount
sally
pictures
IMG001.JPG
IMG002.JPG
movies MOV1.AVI
![Page 20: Cloud Computing Patterns t Compute Inactivity Period t t t On and Off On & off workloads (e.g. batch job) Over provisioned capacity is wasted Time to](https://reader035.vdocument.in/reader035/viewer/2022070400/56649e255503460f94b140a8/html5/thumbnails/20.jpg)
Table Data Model• Table• A storage account can create many tables
• A table is a set of entities (rows)• An entity is a set of properties (columns)• Billions of entities and TBs of data
• Two “key” properties that together are the unique ID of the entity in the table• PartitionKey – enables scalability• RowKey – uniquely identifies the entity within the
partition
![Page 21: Cloud Computing Patterns t Compute Inactivity Period t t t On and Off On & off workloads (e.g. batch job) Over provisioned capacity is wasted Time to](https://reader035.vdocument.in/reader035/viewer/2022070400/56649e255503460f94b140a8/html5/thumbnails/21.jpg)
Table Storage Concepts
EntityTableAccount
sally
users
Name =…Email = …
Name =…Email = …
photo index
Photo ID =…Date =…
Photo ID =…Date =…
![Page 22: Cloud Computing Patterns t Compute Inactivity Period t t t On and Off On & off workloads (e.g. batch job) Over provisioned capacity is wasted Time to](https://reader035.vdocument.in/reader035/viewer/2022070400/56649e255503460f94b140a8/html5/thumbnails/22.jpg)
Windows Azure Queues
• Provide reliable message delivery• Simple, asynchronous work dispatch• Programming semantics ensure that a message can be
processed at least once• Queues are highly available, durable and
performance efficient• Maximum size is 64K• FIFO in general, but not guaranteed
• Pulling an item from the queue doesn’t delete it• It becomes invisible for a visibility timeout• Item must be deleted before timeout or else it becomes
visible
![Page 23: Cloud Computing Patterns t Compute Inactivity Period t t t On and Off On & off workloads (e.g. batch job) Over provisioned capacity is wasted Time to](https://reader035.vdocument.in/reader035/viewer/2022070400/56649e255503460f94b140a8/html5/thumbnails/23.jpg)
Queue Storage Concepts
MessageQueueAccount
sally
thumbnail jobs
128x128, http://…
256x256, http://…
photo processing
jobs
http://…
http://…
![Page 24: Cloud Computing Patterns t Compute Inactivity Period t t t On and Off On & off workloads (e.g. batch job) Over provisioned capacity is wasted Time to](https://reader035.vdocument.in/reader035/viewer/2022070400/56649e255503460f94b140a8/html5/thumbnails/24.jpg)
Branding Police
Web Role
Web Role
Worker
RoleWork
erRole
{…-…-...-…}-report.txt {…-…-...-…}
{…-…-...-…}
Working on…Violations:…
bra
nd
ing
polic
e.c
lou
dap
p.n
et
![Page 25: Cloud Computing Patterns t Compute Inactivity Period t t t On and Off On & off workloads (e.g. batch job) Over provisioned capacity is wasted Time to](https://reader035.vdocument.in/reader035/viewer/2022070400/56649e255503460f94b140a8/html5/thumbnails/25.jpg)
Applicationbuilding blocks
StorageBig data
Caching
CDN
Database
Identity
Media
Messaging
Networking
Traffic
![Page 26: Cloud Computing Patterns t Compute Inactivity Period t t t On and Off On & off workloads (e.g. batch job) Over provisioned capacity is wasted Time to](https://reader035.vdocument.in/reader035/viewer/2022070400/56649e255503460f94b140a8/html5/thumbnails/26.jpg)
DBSQL databaseRelational SQL Server Engine in the CloudClustered for high availabilityFully Managed ServiceSQL Reporting support
![Page 27: Cloud Computing Patterns t Compute Inactivity Period t t t On and Off On & off workloads (e.g. batch job) Over provisioned capacity is wasted Time to](https://reader035.vdocument.in/reader035/viewer/2022070400/56649e255503460f94b140a8/html5/thumbnails/27.jpg)
CacheLow latency, in-memory distributed cacheDynamically grow and shrink cache sizeHigh availability supportMemcached protocol support
![Page 28: Cloud Computing Patterns t Compute Inactivity Period t t t On and Off On & off workloads (e.g. batch job) Over provisioned capacity is wasted Time to](https://reader035.vdocument.in/reader035/viewer/2022070400/56649e255503460f94b140a8/html5/thumbnails/28.jpg)
IdentityIntegrate with enterprise identityEnable single sign-on within your appsEnterprise Graph REST API
![Page 29: Cloud Computing Patterns t Compute Inactivity Period t t t On and Off On & off workloads (e.g. batch job) Over provisioned capacity is wasted Time to](https://reader035.vdocument.in/reader035/viewer/2022070400/56649e255503460f94b140a8/html5/thumbnails/29.jpg)
Service busSecure messaging and relay capabilitiesEasily build hybrid appsEnable loosely coupled solutions
![Page 30: Cloud Computing Patterns t Compute Inactivity Period t t t On and Off On & off workloads (e.g. batch job) Over provisioned capacity is wasted Time to](https://reader035.vdocument.in/reader035/viewer/2022070400/56649e255503460f94b140a8/html5/thumbnails/30.jpg)
Window Azure HPC Scheduler
• Compute intensive, parallel computations on cloud• Parametric sweeps• MPI• SOA• LINQ to HPC
• Cloud bursting• Dynamically adjust how much runs on-premise and in the
cloud• “Burst” into cloud on-demand
![Page 31: Cloud Computing Patterns t Compute Inactivity Period t t t On and Off On & off workloads (e.g. batch job) Over provisioned capacity is wasted Time to](https://reader035.vdocument.in/reader035/viewer/2022070400/56649e255503460f94b140a8/html5/thumbnails/31.jpg)
Windows Azure SDK
• Local development emulator• Compute• Storage
• In several languages
![Page 32: Cloud Computing Patterns t Compute Inactivity Period t t t On and Off On & off workloads (e.g. batch job) Over provisioned capacity is wasted Time to](https://reader035.vdocument.in/reader035/viewer/2022070400/56649e255503460f94b140a8/html5/thumbnails/32.jpg)
Next Up…• Twister4Azure – Iterative MapReduce for Windows
Azure Cloud• Demo : KMeansClustering on Azure using
Twister4Azure
Windows Azure Training course• http://msdn.microsoft.com/en-us/wazplatformtrainingco
urse.aspx• Hands-on labs, Samples, Presentations
![Page 33: Cloud Computing Patterns t Compute Inactivity Period t t t On and Off On & off workloads (e.g. batch job) Over provisioned capacity is wasted Time to](https://reader035.vdocument.in/reader035/viewer/2022070400/56649e255503460f94b140a8/html5/thumbnails/33.jpg)
Acknowledgements
• Roger Barga – Microsoft• Windows Azure Platform Training Kit• Salsa Group