Cloud Computing
Pay-as-you-go computing explained
Aake Edlund
Acknowledgement and references
Acknowledgement and references
Alan Williamson,
Alan Williamson,
www.aw20.co.uk
www.aw20.co.uk
Berkeley RAD lab, berkeleyclouds.blogspot.com
Berkeley RAD lab, berkeleyclouds.blogspot.com
Baltic Cloud team, cloud.balticgrid.eu
Baltic Cloud team, cloud.balticgrid.eu
Rich Wolski and his Eucalyptus team, eucalyptus.cs.ucsb.edu
Rich Wolski and his Eucalyptus team, eucalyptus.cs.ucsb.edu
Dan Reed, Microsoft, www.hpcdan.org/reeds_ruminations/microsoft
Dan Reed, Microsoft, www.hpcdan.org/reeds_ruminations/microsoft
451 group, www.451group.com
451 group, www.451group.com
McKinsey ‘internal’ report (and RS blog response “McKinsey doesn’t
McKinsey ‘internal’ report (and RS blog response “McKinsey doesn’t
‘get ‘the cloud”)
‘get ‘the cloud”)
Vaquero et al – collecting the 22+ cloud definitions
Cloud computing
Cloud computing
– short version
– short version
Cloud = Virtualization + Automation
The cloud is IT infrastructure as a service.
The IT infrastructure is delivered as virtual
machines.
Automation moves those VMs around,
thereby providing the delivery mechanism for
the service.
Cloud computing
Cloud computing
– longer version
– longer version
“
“
Cloud Computing refers to both the
Cloud Computing refers to both the
applications
applications
delivered as services over the Internet
delivered as services over the Internet
and the
and the
hardware and systems software in the
hardware and systems software in the
datacenters that provide those services
datacenters that provide those services
…
…
The datacenter hardware and software is what
The datacenter hardware and software is what
we will call a Cloud
we will call a Cloud
…
…
Cloud computing has the following characteristics
Cloud computing has the following characteristics
1. The illusion of infinite computing resources..
1. The illusion of infinite computing resources..
2. The elimination of an up-front commitment by Cloud users..
2. The elimination of an up-front commitment by Cloud users..
3. The ability to pay for use … as needed…”
3. The ability to pay for use … as needed…”
UC Berkeley RAD Labs
Spectrum of Clouds
Spectrum of Clouds
Instruction Set VM (Amazon EC2)
Instruction Set VM (Amazon EC2)
Bytecode VM (Microsoft Azure)
Bytecode VM (Microsoft Azure)
Framework VM (Google App Engine)
Framework VM (Google App Engine)
EC2
Azure
AppEngine
Lower-level,
Less management
Higher-level,
More management
Two views
Two views
- of the same thing
- of the same thing
On the right, Sam Johnston’s 6 layer Cloud Computing Stack
- Provisioning of computing resources: CPU, Memory, Processing
- Basically an “Operating System” on demand
- Usually billed on a per-hour usage model
Players in this space
Amazon EC2, Flexiscale, GoGrid, Joyent, AppNexeus
Management providers: RightScale, ElasticServer
Operational Differences
- Wildly different CPU/Memory specs
- Operating System differences
- Difficult/Impossible to move whole images between providers
Layer 1: Cloud Infrastructure
- Provisioning of data storage: Either file/object based or Database like
functionality.
- Billed on bandwidth and storage consumed
Players in the space: Amazon S3, Nirvanix, Mosso, Amazon’s
SimpleDB, Google’s BigTable, Azure Storage
Management Providers: Jungle Disk, Elephant Disk, PutPlace.com
Issues
- Different types of data storage models
- Limitations on the size of individual data units
- Different billing models makes it hard to do a straight comparison
- Access to the data generally uses non-standard query syntax
- No common API
- Performance issues
Layer 2: Cloud Storage
Provides a complete software stack - An IDE for the cloud
Takes care of: Runtimes, Load balancing, Resource provisioning
Players in the space
- Google App Engine - Python (initially, now also Java)
- Force.com (SalesForce)
- Microsoft’s Azure - .NET
- Heroku.com (RubyOnRails)
Issues
Different languages -- Most platforms are unary
Different operational philosophies
- Google App Engine for example doesn’t permit files
Lots of limitations in terms of deployment
Completely reliant on the provider for complete uptime and operation
Widely different billing models
Layer 3: Cloud Platform
- Applications that are completely ‘online’
- Operate on data that is stored in the ‘cloud’ or ‘ether’
- No client software generally required
- Billing: Ad. Revenue, Premium Services
Players in this space
- Google Apps - Gmail / Google Docs
- Apple’s MobileMe
- Microsoft’s Live - Hotmail, Live Spaces
- SalesForce.com
Issues
- Near on impossible to move between providers
- GMail to Hotmail requires major disruption
- End user focused
o
Consumer side of cloud computing
- Completely reliant on the provider for complete uptime and operation
Layer 4: Cloud Applications
- Provides services to which other applications can utilise
- Specific to vertical markets where most “Web2.0” standards live
- Usually free for non-commercial use
Players in the space
- Google/Yahoo Maps
- PayPal / Google Checkout
- Google / Yahoo WebServices
- Amazon Merchant Services
- Amazon Simple Queue Service
Issues/Comments
- Some “Web2.0” services have attempted a standardization path
- Most however are complete vendor lock-in
- Mashup applications utilize Cloud Service
Layer 5: Cloud Services
- Accessing the cloud
- Clients utilize standard access protocols
o
XML
o
JSON
o
REST / SOAP
Browsers
o
FireFox / IE / Chrome
Mobile clients
o
Google Android / Symbian / iPhone / J2ME
Desktop Apps
o
Google Gears / Adobe AIR / Microsoft Azure
Layer 6: Cloud Clients
Infrastructure
Storage
Platform
Applications
Services
Clients
Increasing
level of
complexity
and
vendor lock-in
Complexity and Vendor lock-in
Why now?
Why now?
Experience with very large datacenters
Unprecedented economies of scale
Resource
Cost in
Medium DC
≈ 1000 servers
Cost in
Very Large DC
≈ 50,000 servers
Ratio
Network
$95 / Mbps / month $13 / Mbps / month
7.1x
Storage
$2.20 / GB / month
$0.40 / GB / month
5.7x
Administration ≈140 servers/admin >1000 servers/admin
7.1x
Price per KWH
Where
Possible Reasons Why
3.6¢
Idaho
Hydroelectric power; not sent long distance
10.0¢
California Electricity transmitted long distance over the
grid; limited transmission lines in Bay Area; no
coal fired electricity allowed in California.
Trends, margins
Trends, margins
Jim Gray in 2003: economic necessity
mandates putting the data near the
application
, since the cost of wide-area networking has fallen more slowly
(and remains relatively higher) than all other IT hardware costs.
Why now?
Why now?
Technology is ready
Technology is ready
Pervasive broadband Internet
Fast x86 virtualization
Virtualization makes it all possible
Virtualization makes it all possible
Virtualization is now built-in to
Virtualization is now built-in to
microprocessors
microprocessors
o
Intel’s Virtualization (Intel VT)
Intel’s Virtualization (Intel VT)
o
Hardware based, very fast
Hardware based, very fast
Pay-as-you-go billing model
Standard software stack
Why now?
Why now?
Business drive – cloud users
Business drive – cloud users
• Flexibility
• Eco-efficiency
• Credit crunch business imperatives
- CapEx to OpEx – pay-as-you-go
- Fixed cost to variable cost
Unused resources
Economics of Cloud Users
Economics of Cloud Users
Pay by use instead of provisioning for peak
Static data center
Data center in the cloud
Demand Capacity Time Demand Capacity Time
Economics of Cloud Users
Heavy penalty for under-provisioning
Lost revenue
Lost users
Demand Capacity Time (days) 1 2 3 Demand Capacity Time (days) 1 2 3 Demand Capacity Time (days) 1 2 3Trends: How is cloud
Trends: How is cloud
computing being used?
Trends: Cloud providers
* Extra per-hour charge
There are alternatives
1 month ~ 4 weeks ( 24 x 7 x 4 = 672 hours )
1 month ~ 4 weeks ( 24 x 7 x 4 = 672 hours )
CPU Cores differ
The devil is in the
The devil is in the
details…
details…
Your data
in the cloud
Adoption Challenges
Challenge
Opportunity
Availability
Multiple providers & DCs
Data lock-in
Standardization
Data Confidentiality and
Vendor lock-in, finding
Vendor lock-in, finding
alternatives: Our shopping list
alternatives: Our shopping list
Charge on a per-usage
Charge on a per-usage
Ideally per-hour
Ideally per-hour
Quickly and easily start-up instances
Quickly and easily start-up instances
Under 5 minutes if possible
Under 5 minutes if possible
Offer base OS images that we have full control over
Offer base OS images that we have full control over
API to remotely control the environment
API to remotely control the environment
Ability to perform our image snapshots
Ability to perform our image snapshots
Supported by 3rd party tools
Supported by 3rd party tools
Infrastructure
Storage
Platform
Applications
Services
Clients
Increasing level
of
complexity
and
vendor lock-in
Vendor lock-in, finding alternatives:
Vendor lock-in, finding alternatives:
The
The
higher you go in the cloud taxonomy, the
higher you go in the cloud taxonomy, the
higher the risk of lock-in
higher the risk of lock-in
Vendor lock-in, or the
Vendor lock-in, or the
risk/benefit dance
risk/benefit dance
Before you trust your business to the cloud, be sure you know how to
get out
- Do an X-ray of the vendor
- Multiple vendors (pros and cons)
- Pre negotiated contracts, with exit plans
Benefits vs risk
"There are APIs and platforms in the cloud world that create a walled
garden. You get the benefits of that garden, but you're also restricted.”
- Security customization increase the lock-in
- Only for short term? Smaller problem.
Standards – don’t hope for too much, or very soon
Putting our hope to standards – that will need a push from the customers,
the vendors like the lock-in
Compare to pre-Cloud
Compare to pre-Cloud
“If anything, [moving away from EC2] would be
easier than [exiting] an on-premise system”
"It's much harder to move from AIX to Sun than to
move from Amazon to FlexiScale”, better ask the
full picture question “Is there lock-in in the
choices I'm considering?”
Summary – alternative and
Summary – alternative and
vendor lock-in
vendor lock-in
-
There are alternatives
to Amazon, and the list it growing
- Many
pricing models are confusing
and unclear, and hard to
compare
- Many pricing models
will change
(and are already)
- Important to get the big picture of what you need, today and
later on
- Vendor locking is
definitely a problem
to address.
- Before you jump into it.
But this is always true.
- Many of these ‘challenges’ are pain points waiting
for startups to solve…
Growth Challenges
Growth Challenges
Challenge
Opportunity
Data transfer bottlenecks FedEx-ing disks, Data
Backup/Archival
Performance
unpredictability
Improved VM support, flash
memory, scheduling VMs
Scalable storage
Invent scalable store
Bugs in large distributed
systems
Invent Debugger that relies
on Distributed VMs
Scaling quickly
Invent Auto-Scaler that relies
Policy and Business
Challenges
Challenge
Opportunity
Reputation Fate Sharing Offer reputation-guarding
services like those for email
Software Licensing
Pay-for-use licenses; Bulk
Startups opportunities
Startups and prototyping
One-off tasks
Research at scale
Cloud Killer Apps
Mobile and web applications
Extensions of desktop software
Matlab, Mathematica
Baltic Cloud
Baltic Cloud
Bringing cloud computing to
Bringing cloud computing to
the Baltic States and Belarus
the Baltic States and Belarus
Main motivations:
Main motivations:
Low resource usage
Low resource usage
Too steep learning curve
Too steep learning curve
Low acceptance within industry
Low acceptance within industry
Complicated to adapt new applications
Complicated to adapt new applications
Typically, need a “project” to do that
Typically, need a “project” to do that
Open source
Open source
“cloud in a box”
“cloud in a box”
Our choice:
-
Great team! Rich Wolski, UCSB.
-
Integration with
-
Integration with
Many other open source components out there….
SweCloud
The Swedish Cloud Computing Infrastructure
Proposed pilot in October 2007 (Åke, Lennart and Fredrik H)
Started January 2009, SNIC financed, lead by Åke
Leveraging on the BC results
Roadmap
Connecting to BalticCloud
Running pilot application – this fall
Evaluation – September 2009
Key findings
Key findings
Cloud computing is a
Cloud computing is a new way of using existing
new way of using existing
technology, driven by business value for the
technology, driven by business value for the
whole chain, from
whole chain, from
the providers to their users
the providers to their users
and their user’s users.
and their user’s users.
At this point in time, cloud computing is best used
At this point in time, cloud computing is best used
in startups and prototyping…
Expectations on 2009
Expectations on 2009
“I’ll move from Mac to PC if this isn’t a paradigm shift”
“I’ll move from Mac to PC if this isn’t a paradigm shift”
Aake Edlund, April 21
Aake Edlund, April 21
stst, 2009
, 2009
See more cloud computing being used by startups and in-house quick prototyping
See more cloud computing being used in academia
See more open source alternatives, and alternative cloud providers – also in academia (BalticCloud, SweCloud)
Improved solutions addressing the dangers in cloud computing.
Low expectations on standard APIs (takes time, not sure about the interest from industry, looks like for grids). I.e. industry will not help here, this is the competition epicenter.
Hype, problems, business issues: Successful usage will prove the value. If it is a paradigm shift, it will be clear this year.
Missing slides
Missing slides
- Yes, there are “some” missing here
- Yes, there are “some” missing here
Clouds and HPC – Dan Reed take on this “Twins Separated at Birth: Cloud Computing, HPC
and How Microsoft Is Trying To Change How We Think About Scale”, and others on ‘supercomputer as a service’ – a topic in its own
Cloudbursting – how companies outsource parts of their business to clouds, keeping the
confident parts in-house
Open Cloud Manifesto – “Dedicated to the belief that the cloud should be open” OGF cloud API standardization efforts
All the industry buzz, all the companies trying to give their customers their cloud offering Still ongoing discussions about definitions…
The 15 definitions of how to tell it is not a cloud, and why these definitions are semi-wrong…. Many, many, cloud related projects also in Europe, eg. OpenNebula.org – part of
RESERVOIR
Some slides on ‘how in practice use AWS and Google AppEngine’ … (see BC course) - how to do loadbalancing, databases in the cloud, mass storage in the clouds, and more about options to AWS , Google and Azure.