cloud computing: highlights

53
Cloud computing: highlights Luís Bastião - [email protected]

Upload: luis-bastiao

Post on 16-May-2015

411 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: Cloud computing: highlights

Cloud computing: highlights

Luís Bastião - [email protected]

Page 2: Cloud computing: highlights

2

Outlines

Cloud computing: natural evolution Stack Deployment models

Services Blobstore/Datastore Databases Notification Systems

Frameworks Google AppEngine PubNub Jclouds AWS

Page 3: Cloud computing: highlights

Overview

3

Page 4: Cloud computing: highlights

4

Computing paradigm

Page 5: Cloud computing: highlights

5

Computing paradigm

Page 6: Cloud computing: highlights

6

Cloud computing: definition

“Cloud computing has the potential to create irreversible changes in how computers are used around the world”

Page 7: Cloud computing: highlights

7

Cloud computing: definition

“Cloud computing technology’s objective is to move any application stored on a computer to a remote location, eliminating all the standard components, including operating systems and hard drives, which are necessary in today’s computers and make them accessible online through a standard browser.”

Page 8: Cloud computing: highlights

8

Clod computing: definition

Resources as a Commodity

Page 9: Cloud computing: highlights

9

Anywhere and anytime

http://cloudcomputingcompaniesnow.com/

Page 10: Cloud computing: highlights

10

1) No capital expenditures

Page 11: Cloud computing: highlights

11

2) Pay only what you need

Page 12: Cloud computing: highlights

12

3) Elastic capacity

Page 13: Cloud computing: highlights

13

4) Focus on development

Page 14: Cloud computing: highlights

14

5) No need to maintain infrastructure

Page 15: Cloud computing: highlights

15

6) Redundancy

Page 16: Cloud computing: highlights

16

7) Design for failure

Page 17: Cloud computing: highlights

17

Deployment models

Page 18: Cloud computing: highlights

18

Increase efficiently

Page 19: Cloud computing: highlights

19

Increase efficiently

Page 20: Cloud computing: highlights

20

Increase efficiently

Page 21: Cloud computing: highlights

21

Increase efficiently

Page 22: Cloud computing: highlights

22

Increase efficiently

Page 23: Cloud computing: highlights

23

Cloud computing providers

Page 24: Cloud computing: highlights

24

So..? Leave it to the experts.

… who have a lot of money to spend to build large datacenters in different locations of the globe.

Page 25: Cloud computing: highlights

Benefits/Challenges

25

Reduce IT infrastructure on the organizations side

Reduce the maintenance of datacenter

Reduce the costs

Energy, air condition

Licenses

Access applications and data “anytime, anywhere”

x Ensure privacy and confidentiality

x Interoperability with existents protocols

x Portability

Page 26: Cloud computing: highlights

Services

26

Page 27: Cloud computing: highlights

27

What fits in the cloud services?

Elastic capacity: applications to scale

SOA applications: all of them use mainly web services to communicate

Access anytime and anywhere

High parallelized workflows

Page 28: Cloud computing: highlights

28

Cloud computing stack

Software as a service(Finished application: for sales and it

customizable)

Plataform as a service(Developer plataform that abstracts the

infrastructure OS)

Infrastructure as a service(Abstract real infrastructure)

Page 29: Cloud computing: highlights

29

Infrastructure-as-a-Service

Adding “servers” in a click

Run it in just a few minutes, not days

Page 30: Cloud computing: highlights

30

Infrastructure-as-a-Service

Create Virtual Machines on demand

Snapshots

Start/Stop machines

Automatically scale

Pay only the resources that the machine are using

There is an API, you can management the infrastructure programming or invoking web services

Page 31: Cloud computing: highlights

31

Infrastructure-as-a-Service - Hybrid

Page 32: Cloud computing: highlights

32

High Level: Platform-as-a-Service

Platform-as-a-Service (PaaS) Storage-as-a-Service Database-as-a-Service Notification-as-a-Service

Page 33: Cloud computing: highlights

33

Storage-as-a-Service

Blobstore: upload blobs/data objects to the cloud

Based on Key, Value concept

Each blobstore can contain several containers/buckets.

They have a Key and the value is a binary blob. The developer can store information

Page 34: Cloud computing: highlights

34

Storage-as-a-Service

Providers: Dropbox API S3 Google Storage Azure Storage Box.net Rackspace Store

Page 35: Cloud computing: highlights

35

Databases – Columnar Data

Flexible and mutable tables

Key/Value structure

Providers: Datastore Google AppEngine Azure Table SimpleDB – AWS

Page 36: Cloud computing: highlights

36

Notification systems

Asynchronous message queue

HTTP protocol

Publish/Subscribe pattern

Examples: Channel API PubNub

Page 37: Cloud computing: highlights

Frameworks/SDKs

37

Page 38: Cloud computing: highlights

Google AppEngine: What is it?

Platform-as-a-Service

Languages: Java and Python

Create Web Applications

Free (to start with)

www.appspot.com

Page 39: Cloud computing: highlights

39

Google AppEngine: services

Page 40: Cloud computing: highlights

40

Google AppEngine: Dashboard

Page 41: Cloud computing: highlights

41

Google AppEngine: Dashboard

Page 42: Cloud computing: highlights

42

Google AppEngine: Datastore

“Bigtable is a distributed storage system for managing structured data that is designed to scale to a very large size: petabytes of data across thousands of commodity servers. Many projects at Google store data in Bigtable, including web indexing, Google Earth, and Google Finance”

Page 43: Cloud computing: highlights

43

Requires a new way of thinking

Page 44: Cloud computing: highlights

44

Google AppEngine: Channel API

Channel API: notification and collaborative environment

Page 45: Cloud computing: highlights

45

PubNub

Free service to do notification in real time

Accessible via Web Services

Easy to use for collaborative systems

Check it out: http://www.pubnub.com/console

Free alternatives to deploy locally: http://www.ape-project.org/ XMPP/Smack

Page 46: Cloud computing: highlights

46

PubNub

Page 47: Cloud computing: highlights

47

Multi cloud frameworks

Page 48: Cloud computing: highlights

Jclouds: Multi cloud library

Services: Computing Service Blobstore service

Language: Java

Supports several cloud providers for Computing Utility and Storage

Jclouds.org/github

Page 49: Cloud computing: highlights

49

Jclouds - blobstore

BlobStoreContext context = new BlobStoreContextFactory().createContext("aws-s3", identity, credential);

BlobMap map = context.createBlobMap(”food");

Blob blob = map.blobBuilder("sushi.jpg")

.payload(new File("sushi.jpg"))// or byte[]. InputStream, etc.

.contentDisposition("attachment; filename=sushi.jpg")

.contentType("image/jpeg")

.calculateMD5().build();

map.put(blob.getName(), blob);

context.close();

Page 50: Cloud computing: highlights

50

Other services

Computing services: launch machines on demand. Allocate processing and memory Grow dynamically Pay what you use

Networking

Payments

Workflow

… and many others.

Page 51: Cloud computing: highlights

51

What to do next?

Keywords: Google AppEngine, AWS S3, Dropbox API, Cloud API

Google AppEngine – SDK (PaaS)

Dropbox API – Storage

Google API – Services

Install your own services (testing)

Page 53: Cloud computing: highlights

53

Thanks for yourattention!

[email protected]/luisbastiao