socloud: a multi-cloud paas

Post on 22-Nov-2014

380 Views

Category:

Engineering

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

A distributed Multi-Cloud Platform

TRANSCRIPT

soCloud: Multi-cloud PaaSFawaz Paraiso, Third year Ph.D Student

Supervisors: Lionel Seinturier, Philippe Merle

2

Cloud computing

Cloud computing service models [NIST]

3

Multiple clouds

4

What is Multi-Cloud computing ?

Multi-Cloud denotes the usage of multiple, independent clouds by a client or a service. [1]

[1] Inter-Cloud Architectures and Application Brokering: Taxonomy and Survey Wiley ‘12

5

Multi-cloud adoption

6

Case study

frontend

computing

storage

7

Case study

frontend

computing

storage

8

Case study

frontend

computing

storage

Amazon EC2

9

Case study

frontend

computing

storage

Amazon EC2

10

Case study

frontend

computing

storage

Amazon EC2 CloudBees

11

Case study

frontend

computing

storage

Amazon EC2 CloudBees

12

Case study

frontend

computing

storage

Amazon EC2 CloudBees Heroku

13

Case study

frontend

computing

storage

Amazon EC2 CloudBees Heroku

#1 Multi-cloud Portability

14

Case study

frontend

computing

storage

Amazon EC2 CloudBees Heroku

#1 Multi-cloud Portability

#2 Multi-cloud Provisioning

15

Case study

frontend

computing

storage

Amazon EC2 CloudBees Heroku

#1 Multi-cloud Portability

#2 Multi-cloud Provisioning

16

Case study

frontend

computing

storage

Amazon EC2 CloudBees Heroku

#1 Multi-cloud Portability

#2 Multi-cloud Provisioning

17

Case study

frontend

computing

storage

Amazon EC2 CloudBees Heroku

#1 Multi-cloud Portability

#2 Multi-cloud Provisioning

18

Case study

frontend

computing

storage

Amazon EC2 CloudBees Heroku

#1 Multi-cloud Portability

#2 Multi-cloud Provisioning

19

Case study

frontend

computing

storage

Amazon EC2 CloudBees Heroku

#1 Multi-cloud Portability

#2 Multi-cloud Provisioning

#3 Multi-cloud Elasticity

20

Case study

frontend

computing

storage

Amazon EC2 CloudBees Heroku

#1 Multi-cloud Portability

#2 Multi-cloud Provisioning

#3 Multi-cloud Elasticity

21

Case study

frontend

computing

storage

Amazon EC2 CloudBees Heroku

#1 Multi-cloud Portability

#2 Multi-cloud Provisioning

#3 Multi-cloud Elasticity

22

Case study

frontend

computing

storage

Amazon EC2 CloudBees Heroku

#1 Multi-cloud Portability

#2 Multi-cloud Provisioning

#3 Multi-cloud Elasticity

23

Case study

frontend

computing

storage

Amazon EC2 CloudBees Heroku

#1 Multi-cloud Portability

#2 Multi-cloud Provisioning

#3 Multi-cloud Elasticity

#4 Multi-cloud high availability

24

Case Study

frontend

computing

storage

25

Case Study

frontend

computing

storage

Amazon EC2

26

Case Study

frontend

computing

storage

Amazon EC2

27

Case Study

frontend

computing

storage

Amazon EC2 CloudBees

28

Case Study

frontend

computing

storage

Amazon EC2 CloudBees

29

Case Study

frontend

computing

storage

Amazon EC2 CloudBees

30

Case Study

frontend

computing

storage

Amazon EC2 CloudBees Heroku

31

Case Study

frontend

computing

storage

Amazon EC2 CloudBees Heroku

32

Case Study

frontend

computing

storage

Amazon EC2 CloudBees Heroku

33

Case Study

frontend

computing

storage

Amazon EC2 CloudBees Heroku

frontend computing storage

34

Case Study

frontend

computing

storage

Amazon EC2 CloudBees Heroku

frontend computing storage

#1 Multi-cloud Portability

35

Case Study

frontend

computing

storage

Amazon EC2 CloudBees Heroku

frontend computing storage

#1 Multi-cloud Portability

#2 Multi-cloud Provisioning

36

Case Study

frontend

computing

storage

Amazon EC2 CloudBees Heroku

#1 Multi-cloud Portability

#2 Multi-cloud Provisioning

37

Case Study

frontend

computing

storage

