CLOUD COMPUTING
WHAT IS
CLOUD
COMPUTING?
It is Internet-based computing, whereby shared
resources, software, and information are
provided to computers and other devices on
demand.
HOW DOES CLOUD
COMPUTING WORK?
1. Various providers let you create virtual servers
1. Set up an account, perhaps just with a credit card
2. You create virtual servers ("virtualization")
1. Choose the OS and software each "instance" will have
2. It will run on a large server farm located somewhere
3. You can instantiate more on a few minutes' notice
4. You can shut down instances in a minute or so
3. They send you a bill for what you use
System
serve Adminis
rs as trator
hardw a who s ofte
are, t le un n talk
appli he O S it tha a b ou
o na l
catio , the t i nclud t
cept
Serve
rs are
ns. storag
e, and
es the
funct o f t he
t
raditi
r C on ion i. en re
SQ L e. the ferred
serve Exch t o by
If the
File s
r, t h e File a n
serve
g e serve
their
r, the
The T
Exch e r, etc.
ange rver fills
Serve
then serve up, o
the S r b ec r the
add i ystem omes
n a ne Adm overt
w ser inistr axed,
ver. ators
must
The Traditional Server Concept
Web Server App Server DB Server EMail
Windows Linux Linux Windows
IIS Glassfish MySQL Exchange
Unless there are multiple
o na l
servers, if a service experiences
cept
a hardware failure, then the
service is down.
raditi
r C on
System Admins can implement
clusters of servers to make them
The T
more fault tolerant. However,
Serve
even clusters have limits on
their scalability, and not all
applications work in a clustered
environment.
Cons
Pros
Expensive
Easy to conceptualize
to acquire and maintain
The T
hardware
Fairly easy to deploy
Serve
Not
Easyvery scalable
to backup
Difficult
Virtually to
anyreplicate
application/service can be
r ad i t i
run from thisistype
Redundancy of setup
difficult to implement
r C on
Vulnerable to hardware outages
In many cases, processor is under-
o n al
utilized
cept
Virtual servers can be scaled out
r
easily.
ept
Serve If the administrators find that the
resources supporting a virtual server are
Conc being taxed too much, they can adjust
the amount of resources allocated to that
rtual
virtual server
A virtual server can be serviced by one
or more hosts, and one host may house
i
The V
more than one virtual server.
Virtual servers themselves can be
migrated from host to host almost at
will.
Cons
Pros
The V
Slightly
Resourceharder to conceptualize
pooling
Slightly more costly (must buy
Highly redundant
hardware, OS, Apps, and now the
Highly available
rtuali
abstraction layer)
Rapidly deploy new servers
Easy to deploy
Co n c
Serve
Reconfigurable while services are
running
Optimizes physical resources by doing
e pt
more with less
r
You don’t have to own the
hardware
es
ext
You “rent” it as needed from a
step
lizati uting tak
the n cloud
There are public clouds
on to
e.g. Amazon EC2, and now many
p
d com
others (Microsoft, IBM, Sun, and
others ...)
A company can create a private
Clou
virtua
one
With more control over security,
etc.
LETS LOOK AT
THE VARIOUS GOALS
ACHIEVED BY
CLOUD COMPUTING
Cost
os t
Many systems have variable
rol
demands
1–C
Cont Batch processing (e.g. New York
Times)
Web sites with peaks (e.g. Forbes)
Go a l
Startups with unknown demand (e.g.
the Cash for Clunkers program)
Reduce risk
Don't need to buy hardware until you
need it
More than scalability -
ss
elasticity!
ty
u sine Used to take 3 - 4 months to give a
Ag ili department a server cluster, then
they would hoard it!
Using MICROSOFT CLOUD,
2-B
about 5 minutes!
And they give it back when they are
Go a l
done!
Scaling back is as important as
scaling up
Various p
virtua rovide
l serve rs let y
rs ou cre
S et up a ate
ud
credit n account, p
rks
card erhaps
w Clo You create
just w
ith a
virtual
g Wo ("virtu
alizati
on")
server
s
Choose th
"instan e OS and
o
ce " wi softwa
putin
l l have re eac
H
It will h
run on
somew a large
here server
You ca farm l
ocated
Com
n insta
minut n
es' not tiate more
You ca
n shut
ice on a fe
w
or so down
instan
They s
end y
ces in
a minu
te
ou a b
ill for
w
Large s
rental cale infra
basis struct
Operat ure av
ailabl
provi in g S e on a
des C ystem vir
“Roll-y
ds
P U is tualiz
o ation
)
o u lation (e.g.
r-own
(Now
provi ” netw Xen)
C l ou des n
Locall etwork iso ork provi
Fully
custo
y spe
cific
storag
lation sionin
g
Service mer self- e abstractions
adver Level Ag
servic
e
ic
tized reem
Reques ents (
S LAs
Publ
via w t s are acc ) a re
Customeb services epted and resou
Intern ers acces rces g
rante
Acco
untab
et s reso
urces
remo
d
tely v
Web-b ility is e-c ia the
“Pay-a ased transacti ommerce b
Customs-you-go” andon ased
er ser flat-r
vice, ate su
r e f un bscrip
ds, et tion
c.
Public
cloud
What s are o
a
cloud pplicatio paqu
e
Many
? ns w
ill wo
rk w e
rk?
Publi o f th e a ll in a
c Clo dv
antag
prem uds a es of
e y wo ise” I
Self-se T
ppear
usefu
fered
by
l for
Lega ce provi
r v i “on
Flexibcy support sioni
n g
What e
d o th
le res
ource
x t e alloc
are re nsion ation
quire s or m
varie d to s odifi
ty o f uppo catio
Ho w
Data a services rt a wide ns
Multip ilation nd applica r
s s im a
Mobi layer gamin tions
?
le de g
v ices
Infrastructure (Mega Datacenters)
Open Source Cloud Infrastructure
Simple
Transparent => need to “see” into the cloud
Scalable => complexity often limits scalability
Extensible
New application classes and service classes may require new features
Clouds are new => need to extend while retaining useful features
Commodity-based
Must leverage extensive catalog of open source software offerings
New, unstable, and unsupported infrastructure design is a barrier to uptake,
experimentation, and adoption
Easy
To install => system administration time is expensive
To maintain => system administration time is really expensive
SERVICES OFFERED BY
CLOUD
Cloud computing
Infrastructure as
Software as service Platform as service
service
Cloud Computing – Simple Definition
Cloud Computing = Software as a Service
+ Platform as a Service
+ Infrastructure as a Service
Software as a Service (SaaS)
From end user’s point of view
Apps are located in the cloud
Software experiences are delivered through the Internet
Cloud Computing – Simple Definition
Cloud Computing = Software as a Service
+ Platform as a Service
+ Infrastructure as a Service
Platform as a Service (PaaS)
From developer’s point of view (i.e. cloud users)
Cloud providers offer an Internet-based platform to developers
who want to create services but don't want to build their own
cloud
Cloud Computing – Simple Definition
Cloud Computing = Software as a Service
+ Platform as a Service
+ Infrastructure as a Service
Infrastructure as a Service (IaaS)
Cloud providers build datacenters
Power, scale, hardware, networking, storage, distributed systems, etc
Datacenter as a service
Cloud users rent storage, computation, and maintenance from
cloud providers (pay-as-you-go; like utility)