Cloud computing: is a model for enabling ubiquitous convenient, on-demand network
access to a shared pool of configurable computing resources, that can be rapidly
provisioned and released with minimal management effort or service provide interaction.
Annotations:
Ubiquitous / network access
o Not only the Internet
On-demand self-service
„Resource pooling”
o „Multi-tenant model”: the same resource pool is used
to serve many tenants
o Dynamic allocation of resources & services to tenants
o Tenant control of that: rather/very/extremely limited
Elastic scale-out and scale-in
o Seemingly infinite amount of resources,
o that can be rented (and released) at any time
Metered/utility-like services
o Some notion of „service usage” metric („how much service is used”) is introduced
o Payment is at least partially based on „actual usage”
• N.B. modulo time granularity (hour, day, month...)
SaaS
Annotations:
Capability: using the applications of the provider
o Access: usually thin client (browser!)
o In all ernesty, not a new concept
Examples
o Google Apps
o Salesforce CRM
o LotusLive
o Microsoft Business Productivity Online Suite (BPOS)
Hugely successful in some domains: collaboration,
accounting, CRM, ERP, HRM, CM, PM, ...
PaaS
Annotations:
Capability: deploying a custom application into a
„rented” runtime environment (usually app. server
container)
o Predefined platform services
o Predefined languages and APIs
o The environment can be configured to some extent
o The application model may be constrained
• E.g. „no direct access to the file system”, „no direct access to OS
networking”, ...
Google AppEngine
Microsoft Windows Azure Platform
Amazon Beanstalk
IaaS
Annotations:
Capability: access to fundamental computational
resources
o Most fundamental manifestation: „renting virtual
machines”
o You run what you like on the OS you get
o Resources are usually either logical or virtualized
o Meaning no direct access to the hypervisor & HW level
Amazon Elastic Compute Cloud (EC2)
o Xen-based virtualization
o Full ecosystem
o Note: as a rule, general purpose cloud service
Amazon Web Services
Amazon Elastic Compute Cloud - EC2
Annotations:
For building something bigger: e.g. AWS CloudFormation. Amazon Elastic Compute Cloud is a central part of Amazon.com's cloud computing platform, Amazon Web Services. EC2 allows users to rent virtual computers on which to run their own computer applications.
Gartner IaaS MQ 2014
When do I have to / should I / should I not / must I not use clouds?
When don't use
Annotations:
Constant load
Legacy systems
Security, legal obligations and regulatory
compliance
Demand and Capacity
Deployment models
Annotations:
Private: for a single organization with internal tenants. May be locally managed and owned by the organization.
Community: a cross-organizational community shares
the cloud resources (can be closed)
o Gorvernment, healthcare, finance, education, ...
Public: open (!= free (as in beer)) access. Operator owns the service infrastructure
Hybrid: composition of two or more clouds with data
and application portability
Cost optimization
Annotations:
There are costs involved with...
o Demand left unserved
o Overcapacity
The unit price unit price of a cloud can be higher
than investing in your own infrastructure, but...
... the same goes for hiring a car or a hotel room!
Hybrid clouds: private – base load, public: varying
o Nontrivial optimization problem
o Still have to guess predict future demand
Demand and Capacity
Scaling resources
Annotations:
"Scale out”
o Parallelizability?
o "webscale” technologies
o Clustering and replication
o (Mongo DB Is Web Scale)
Capacity planning
Annotations:
Too low capacity: unserved demand
o E.g. planning for average load
Too high capacity: not economical (?)
o E.g. planning for maximum load
Physical („in-house”) capacity is usually slow and costly to increase...o ... and decrease!
(One-time) investment and commitment
Demand?
...surges that can’t be predicted
The cloud is scalable, let's use it!
For larger businesses with existing internal data centers, well-managed virtualized infrastructure and efficient IT operations teams, IaaS for steady-state
workloads is often no less expensive, and may be
more expensive, than an internal private cloud.”
Cloud deployment models
Free time / free speedup
Paralellizable loads
Annotations:
More and more embarrassingly parallel problems and „scale-out” applications
NYT TimesMachine [12]: public domain archive
o Conversion for the web [13]: Hadoop, few hundred
VMs, 36 hours
Due to usage based pricing costs approx. the one VM
In a sense, „speedup for free”