View
351
Download
1
Category
Preview:
Citation preview
© AtlanMod (atlanmod-contact@mines-nantes.fr)© AtlanMod (atlanmod-contact@mines-nantes.fr)
Monitor-Based Testing of Elastic Cloud Computing
ApplicationsMichel Albonico
PhD Student - AtlanMod - EMN (Nantes, France)(michel.albonico@inria.fr)
Jean-Marie MottuGerson Sunyé
1
5th
Int.
Wor
ksho
p on
Lar
ge S
cale
Tes
ting
Del
ft, N
ethe
rland
s - 2
016
© AtlanMod (atlanmod-contact@mines-nantes.fr)
● Cloud Computing Elasticity● Motivation● Test Procedure● Experiments● Conclusion and Future Work
Outline
2
© AtlanMod (atlanmod-contact@mines-nantes.fr)© AtlanMod (atlanmod-contact@mines-nantes.fr)
Cloud Computing Elasticity
3
● Cloud computing elasticity:
The ability of a cloud infrastructure/system modifying its resource
configuration according to demand.
© AtlanMod (atlanmod-contact@mines-nantes.fr)© AtlanMod (atlanmod-contact@mines-nantes.fr)
Cloud Computing Elasticity
4
● Thresholds: ○ Scale-out threshold: maximum resource usage, e.g., 80% of CPU
usage;○ Scale-in threshold: minimum resource usage, e.g., 20% of CPU
usage;○ Used to decide when varying a resource.
Resource AllocationResource DemandScale-out Threshold
Scale-in ThresholdScale-out Threshold BreachingScale-in Threshold Breaching
Time (s)
Res
ourc
e (P
roce
ssor
s)
1
Legend
80% 0.8
20% 0.2
© AtlanMod (atlanmod-contact@mines-nantes.fr)© AtlanMod (atlanmod-contact@mines-nantes.fr)
Cloud Computing Elasticity
5
● Resource demand varies according to workload variations.○ Example:
■ number of users increases from 1 to 2, the resource
demand doubles.
Resource AllocationResource DemandScale-out Threshold
Scale-in ThresholdScale-out Threshold BreachingScale-in Threshold Breaching
Time (s)
Res
ourc
e (P
roce
ssor
s)
1
Legend
80% 0.8
20% 0.2
© AtlanMod (atlanmod-contact@mines-nantes.fr)© AtlanMod (atlanmod-contact@mines-nantes.fr)
Cloud Computing Elasticity
6
● Resource demand varies over time;● Scale-out threshold breaching.
Resource AllocationResource DemandScale-out Threshold
Scale-in ThresholdScale-out Threshold BreachingScale-in Threshold Breaching
Time (s)
Res
ourc
e (P
roce
ssor
s)
1
Legend
scale-out threshold breaching
80% 0.8
20% 0.2
© AtlanMod (atlanmod-contact@mines-nantes.fr)© AtlanMod (atlanmod-contact@mines-nantes.fr)
Cloud Computing Elasticity
7
● Resource demand varies over time;● Scale-out threshold breaching;● Scale-out reaction time;
Resource AllocationResource DemandScale-out Threshold
Scale-in ThresholdScale-out Threshold BreachingScale-in Threshold Breaching
Time (s)
Res
ourc
e (P
roce
ssor
s)
1
Legend
scale-out reaction time
80% 0.8
20% 0.2
© AtlanMod (atlanmod-contact@mines-nantes.fr)© AtlanMod (atlanmod-contact@mines-nantes.fr)
Cloud Computing Elasticity
8
● Resource demand varies over time;● Scale-out threshold breaching;● Scale-out reaction time;● Scale-out time, then the thresholds are updated.
Resource AllocationResource DemandScale-out Threshold
Scale-in ThresholdScale-out Threshold BreachingScale-in Threshold Breaching
Time (s)
Res
ourc
e (P
roce
ssor
s)
2
180% 0.8
Legend
scale-out time80% 1.6
20% 0.2
20% 0.4
© AtlanMod (atlanmod-contact@mines-nantes.fr)© AtlanMod (atlanmod-contact@mines-nantes.fr)
Cloud Computing Elasticity
9
● Scale-in:○ Scale-in threshold breaching;○ Scale-in reaction time (resource is no longer available);
■ Thresholds reconfiguration.○ Scale-in time.
Resource AllocationResource DemandScale-out Threshold
Scale-in ThresholdScale-out Threshold BreachingScale-in Threshold Breaching
Time (s)
Res
ourc
e (P
roce
ssor
s)
2
1
Legend
scale-in time
scale-in reaction time
80% 0.8
80% 1.6
20% 0.2
20% 0.4
© AtlanMod (atlanmod-contact@mines-nantes.fr)© AtlanMod (atlanmod-contact@mines-nantes.fr)
Cloud Computing Elasticity
10
● Elasticity states transition.
scale-out threshold breaching
scale-in threshold breaching
© AtlanMod (atlanmod-contact@mines-nantes.fr)© AtlanMod (atlanmod-contact@mines-nantes.fr)
● Elasticity states transition.
● Related work only test during the ready state;● Scaling states:
○ Considerable time: in our experiments, scaling-out takes more than 90 seconds (Amazon EC2);
○ Great part of the adaptation tasks: replication data, leader election, etc.
Motivation
11
© AtlanMod (atlanmod-contact@mines-nantes.fr)© AtlanMod (atlanmod-contact@mines-nantes.fr)
Test Procedure
● Test cloud systems during all the elasticity states;● Execute tests dynamically:
○ Associate test cases to a set of elasticity states;○ Execute the test according to the current elasticity state.
● Test execution:○ Periodically monitor the resource during the test execution;
■ Current elasticity state.○ (Re)-execute the associated test cases during the current
elasticity state.
12
© AtlanMod (atlanmod-contact@mines-nantes.fr)© AtlanMod (atlanmod-contact@mines-nantes.fr)
Experiments
● Research questions (answered by the experiments):
1. Is it necessary to run the test during different elasticity states?a. Does a cloud system react distinctly depending on the
elasticity state?
2. Is it possible to execute the test during different elasticity states and to assign the test verdicts accordingly?
13
© AtlanMod (atlanmod-contact@mines-nantes.fr)© AtlanMod (atlanmod-contact@mines-nantes.fr)
Experiments
Question 1: system behavior during different elasticity state.
● First experiment:Measure the performance of a cloud system during different elasticity states.
○ Manually executed;
○ Workload (50% read / 50% write);
○ 2500 operations per second (ops).
14
© AtlanMod (atlanmod-contact@mines-nantes.fr)© AtlanMod (atlanmod-contact@mines-nantes.fr)
Experiments
● First experiment results:○ 2000 ops: covers all the performance drops;○ Elasticity states extracted from the log files;
RQ1: It is necessary to run the test during different elasticity states.
15
Per
form
ance
- O
pera
tions
per
Sec
ond
(ops
)
Minimal PerformanceMeasured Performance
R R R R R RSISISO SO SOSI
200
400
1000
120080
0
600 Time (s)
© AtlanMod (atlanmod-contact@mines-nantes.fr)© AtlanMod (atlanmod-contact@mines-nantes.fr)
Question 2: test execution during different elasticity states + test verdicts assignment.
● Second experiment: (same workload)○ We use our test procedure;○ We monitor the elasticity states throughout the test
execution;○ Test Case:
■ answered operation >= 2000 ops -> pass■ otherwise -> fail
○ Same test case associated to every elasticity state.
■ Test case re-executed throughout the cloud system
execution.
Experiments
16
© AtlanMod (atlanmod-contact@mines-nantes.fr)© AtlanMod (atlanmod-contact@mines-nantes.fr)
Experiments
● Result of the second experiment:○ Test through different elasticity states;○ Assign test verdicts to different elasticity states;
■ Proportional to the previous experiment (correct elasticity
states).RQ2:
It is possible to execute the test according to the elasticity state, and we are able to assign the test verdicts correctly.
17
© AtlanMod (atlanmod-contact@mines-nantes.fr)© AtlanMod (atlanmod-contact@mines-nantes.fr)
Conclusion and Future Work
● Identify all the performance problems;● Assign the test verdicts to the correct elasticity states (at
runtime);● Address the scaling states, which are not addressed by related
work;● Future work:
○ Write functional test cases;○ Apply to other study cases;○ Generate test cases based on elasticity states.
18
© AtlanMod (atlanmod-contact@mines-nantes.fr)© AtlanMod (atlanmod-contact@mines-nantes.fr)
Monitor-Based Testing of Elastic Cloud Computing
ApplicationsMichel Albonico
PhD Student - AtlanMod - EMN (Nantes, France)(michel.albonico@inria.fr)
Jean-Marie MottuGerson Sunyé
19
5th
Int.
Wor
ksho
p on
Lar
ge S
cale
Tes
ting
Del
ft, N
ethe
rland
s - 2
016
Recommended