ADVISE: a Framework for Evaluating 
Cloud Service Elasticity Behavior 
Georgiana Copil1, Demetris Trihinas2, Hong−Linh Truong1, Daniel Moldovan1, 
George Pallis2, Schahram Dustdar1, Marios Dikaiakos2 
1 
Distributed Systems Group, Vienna University of Technology 
2 
Computer Science Department, University of Cyprus 
12th International Conference on Service Oriented Computing
Overview 
 Motivation 
 Evaluating Cloud Service Behavior 
– Learning process 
– Determining expected elasticity behavior 
 Experiments 
 Conclusions and Future Work 
ICSOC 2014, 5 November, Paris 2
Motivation – Cloud service runtime evolution 
Complex 
Cloud 
Service 
Elastic 
Cloud 
Service 
Deployment (running) 
process 
ICSOC 2014, 5 November, Paris 3 
Elasticity 
control 
process 
Elasticity Control 
Processes 
What would be 
the elasticity 
behavior? 
Elasticity 
requirements 
Elasticity controller
Motivation – Cloud service runtime evolution 
Elasticity control 
process enforced 
Which will be the behavior? 
now 
ICSOC 2014, 5 November, Paris 4
Motivation – Cloud service runtime evolution 
Which will be the behavior? 
ICSOC 2014, 5 November, Paris 5 
Possible requirements 
violations 
Elasticity control 
process enforced 
Expected impact 
Expected cool-off 
period 
now 
Which elasticity control process is most appropriate? 
How a control process will affect metrics, e.g., throughput, of the 
overall service and individually on each part of the cloud service?
Motivation – Cloud service behavior 
 Cloud service behavior is complex and can depend on: 
– The structure of the cloud service 
– The runtime resources used 
– The workload of the cloud service 
– The control processes enforced, e.g., by the controller 
 Capturing & using these types of information for 
evaluating elasticity behavior 
ICSOC 2014, 5 November, Paris 6 
Service 
Topology 1 
Unit 1 
Unit 2 
Topology 2 
Unit 3 
Unit 4 
푉푀푥1 푉푀 푉푀푥2 푥3 푉푀푥푛
Approach 
 Input: 
– Cloud service structure 
– Monitoring information of different service parts (e.g., service 
units, service topologies) 
– Elasticity control process 퐸퐶푃푖 
 Expected output: 
– Metrics evolution, in time, for different service parts and 퐸퐶푃푠 
 Main mechanism: 
– Creating behavior clusters 
– Computing closest behavior centroids 
ICSOC 2014, 5 November, Paris 7
Gathering information 
Relevant timeseries 
퐸퐶푃푖 enforcement 
Metric measurement 
Select relevant timeseries where 퐸퐶푃푖 was enforced before 
ICSOC 2014, 5 November, Paris 8
Clustering elasticity behaviors 
 Transform relevant timeseries to multi-dimensional 
points 
푡1 푡2 … 푡푛 Time 
Metric 
푚푥 
퐶푙푢푠푡푒푟푐 푚푥 퐶1푚푥 
ICSOC 2014, 5 November, Paris 9 
푀푒푡푟푖푐푉푎푙 (푡1) 
푀푒푡푟푖푐푉푎푙 (푡2) 
푀푒푡푟푖푐푉푎푙 (푡푛) 
푀푒푡푟푖푐푉푎푙 (푡3) 
… 
푀푒푡푟푖푐푉푎푙 (푡4) 
Behavior Point 
BP 
퐶푙푢푠푡푒푟1푚 K-means 푥 
퐶푙푢푠푡푒푟2 푚푥 
퐶2푚푥 
퐶푐 푚푥
Computing expected behavior 
퐵푃푚푥 
Current values 
퐶푙푢푠푡푒푟1 푚푥 
퐶1푚푥 
퐵푃푚푦 
퐶푙푢푠푡푒푟2 푚푥 
퐶2푚푥 
퐶푙푢푠푡푒푟1 푚푦 
퐶1푚푦 
퐶푙푢푠푡푒푟푝 푚푦 
퐶푝 푚푦 
퐶푙푢푠푡푒푟1푚푥 퐶푙푢푠푡푒푟2 푚푥 
퐶푙푢푠푡푒푟푟 푚푥 
퐶푙푢푠푡푒푟1 푚푦 
a b - 
퐶푙푢푠푡푒푟푝 푚푦 
c - d 
Co-occurrence matrix 
ICSOC 2014, 5 November, Paris 10 
Compute centroids 
closest to the 퐵푃푖 
퐶1푚푥 
퐶푝 푚푦 
Transform 
to timeseries 
푚 푚푥 푦 
퐶푙푢푠푡푒푟푟 푚푥 
퐶푟 푚푥
Experiment Settings [1/3] 
 Setting: 
– M2M service 
– Video Service 
ICSOC 2014, 5 November, Paris 11
Experiment Settings [2/3] 
 Setting: 
