cloud computing: architectures and design issues

57
Cloud Computing Cloud Computing Architectures and Design Issues Architectures and Design Issues Ozalp Babaoglu, Stefano Ferretti, Moreno Marzolla, Fabio Panzieri {babaoglu, sferrett, marzolla, panzieri}@cs.unibo.it

Upload: others

Post on 03-Feb-2022

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Cloud Computing: Architectures and Design Issues

Cloud ComputingCloud ComputingArchitectures and Design IssuesArchitectures and Design Issues

Ozalp Babaoglu, Stefano Ferretti, Moreno Marzolla, Fabio Panzieri{babaoglu, sferrett, marzolla, panzieri}@cs.unibo.it

Page 2: Cloud Computing: Architectures and Design Issues

Seminari DISI 2012 / Cloud Computing 2

Outline

● What is Cloud Computing?● “A View from Bologna”● Design Issues

● Energy Reduction● P2P Cloud● QoS-aware Clouds

Page 3: Cloud Computing: Architectures and Design Issues

Seminari DISI 2012 / Cloud Computing 3

What is Cloud Computing?

“Cloud computing is a model for enabling ubiquitous, convenient, on-demand network access to a shared pool of configurable computing resources (e.g., networks, servers, storage, applications, and services) that can be rapidly provisioned and released with minimal management effort or service provider interaction.”

The NIST Definition of Cloud Computing,Special Publication 800-145

Page 4: Cloud Computing: Architectures and Design Issues

Seminari DISI 2012 / Cloud Computing 4

Main Characteristics

● On-demand self-service. ● Broad network access. ● Resource pooling. ● Rapid elasticity. ● Measured service.

Page 5: Cloud Computing: Architectures and Design Issues

Seminari DISI 2012 / Cloud Computing 5

Data Center

Service Models

Application

Platform

Infrastructure

Hardware

Infrastructure as a Service (IAAS)

Platform as a Service (PAAS)

Software as a Service (SAAS)

Amazon EC2

Microsoft Azure, Google AppEngine

Google Apps, SalesForce.com

Qi Zhang, Lu Cheng, Raouf Boutaba, Cloud computing: state-of-the-art and research challenges, J Internet Serv Appl (2010) 1: 7–18

Page 6: Cloud Computing: Architectures and Design Issues

Seminari DISI 2012 / Cloud Computing 6

Deployment Model

● Public Cloud● Cloud infrastructure available to the general public

● Community Cloud● Cloud infrastructure available to a community of users

with shared concerns

● Private Cloud● Cloud infrastructure available to a single organization

● Hybrid Cloud● Any combination of the above

Page 7: Cloud Computing: Architectures and Design Issues

Seminari DISI 2012 / Cloud Computing 7

Page 8: Cloud Computing: Architectures and Design Issues

Seminari DISI 2012 / Cloud Computing 8

Bologna

F. Panzieri, O. Babaoglu, V. Ghini, S. Ferretti, M. Marzolla, Distributed Computing in the 21st Century: Some Aspects of Cloud Computing, Volume 6875 of LNCS, October 2011, ISBN 978-3-642-24540-4

Page 9: Cloud Computing: Architectures and Design Issues

Seminari DISI 2012 / Cloud Computing 9

A view from Bologna

SLA mgmt

Virtualization

- MMOG- “Private” clouds

- HPC- Data analytics

- Mobile gateways- Loosely coupled applications

Virtualization

SLA mgmt SLA mgmt

Virtualization

Cloud API

Applications

QoS policymanagement

VirtualizationLayer

Cloud coreinfrastructure

Centralized Federated Peer-to-peer

Page 10: Cloud Computing: Architectures and Design Issues

Seminari DISI 2012 / Cloud Computing 10

A view from Bologna

SLA mgmt

Virtualization

- MMOG- “Private” clouds

- HPC- Data analytics

- Mobile gateways- Loosely coupled applications

Virtualization

SLA mgmt SLA mgmt

Virtualization

Cloud API

Applications

QoS policymanagement

VirtualizationLayer

Cloud coreinfrastructure

Centralized Federated Peer-to-peer

Page 11: Cloud Computing: Architectures and Design Issues

Seminari DISI 2012 / Cloud Computing 11

Energy Reduction through gossiping

SLA mgmt

Virtualization

- MMOG- “Private” clouds

- HPC- Data analytics

- Mobile gateways- Loosely coupled applications

Virtualization

SLA mgmt SLA mgmt

Virtualization

