The document compares and contrasts virtualization and cloud computing approaches. Virtualization focuses on server consolidation and resource optimization, with applications designed to scale vertically. The cloud takes a holistic automation approach, with applications built to elastically scale horizontally across commodity hardware. Stateful applications are better suited to virtualization where servers are static, while stateless applications are more suited to the cloud where servers can be dynamically created and deleted.
2. A Difference in Philosophy and Approach
Virtualization Cloud
Not elastic compute or Holistic approach to
elastic storage – solves for infrastructure automation
server consolidation
Key drivers are agility and
Key driver are consolidation and automation, Capex to Opex
resource optimization and scalability
Supports standard application Applications built to elastically
architecture. VM functions scale in Cloud via API integration
logically as traditional server.
Apps built to scale Horizontally
Apps Scale vertically by adding on commodity hardware
more resources CPU, RAM, etc.
RACKSPACE® HOSTING | WWW.RACKSPACE.COM
2
4. Architectural Differences - An Analogy
Virtualization Cloud
Shared resources approach Shared-Nothing Architecture
(Sharding)
Central controller
Each node is independent
Nodes cannot do anything without and self-sufficient
reporting to the “hub”
No single point of contention
Single point of contention across the system
Limited scalability
Scale to thousands by simply
adding cheap commodity hardware
RACKSPACE® HOSTING | WWW.RACKSPACE.COM
5. APP LAYER
• Scaling and Redundancy: The
Different Approaches
• Stateful vs. Stateless
Applications
• Why Should You Care?
RACKSPACE® HOSTING | WWW.RACKSPACE.COM
6. THE 1ST RULE OF CLOUD
Redundancy
in the App…
not the
INFRASTRUCTURE
RACKSPACE® HOSTING | WWW.RACKSPACE.COM
7. Redundancy in
Virtualization
• Clustered hypervisors for high availability
• Live migration technology for fault tolerance
• Multiple levels of redundancy through backup
hardware components
RACKSPACE® HOSTING | WWW.RACKSPACE.COM
8. Vertical Scaling
• Larger equals more performance output, limit to
scale you can attain
• Multiple backup systems in infrastructure
enable redundancy
RACKSPACE® HOSTING | WWW.RACKSPACE.COM
9. Horizontal Scaling
• Add smaller inexpensive nodes to increase
overall output. No limit to scalability
• One dies, simply replace with another
RACKSPACE® HOSTING | WWW.RACKSPACE.COM
10. What Does This Mean for Apps?
Vertical Scaling
Add more RAM or move workload to Horizontal Scaling
server with faster CPU to increase Add more nodes and share the load,
performance delete them when you’re done
RACKSPACE® HOSTING | WWW.RACKSPACE.COM
11. Application State
It’s like a phone call to your
Insurance provider…
“Stateful”
All your info is recorded by the
operator, the call drops, you call
back and you carry on where you
left off. No interruption.
“Stateless”
You spend the call relaying the
information, the call drops. When
you call back you have to repeat it
all again. No history of connection.
RACKSPACE® HOSTING | WWW.RACKSPACE.COM
12. APPLICATION STATE
Virtualization Cloud
• Servers are static, therefore • Cloud environments are not
application state can be effectively inherently redundant. Applications
should be architected for redundancy.
managed on single server
• Cloud servers can be created and
• No spin up and tear down effect deleted dynamically
creating state issues
• Applications need to be architected
• Infrastructure such as load to manage state, otherwise users will
balancer can be used to manage not have a seamless experience
stateful connections
RACKSPACE® HOSTING | WWW.RACKSPACE.COM
13. Finding the Best Fit
Virtualized Apps Cloud Apps
• Corporate Payroll Systems • Big Data platforms
• ERP Systems • Social Media
• Traditional Ecommerce Platforms
Apps • Streaming Media
• Office Collaboration • Web 2.0
RACKSPACE® HOSTING | WWW.RACKSPACE.COM