quelle - a framework for accelerating the development of elastic systems

17
Daniel Moldovan Georgiana Copil, Hong-Linh Truong, Schahram Dustdar QUELLE - a Framework for Accelerating the Development of Elastic Systems Distributed Systems Group ( http://dsg.tuwien.ac.at/ ) Vienna University of Technology (http ://www.tuwien.ac.at/ )

Upload: daniel-moldovan

Post on 24-Jun-2015

443 views

Category:

Education


2 download

DESCRIPTION

Presentation given in Third European Conference on Service-Oriented and Cloud Computing (http://esocc2014.cs.manchester.ac.uk/), 2-4 September, Manchester, United Kingdom A large number of cloud providers offer diverse types of cloud services for constructing complex "cloud-native" software. However, there is a lack of supporting tools and mechanisms for accelerating the development of cloud-native software-defined elastic systems (SESs) based on elasticity capabilities of cloud services. We introduce QUELLE -- a framework for evaluating and recommending SES deployment configurations. QUELLE presents models for describing the elasticity capabilities of cloud services and capturing elasticity requirements of SESs. Based on that QUELLE introduces novel functions and algorithms for quantifying the elasticity capabilities of cloud services. QUELLE's algorithms can recommend SES deployment configurations from cloud services that both provide the required elasticity, and fulfill cost, quality, and resource requirements, and thus can be incorporated into different phases of the development of SESs.

TRANSCRIPT

Page 1: QUELLE - a Framework for Accelerating the Development of Elastic Systems

Daniel MoldovanGeorgiana Copil, Hong-Linh Truong,

Schahram Dustdar

QUELLE - a Framework for Accelerating theDevelopment of Elastic Systems

Distributed Systems Group (http://dsg.tuwien.ac.at/)

Vienna University of Technology (http://www.tuwien.ac.at/)

Page 2: QUELLE - a Framework for Accelerating the Development of Elastic Systems

2

Data-as-a-Service for Machine to Machine platforms Load balancer distributes incoming requests to Event Processing instances Distributed Data Store: Controller and Nodes

MotivationSelecting cloud services for building cloud-native elastic systems (1/3)

Scaling by allocating/deallocating Cloud Offered Services

Page 3: QUELLE - a Framework for Accelerating the Development of Elastic Systems

3

MotivationSelecting cloud services for building cloud-native elastic systems (2/3)

Existing large set of cloud services with different cost/quality/resource options or association possibilities

with other services

Page 4: QUELLE - a Framework for Accelerating the Development of Elastic Systems

4

MotivationSelecting cloud services for building cloud-native elastic systems (3/3)

Load balancer

t1.micro EBS+ i2.xlarge EBS+

...

Cost: /H & / GB

?

Cost: - OnDemand- Spot- Reserved (1/3

years)

Cost: /size/month

Cost: - OnDemand- Reserved (1/3

years)

Cost: /size/month

How do different configuration options of cloud services influence run-time elasticity control of the system

running on top of them?

...

Page 5: QUELLE - a Framework for Accelerating the Development of Elastic Systems

Approach

5

Recommend cloud services providing appropriate run-time control options

Page 6: QUELLE - a Framework for Accelerating the Development of Elastic Systems

Elasticity Capability Elasticity Dependencies

Service

Representing Elasticity of Cloud ServicesElasticity Capabilities of a Cloud Service

Cost

t1.micro

OnDemand

Reserved 1Y light

Spot

...

6

Storage EBS

optional

mandatory

6

Page 7: QUELLE - a Framework for Accelerating the Development of Elastic Systems

Constructing Elastic Software-Defined SystemsEvaluating Elasticity of Cloud Services

7

ChallengeDiffered SESs might prioritize differently different “elasticity

dimensions” (cost, quality, resource)

ApproachDefine set of customizable functions for quantifying/evaluating

diverse elasticity aspects of cloud services

Page 8: QUELLE - a Framework for Accelerating the Development of Elastic Systems

Constructing Elastic Software-Defined SystemsEvaluating Elasticity of Cloud Services

8

Elasticity Quantification Coefficients Elasticity Phase Quantification Coefficients

Elasticity Dependency Type Quantification Coefficients

Elasticity Dependency Volatility Quantification Coefficients

Elasticity Capability Quantification Function

Elasticity Quantification Function

Page 9: QUELLE - a Framework for Accelerating the Development of Elastic Systems

Evaluating Elasticity of Cloud ServicesExample: Elasticity of Amazon EC2 IaaS Services

Elasticity Phase Quantification Coefficient

Elasticity Dependency Volatility Quantification Coefficient

9

Elasticity Dependency Type Quantification Coefficient

Page 10: QUELLE - a Framework for Accelerating the Development of Elastic Systems

Approach

10

Page 11: QUELLE - a Framework for Accelerating the Development of Elastic Systems

Capturing elasticity requirements for SES

11

Elasticity-based strategies Max Overall ElasticityMax Cost ElasticityMax Quality ElasticityMax Resources ElasticityMax Service Association

Property-based Strategies

Max Requirements Max QualityMax ResourcesMin Cost

Page 12: QUELLE - a Framework for Accelerating the Development of Elastic Systems

12

Capturing elasticity requirements for SESExample: M2M SES

Page 13: QUELLE - a Framework for Accelerating the Development of Elastic Systems

Constructing Elastic Software-Defined SystemsEvaluating a single cloud service w.r.t SES requirements

13

We must evaluate not only the cloud service, but also its mandatory and optional configuration options to see what

requirements are fulfilled by them.

Page 14: QUELLE - a Framework for Accelerating the Development of Elastic Systems

14

ExperimentsConstructing SES (1/3)

Integrating elasticity-based service selection with

property-based selection

Page 15: QUELLE - a Framework for Accelerating the Development of Elastic Systems

15

ExperimentsConstructing SES (2/3)

Property-based selection alone might recommend services which do not provide

necessary control options.

Page 16: QUELLE - a Framework for Accelerating the Development of Elastic Systems

ExperimentsConstructing SES (3/3)

16

Solution visualized using Winery (TOSCA Modeling Tool)

Even a single system unit might require multiple cloud services with the correct recommended quality,

resources, and associated cost

Page 17: QUELLE - a Framework for Accelerating the Development of Elastic Systems

Conclusions

Objective Selecting cloud services for building cloud-native elastic systems

Approach Model for representing Elasticity Capabilities of cloud services Model for representing Multi-level Requirements for cloud-native elastic systems Customizable functions for Evaluating Elasticity of cloud services Algorithms for generating configurations for cloud-native elastic services based on

both elasticity driven and standard service selection strategies

Experiments Cloud services can have different elasticity capabilities Ignoring elasticity capabilities of cloud services can result in reducing the available

‘control actions’ over the constructed systems, potentially affecting their run-time elasticity

17

Work partially supported by the European Commission in terms of the CELAR FP7 project (http://www.celarcloud.eu/)

Daniel Moldovan (http://dsg.tuwien.ac.at/staff/dmoldovan/)

Distributed Systems Group (http://dsg.tuwien.ac.at/)

Vienna University of Technology (http://www.tuwien.ac.at/)