soCloud: a multi-cloud paas
-
Upload
fawaz-fernand-paraiso -
Category
Engineering
-
view
374 -
download
0
description
Transcript of soCloud: a multi-cloud paas
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