cloud computing: highlights

Post on 16-May-2015

414 Views

Category:

Technology

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Cloud computing: highlights

Luís Bastião - bastiao@ua.pt

2

Outlines

Cloud computing: natural evolution Stack Deployment models

Services Blobstore/Datastore Databases Notification Systems

Frameworks Google AppEngine PubNub Jclouds AWS

Overview

3

4

Computing paradigm

5

Computing paradigm

6

Cloud computing: definition

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

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.”

8

Clod computing: definition

Resources as a Commodity

9

Anywhere and anytime

http://cloudcomputingcompaniesnow.com/

10

1) No capital expenditures

11

2) Pay only what you need

12

3) Elastic capacity

13

4) Focus on development

14

5) No need to maintain infrastructure

15

6) Redundancy

16

7) Design for failure

17

Deployment models

18

Increase efficiently

19

Increase efficiently

20

Increase efficiently

21

Increase efficiently

22

Increase efficiently

23

Cloud computing providers

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.

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

Services

26

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

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)

29

Infrastructure-as-a-Service

Adding “servers” in a click

Run it in just a few minutes, not days

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

31

Infrastructure-as-a-Service - Hybrid

32

High Level: Platform-as-a-Service

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

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

34

Storage-as-a-Service

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

35

Databases – Columnar Data

Flexible and mutable tables

Key/Value structure

Providers: Datastore Google AppEngine Azure Table SimpleDB – AWS

36

Notification systems

Asynchronous message queue

HTTP protocol

Publish/Subscribe pattern

Examples: Channel API PubNub

Frameworks/SDKs

37

Google AppEngine: What is it?

Platform-as-a-Service

Languages: Java and Python

Create Web Applications

Free (to start with)

www.appspot.com

39

Google AppEngine: services

40

Google AppEngine: Dashboard

41

Google AppEngine: Dashboard

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”

43

Requires a new way of thinking

44

Google AppEngine: Channel API

Channel API: notification and collaborative environment

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

46

PubNub

47

Multi cloud frameworks

Jclouds: Multi cloud library

Services: Computing Service Blobstore service

Language: Java

Supports several cloud providers for Computing Utility and Storage

Jclouds.org/github

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();

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.

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)

53

Thanks for yourattention!

bastiao@ua.pttwitter.com/luisbastiao

top related