+ All Categories
Home > Education > COMOT – Platform-as-a-Service for Software-defined Elastic Systems

COMOT – Platform-as-a-Service for Software-defined Elastic Systems

Date post: 22-Apr-2015
Category:
Upload: hong-linh-truong
View: 146 times
Download: 0 times
Share this document with a friend
Description:
 
34
COMOT – Platform-as-a-Service for Software-defined Elastic Systems Hong-Linh Truong Distributed Systems Group Vienna University of Technology [email protected] http://dsg.tuwien.ac.at/research/viecom/ SummerSOC 2014, Hersonissos, Crete, Greece, 1 July, 2014 1
Transcript
Page 1: COMOT – Platform-as-a-Service for Software-defined Elastic Systems

COMOT – Platform-as-a-Service for

Software-defined Elastic Systems

Hong-Linh Truong

Distributed Systems Group

Vienna University of Technology

[email protected]

http://dsg.tuwien.ac.at/research/viecom/

SummerSOC 2014, Hersonissos,

Crete, Greece, 1 July, 2014

1

Page 2: COMOT – Platform-as-a-Service for Software-defined Elastic Systems

Joint work with:

Georgiana Copil, Schahram Dustdar,

Alessio Gambi, Waldemar Hummer,

Duc-Hung Le, Daniel Moldovan, Oliver

Moser, Tien-Dung Nguyen

SummerSOC 2014, Hersonissos,

Crete, Greece, 1 July, 2014

2

NOTE: The content includes some ongoing work

Acknowledgements

Page 3: COMOT – Platform-as-a-Service for Software-defined Elastic Systems

Outline

Motivation

Fundamental building blocks for software-

defined elastic systems

Programming, deploying, controlling, monitoring and

testing elasticity

CoMoT architecture and its services

Demo (next talk)

Conclusions and future work

SummerSOC 2014, Hersonissos,

Crete, Greece, 1 July, 2014

3

Page 4: COMOT – Platform-as-a-Service for Software-defined Elastic Systems

Recall - Elasticity in computing

1. Demand elasticity

Elastic demands from consumers

2. Output elasticity

Multiple outputs with different price and quality

3. Input elasticity

Elastic data inputs, e.g., deal with opportunistic data

4. Elastic pricing and quality models associated

resources

SummerSOC 2014, Hersonissos,

Crete, Greece, 1 July, 2014

4

Page 5: COMOT – Platform-as-a-Service for Software-defined Elastic Systems

Motivation (1)

Multi-dimensional elasticity is the fundamental

requirement for native cloud services

resource elasticity, cost elasticity and quality

elasticity

But fragmented support on engineering

elasticity requirements, execution, monitoring

and testing, e.g.,

Only at resource elasticity at the IaaS level

Lack of elasticity monitoring for applications

Testing is not integrated with other phases

Elasticity within single clouds

SummerSOC 2014, Hersonissos,

Crete, Greece, 1 July, 2014

5

Page 6: COMOT – Platform-as-a-Service for Software-defined Elastic Systems

Service Developer

Infrastructure Provider

ServiceOwner

Service Developer

Designing and

programming software-

defined elastic services

Designing and

programming software-

defined elastic services

Automatic deployment

and configuration

Automatic deployment

and configuration

Elasticity monitoring and

analysis

Elasticity monitoring and

analysisElasticity ControlElasticity Control

ServiceOwner

Infrastructure Provider

ServiceOwner

Easy to

program

elasticity

requirements

Reduced time to market,

easy to reconfigure

+

Easy to understand

service’s elasticity

boundaries

+

Maintains service’s

performance while

reducing cost

Reduces

resources

overprovisioning

+

Motivation (2)

SummerSOC 2014, Hersonissos,

Crete, Greece, 1 July, 2014

6

Native cloud service engineering

Page 7: COMOT – Platform-as-a-Service for Software-defined Elastic Systems

Elasticity

Metrics

Elasticity

Requirements

Elasticity capabilities

