Cloud Architecture
Cloud Architecture
Cloud Architecture
Outline
Cloud computing
What is?
Levels of cloud computing: IaaS, PaaS, SaaS
Moving to the cloud?
users can start, stop, and scale (up and down) its power at will
[CloudArchitectures]
Anna Ruokonen, OHJ, TTY
Business opportunities
Internet scale service computing
Efficient management and utilization of systems
VM 1
VM 2
Virtualization layer
Internet
Host operating
system
Hardware
VM 3
Offers a computer infrastructure often a virtual hardware infrastructure that is immediately accessible and ready to use
Offers a computing platform and/or software stack as a service
Often consuming IaaS and sustaining SaaS cloud applications
While IaaS and PaaS are aimed for a software developer, SaaS is often aimed
directly to the end user
Accessible via a browser and/or API (SOA services)
Scalability
Error Recovery
Your hardware and the data located on your IaaS provider and are
housed in (hopefully) secure data centers
Time Back
No hardware investments
time,
bandwidth,
transactions,
storage
etc.
Outgoing bandwidth
Incoming bandwidth
CPU time
Data storage space used
Recipients emailed
Application design
Application development
Testing
Deployment
Hosting
Team collaboration
Web service integration
Database integration
Security
Scalability
Storage
Persistence
State management
Application versioning
Application instrumentation
Lower investment
No maintenance cost
If your project fails, just free the reserved resources and pay the
usage bill
Business
A one-to-many model
Deployment models
Public cloud
Community cloud
Private cloud
Hybrid cloud
Infrastructure as a
Service
Platform as a
Service
Software as a
Service
HP
Google App
Engine
Cordys
IBM
Zynga
RackSpace
Force.com
OpenStack
Eucalyptus
VMWare
GoGrid
Microsoft Azure
Terremark
WaveMaker
Oracle
Hosting.com
Bungee Connect
Techila
Joyent
LongJump
Anna Ruokonen, OHJ, TTY
SalesForce
Dropbox
Animoto
Arch Red
[Huhtanen2010]
Infrastructure as a
Service
Platform as a
Service
Google App
Cordys
Enginebut opportunities for
Vendor lock-in tightens,
Facebook
Zynga
innovation, business models and market entry
increase, need for Force.com
venture capital decrease
SalesForce
GoGrid
Microsoft Azure
Terremark
WaveMaker
Oracle
Hosting.com
Bungee Connect
Techila
Joyent
LongJump
OpenStack
Eucalyptus
VMWare
Software as a
Service
Dropbox
Market entry costs and capital investment needs
Amazon Web Services
increase, need for venture capital increases
Animoto
Arch Red
[Huhtanen2010]
Transactional Web
application
architecture
Internet
Application
server
Load balancer
Grid application
architecture
Processing
node
Database
cluster
Separation into
presentation,
data storage
Get job
Push job
Job
gueue
Publsh
results
Separation of the core
application from its data
processing
Anna Ruokonen,
OHJ, TTYnodes
Data
manager
Read results
[CloudArchitectures]
Internal
Managed services
The Cloud
Capital investment
Significant
Moderate
Neglible
Ongoing costs
Moderate
Significant
Based on usage
Provisioning time
Significant
Moderate
None
Limited
Moderate
Flexible
Significant
Limited
Moderate
Varies
High
Moderate to high
Flexibility
Staff expertise required
Reliability
[CloudArchitectures]
[CloudBestPractices]
Region1
Zone1
Region2
Zone2
DB
master
DB
slave
Permanent
storage
Anna Ruokonen, OHJ, TTY
Cloud
front
Queue 1
Component 2
Queue 2
Component 3
Tight coupling
Queue 3
Loose coupling
Component1
Component 2
Component 3
Manual scaling
(up and down)
Small instance
Medium instance
Large instance
Medium instance
Automatic scaling
(out and in)
One instance
Two instances
Four instances
Anna Ruokonen, OHJ, TTY
Two instances
Map
Map
Map
Output
Reduce
Output
Reduce
Output
Map
Anna Ruokonen, OHJ, TTY
[MapReduce]
Persistent storage
Files are hold in buckets
A file is identified by a key and URI
Message gueue
Virtual machines
No predefined schemas
domain:item:attribute, UTF-8 string
Attributes can be added dynamically and they can have multiple values
[AWS]
Tomcat
App Server
Tomcat
Tomcat
Your code
Framework
Libraries
Your code
Libraries
J2EE
Tomcat
Your code
Your code
Your code
J2EE
Libraries
J2EE
Libraries
J2EE
Libraries
Linux
Linux
OS
Linux
Linux
Amazon EC2
Your Application
Amazon Elastic
MapReduce
SDB
SQS
Domains Queues
AutoScaling
Elastic
LB
Cloud
Watch
Amazon S3
Object and
Buckets
Amazon
Cloud
Front
List of
websites
1.
2.
3.
4.
5.
6.
SQS
2
[OHJ-5202]
Image
processing
EC2 instance
4
KeywordDB
SDB
Image
Storage
S3
download
images
MapReduce
EMR
(EC2, S3)
Anna Ruokonen, OHJ, TTY
search
WebApp
EC2 instance
Example: Find
search suggestions
Other tools..
[WindowsAzure]
Anna Ruokonen, OHJ, TTY
References
http
http://
static.googleusercontent.com/external_content/untrusted_dlcp/research.google.com/en/us/archive/mapreduce-osdi04.pdf