Cloud API

Applications

QoS policymanagement

VirtualizationLayer

Cloud coreinfrastructure

Centralized Federated Peer-to-peerM. Marzolla, O. Babaoglu, F. Panzieri. Server Consolidation in Clouds through Gossiping. In Proc. of First IEEE Int. Workshop on Sustainable Internet and Internet for Sustainability, Lucca, Italy, June 2011.

Page 12: Cloud Computing: Architectures and Design Issues

Seminari DISI 2012 / Cloud Computing 12

Electricity use breakdown

Toward energy efficient computing, ACM Queue, http://queue.acm.org/detail.cfm?id=1730791

Page 13: Cloud Computing: Architectures and Design Issues

Seminari DISI 2012 / Cloud Computing 13

Virtualization

● Main feature of a Cloud system● Dynamic scalability (pay-as-you-go economic model)● Virtualization of resources

● Assumptions● Physical resources (servers) are multi-core/multi-processor

machines; each server can support up to C VM instances● Users request Virtual Machine (VM) instances● Users release instances when no longer needed● The VM monitor supports live migration of VMs

● Goal● Minimize energy consumption by consolidating VMs

Page 14: Cloud Computing: Architectures and Design Issues

Seminari DISI 2012 / Cloud Computing 14

VM Consolidation

OS

VM Monitor

OS

VM Monitor

OS

VM Monitor

OS

VM Monitor

OS

VM Monitor

OS

VM Monitor

Host 1 Host 2 Host 3

Host 3Host 2Host 1

VM4

VM1

VM1

VM2

VM4

VM3

VM1

VM2

VM3

VM4

(a) Before consolidation

(b) After consolidation of VM1 and VM

4 to host 2

Page 15: Cloud Computing: Architectures and Design Issues

Seminari DISI 2012 / Cloud Computing 15

VM consolidation through gossiping

● Each server hosts the V-MAN daemon

● Daemons maintain an overlay network such that each daemon is connected to at most K other nodes

● Daemons exchange messages only with neighbors

● The overlay is maintained with the Newscast algorithm

V

V

V

V

V

V V

V

V

V V

V

Page 16: Cloud Computing: Architectures and Design Issues

Seminari DISI 2012 / Cloud Computing 16

Example (1)

● Capacity = 4

Host 1

VM

VM

Host 2

VM

Page 17: Cloud Computing: Architectures and Design Issues

Seminari DISI 2012 / Cloud Computing 17

Example (1)

● Capacity = 4

Host 1

VM

VM

Host 2

VM

I have two VMs

Page 18: Cloud Computing: Architectures and Design Issues

Seminari DISI 2012 / Cloud Computing 18

Example (1)

● Capacity = 4

Host 1

VM

VM

Host 2

VM

I send you one

Page 19: Cloud Computing: Architectures and Design Issues

Seminari DISI 2012 / Cloud Computing 19

Example (2)

● Capacity = 4

Host 1

VM

VM

Host 2

VMVM VM

Page 20: Cloud Computing: Architectures and Design Issues

Seminari DISI 2012 / Cloud Computing 20

Example (2)

● Capacity = 4

Host 1

VM

VM

Host 2

VMVM VM

I have two VMs

Page 21: Cloud Computing: Architectures and Design Issues

Seminari DISI 2012 / Cloud Computing 21

Example (2)

● Capacity = 4

Host 1

VM

VM

Host 2

VM

VM VM

Send me one

Page 22: Cloud Computing: Architectures and Design Issues

Seminari DISI 2012 / Cloud Computing 22

Performance assessment

● We implemented V-MAN using the cycle-driven simulator engine provided by PeerSim (peersim.sf.net)

● Parameters:● K=20 (each node maintains a list of 20 neighbors)● C=8 (maximum capacity of each host is 8 VMs)● Topology is managed using Newscast● Length of each simulation run is 20 steps● Results are averages of 10 independent simulation runs

● Results:

● F0 Fraction of empty hosts

● F0, opt

Optimal fraction of empty hosts

Page 23: Cloud Computing: Architectures and Design Issues

Seminari DISI 2012 / Cloud Computing 23

Static System

Page 24: Cloud Computing: Architectures and Design Issues

Seminari DISI 2012 / Cloud Computing 24

Animation

Page 25: Cloud Computing: Architectures and Design Issues

Seminari DISI 2012 / Cloud Computing 25

Dynamic system

Page 26: Cloud Computing: Architectures and Design Issues