(e.g. scale IN/OUT)

So what need to be done? A simple

view

SummerSOC 2014, Hersonissos,

Crete, Greece, 1 July, 2014

7

Programming and deploying services

Page 8: COMOT – Platform-as-a-Service for Software-defined Elastic Systems

Fundamental building blocks for

the elasticity

Conceptualizing and modeling elastic objects and

execution environments

So we can manage diverse types of artifacts and their runtime

in a similar manner

Defining and capturing elasticity primitive operations

associated with elastic objects and environments

Recommending and Programming elastic objects

a software-defined elastic system (SES) is built from elastic

objects

Runtime deploying, control, monitoring and testing

techniques for elastic objects

SummerSOC 2014, Hersonissos,

Crete, Greece, 1 July, 2014

8

Page 9: COMOT – Platform-as-a-Service for Software-defined Elastic Systems

Elastic service units as cloud

programming objects

SummerSOC 2014, Hersonissos,

Crete, Greece, 1 July, 2014

9

Modeling type of units (e.g.,

computation, data,

monitoring,) and their

dependencies

Consumption,

ownership, provisioning,

price, etc.

ElasticService

Unit

Service model

Unit Dependency

ElasticCapability

Function

The functional

capability of the unit

and interface to

access the function Capabilities to be elastic

under different

requirements

Page 10: COMOT – Platform-as-a-Service for Software-defined Elastic Systems

Need to model/capture elasticity

primitive operations

SummerSOC 2014, Hersonissos,

Crete, Greece, 1 July, 2014

10

Page 11: COMOT – Platform-as-a-Service for Software-defined Elastic Systems

Programming: example of software-

defined elastic systems (SESs)

Load balancer

t1.micro EBS+

i2.xlarge EBS+

...

Cost: /hours & / GB

?

Cost: - OnDemand

- Spot

- Reserved (1/3 years)

Cost: /size/month

Cost: - OnDemand

- Reserved (1/3 years)

Cost: /size/month

Greater cost elasticity

Mandatory association with

EBS ( Elastic Block Store)

Greater cost elasticity

Optional association with

EBS( Elastic Block Store)

SummerSOC 2014,

Hersonissos, Crete, Greece,

1 July, 2014

11

Page 12: COMOT – Platform-as-a-Service for Software-defined Elastic Systems

Deploying, Control, Monitoring and

Testing

Runtime configuration

Complex services at multiple software stacks (IaaS,

PaaS and application)

Interfaces with different low-level deployment techniques

Different interactions between deploying and control

and monitoring components

Control elasticity

Using a high-level specification for specifying

elasticity requirements, constraints and strategies

Based on SYBL/rSYBL ([CCGrid 2013])

SummerSOC 2014, Hersonissos,

Crete, Greece, 1 July, 2014

12

Page 13: COMOT – Platform-as-a-Service for Software-defined Elastic Systems

Deploying, Control, Monitoring and

Testing

Elasticity monitoring and analysis

Utilize low-level metrics to build „Elasticity Space“

and analyze the elasticity based on such spaces

(based on MELA – [CloudCom 2013])

