14
Cloud Computing Outsource your hardware, rent it by the hour http://www.flickr.com/photos/kky/704056

Cloud Computing

  • Upload
    chick

  • View
    22

  • Download
    0

Embed Size (px)

DESCRIPTION

Cloud Computing. Outsource your hardware, rent it by the hour. http://www.flickr.com/photos/kky/704056791/. What does cloud computing let you do?. You give up worrying about this:. http://www.flickr.com/photos/johnniewalker/359440369/. And run your models here. - PowerPoint PPT Presentation

Citation preview

Page 1: Cloud Computing

Cloud Computing

Outsource your hardware, rent it by the hour

http://www.flickr.com/photos/kky/704056791/

Page 2: Cloud Computing

What does cloud computing let you do?

You give up worrying about this:

http://www.flickr.com/photos/sylvar/31436961/

http

://ww

w.flickr.co

m/p

ho

tos/jo

hn

nie

wa

lker/3

59

44

03

69

/

And run your models here. Paying by the machine hour.

Page 3: Cloud Computing

Different types of clouds for different folks

Consumer clouds Office online

Google Docs, Zoho Syncing and state persistence

MobileMe, Microsoft Exchange, Google Gears Storage and backup

Mozy, Carbonite

Developer Clouds Access to computation

Google App Engine, EC2, Forthcoming MS Product

Page 4: Cloud Computing

Quickie category definition:distributed computing

Traditional parallel computing On one machine (but can be a big one) More tightly coupled Tends to require special hardware and software

Distributed computing Subclass of parallel computing On many machines (can be big or small) HTC, HPC, Grid Computing, etc

Page 5: Cloud Computing

What makes a cloud?

Dynamically assigned group of computersLow startup costs

No initial outlay, pay as you go pricingScales quickly

Request more computation and ye shall receiveLow barrier to entry

Simple interface to manage herd of computers Ability to use any environment or tool you want

(If licensing isn’t a issue)

Page 6: Cloud Computing

Things that aren’t clouds

Your laptop Matlab

Local clusters Matlab distributed computing engine

Volunteer computing BOINC (e.g. Folding@home, SETI@home)

Supercomputer time MPI, Condor, Hadoop

Page 7: Cloud Computing

Would a cloud be useful for you?

Is your problem easily distributable? Monte Carlo simulations are embarrassingly

parallel

Is your peak resource need higher than your average need?

Do you have limited physical space?

Page 8: Cloud Computing

AWS: Many parts, loosely joined

Elastic Compute Cloud (EC2) Rent various powers of computers by the hour

Simple Storage Service (S3) Store the data from and for EC2 computers

Elastic Block Store (EBS) Persistent attached storage for EC2 data

Simple Queue Service (SQS) Pass messages between EC2 computers

Page 9: Cloud Computing

How those parts fit together

Local computer

EC2

Master

Worker

Worker

WorkerS3

AWS

Page 10: Cloud Computing

Levels of EC2 instances

Instance Type

Small XLXL-High

CPU

Memory 1.7GB 15GB 7GB

Processors*

1 32-bit 8 64-bit 20 64-bit

I/O Moderate High High

Price/hr** $0.10 $0.80 $0.80

* Each processor is about the equivalent of an early-2006 1.7 GHz Xeon** Prices are for Linux instances, but Windows is now available for a bit more

Page 11: Cloud Computing

EC2 is neat but not perfect It has good and bad parts. Pros:

Scales really well Large peak capacity for no additional cost No hardware maintenance/storage Integrated back-up solutions Root access to every machine running your model

Cons: Need to do some startup configuration work Does not play very well with MATLAB Costs money ($0.10 to $0.80 per computer per hour)

Page 12: Cloud Computing

S3 and EC2 reliability

Historically, has been near to perfect (quite a bit above 99%)

Disregard entrepreneurs grousing, they don’t matter if you aren’t trying to make money off EC2

New: Yesterday AWS issued guarantee of 99.95% or better uptime

Page 13: Cloud Computing

Cloud wrangling tools

Firefox plug-ins Elasticfox and S3 Firefox Organizer

Python or other programmatic interface Boto

ec2 = boto.connect_ec2(aws_access_key, aws_secret_key) worker_image = ec2.get_image(worker_ami) reservation = worker_image.run()

Commercial web-interface RightScale.com (limited accounts are free)

Page 14: Cloud Computing

Connecting to your instances

Let’s do a little demo…