Seminari DISI 2012 / Cloud Computing 26

Dynamic System with failures

Page 27: Cloud Computing: Architectures and Design Issues

Seminari DISI 2012 / Cloud Computing 27

A P2P Cloud

SLA mgmt

Virtualization

- MMOG- “Private” clouds

- HPC- Data analytics

- Mobile gateways- Loosely coupled applications

Virtualization

SLA mgmt SLA mgmt

Virtualization

Cloud API

Applications

QoS policymanagement

VirtualizationLayer

Cloud coreinfrastructure

Centralized Federated Peer-to-peerO. Babaoglu, M. Marzolla, M. Tamburini. Design and Implementation of a P2P Cloud System. To appear in Proc. of the 27th ACM Symposium on Applied Computing (SAC 2012), Trento, Italy, March 2012.

Page 28: Cloud Computing: Architectures and Design Issues

Seminari DISI 2012 / Cloud Computing 28

Self-managing P2P Cloud

● Assemble a Cloud out of individual devices● E.g. low-power devices such as set-top boxes,

ADSL modems, …● New business model to harness the computational

power of otherwise idle devices

● Individual devices leave and join, but the Cloud keeps a coherent structure anyway● No central controller

Page 29: Cloud Computing: Architectures and Design Issues

Seminari DISI 2012 / Cloud Computing 29

Self-managing P2P Cloud

O. Babaoglu, M. Jelasity, A-M Kermarrec, A. Montresor, M. van Steen, Managing clouds: a case for a fresh look at large unreliable dynamic networks ACM SIGOPS Operating Systems Review, 2006

Page 30: Cloud Computing: Architectures and Design Issues

Seminari DISI 2012 / Cloud Computing 30

P2P Cloud—Goals

● Implement fully decentralized monitoring and Management capabilities● Allocate x% of available nodes for a given task● Allocate at least n node for a given task● How many nodes are currently busy?● How many compute hours have been consumed by

user X?

Page 31: Cloud Computing: Architectures and Design Issues

Seminari DISI 2012 / Cloud Computing 31

P2P Cloud—Architecture

P2PCS Daemon

Node-to-NodeInterface

User Interface

User

Node

Page 32: Cloud Computing: Architectures and Design Issues

Seminari DISI 2012 / Cloud Computing 32

P2P Cloud—Architecture

Dispatcher T-Man

Peer Sampling Service

AggregationService

MonitoringSystem

Instance Management API

StorageSystem

= implemented modules

StorageAPI

MonitoringAPI

Slicing Service

Authentication / Authorization layer

BootstrappingService

Page 33: Cloud Computing: Architectures and Design Issues

Seminari DISI 2012 / Cloud Computing 33

P2P Cloud—Architecture

Dispatcher T-Man

Peer Sampling Service

AggregationService

MonitoringSystem

Instance Management API

StorageSystem

= implemented modules

StorageAPI

MonitoringAPI

Slicing Service

Authentication / Authorization layer

BootstrappingService

Gather an initial set of nodes to start the message exchange

Page 34: Cloud Computing: Architectures and Design Issues

Seminari DISI 2012 / Cloud Computing 34

P2P Cloud—Architecture

Dispatcher T-Man

Peer Sampling Service

AggregationService

MonitoringSystem

Instance Management API

StorageSystem

= implemented modules

StorageAPI

MonitoringAPI

Slicing Service

Authentication / Authorization layer

BootstrappingService

Provide each node with a list of peers to exchange

messages with

Page 35: Cloud Computing: Architectures and Design Issues

Seminari DISI 2012 / Cloud Computing 35

P2P Cloud—Architecture

Dispatcher T-Man

Peer Sampling Service

AggregationService

MonitoringSystem

Instance Management API

StorageSystem

= implemented modules

StorageAPI

MonitoringAPI

Slicing Service

Authentication / Authorization layer

BootstrappingServiceRank the nodes according

to one attribute (e.g., 5% of the total n. of nodes; 1%

fastest nodes; ...)

Page 36: Cloud Computing: Architectures and Design Issues

Seminari DISI 2012 / Cloud Computing 36

P2P Cloud—Architecture

Dispatcher T-Man

Peer Sampling Service

AggregationService

MonitoringSystem

Instance Management API

StorageSystem

= implemented modules

StorageAPI

MonitoringAPI

Slicing Service

Authentication / Authorization layer

BootstrappingService

Compute global measures (e.g., network size) using local message exchange