Monitoring/analysis at multiple levels level (single

unit, topology/group, and the whole service

Testing elasticity

Using clouds to test cloud applications as well as to

test elasticity properties of cloud applications

[ASE2013, IC2014]

SummerSOC 2014, Hersonissos,

Crete, Greece, 1 July, 2014

13

Page 14: COMOT – Platform-as-a-Service for Software-defined Elastic Systems

SOME TECHNIQUES – THE

VIENNA WAY

SummerSOC 2014, Hersonissos,

Crete, Greece, 1 July, 2014

14

Page 15: COMOT – Platform-as-a-Service for Software-defined Elastic Systems

Programming elasticity:

Quantifying elasticity

SummerSOC 2014, Hersonissos,

Crete, Greece, 1 July, 2014

15

Quantifying functions and configuration

recommendation functions can be used by

software development tools

Daniel Moldovan, Georgiana Copil, Hong-Linh Truong, Schahram Dustdar, QUELLE – a Framework for

Accelerating the Development of Elastic Systems, ESOCC 2014. September 2014

Daniel Moldovan, Georgiana Copil, Hong-Linh Truong, Schahram Dustdar, QUELLE – a Framework for

Accelerating the Development of Elastic Systems, ESOCC 2014. September 2014

Page 16: COMOT – Platform-as-a-Service for Software-defined Elastic Systems

Programming Elasticity:

Recommend elastic service units

Cloud

ecosystems

SummerSOC 2014, Hersonissos,

Crete, Greece, 1 July, 2014

16

Elastic

services to

be developed

Daniel Moldovan, Georgiana Copil, Hong-Linh Truong, Schahram Dustdar, QUELLE – a Framework for

Accelerating the Development of Elastic Systems, ESOCC 2014. September 2014

Daniel Moldovan, Georgiana Copil, Hong-Linh Truong, Schahram Dustdar, QUELLE – a Framework for

Accelerating the Development of Elastic Systems, ESOCC 2014. September 2014

Page 17: COMOT – Platform-as-a-Service for Software-defined Elastic Systems

Programming Elasticity: Elasticity

Quantifying functionsElasticity Phase Quantification Coefficients

𝐸𝑙𝑃ℎ𝑎𝑠𝑒𝑄 𝑝 =

𝑣𝑖 ∶ 𝑖𝑓 𝑝 = 𝐼𝑛𝑠𝑡𝑎𝑛𝑡𝑖𝑎𝑡𝑖𝑜𝑛 𝑇𝑖𝑚𝑒𝑣𝑟 ∶ 𝑖𝑓 𝑝 = 𝑅𝑢𝑛 𝑇𝑖𝑚𝑒𝑣𝑖𝑟 ∶ 𝑖𝑓 𝑝 = 𝐵𝑜𝑡ℎ

Elasticity Dependency Type Quantification Coefficients

𝐸𝑙𝐷𝑒𝑝𝑒𝑛𝑑𝑒𝑛𝑐𝑦𝑄 𝑑𝑒𝑝 = 𝑣𝑜 ∶ 𝑖𝑓 𝑑𝑒𝑝 = 𝑂𝑝𝑡𝑖𝑜𝑛𝑎𝑙 𝐴𝑠𝑠𝑜𝑐𝑖𝑎𝑡𝑖𝑜𝑛𝑣𝑚 ∶ 𝑖𝑓 𝑑𝑒𝑝 = 𝑀𝑎𝑛𝑑𝑎𝑡𝑜𝑟𝑦 𝐴𝑠𝑠𝑜𝑐𝑖𝑎𝑡𝑖𝑜𝑛

Elasticity Dependency Volatility Quantification Coefficients𝑉𝑜𝑙𝑎𝑡𝑖𝑙𝑖𝑡𝑦𝑄(𝑑𝑒𝑝)

Elasticity Capability Quantification Function

𝐸𝐶𝑄 𝐶 = 𝐸𝑙𝑃ℎ𝑎𝑠𝑒𝑄 𝐶. 𝑝ℎ𝑎𝑠𝑒 ∗ 𝑑𝑒𝑝 ∈𝐶.𝑑𝑒𝑝𝑒𝑛𝑑𝑒𝑛𝑐𝑖𝑒𝑠𝑉𝑜𝑙𝑎𝑡𝑖𝑙𝑖𝑡𝑦𝑄 𝑑𝑒𝑝 ∗ 𝐸𝑙𝐷𝑒𝑝𝑒𝑛𝑑𝑒𝑛𝑐𝑦𝑄(𝑑𝑒𝑝)

Elasticity Quantification Function

𝐸𝑄 𝑆 =

𝐷 ∈ 𝑐𝑜𝑠𝑡, 𝑞𝑢𝑎𝑙𝑖𝑡𝑦, 𝑟𝑒𝑠𝑜𝑢𝑟𝑐𝑒,

𝑊 𝐷 ∗

𝐶 ∈𝐷.𝑐𝑎𝑝𝑎𝑏𝑖𝑙𝑖𝑡𝑖𝑒𝑠

𝐸𝐶𝑄 𝐶

SummerSOC 2014, Hersonissos,

Crete, Greece, 1 July, 2014

17

Page 18: COMOT – Platform-as-a-Service for Software-defined Elastic Systems

Programming: domain specific

languages

SummerSOC 2014, Hersonissos,

Crete, Greece, 1 July, 2014

18

The

programmer

does not want

to deal with all

types of

nodes/artifacts

Page 19: COMOT – Platform-as-a-Service for Software-defined Elastic Systems

Runtime deployment and

configuration Multi-cloud, multi-stack, complex topologies

Well-defined APIs for manipulating and provisioning objects

Support different types of objects, e.g., VMs, services, IoT

sensors, gateways,

SummerSOC 2014, Hersonissos,

Crete, Greece, 1 July, 2014

19

Page 20: COMOT – Platform-as-a-Service for Software-defined Elastic Systems

High level Elasticity control

SYBL (Simple Yet Beautiful

Language) for specifying

elasticity requirements

SYBL-supported requirement

levels

Cloud Service Level

Service Topology Level

Service Unit Level

Relationship Level

Programming/Code Level

#SYBL.CloudServiceLevel

Cons1: CONSTRAINT responseTime < 5 ms

Cons2: CONSTRAINT responseTime < 10 ms

WHEN nbOfUsers > 10000

Str1: STRATEGY CASE fulfilled(Cons1) OR

fulfilled(Cons2): minimize(cost)

#SYBL.ServiceUnitLevel

Str2: STRATEGY CASE ioCost < 3 Euro :

maximize( dataFreshness )

#SYBL.CodeRegionLevel

Cons4: CONSTRAINT dataAccuracy>90%

AND cost<4 Euro

#SYBL.CloudServiceLevel

Cons1: CONSTRAINT responseTime < 5 ms

Cons2: CONSTRAINT responseTime < 10 ms

WHEN nbOfUsers > 10000

Str1: STRATEGY CASE fulfilled(Cons1) OR

fulfilled(Cons2): minimize(cost)

#SYBL.ServiceUnitLevel

Str2: STRATEGY CASE ioCost < 3 Euro :

maximize( dataFreshness )

#SYBL.CodeRegionLevel

Cons4: CONSTRAINT dataAccuracy>90%

AND cost<4 Euro

Georgiana Copil, Daniel Moldovan, Hong-Linh Truong, Schahram Dustdar, "SYBL: an Extensible Language for Controlling

Elasticity in Cloud Applications", 13th IEEE/ACM International Symposium on Cluster, Cloud and Grid Computing (CCGrid),

May 14-16, 2013, Delft, Netherlands

Georgiana Copil, Daniel Moldovan, Hong-Linh Truong, Schahram Dustdar, "SYBL: an Extensible Language for Controlling

Elasticity in Cloud Applications", 13th IEEE/ACM International Symposium on Cluster, Cloud and Grid Computing (CCGrid),

May 14-16, 2013, Delft, Netherlands

SummerSOC 2014, Hersonissos,

Crete, Greece, 1 July, 2014

20

Page 21: COMOT – Platform-as-a-Service for Software-defined Elastic Systems

Configurations for multiclouds

SummerSOC 2014, Hersonissos,

Crete, Greece, 1 July, 2014

21

..

<ServiceElasticityPrimitives id="FCO"

ServiceProvider="Flexiant FCO">

<ElasticityPrimitive id="ScaleIn" name="Remove

VM" parameters=""/>

<ElasticityPrimitive id="ScaleOut" name="Create

new VM" parameters=""/>

<ElasticityPrimitive id="AllocateIP" name="Allocate

public IP" parameters="UUID"/>

<ElasticityPrimitive id="AttachDisk" name="Attach

NewDisk" parameters="UUID">

<PrimitiveDependency

dependencyType="AFTER_ENFORCEMENT"

primitiveID="Reboot"/>

MultipleEnforcementPlugins =

flexiant:at.ac.tuwien.dsg.rSybl.cloudInteractionUnit.enfor

cementPlugins.flexiant.EnforcementFlexiantAPI,

openstack:at.ac.tuwien.dsg.rSybl.cloudInteractionUnit.en

forcementPlugins.openstack.EnforcementOpenstackAPI

Configuraring low-

level

Plug-ins to work with

multiple clouds

Configuraring

and capturing

elasticity

primitive

operations

associated with

service units

Page 22: COMOT – Platform-as-a-Service for Software-defined Elastic Systems

Mapping Services Structures to

Elasticity Metrics

SummerSOC 2014, Hersonissos,

Crete, Greece, 1 July, 2014

22

Elasticity directives

can be changed at

runtime

Page 23: COMOT – Platform-as-a-Service for Software-defined Elastic Systems

Elasticity Analysis for Cloud

ServicesMoldovan D., G. Copil,Truong H.-L., Dustdar S. (2013). MELA:

Monitoring and Analyzing Elasticity of Cloud Service. CloudCom

2013

Moldovan D., G. Copil,Truong H.-L., Dustdar S. (2013). MELA:

Monitoring and Analyzing Elasticity of Cloud Service. CloudCom

2013

Elasticity space functions: to determine if a

service unit/service is in the “elasticity behavior”

Elasticity space functions: to determine if a

service unit/service is in the “elasticity behavior”

Elasticity Pathway functions: to characterize the

elasticity behavior from a general/particular view

Elasticity Pathway functions: to characterize the

elasticity behavior from a general/particular view

Elasticity Space

SummerSOC 2014, Hersonissos,

Crete, Greece, 1 July, 2014

23

Page 24: COMOT – Platform-as-a-Service for Software-defined Elastic Systems

Learning elasticity behavior

We need to learn elasticity behaviors and use

them for controlling cloud services

Georgiana Copil, Demetris Trihinas, Hong-Linh Truong, Daniel Moldovan, George Pallis, Schahram Dustdar, Marios

Dikaiakos, ADVISE – a Framework for Evaluating Cloud Service Elasticity Behavior. May 2014. On Submission

Georgiana Copil, Demetris Trihinas, Hong-Linh Truong, Daniel Moldovan, George Pallis, Schahram Dustdar, Marios

Dikaiakos, ADVISE – a Framework for Evaluating Cloud Service Elasticity Behavior. May 2014. On Submission

SummerSOC 2014, Hersonissos,

Crete, Greece, 1 July, 2014

24

Page 25: COMOT – Platform-as-a-Service for Software-defined Elastic Systems

Software-defined

Elastic System

Programming

Software-defined

Elastic System

Programming

Tooling – Elasticity

Programming in

Cloud Systems

Elastic Service

Ecosystem and

Recommendation

Elastic Service

Ecosystem and

Recommendation

DeploymentDeployment

Deployment

Service

Deployment

Service

Test Generating

and Execution

Test Generating

and Execution

Elastic Test

Service

Elastic Test

Service

deploy SDS/

service unitsdeploy elasticity

controller and monitor

Elasticity

Analysis

Elasticity

Analysis

deploy

test cases

ElasticizingElasticizing

Elasticity

Monitoring

and Analysis

Elasticity

Monitoring

and Analysis

Elasticity

Control

Elasticity

Control

test

control

monitor

CoMoT PaaS

Core Services

Multi-Cloud

Environments

Service

Ecosystems

Service Artifact

Repository

Service units

CoMoT (1)

SummerSOC 2014, Hersonissos,

Crete, Greece, 1 July, 2014

25

Hong-Linh Truong et al., "CoMoT – A Platform-as-a-Service for Elasticity in the Cloud", IEEE International

Workshop on the Future of PaaS. Colocated with IC2E 2014

Hong-Linh Truong et al., "CoMoT – A Platform-as-a-Service for Elasticity in the Cloud", IEEE International

Workshop on the Future of PaaS. Colocated with IC2E 2014

Page 26: COMOT – Platform-as-a-Service for Software-defined Elastic Systems

CoMoT (2)

CoMoT is built atop:

QUELLE, rSYBL, MELA, SALSA, AutoCles

Work on multi-cloud environments

Parts of complex applications are deployed in

different clouds

GIT: https://github.com/tuwiendsg and

https://github.com/whummer/AUToCLES

SummerSOC 2014, Hersonissos,

Crete, Greece, 1 July, 2014

26

Page 27: COMOT – Platform-as-a-Service for Software-defined Elastic Systems

QUELLE – QUantifying ELasticity

utiLity Engine

SummerSOC 2014, Hersonissos,

Crete, Greece, 1 July, 2014

27

Daniel Moldovan, Georgiana Copil, Hong-Linh Truong, Schahram Dustdar, QUELLE – a Framework for

Accelerating the Development of Elastic Systems, ESOCC 2014. September 2014

Daniel Moldovan, Georgiana Copil, Hong-Linh Truong, Schahram Dustdar, QUELLE – a Framework for

Accelerating the Development of Elastic Systems, ESOCC 2014. September 2014

Page 28: COMOT – Platform-as-a-Service for Software-defined Elastic Systems

SALSA - the deployment framework

https://github.com/tuwiendsg/SALSAhttps://github.com/tuwiendsg/SALSA

SummerSOC 2014, Hersonissos,

Crete, Greece, 1 July, 2014

28

Support cloud

services at data

centers and IoT

environments

Page 29: COMOT – Platform-as-a-Service for Software-defined Elastic Systems

rSYBL – Elasticity Control Engine

SummerSOC 2014, Hersonissos,

Crete, Greece, 1 July, 2014

29

Page 30: COMOT – Platform-as-a-Service for Software-defined Elastic Systems

MELA -- Elasticity Monitoring as a

Service

Daniel Moldovan, Georgiana Copil, Hong-Linh Truong, Schahram Dustdar, MELA: Monitoring and Analyzing

Elasticity of Cloud Services. CloudCom 2013

Daniel Moldovan, Georgiana Copil, Hong-Linh Truong, Schahram Dustdar, MELA: Monitoring and Analyzing

Elasticity of Cloud Services. CloudCom 2013

SummerSOC 2014, Hersonissos,

Crete, Greece, 1 July, 2014

30

Page 31: COMOT – Platform-as-a-Service for Software-defined Elastic Systems

Software-defined

Elastic System

Description

Deployment

Multi-Level Elasticity Control

CoMoT – Support

all phases for

elasticity

engineering of

cloud software

services

SummerSOC 2014, Hersonissos,

Crete, Greece, 1 July, 201431

Page 32: COMOT – Platform-as-a-Service for Software-defined Elastic Systems

SEE THE FOLLOW-UP DEMO

SummerSOC 2014, Hersonissos,

Crete, Greece, 1 July, 2014

32

Page 33: COMOT – Platform-as-a-Service for Software-defined Elastic Systems

Conclusions and future work

Native cloud applications need novel toolsets

Design, deployment, control, monitoring and testing

of elasticity in interwoven engineering phases

CoMoT introduces concepts of elastic objects and

fundamental building blocks for engineering an end-

to-end elasticity for cloud services

Future works

DSL for elastic objects

Further work on hot deployment and configuration

under elasticity control

Testing elasticity dependencies

SummerSOC 2014, Hersonissos,

Crete, Greece, 1 July, 2014

33

Page 34: COMOT – Platform-as-a-Service for Software-defined Elastic Systems

Thanks for your attention!

Hong-Linh Truong

Distributed Systems GroupTU Wien

[email protected]

dsg.tuwien.ac.at/research/viecom

SummerSOC 2014, Hersonissos,

Crete, Greece, 1 July, 2014

34


Recommended