Amazon EC2 CloudBees Heroku

#1 Multi-cloud Portability

#2 Multi-cloud Provisioning

38

Case Study

frontend

computing

storage

Amazon EC2 CloudBees Heroku

#1 Multi-cloud Portability

#2 Multi-cloud Provisioning

39

Case Study

frontend

computing

storage

Amazon EC2 CloudBees Heroku

#1 Multi-cloud Portability

#2 Multi-cloud Provisioning

40

Case Study

frontend

computing

storage

Amazon EC2 CloudBees Heroku

#1 Multi-cloud Portability

#2 Multi-cloud Provisioning

#3 Multi-cloud Elasticity

41

Case Study

frontend

computing

storage

Amazon EC2 CloudBees Heroku

#1 Multi-cloud Portability

#2 Multi-cloud Provisioning

#3 Multi-cloud Elasticity

42

Case Study

frontend

computing

storage

Amazon EC2 CloudBees Heroku

#1 Multi-cloud Portability

#2 Multi-cloud Provisioning

#3 Multi-cloud Elasticity

43

Case Study

frontend

computing

storage

Amazon EC2 CloudBees Heroku

#1 Multi-cloud Portability

#2 Multi-cloud Provisioning

#3 Multi-cloud Elasticity

44

Case Study

frontend

computing

storage

Amazon EC2 CloudBees Heroku

#1 Multi-cloud Portability

#2 Multi-cloud Provisioning

#3 Multi-cloud Elasticity

#4 Multi-cloud high availability

45

Case Study

frontend

computing

storage

Amazon EC2 CloudBees Heroku

#1 Multi-cloud Portability

#2 Multi-cloud Provisioning

#3 Multi-cloud Elasticity

#4 Multi-cloud high availability

46

Case Study

frontend

computing

storage

Amazon EC2 CloudBees Heroku

#1 Multi-cloud Portability

#2 Multi-cloud Provisioning

#3 Multi-cloud Elasticity

#4 Multi-cloud high availability

47

Agenda

Context

Case Study

Challenges

State Of the Art

Contribution

Evaluation

Conclusion & Perspective

48

Challenges

49

Challenges

Multi-CloudPortability

50

Challenges

Multi-CloudPortability

Multi-CloudProvisioning

51

Challenges

Multi-CloudPortability

Multi-CloudProvisioning

Multi-Cloud Elasticity

52

Challenges

Multi-CloudPortability

Multi-CloudProvisioning

Multi-Cloud Elasticity

Multi-CloudHigh

availability

53

Agenda

Context

Case Study

Challenges

State of the Art

Contribution

Evaluation

Conclusion & Perspective

54

Taxonomy of multiple clouds

Inter-Cloud

Cloud FederationMulti-Cloud

Cloud Broker

[1] Inter-Cloud Architectures and Application Brokering: Taxonomy and Survey Wiley ‘12

[1]

55

Taxonomy of multiple clouds

Inter-Cloud

Cloud FederationMulti-Cloud

Service-based Multi-Cloud

Library-based Multi-Cloud

Hybrid Cloud

Cloud Blueprint

Cloud Broker

SLA-based Broker

Triggered-action Broker

Cloud Bursting

Peer-to-Peer Federation

Centralized Federation

Cross-Cloud

Hierarchical Federations

Multi-tier Cloud

Vertical Federations

Horizontal Federations

Horizontal Dynamic Federation

SkyComputing

AggregatedClouds

part of

part of

can use

is a

is ais a

is ais ais a

is ais ais a

is ais a

is a

is a is a

is ais a

is a

can use

Deployableservice

Hostedservice

is a is a

[1] Inter-Cloud Architectures and Application Brokering: Taxonomy and Survey Wiley ‘12

[1]

56

Taxonomy of multiple clouds

Inter-Cloud

Cloud FederationMulti-Cloud

Service-based Multi-Cloud

Library-based Multi-Cloud

Hybrid Cloud

Cloud Blueprint

Cloud Broker

SLA-based Broker

Triggered-action Broker

Cloud Bursting

Peer-to-Peer Federation

Centralized Federation

Cross-Cloud

Hierarchical Federations

Multi-tier Cloud

Vertical Federations

Horizontal Federations

Horizontal Dynamic Federation

SkyComputing

AggregatedClouds

Aoleos

NIMBUS

Deployableservice

Hostedservice

soCloud

57

Taxonomy of multiple clouds

Inter-Cloud