– Running on public Flexiant cloud FCO 
– MELA & JCatascopia for monitoring cloud services 
– Randomly apply ECPs of random type for collecting behavioral 
information 
– “Interesting” metrics 
ICSOC 2014, 5 November, Paris 12
Experiment Settings [3/3] 
ICSOC 2014, 5 November, Paris 13
Experiments – Video Service 
Video Service – effect of 퐸퐶푃1 on Application Server 
퐸퐶푃1 - scale in application server tier – select instance to remove, 
stop the video streaming service, remove instance from load 
balancer, stop JCatascopia monitoring agent, delete instance 
ICSOC 2014, 5 November, Paris 14
Experiments – M2M Service [1/2] 
M2M Service – effect of 퐸퐶푃7 on the entire cloud service 
퐸퐶푃7 - scale in data node service unit – copy data from the instance 
to be removed, remove recursively virtual machine 
ICSOC 2014, 5 November, Paris 15
Experiments – M2M Service [2/2] 
M2M Service – effect on Data End Controller of enforcing 퐸퐶푃8 
퐸퐶푃8 - scale out data node service unit – create new network 
interface, create new instance, assign token to node, set cluster 
controller 
ICSOC 2014, 5 November, Paris 16
The more random the workload, of the service, 
the more difficult to estimate the behavior Lower abstraction layer 
Experiments – 
Quality of Results 
푉푎푟푖푎푛푐푒푚 
= 
=> better estimations 
푛푏퐸푠푡푖푚푎푡푖표푛푠 푒푠푡푖푚푎푡푖표푛푆푖푧푒(푒푠푡푖푚푎푡푒푑푀푒푡푟푖푐푚 − 표푏푠푒푟푣푒푑푀푒푡푟푖푐푚)2 
ICSOC 2014, 5 November, Paris 17 
푛푏퐸푠푡푖푚푎푡푖표푛푠 − 1 
Complex, 
unpredictable 
metrics => very low 
degree of accuracy
Conclusions and Future Work 
 Conclusions 
– When controlling a complex cloud service, we need to consider 
the impact elasticity control processes have on different service 
parts 
– ADVISE is indeed able to "advise" elasticity controllers about 
cloud service behavior 
 Future work 