Page 37: Cloud Computing: Architectures and Design Issues

Seminari DISI 2012 / Cloud Computing 37

P2P Cloud—Architecture

Dispatcher T-Man

Peer Sampling Service

AggregationService

MonitoringSystem

Instance Management API

StorageSystem

= implemented modules

StorageAPI

MonitoringAPI

Slicing Service

Authentication / Authorization layer

BootstrappingService

Build an overlay network with a given topology

(e.g., tree, ring, mesh...)

Page 38: Cloud Computing: Architectures and Design Issues

Seminari DISI 2012 / Cloud Computing 38

Aggregation exampleComputing the mean

X Y

X Y

X

X

(X+Y)/2

Y

Y

(X+Y)/2

Page 39: Cloud Computing: Architectures and Design Issues

Seminari DISI 2012 / Cloud Computing 39

P2PCS: Building subclouds

2

4 5

3

6

1

7 8 9

2

4 5

3

6

1

7 8 9

2

4 5

3

6

1

7 8 9

(a) (b) (c)

slice 2

slice 1slice 1

Page 40: Cloud Computing: Architectures and Design Issues

Seminari DISI 2012 / Cloud Computing 40

P2PCS API

● run-nodes subcloud_id number

● Creates a subcloud with number nodes; subcloud_id is set as the name of the newly created subcloud

● terminate-nodes subcloud_id nodename1 … nodenameN

● Removes the named nodes from the subcloud with given id

● add-new_nodes subcloud_id number

● Adds number nodes to the subcloud identified by subcloud_id. The new nodes are chosen without any particular criteria

● describe-instances nodename

● Prints a human-readable description of the given node

● monitor-instances

● Return the global size of the Cloud using the aggregation service

● unmonitor-instances

● Stops printing the global size of the Cloud

Page 41: Cloud Computing: Architectures and Design Issues

Seminari DISI 2012 / Cloud Computing 41

QoS-aware Clouds

SLA mgmt

Virtualization

- MMOG- “Private” clouds

- HPC- Data analytics

- Mobile gateways- Loosely coupled applications

Virtualization

SLA mgmt SLA mgmt

Virtualization

Cloud API

Applications

QoS policymanagement

VirtualizationLayer

Cloud coreinfrastructure

Centralized Federated Peer-to-peerS. Ferretti, V. Ghini, F. Panzieri, M. Pellegrini, E. Turrini, QoS-aware Clouds, in Proc. 3rd Int. Conf. on Cloud Computing (IEEE Cloud 2010), Miami (USA), IEEE, July 2010.

Page 42: Cloud Computing: Architectures and Design Issues

Seminari DISI 2012 / Cloud Computing 42

Motivations

● QoS: crucial factor for the success of cloud computing providers● if not delivered as expected, it may impact the provider’s

reputation

● Compliance to SLA● SLA: legally binding contract stating the QoS guarantees

required by cloud customer● typically includes max response time, throughput, error rate● may include non functional requirements such as timeliness,

scalability, availability● we address response time, only

Page 43: Cloud Computing: Architectures and Design Issues

Seminari DISI 2012 / Cloud Computing 43

SLA Example

<ContainerServiceUsage name="HighPrority“ requestRate="100/s">

<Operations>

...

</Operations>

...

</ContainerServiceUsage>

• Customer obligations and rights– Maximum request rate from the client application to

the virtual execution environment in the cloud– Operations the application is allowed to invoke

Page 44: Cloud Computing: Architectures and Design Issues

Seminari DISI 2012 / Cloud Computing 44

SLA Example

<ServerResponsabilities serviceAvailability="0.99“ efficiency="0.95"

efficiencyValidity="2">

<OperationPerformance name="HighPriority“ maxResponseTime="1.0s">

<Operations>

</Operations>

</OperationPerformance>

...

</ServerResponsabilities>

• Responsibilities of a service running in the cloud

Page 45: Cloud Computing: Architectures and Design Issues

Seminari DISI 2012 / Cloud Computing 45

SLA Example

<ServerResponsabilities serviceAvailability="0.99“ efficiency="0.95"

efficiencyValidity="2">

<OperationPerformance name="HighPriority“ maxResponseTime="1.0s">

<Operations>

</Operations>

</OperationPerformance>

...

</ServerResponsabilities>

• Responsibilities of a service running in the cloud

Probability that the service is available over a predefined

time period

Page 46: Cloud Computing: Architectures and Design Issues

Seminari DISI 2012 / Cloud Computing 46