Cloud FederationMulti-Cloud

Service-based Multi-Cloud

Library-based Multi-Cloud

Hybrid Cloud

Cloud Blueprint

Cloud Broker

SLA-based Broker

Triggered-action Broker

Cloud Bursting

Peer-to-Peer Federation

Centralized Federation

Cross-Cloud

Hierarchical Federations

Multi-tier Cloud

Vertical Federations

Horizontal Federations

Horizontal Dynamic Federation

SkyComputing

AggregatedClouds

Aoleos

NIMBUS

Deployableservice

Hostedservice

soCloud

58

Classification Reference Highlight Weakness

Multi-Cloud Portability

[D. Petcu et al ‘12] -Deal with portabilityat IaaS and PaaSlevels

-Onlyasynchronouscommunication- Proprietary APIs

Multi-CloudProvisioning

[Carpentier et al. ‘12] - Based on the OCCI standard

- Work only withcloud providers which adopt the standard

Multi-Cloud Elasticity

[Guillaume et ‘12] - Identify the optimal ressources need to scale

- Proprietaryapplication model

Multi-Cloud Highavailability

[Luis et al. ‘10] - Based on the DMTF Standard

- No DisasterRecovery plan

State of the Art

59

Classification Reference Highlight Weakness

Multi-Cloud Portability

[D. Petcu et al ‘12] -Deal with portabilityat IaaS and PaaSlevels

-Onlyasynchronouscommunication- Proprietary APIs

Multi-CloudProvisioning

[Carpentier et al. ‘12] - Based on the OCCI standard

- Work only withcloud providers which adopt the standard

Multi-Cloud Elasticity

[Guillaume et ‘12] - Identify the optimal ressources need to scale

- Proprietaryapplication model

Multi-Cloud Highavailability

[Luis et al. ‘10] - Based on the DMTF Standard

- No DisasterRecovery plan

State of the Art

60

Classification Reference Highlight Weakness

Multi-Cloud Portability

[D. Petcu et al ‘12] -Deal with portabilityat IaaS and PaaSlevels

-Onlyasynchronouscommunication- Proprietary APIs

Multi-CloudProvisioning

[Carpentier et al. ‘12] - Based on the OCCI standard

- Work only withcloud providers which adopt the standard

Multi-Cloud Elasticity

[Guillaume et ‘12] - Identify the optimal ressources need to scale

- Proprietaryapplication model

Multi-Cloud Highavailability

[Luis et al. ‘10] - Based on the DMTF Standard

- No DisasterRecovery plan

State of the Art

61

Classification Reference Highlight Weakness

Multi-Cloud Portability

[D. Petcu et al ‘12] -Deal with portabilityat IaaS and PaaSlevels

-Onlyasynchronouscommunication- Proprietary APIs

Multi-CloudProvisioning

[Carpentier et al. ‘12] - Based on the OCCI standard

- Work only withcloud providers which adopt the standard

Multi-Cloud Elasticity

[Guillaume et ‘12] - Identify the optimal ressources need to scale

- Proprietaryapplication model

Multi-Cloud Highavailability

[Luis et al. ‘10] - Based on the DMTF Standard

- No DisasterRecovery plan

State of the Art

62

Classification Reference Highlight Weakness

Multi-Cloud Portability

[D. Petcu et al ‘12] -Deal with portabilityat IaaS and PaaSlevels

-Onlyasynchronouscommunication- Proprietary APIs

Multi-CloudProvisioning

[Carpentier et al. ‘12] - Based on the OCCI standard

- Work only withcloud providers which adopt the standard

Multi-Cloud Elasticity

[Guillaume et ‘12] - Identify the optimal ressources need to scale

- Proprietaryapplication model

Multi-Cloud Highavailability

[Luis et al. ‘10] - Based on the DMTF Standard

- No DisasterRecovery plan

State of the Art

63

Agenda

Context

Case Study

Challenges

State of the Art

Contribution

Evaluation

Conclusion & Perspective

64

soCloud

A little about soCloud

We are interested to build service-orientedapplications

PaaS on top of existing cloud providers (IaaS-PaaS)

65

soCloud

A little about soCloud

We are interested to build service-orientedapplications

PaaS on top of existing cloud providers (IaaS-PaaS)Service-oriented application

66

soCloud

A little about soCloud

We are interested to build service-orientedapplications

PaaS on top of existing cloud providers (IaaS-PaaS)Service-oriented application

