Table Of ContentAUTONOMIC, OPTIMAL, AND NEAR-OPTIMAL RESOURCE ALLOCATION
IN CLOUD COMPUTING
by
Arwa Sulaiman Aldhalaan
A Dissertation
Submitted to the
Graduate Faculty
of
George Mason University
In Partial fulfillment of
The Requirements for the Degree
of
Doctor of Philosophy
Information Technology
Dr. Daniel A. Menasce, Dissertation Director
Dr. Alexander Brodsky, Committee Member
Dr. Sam Malek, Committee Member
Dr. John ShortIe, Committee Member
Dr. Stephen Nash, Department Chair
Dr. Kenneth S. Ball, Dean, The Volgenau
School of Engineering
Spring Semester 2015
George Mason University
Fairfax, VA
Autonomic, Optimal, and Near-Optimal Resource Allocation in Cloud Computing
A dissertation submitted in partial fulfillment of the requirements for the degree of
Doctor of Philosophy at George Mason University
By
Arwa Sulaiman Aldhalaan
Master of Science
Bowling Green State University, 2010
Bachelor of Science
King Saud University, 2006
Director: Dr. Daniel A. Menasc´e, Professor
Department of Computer Science
Spring Semester 2015
George Mason University
Fairfax, VA
Copyright © 2015 by Arwa Sulaiman Aldhalaan
All Rights Reserved
ii
Dedication
I dedicate this dissertation to my beloved husband, parents, and sons. Without them, this
dissertation would have never been written. I am grateful to have them in my life.
iii
Acknowledgments
I am deeply thankful to my advisor Prof. Daniel Menasc´e for his guidance and support. I
truly cannot imagine a better advisor. He provided me with guidance, assistance, valuable
feedback, encouragement, and expertise that I needed during my dissertation. I am also
grateful to Dr. Alexander Brodsky, Dr. Sam Malek, and Dr. John Shortle for serving in
my committee and for their time and advise.
I am thankful to my lovely family for making success possible and rewarding. My spe-
cial thanks goes to my dear husband Abdulelah Alrajhi who encouraged me to reach my
dreams, and motivated me when I needed it the most. He supported me while pursuing his
own doctorate which is magnificent. I am thankful to my parents Sulaiman, and Maha for
their constant love and endless support. To my grandparents for their prayers and words
of wisdom. To my caring brothers and sister for their continuous encouragement. To my
beautiful little sons Faisal, Nawaf, Sultan, and Mohammed who have been my motivation,
inspiration and drive.
Finally, I am thankful to King Saud University for their scholarship, and to my country
for funding my education.
iv
Table of Contents
Page
List of Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . viii
List of Figures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ix
Abstract . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xi
1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.1 Problem Statement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.2 Thesis Statement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.3 Summary of Contributions . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.4 Organization of The Dissertation . . . . . . . . . . . . . . . . . . . . . . . . 6
2 Background and Related Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.1 Cloud Computing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.2 Virtualization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
2.3 Autonomic Computing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.4 Optimization Techniques and Heuristic Search . . . . . . . . . . . . . . . . 10
2.5 Related Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
2.5.1 Resource Allocation and Scalability . . . . . . . . . . . . . . . . . . 12
2.5.2 Power and Energy Consumption . . . . . . . . . . . . . . . . . . . . 21
2.5.3 Performance Modeling in Virtual Environments . . . . . . . . . . . . 23
2.5.4 Live VM Migration . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
2.5.5 Summary of Related Work . . . . . . . . . . . . . . . . . . . . . . . 27
3 Analytic Performance Modeling and Optimization of Live VM Migration . . . . 29
3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
3.2 Background and Problem Statement . . . . . . . . . . . . . . . . . . . . . . 30
3.3 Analytic Model of Live Migration With Uniform Dirtying Rate . . . . . . . 31
3.4 Analytic Model of Live Migration With Hot Pages . . . . . . . . . . . . . . 35
3.4.1 Model of Copying Hot Pages During the Pre-Copy Phase . . . . . . 37
3.4.2 Model of Copying Hot Pages During the Downtime Phase . . . . . . 38
3.5 Clusters of Pages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
3.6 Summary of Analytic Model Results . . . . . . . . . . . . . . . . . . . . . . 42
v
3.7 Optimizing Live Migration Parameters . . . . . . . . . . . . . . . . . . . . . 43
3.8 Numerical Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
3.9 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
4 Simulation Validation of Live VM Migration Analytical Performance Models . . 57
4.1 Experiments With Uniform Dirtying Rate . . . . . . . . . . . . . . . . . . . 57
4.1.1 Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
4.1.2 Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
4.2 Experiment Description using Clusters of Pages . . . . . . . . . . . . . . . . 65
4.2.1 Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
5 Autonomic Allocation of Virtual Machines in IaaS Cloud Providers . . . . . . . 71
5.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
5.2 Problem Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
5.3 Processing of Consumer Requests . . . . . . . . . . . . . . . . . . . . . . . . 74
5.3.1 Optimization model . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
5.3.2 Minimization of VMs migration . . . . . . . . . . . . . . . . . . . . . 77
5.3.3 Revenue model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
5.3.4 Availability model . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
5.4 Heuristic Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
5.5 Experiments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
5.5.1 Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
5.6 Concluding Remarks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
6 Autonomic Allocation of Communicating Virtual Machines in Hierarchical IaaS
Cloud Providers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
6.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
6.2 Problem Assumptions and Notation . . . . . . . . . . . . . . . . . . . . . . 98
6.3 Revenue model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
6.4 Optimization Problem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
6.5 Heuristic Algorithms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
6.5.1 Basic VM Allocation Heuristic (BVAH) . . . . . . . . . . . . . . . . 105
6.5.2 Advanced VM Allocation Heuristic (AVAH) . . . . . . . . . . . . . . 110
6.5.3 No Communication (NoComm) Allocation Strategies . . . . . . . . . 112
6.6 Availability Constraint . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
6.7 Experimental Results. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
6.8 Concluding Remarks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125
7 Autonomic Allocation of Virtual Machines in SaaS Cloud Providers . . . . . . . 127
7.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
vi
7.2 Problem Formalization and Notation . . . . . . . . . . . . . . . . . . . . . . 129
7.3 Optimization Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131
7.4 Heuristic Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133
7.4.1 The ScaleUpDown Solution . . . . . . . . . . . . . . . . . . . . . . . 133
7.4.2 ScaleUpDown Algorithm Example . . . . . . . . . . . . . . . . . . . . 140
7.4.3 The FillSlotsFirst Algorithm . . . . . . . . . . . . . . . . . . . . 143
7.4.4 The Optimal Algorithm . . . . . . . . . . . . . . . . . . . . . . . . . 143
7.5 Experimental Results. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144
7.6 Concluding Remarks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157
8 Conclusion and Future Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
Bibliography . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161
vii
List of Tables
Table Page
3.1 Summary of performance model results. . . . . . . . . . . . . . . . . . . . . 44
3.2 Parameter values used in the experiments. . . . . . . . . . . . . . . . . . . . 45
3.3 Optimization Results. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
4.1 Parameter values used in the experiments for the uniform dirtying rate case. 59
4.2 Summary of results for the uniform dirtying rate case from both the simula-
tion and the model.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
4.3 Parameter values used in the experiments for the clusters of pages case. . . 66
4.4 Summary of results for the clusters of pages case from both the simulation
and the model. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
5.1 Inputs, variables and outputs of a problem instance at time t . . . . . . . . 81
5.2 Parameter values used in the experiments. . . . . . . . . . . . . . . . . . . . 87
5.3 Average results including 95% confidence intervals. . . . . . . . . . . . . . . 93
5.4 Average revenue for various values of α. . . . . . . . . . . . . . . . . . . . . 94
6.1 Types of co-locations for VMs i and j. . . . . . . . . . . . . . . . . . . . . . 103
6.2 Allocation Example. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
6.3 Parameter Values for the Experiments. . . . . . . . . . . . . . . . . . . . . . 114
6.4 Summary of Results. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
6.5 Availability with DNC.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125
7.1 Allocation Example. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142
7.2 Parameter values used in the experiments. . . . . . . . . . . . . . . . . . . . 145
7.3 CPU and I/O service demands (in sec) for each VM type. . . . . . . . . . . 146
7.4 Summary of results of the ScaleUpDown algorithm and the optimal solution 157
viii
List of Figures
Figure Page
1.1 Outline of the dissertation framework . . . . . . . . . . . . . . . . . . . . . 5
1.2 Summary of contributions . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
3.1 HG vs. β . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
3.2 T in seconds vs. α . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
down
3.3 Gain vs. α. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
3.4 P vs. α . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
TotalMig
3.5 T in seconds vs. α . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
down
3.6 Gain vs. α. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
3.7 P vs. α . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
TotalMig
3.8 T in seconds vs. α for the clusters of pages . . . . . . . . . . . . . . . . 52
down
3.9 Gain vs. α for the clusters of pages . . . . . . . . . . . . . . . . . . . . . . . 53
3.10 P vs. α for the clusters of pages . . . . . . . . . . . . . . . . . . . . . 54
TotalMig
4.1 Number of pages migrated vs. number of iterations α 10% . . . . . . . . . . 61
4.2 Number of pages migrated vs. number of iterations α 20% . . . . . . . . . . 62
4.3 Number of pages migrated vs. no. of iterations α 30%, P 16 . . . . . . . . 63
s
4.4 Number of pages migrated vs. no. of iterations α 30%, P 32 . . . . . . . . 64
s
4.5 Number of pages migrated vs. no. of iterations α 10% for the clusters of pages 67
4.6 Number of pages migrated vs. no. of iterations α 20% for the clusters of pages 68
4.7 Number of pages migrated vs. no. of iterations α 30%, P 16 for the clusters
s
of pages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
4.8 Number of pages migrated vs. no. of iterations α 30%, P 32 for the clusters
s
of pages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
5.1 Total normalized allocated capacity, C , vs. time . . . . . . . . . . . . . 88
alloc
5.2 Revenue vs. time . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
5.3 Availability vs. time . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
5.4 CDF of the total capacity allocated to eCPs . . . . . . . . . . . . . . . . . . 92
6.1 Infrastructure of a Cloud Service Provider. . . . . . . . . . . . . . . . . . . 99
ix
Description:I am deeply thankful to my advisor Prof. Daniel Menascé for his guidance and support. I truly cannot imagine a better advisor. He provided me with guidance, assistance, valuable feedback, encouragement, and expertise that I needed during my dissertation. I am also grateful to Dr. Alexander Brodsky