– Integrating with rSYBL (https://github.com/tuwiendsg/rSYBL) 
– Adapting the control mechanisms of rSYBL to use such 
information 
 ADVISE 
– More experiments available at http://tuwiendsg.github.io/ADVISE 
– Prototype https://github.com/tuwiendsg/ADVISE 
ICSOC 2014, 5 November, Paris 18
Thank you! 
Georgiana Copil 
e.copil@dsg.tuwien.ac.at 
http://dsg.tuwien.ac.at/staff/ecopil/ 
Distributed Systems Group 
Vienna University of Technology 
Austria 
ICSOC 2014, 5 November, Paris 19

ADVISE - a Framework for Evaluating Cloud Service Elasticity Behavior - Best paper award

  • 1.
    ADVISE: a Frameworkfor Evaluating Cloud Service Elasticity Behavior Georgiana Copil1, Demetris Trihinas2, Hong−Linh Truong1, Daniel Moldovan1, George Pallis2, Schahram Dustdar1, Marios Dikaiakos2 1 Distributed Systems Group, Vienna University of Technology 2 Computer Science Department, University of Cyprus 12th International Conference on Service Oriented Computing
  • 2.
    Overview  Motivation  Evaluating Cloud Service Behavior – Learning process – Determining expected elasticity behavior  Experiments  Conclusions and Future Work ICSOC 2014, 5 November, Paris 2
  • 3.
    Motivation – Cloudservice runtime evolution Complex Cloud Service Elastic Cloud Service Deployment (running) process ICSOC 2014, 5 November, Paris 3 Elasticity control process Elasticity Control Processes What would be the elasticity behavior? Elasticity requirements Elasticity controller
  • 4.
    Motivation – Cloudservice runtime evolution Elasticity control process enforced Which will be the behavior? now ICSOC 2014, 5 November, Paris 4
  • 5.
    Motivation – Cloudservice runtime evolution Which will be the behavior? ICSOC 2014, 5 November, Paris 5 Possible requirements violations Elasticity control process enforced Expected impact Expected cool-off period now Which elasticity control process is most appropriate? How a control process will affect metrics, e.g., throughput, of the overall service and individually on each part of the cloud service?
  • 6.
    Motivation – Cloudservice behavior  Cloud service behavior is complex and can depend on: – The structure of the cloud service – The runtime resources used – The workload of the cloud service – The control processes enforced, e.g., by the controller  Capturing & using these types of information for evaluating elasticity behavior ICSOC 2014, 5 November, Paris 6 Service Topology 1 Unit 1 Unit 2 Topology 2 Unit 3 Unit 4 푉푀푥1 푉푀 푉푀푥2 푥3 푉푀푥푛
  • 7.
    Approach  Input: – Cloud service structure – Monitoring information of different service parts (e.g., service units, service topologies) – Elasticity control process 퐸퐶푃푖  Expected output: – Metrics evolution, in time, for different service parts and 퐸퐶푃푠  Main mechanism: – Creating behavior clusters – Computing closest behavior centroids ICSOC 2014, 5 November, Paris 7
  • 8.
    Gathering information Relevanttimeseries 퐸퐶푃푖 enforcement Metric measurement Select relevant timeseries where 퐸퐶푃푖 was enforced before ICSOC 2014, 5 November, Paris 8
  • 9.
    Clustering elasticity behaviors  Transform relevant timeseries to multi-dimensional points 푡1 푡2 … 푡푛 Time Metric 푚푥 퐶푙푢푠푡푒푟푐 푚푥 퐶1푚푥 ICSOC 2014, 5 November, Paris 9 푀푒푡푟푖푐푉푎푙 (푡1) 푀푒푡푟푖푐푉푎푙 (푡2) 푀푒푡푟푖푐푉푎푙 (푡푛) 푀푒푡푟푖푐푉푎푙 (푡3) … 푀푒푡푟푖푐푉푎푙 (푡4) Behavior Point BP 퐶푙푢푠푡푒푟1푚 K-means 푥 퐶푙푢푠푡푒푟2 푚푥 퐶2푚푥 퐶푐 푚푥
  • 10.
    Computing expected behavior 퐵푃푚푥 Current values 퐶푙푢푠푡푒푟1 푚푥 퐶1푚푥 퐵푃푚푦 퐶푙푢푠푡푒푟2 푚푥 퐶2푚푥 퐶푙푢푠푡푒푟1 푚푦 퐶1푚푦 퐶푙푢푠푡푒푟푝 푚푦 퐶푝 푚푦 퐶푙푢푠푡푒푟1푚푥 퐶푙푢푠푡푒푟2 푚푥 퐶푙푢푠푡푒푟푟 푚푥 퐶푙푢푠푡푒푟1 푚푦 a b - 퐶푙푢푠푡푒푟푝 푚푦 c - d Co-occurrence matrix ICSOC 2014, 5 November, Paris 10 Compute centroids closest to the 퐵푃푖 퐶1푚푥 퐶푝 푚푦 Transform to timeseries 푚 푚푥 푦 퐶푙푢푠푡푒푟푟 푚푥 퐶푟 푚푥
  • 11.
    Experiment Settings [1/3]  Setting: – M2M service – Video Service ICSOC 2014, 5 November, Paris 11
  • 12.
    Experiment Settings [2/3]  Setting: – Running on public Flexiant cloud FCO – MELA & JCatascopia for monitoring cloud services – Randomly apply ECPs of random type for collecting behavioral information – “Interesting” metrics ICSOC 2014, 5 November, Paris 12
  • 13.
    Experiment Settings [3/3] ICSOC 2014, 5 November, Paris 13
  • 14.
    Experiments – VideoService Video Service – effect of 퐸퐶푃1 on Application Server 퐸퐶푃1 - scale in application server tier – select instance to remove, stop the video streaming service, remove instance from load balancer, stop JCatascopia monitoring agent, delete instance ICSOC 2014, 5 November, Paris 14
  • 15.
    Experiments – M2MService [1/2] M2M Service – effect of 퐸퐶푃7 on the entire cloud service 퐸퐶푃7 - scale in data node service unit – copy data from the instance to be removed, remove recursively virtual machine ICSOC 2014, 5 November, Paris 15
  • 16.
    Experiments – M2MService [2/2] M2M Service – effect on Data End Controller of enforcing 퐸퐶푃8 퐸퐶푃8 - scale out data node service unit – create new network interface, create new instance, assign token to node, set cluster controller ICSOC 2014, 5 November, Paris 16
  • 17.
    The more randomthe workload, of the service, the more difficult to estimate the behavior Lower abstraction layer Experiments – Quality of Results 푉푎푟푖푎푛푐푒푚 = => better estimations 푛푏퐸푠푡푖푚푎푡푖표푛푠 푒푠푡푖푚푎푡푖표푛푆푖푧푒(푒푠푡푖푚푎푡푒푑푀푒푡푟푖푐푚 − 표푏푠푒푟푣푒푑푀푒푡푟푖푐푚)2 ICSOC 2014, 5 November, Paris 17 푛푏퐸푠푡푖푚푎푡푖표푛푠 − 1 Complex, unpredictable metrics => very low degree of accuracy
  • 18.
    Conclusions and FutureWork  Conclusions – When controlling a complex cloud service, we need to consider the impact elasticity control processes have on different service parts – ADVISE is indeed able to "advise" elasticity controllers about cloud service behavior  Future work – Integrating with rSYBL (https://github.com/tuwiendsg/rSYBL) – Adapting the control mechanisms of rSYBL to use such information  ADVISE – More experiments available at http://tuwiendsg.github.io/ADVISE – Prototype https://github.com/tuwiendsg/ADVISE ICSOC 2014, 5 November, Paris 18
  • 19.
    Thank you! GeorgianaCopil e.copil@dsg.tuwien.ac.at http://dsg.tuwien.ac.at/staff/ecopil/ Distributed Systems Group Vienna University of Technology Austria ICSOC 2014, 5 November, Paris 19

Editor's Notes