soCloud PaaS

67

soCloud

A little about soCloud

We are interested to build service-orientedapplications

PaaS on top of existing cloud providers (IaaS-PaaS)Service-oriented application

soCloud PaaS

68

soCloud

A little about soCloud

We are interested to build service-orientedapplications

PaaS on top of existing cloud providers (IaaS-PaaS)Service-oriented application

soCloud PaaS

SCA + soCloud extension

69

soCloud

A little about soCloud

We are interested to build service-orientedapplications

PaaS on top of existing cloud providers (IaaS-PaaS)Service-oriented application

soCloud PaaS

SCA + soCloud extension

FraSCAti [Philippe et al. ARM’12+ *Philippe et al. cloud’12+

70

soCloud: SaaS applications

71

soCloud: SaaS applications

How to build soCloud application ?

72

soCloud: SaaS applications

frontend

computing

storage

73

soCloud: SaaS applications

frontend

computing

storage

74

soCloud: SaaS applications

frontend

computing

storage

frontend

computing

storage

75

soCloud: SaaS applications

frontend

computing

storage

frontend

computing

storage

76

soCloud: SaaS applications

frontend

computing

storage

frontend

computing

storage

contribution contribution contribution

Impl Impl Implfrontend computing storage

77

soCloud: SaaS applications

frontend

computing

storage

frontend

computing

storage

contribution contribution contribution

Impl Impl Implfrontend computing storage

78

soCloud: SaaS applications

frontend

computing

storage

frontend

computing

storage

contribution contribution contribution

Impl Impl Impl

frontend

computing

storage

frontend computing storage

79

soCloud: SaaS applications

frontend

computing

storage

frontend

computing

storage

contribution contribution contribution

Classic SCA

Impl Impl Impl

frontend

computing

storage

frontend computing storage

80

soCloud: SaaS applications

frontend

computing

storage

frontend

computing

storage

contribution contribution contribution

Classic SCA

soCloud SCA

Impl Impl Impl

frontend

computing

storage

frontend computing storage

81

soCloud: SaaS applications

Annotations

82

soCloud: SaaS applications

Annotations

frontend

computing

storage

83

soCloud: SaaS applications

Annotations

frontend

computing

storage

@location = France

84

soCloud: SaaS applications

Annotations

frontend

computing

storage

@location = France

soCloud

85

soCloud: SaaS applications

Annotations

frontend

computing

storage

@location = France

@vm = medium

soCloud

86

soCloud: SaaS applications

Annotations

frontend

computing

storage

@location = France

@vm = medium

87

soCloud: SaaS applications

Annotations

frontend

computing

storage

@location = France

@vm = medium

@rule = select average(responseTime) as avgrsfrom responsivenessEvent.win:time( 60 sec )where numberOfRequests > 10000 and avgrs > 3 sec :: addVM

soCloud

88

soCloud: SaaS applications

Annotations

frontend

computing

storage

@location = France

@vm = medium

@rule = select average(responseTime) as avgrsfrom responsivenessEvent.win:time( 60 sec )where numberOfRequests > 10000 and avgrs > 3 sec :: addVM

?soCloud soCloud

89

soCloud: SaaS applications

Annotations

frontend

computing

storage

@location = France

@vm = medium

@rule = select average(responseTime) as avgrsfrom responsivenessEvent.win:time( 60 sec )where numberOfRequests > 10000 and avgrs > 3 sec :: addVM

@location = Asia

?soCloud soCloud

90

soCloud: SaaS applications

Annotations

frontend

computing

storage

@location = France

@vm = medium

@rule = select average(responseTime) as avgrsfrom responsivenessEvent.win:time( 60 sec )where numberOfRequests > 10000 and avgrs > 3 sec :: addVM

@replication = 2@location = Asia

?soCloud soCloud

91

soCloud: SaaS applications

Annotations

frontend

computing

storage

@location = France

@vm = medium

@rule = select average(responseTime) as avgrsfrom responsivenessEvent.win:time( 60 sec )where numberOfRequests > 10000 and avgrs > 3 sec :: addVM

@replication = 2@location = Asia

?soCloud soCloud soCloud

92

soCloud: SaaS application descriptor

93

soCloud: SaaS application descriptor

94

soCloud: SaaS application descriptor

SCA extension

95

soCloud: SaaS application descriptor

96

soCloud: SaaS application descriptor

EPL statement

97

soCloud: Architecture

soCloud Master

soCloud Agent

98

soCloud: Architecture

soCloud Master

soCloud Agent soCloud AgentsoCloud Agent

99

soCloud: Architecture

soCloud Master

soCloud Agent soCloud AgentsoCloud Agent

soCloud Master

100

soCloud: Architecture

101

soCloud: Architecture

soCloud application

102

soCloud: Architecture

soCloud application

103

soCloud: Architecture

soCloud Master

soCloud application

104

soCloud: Architecture

soCloud Master

105

soCloud: Architecture

soCloud Master

106

soCloud: Architecture

soCloud Master

107

soCloud: Architecture

soCloud Master

108

soCloud: Architecture

soCloud Master

109

soCloud: Architecture

soCloud Master

soCloud Agent soCloud Agent soCloud Agent

110

soCloud: Architecture

soCloud Master

F

soCloud Agent soCloud Agent soCloud Agent

111

soCloud: Architecture

soCloud Master

F

soCloud Agent

C

soCloud Agent soCloud Agent

112

soCloud: Architecture

soCloud Master

F

soCloud Agent

C

soCloud Agent

S

soCloud Agent

113

soCloud: Architecture detail

OSJVM

FraSCAti

Monitoring

WorkloadManager

Controller

ServiceDeployer

Constraintvalidator

Node Provisionning

PaaS Deployment

SaaS Deployment

Load

Balan

cer

114

soCloud: Architecture detail

OSJVM

FraSCAti

Monitoring

WorkloadManager

Controller

ServiceDeployer

Constraintvalidator

Node Provisionning

PaaS Deployment

SaaS Deployment

Load

Balan

cer

soCloud Master

115

soCloud: Architecture detail

OSJVM

FraSCAti

Monitoring

WorkloadManager

Controller

ServiceDeployer

Constraintvalidator

Node Provisionning

PaaS Deployment

SaaS Deployment

Load

Balan

cer

soCloud Agent

soCloud Master

116

soCloud: Architecture detail

OSJVM

FraSCAti

Monitoring

WorkloadManager

Controller

ServiceDeployer

Constraintvalidator

Node Provisionning

PaaS Deployment

SaaS Deployment

Load

Balan

cer

soCloud Agent

soCloud Master

MAPE-K Model

Monitor

Analyse Plan

Execute

Knowledge

117

soCloud: Architecture detail

OSJVM

FraSCAti

Monitoring

WorkloadManager

Controller

ServiceDeployer

Constraintvalidator

Node Provisionning

PaaS Deployment

SaaS Deployment

Load

Balan

cer

soCloud Agent

soCloud Master

MAPE-K Model

Monitor

Analyse Plan

Execute

Knowledge

118

soCloud: Architecture detail

OSJVM

FraSCAti

Monitoring

WorkloadManager

Controller

ServiceDeployer

Constraintvalidator

Node Provisionning

PaaS Deployment

SaaS Deployment

Load

Balan

cer

soCloud Agent

soCloud Master

MAPE-K Model

Monitor

Analyse Plan

Execute

Knowledge

119

soCloud: Architecture detail

OSJVM

FraSCAti

Monitoring

WorkloadManager

Controller

ServiceDeployer

Constraintvalidator

Node Provisionning

PaaS Deployment

SaaS Deployment

Load

Balan

cer

soCloud Agent

soCloud Master

MAPE-K Model

Monitor

Analyse Plan

Execute

Knowledge

120

soCloud: Architecture detail

OSJVM

FraSCAti

Monitoring

WorkloadManager

Controller

ServiceDeployer

Constraintvalidator

Node Provisionning

PaaS Deployment

SaaS Deployment

Load

Balan

cer

soCloud Agent

soCloud Master

MAPE-K Model

Monitor

Analyse Plan

Execute

Knowledge

121

soCloud: Architecture detail

OSJVM

FraSCAti

Monitoring

WorkloadManager

Controller

ServiceDeployer

Constraintvalidator

Node Provisionning

PaaS Deployment

SaaS Deployment

Load

Balan

cer

soCloud Agent

soCloud Master

MAPE-K Model

Monitor

Analyse Plan

Execute

Knowledge

122

soCloud: Architecture detail

OSJVM

FraSCAti

Monitoring

WorkloadManager

Controller

ServiceDeployer

Constraintvalidator

Node Provisionning

PaaS Deployment

SaaS Deployment

Load

Balan

cer

soCloud Agent

soCloud Master

MAPE-K Model

Monitor

Analyse Plan

Execute

Knowledge

123

soCloud: Architecture detail

OSJVM

FraSCAti

Monitoring

WorkloadManager

Controller

ServiceDeployer

Constraintvalidator

Node Provisionning

PaaS Deployment

SaaS Deployment

Load

Balan

cer

soCloud Agent

soCloud Master

MAPE-K Model

Monitor

Analyse Plan

Execute

Knowledge

124

soCloud: Architecture detail

OSJVM

FraSCAti

Monitoring

WorkloadManager

Controller

ServiceDeployer

Constraintvalidator

Node Provisionning

PaaS Deployment

SaaS Deployment

Load

Balan

cer

soCloud Agent

soCloud Master

MAPE-K Model

Monitor

Analyse Plan

Execute

Knowledge

125

soCloud: Architecture detail

OSJVM

FraSCAti

Monitoring

WorkloadManager

Controller

ServiceDeployer

Constraintvalidator

Node Provisionning

PaaS Deployment

SaaS Deployment

Load

Balan

cer

soCloud Agent

soCloud Master

MAPE-K Model

Monitor

Analyse Plan

Execute

Knowledge

126

soCloud: Implementation problematic

Replication

Coordination

Disaster Recovery

Event Processing

Overhead

127

soCloud: Implemenation detail

Components Implementation Detail

Monitoring -Hyperic SIGAR API-JMX

Workload Manager CEP Engine (Esper)

Controller -Wait-Free synchronyzation-Google Fusion Table

Service Deployer -Eval mechanism

Constraint Solver -Solver

Node Provisionning -Jcloud

PaaS Deployment -REST API

SaaS Deployment -REST API

Load Balancer -Asynchronous Non-Blocking (Netty)-Group Membership

128

soCloud: Deployment

129

soCloud: Deployment

dotCloud

soC

lou

dM

aste

r

130

soCloud: Deployment

dotCloud

soC

lou

dM

aste

r

cloudBees

131

soCloud: Deployment

dotCloud

soC

lou

dM

aste

r

cloudBees

soCloud Master leader soCloud Master follower

132

soCloud: Deployment

dotCloud

soC

lou

dM

aste

r

cloudBees

soCloud Master leader soCloud Master follower

Monitoring Monitoring Monitoring

Amazon Windows Azure CloudFoundry

Sen

dm

etri

cs

soC

lou

dA

gen

t

133

soCloud: Deployment

dotCloud

soC

lou

dM

aste

r

cloudBees

soCloud Master leader soCloud Master follower

Monitoring Monitoring Monitoring

Amazon Windows Azure CloudFoundry

Sen

dm

etri

cs

soC

lou

dA

gen

t

134

soCloud: Deployment

dotCloud

soC

lou

dM

aste

r

cloudBees

soCloud Master leader soCloud Master follower

Monitoring Monitoring Monitoring

Amazon Windows Azure CloudFoundry

Sen

dm

etri

cs

soC

lou

dA

gen

t

135

soCloud: Deployment

dotCloud

soC

lou

dM

aste

r

cloudBees

soCloud Master leader soCloud Master follower

Monitoring Monitoring Monitoring

Amazon Windows Azure CloudFoundry

Sen

dm

etri

cs

soC

lou

dA

gen

t

136

soCloud: Deployment

dotCloud

soC

lou

dM

aste

r

cloudBees

soCloud Master leader soCloud Master follower

Monitoring Monitoring Monitoring

Amazon Windows Azure CloudFoundry

Sen

dm

etri

cs

soC

lou

dA

gen

t

137

Contribution

Context

Case Study

Challenges

State Of The Art

Contribution

Evaluation

Conclusion & Perspective

138

Evaluation

Multi-cloud Portability

Multi-cloud Provisionning

Multi-cloud Elasticity

Multi-cloud High availability

139

Multi-cloud Portability & Provisioning

soCloud

soCloud currently supports 10cloud providers

[1] [Guillaume et al. ‘12][2] [Reuven et al. ‘09]

140

Multi-cloud Portability & Provisioning

soCloud

soCloud currently supports 10cloud providers

ConPaaS currently supports 2 cloud providers [1]

Simple Cloud currently supports 3 cloud providers [2]

[1] [Guillaume et al. ‘12][2] [Reuven et al. ‘09]

141

Evaluation

EC2

soCloud applications

soCloud

Legend:

SaaS application

Webcontainers

FraSCAti

Java Virtual MachineCloud providers

Linux Operating System

142

Evaluation

soCloud validate

Multi-cloud Portability

Multi-cloud Provisionning

Multi-cloud Elasticity

Multi-cloud High availability

143

Evaluation

Reaction of soCloud face to flash crowdeffects (i.e Multi-cloud Elasticity)

soCloud behaviour against failures (i.e Multi-cloud High availability)

Overhead introduced by the Load Balancer

144

Flash crowd effects without soCloud elasticity

0

10000

20000

30000

40000

50000

60000

1 11 21 31 41 51 61 71 81 91 101 111 121 131 141 151 161 171 181 191

Time (slot of 10 seconds)

Nu

mb

er

of

req

ue

sts

145

Flash crowd effects without soCloud elasticity

0

10000

20000

30000

40000

50000

60000

1 11 21 31 41 51 61 71 81 91 101 111 121 131 141 151 161 171 181 191

Time (slot of 10 seconds)

Nu

mb

er

of

req

ue

sts

We configured Httperf to create 50,000 connections

146

Flash crowd effects without soCloud elasticity

0

10000

20000

30000

40000

50000

60000

1 11 21 31 41 51 61 71 81 91 101 111 121 131 141 151 161 171 181 191

Time (slot of 10 seconds)

Nu

mb

er

of

req

ue

sts

Phase 1

We configured Httperf to create 50,000 connections

147

Flash crowd effects without soCloud elasticity

0

10000

20000

30000

40000

50000

60000

1 11 21 31 41 51 61 71 81 91 101 111 121 131 141 151 161 171 181 191

Time (slot of 10 seconds)

Nu

mb

er

of

req

ue

sts

Phase 1

We configured Httperf to create 50,000 connections

148

Flash crowd effects without soCloud elasticity

0

10000

20000

30000

40000

50000

60000

1 11 21 31 41 51 61 71 81 91 101 111 121 131 141 151 161 171 181 191

Time (slot of 10 seconds)

Nu

mb

er

of

req

ue

sts

Phase 1 Phase 2

We configured Httperf to create 50,000 connections

149

Flash crowd effects without soCloud elasticity

0

10000

20000

30000

40000

50000

60000

1 11 21 31 41 51 61 71 81 91 101 111 121 131 141 151 161 171 181 191

Time (slot of 10 seconds)

Nu

mb

er

of

req

ue

sts

0

10

20

30

40

50

60

70

1 11 21 31 41 51 61 71 81 91 101 111 121 131 141 151 161 171 181 191

Re

spo

nse

tim

e (

s)

Time (slot of 10 seconds)

150

Flash crowd effects without soCloud elasticity

0

10000

20000

30000

40000

50000

60000

1 11 21 31 41 51 61 71 81 91 101 111 121 131 141 151 161 171 181 191

Time (slot of 10 seconds)

Nu

mb

er

of

req

ue

sts

0

10

20

30

40

50

60

70

1 11 21 31 41 51 61 71 81 91 101 111 121 131 141 151 161 171 181 191

Re

spo

nse

tim

e (

s)

Time (slot of 10 seconds)

During the two phases of the flash crowd effect, the average response time is 65.90 seconds

151

Flash crowd effects without soCloud elasticity

0

500

1000

1500

2000

2500

3000

3500

4000

4500

0 20 40 60 80 100 120 140 160 180 200

Nu

mb

er

of

faile

d r

eq

ue

sts

Time (slot of 10 seconds)

152

Flash crowd effects without soCloud elasticity

0

500

1000

1500

2000

2500

3000

3500

4000

4500

0 20 40 60 80 100 120 140 160 180 200

Nu

mb

er

of

faile

d r

eq

ue

sts

Time (slot of 10 seconds)

Observation: 1.13% of requests have failed, precisely 34,039 requests have failed

153

Flash crowd effects with soCloud elasticity

0

10

20

30

40

50

60

70

1 11 21 31 41 51 61 71 81 91 101 111 121 131 141 151 161 171 181 191

Re

spo

nse

tim

e (

s)

Time (slot of 10 seconds)

Application replication

Balance load

154

Flash crowd effects with soCloud elasticity

0

10

20

30

40

50

60

70

1 11 21 31 41 51 61 71 81 91 101 111 121 131 141 151 161 171 181 191

Re

spo

nse

tim

e (

s)

Time (slot of 10 seconds)

Application replication

Balance load

soCloud platform has detected peak mounted in 300 ms

155

Flash crowd effects with soCloud elasticity

0

10

20

30

40

50

60

70

1 11 21 31 41 51 61 71 81 91 101 111 121 131 141 151 161 171 181 191

Re

spo

nse

tim

e (

s)

Time (slot of 10 seconds)

Application replication

Balance load

soCloud platform has detected peak mounted in 300 ms

we do not notice mounted peak during the second phase of the flash crowd effect, and the average response time is 23.38 seconds

156

Flash crowd effects with soCloud elasticity

0

10

20

30

40

50

60

70

1 11 21 31 41 51 61 71 81 91 101 111 121 131 141 151 161 171 181 191

Re

spo

nse

tim

e (

s)

Time (slot of 10 seconds)

Application replication

Balance load

soCloud platform has detected peak mounted in 300 ms

we do not notice mounted peak during the second phase of the flash crowd effect, and the average response time is 23.38 seconds

These results demonstrate that the soCloud platform deals well with elasticity

157

soCloud behaviour against failures

158

soCloud behaviour against failures

* Mean Time To Recovery, † Mean Time Between Failure

[1] Blue print of high availability

MTTRMTBFMTBTtyAvailabili

[1]

159

soCloud behaviour against failures

* Mean Time To Recovery, † Mean Time Between Failure

Availability = *MTBF/(MTBF + †MTTR) [1]

soCloud MTTR is 3.5 minutes

[1] Blue print of high availability

160

soCloud behaviour against failures

* Mean Time To Recovery, † Mean Time Between Failure[2] Maurice Gagnaire et al.

Availability = *MTBF/(MTBF + †MTTR) [1]

soCloud MTTR is 3.5 minutes

Public cloud MTTR is 7.5 hours[2]

[1] Blue print of high availability

161

soCloud behaviour against failures

* Mean Time To Recovery, † Mean Time Between Failure[2] Maurice Gagnaire et al.

Availability = *MTBF/(MTBF + †MTTR) [1]

soCloud MTTR is 3.5 minutes

Public cloud MTTR is 7.5 hours[2]

For 1 year the MTBF = 8760 hours

[1] Blue print of high availability

162

soCloud behaviour against failures

* Mean Time To Recovery, † Mean Time Between Failure[2] Maurice Gagnaire et al.

Availability = *MTBF/(MTBF + †MTTR) [1]

soCloud MTTR is 3.5 minutes

Public cloud MTTR is 7.5 hours[2]

For 1 year the MTBF = 8760 hours

For 1 month the MTBF = 720 hours

[1] Blue print of high availability

163

soCloud behaviour against failures

* Mean Time To Recovery, † Mean Time Between Failure[2] Maurice Gagnaire et al.

Availability = *MTBF/(MTBF + †MTTR) [1]

soCloud MTTR is 3.5 minutes

Public cloud MTTR is 7.5 hours[2]

MTBF(1 year) MTBF(1 month)

Availability Availability

soCloud 99.999 % 99.991 %

Public cloud providers 99.914 % 98.969 %

For 1 year the MTBF = 8760 hours

For 1 month the MTBF = 720 hours

[1] Blue print of high availability

164

High availability

soCloudPublic clouds

Hours Minutes

165

Evaluation

soCloud validate

Multi-cloud Portability

Multi-cloud Provisionning

Multi-cloud Elasticity

Multi-cloud High availability

166

Load Balancer Overhead

Implementation Avg. exec. Time LB overhead

APP i) 13.93 sec -

APP + LB ii) 14.10 sec 1.45%

167

Agenda

Context

Case Study

Challenges

State Of The Art

Contribution

Evaluation

Conclusion & Perspective

168

Conclusion & Perspectives

soCloud is a distributed PaaS, that provides a model for building any multi-cloud SaaS applications

We describe the approach used by the soCloud to achieve portability, provisioning, elasticity and high availability

We explained how the components in a SaaS application descriptor can be annotated with elasticity rules, placement constraints, computation constraints.

In comparison of soCloud availability with public cloud availability, we demonstrate that soCloud ensures high availability in minutes

We have analysed the flash crowd phenomenon on a use case, and demonstrated how the soCloud platform increases the elasticity of the application

______________________________________________________________________

We will investigate in how to overcome the constraint which consists to build the SaaS application with SCA model

169

Questions?

Thanks You!soCloud

top related