COP449 - Introduction to Cloud Computing

42
Introduction to Cloud Computing #COP449 Martin Hamilton Head of Internet Services http://martinh.net @martin_hamilton Picture credit: ZDNet / CNET News.com

description

Here are my slides for my recent guest lecture to Computer Science MSc students at Loughborough University. In this talk I introduce some of the key concepts around cloud computing, and show how major players like Google have built industrial scale data centres with their own bespoke technologies. I also explore the role of Linux in cloud computing, and look at opportunities for computer scientists to get involved in cloud computing in each of its facets - Infrastructure, Platform and Software as a Service

Transcript of COP449 - Introduction to Cloud Computing

Page 1: COP449 - Introduction to Cloud Computing

Introduction to Cloud Computing #COP449 Martin Hamilton Head of Internet Services http://martinh.net @martin_hamilton

Picture credit: ZDNet / CNET News.com

Page 2: COP449 - Introduction to Cloud Computing

Picture credit: ZDNet / CNET News.com

Page 3: COP449 - Introduction to Cloud Computing

Picture credit: University of Stanford Infolab

Page 4: COP449 - Introduction to Cloud Computing

Picture credit: University of Stanford Infolab

Page 5: COP449 - Introduction to Cloud Computing

Picture credit: CNET

Page 6: COP449 - Introduction to Cloud Computing

Picture credit: Google

Page 7: COP449 - Introduction to Cloud Computing

Picture credit: Google Picture credit: Google

Page 8: COP449 - Introduction to Cloud Computing

Picture credit: Google

Page 9: COP449 - Introduction to Cloud Computing

Picture credit: Stephen Shankland, CNET

Page 10: COP449 - Introduction to Cloud Computing

Picture credit: Dell

Page 11: COP449 - Introduction to Cloud Computing

Video credit: Google

http://youtu.be/zRwPSFpLX8I

Page 12: COP449 - Introduction to Cloud Computing
Page 13: COP449 - Introduction to Cloud Computing

Picture credit: Eliott C. Back

Page 14: COP449 - Introduction to Cloud Computing

Picture credit: Sam Costello, about.com

Page 15: COP449 - Introduction to Cloud Computing

Picture credit: rptech-world.com

Page 16: COP449 - Introduction to Cloud Computing

Picture credit: rptech-world.com

Page 17: COP449 - Introduction to Cloud Computing

Linux powers: Google, Amazon, Facebook, eBay etc Your TV, set top box, wireless router >500 million Android phones and tablets

Picture credit: rptech-world.com

Page 18: COP449 - Introduction to Cloud Computing

Video credit: Linux Foundation

http://youtu.be/yVpbFMhOAwE

Page 19: COP449 - Introduction to Cloud Computing

Promise of Utility Computing: •  Provision service rapidly •  Flexibility over scaling •  Reduce headcount, power bill,

cooling requirements •  Convert capital expenditure into

operating expenditure •  Concentrate on stuff that genuinely

adds value

Page 20: COP449 - Introduction to Cloud Computing

Promise of Utility Computing:

Page 21: COP449 - Introduction to Cloud Computing

Infrastructure as a Service (IaaS) o  Bring Your Own OS, software, etc o  Public, private, hybrid clouds

Platform as a Service (PaaS)

o  APIs and standards to code against Software as a Service (SaaS)

o  Typically admin dashboard + user facing Web services

Page 22: COP449 - Introduction to Cloud Computing

http://goo.gl/mosw6

Page 23: COP449 - Introduction to Cloud Computing

Infrastructure as a Service (IaaS) o  Bring Your Own OS, software, etc o  Public, private, hybrid clouds

Platform as a Service (PaaS)

o  APIs and standards to code against Software as a Service (SaaS)

o  Typically admin dashboard + user facing Web services

Page 24: COP449 - Introduction to Cloud Computing

IaaS: Hybrid Cloud Example

Slide credit: Phil Richards

Page 25: COP449 - Introduction to Cloud Computing

IaaS: Hybrid Cloud Example

Slide credit: Phil Richards

Page 26: COP449 - Introduction to Cloud Computing

IaaS Opportunities

•  Capacity planning needed to assess resource for move into the cloud

•  Server virtualization expertise •  Data centre design and build •  Sysadmins to run operating systems,

install and maintain software etc •  Hot topic: Live migration of workloads

between containers

Page 27: COP449 - Introduction to Cloud Computing