SLA Example

<ServerResponsabilities serviceAvailability="0.99“ efficiency="0.95"

efficiencyValidity="2">

<OperationPerformance name="HighPriority“ maxResponseTime="1.0s">

<Operations>

</Operations>

</OperationPerformance>

...

</ServerResponsabilities>

• Responsibilities of a service running in the cloud

Fraction of SLA violations that can be tolerated, within a predefined time interval, before the service

provider incurs a penalty

Page 47: Cloud Computing: Architectures and Design Issues

Seminari DISI 2012 / Cloud Computing 47

SLA Example

<ServerResponsabilities serviceAvailability="0.99“ efficiency="0.95"

efficiencyValidity="2">

<OperationPerformance name="HighPriority“ maxResponseTime="1.0s">

<Operations>

</Operations>

</OperationPerformance>

...

</ServerResponsabilities>

• Responsibilities of a service running in the cloud

Required service responsiveness

Page 48: Cloud Computing: Architectures and Design Issues

Seminari DISI 2012 / Cloud Computing 48

SLA Example

<InfrastructureSLA> <node typename="alpha"> <cpu num="4" type="x86-64“ performance="X"/>

<ram dim="64GB" performance="Y"/> <storage dim="640GB“ performance="Z"/>

<network> <if name="eth0">

<incoming rate="5Mbit" peak="10Mbit" maxburst="10MB"/> <outgoing rate ... />

…</network>

</node>...

</InfrastructureSLA>

• SLA between the service provider and the cloud infrastructure hosting that service

Hardware characteristics

Network characteristics

Page 49: Cloud Computing: Architectures and Design Issues

Seminari DISI 2012 / Cloud Computing 49

QoS-aware Cloud Architecture

● Main components● Load balancer● Monitoring service● SLA policy engine● Configuration

service

reconfiguration request

Page 50: Cloud Computing: Architectures and Design Issues

Seminari DISI 2012 / Cloud Computing 50

Load Balancer

● Implements the load dispatching and balancing functionalities

● Receives requests from clients and dispatches them to virtual resources, balancing the load

● Incorporates a SLA Policy Engine which analyzes logs of the Monitoring Service to identify SLA violations

Page 51: Cloud Computing: Architectures and Design Issues

Seminari DISI 2012 / Cloud Computing 51

Monitoring Service

● Monitors the environment to detect QoS deviations from what specified in the SLA

● The component within the Load Balancer monitors incoming requests and related responses

● There is a Monitoring Service instance for each virtual resource

Page 52: Cloud Computing: Architectures and Design Issues

Seminari DISI 2012 / Cloud Computing 52

Configuration Service

● Responsible for both configuration and run-time re-configuration of the application hosting environment

● Dynamically resizes the resources for the service by adding/removing them as needed

Page 53: Cloud Computing: Architectures and Design Issues

Seminari DISI 2012 / Cloud Computing 53

Experimental Evaluation

• Tool implements principal components

• Load balancing policies

• QoS handling policies

• Assumptions: required hosting SLA efficency = 95%, VM allocation time = 2s

• Other tests carried out with VM allocation time = 6s, 10s

• VM allocation can take up to 400s

RequestGenerator

Load BalancerResponseGenerator

ConfigurationService

MonitoringSystem

SLA PolicyEnginer

Page 54: Cloud Computing: Architectures and Design Issues

Seminari DISI 2012 / Cloud Computing 54

a) Response time• VMs allocated as load increases and

released as it decreases

a) Violation Rate• Peaks occur a new VM is added

Load progressively increased until reaching 90 requests per sec, then pogressively decreased

Preliminary Results

Page 55: Cloud Computing: Architectures and Design Issues

Seminari DISI 2012 / Cloud Computing 55

a) Response time• VMs allocated as load increases and

released as it decreases

a) Violation Rate• Peaks occur a new VM is added

Augmented load till reaching 13 VMs

Preliminary Results

Page 56: Cloud Computing: Architectures and Design Issues

Seminari DISI 2012 / Cloud Computing 56

Conclusions

● We described some recent results in the area of Cloud Computing● “Bologna View” of Cloud Computing● Energy reduction through VM consolidation● P2P Clouds● QoS management in Clouds

● Work in progress● QoS management using performance models @ runtime

(e.g., QoS-aware energy reduction)● Cloud-enabled applications (mobility)● ...

Page 57: Cloud Computing: Architectures and Design Issues

Seminari DISI 2012 / Cloud Computing 57