Infrastructure as a Service (IaaS) o  Bring Your Own OS, software, etc o  Public, private, hybrid clouds

Platform as a Service (PaaS)

o  APIs and standards to code against Software as a Service (SaaS)

o  Typically admin dashboard + user facing Web services

Page 28: COP449 - Introduction to Cloud Computing

PaaS Opportunities •  Building APIs and data models •  Developing and extending existing

open source code, e.g. Hadoop • Writing applications against these

APIs, e.g. Google AppEngine, Amazon Web Services

•  Selling cloud applications, e.g. Google Apps Marketplace

Page 29: COP449 - Introduction to Cloud Computing

PaaS: Google API example

Page 30: COP449 - Introduction to Cloud Computing

$options = array( 'requestScheme' => Zend_Oauth::REQUEST_SCHEME_HEADER, 'version' => '1.0', 'signatureMethod' => 'HMAC-SHA1', 'consumerKey' => $CONSUMER_KEY, 'consumerSecret' => $CONSUMER_SECRET ); $config = new Zend_Oauth_Consumer($options); $token = new Zend_Oauth_Token_Access(); $httpClient = $token->getHttpClient($options); $client = new Zend_Gdata_Docs($httpClient); $feed = $client->getDocumentListFeed( 'https://docs.google.com/feeds/documents/private/full?xoauth_requestor_id=' . urlencode($email_address)); foreach ($feed->entries as $entry) { $title = $entry->title; # etc }

Page 31: COP449 - Introduction to Cloud Computing

Infrastructure as a Service (IaaS) o  Bring Your Own OS, software, etc o  Public, private, hybrid clouds

Platform as a Service (PaaS)

o  APIs and standards to code against Software as a Service (SaaS)

o  Typically admin dashboard + user facing Web services

Page 32: COP449 - Introduction to Cloud Computing

SaaS example: Google Apps Gmail Huge inbox with search: keep and find everything.

Talk Business class IM and VC as easy as email.

Groups Let users easily create and work in teams.

Calendar Make sharing calendars and schedules easy.

Docs Makes collaborating as easy as creating

Sites Allow users to manage their own sites.

Postini Security and compliance solutions.

Marketplace Extend the functionality of Google Apps

Slide credit: Ross Mahon, Google

Page 33: COP449 - Introduction to Cloud Computing

Extending Google Apps

Slide credit: Ross Mahon, Google

Page 34: COP449 - Introduction to Cloud Computing

Continuous Innovation

2010 2011

Priority Inbox

218 feature releases 95 so far…

60+ new Apps

Docs Mobile Editing

Chrome for Business

Cloud

Connect 4 Office

Chrome books

Discussions

in Docs Apps for Apps

Chrome Browser

Slide credit: Ross Mahon, Google

68 releases 116 releases 217 releases

2008 2009 . 2010 2011

150+ releases already!

Page 35: COP449 - Introduction to Cloud Computing

Value Stream Mapping

Page 36: COP449 - Introduction to Cloud Computing

Value Stream Mapping

Page 37: COP449 - Introduction to Cloud Computing

SaaS Opportunities • Migration assistance •  Systems integration, e.g. use APIs to

import/export data •  Day-to-day administration •  Use APIs to extend existing services,

e.g. Gmail contextual gadgets •  Develop new SaaS offerings

o  It's just a website, really :-)

Page 38: COP449 - Introduction to Cloud Computing

Photo licensed under a Creative Commons Attribution-ShareAlike 2.5 License, from angrykeyboarder

Page 39: COP449 - Introduction to Cloud Computing

RMS: GNU Emacs GNU make gcc / gdb Copyleft / GPL

Photo licensed under a Creative Commons Attribution-ShareAlike 2.5 License, from angrykeyboarder

Page 40: COP449 - Introduction to Cloud Computing

A Contrary Viewpoint "If you use a proprietary program or somebody else's web server, you're defenceless. You're putty in the hands of whoever developed that software."

Photo licensed under a Creative Commons Attribution-ShareAlike 2.5 License, from angrykeyboarder

Page 41: COP449 - Introduction to Cloud Computing

http://youtu.be/aXV-yaFmQNk Video credit: UserExperienceWorks YouTube user

Page 42: COP449 - Introduction to Cloud Computing

Introduction to Cloud Computing #COP449 Martin Hamilton Head of Internet Services http://martinh.net @martin_hamilton

Picture credit: ZDNet / CNET News.com