A Self-Adaptive Auto-Scaling System in Infrastructure-As- A-Service Layer of Cloud Computing
Total Page:16
File Type:pdf, Size:1020Kb
A Self-Adaptive Auto-Scaling System in Infrastructure-as- a-Service Layer of Cloud Computing by Seyedali Yadavar Nikravesh A thesis submitted to the Faculty of Graduate and Postdoctoral Affairs in partial fulfillment of the requirements for the degree of Doctor of Philosophy in Computer Engineering Carleton University Ottawa, Ontario © 2016, Seyedali Yadavar Nikravesh Abstract The National Institute of Standards and Technology (NIST) defines scalability, resource pooling and broad network access as the main characteristics of cloud computing which provides highly available, reliable, and elastic services to cloud clients. In addition, cloud clients can lease compute and storage resources on a pay-as-you-go basis. The elastic nature of cloud resources together with the cloud’s pay-as-you-go pricing model allow the cloud clients to merely pay for the resources they actually use. Although cloud’s elasticity and its pricing model are beneficiary in terms of cost, the obligation of maintaining Service Level Agreements (SLAs) with the end users necessitates the cloud clients to deal with a cost/performance trade-off. Auto-scaling systems are developed to balance the trade-off between the cost and the performance by automatically provisioning compute and storage resources for the cloud services. Rule-based systems are currently the most popular auto-scaling systems in the industrial environments. However, rule-based systems suffer from two main shortcomings: a) reactive nature, and b) the difficulty of configuration. This thesis proposes an auto-scaling system which overcomes the shortcomings of the rule-based systems. The proposed auto-scaling system consists of a self-adaptive prediction suite and a cost driven decision maker. The prediction suite remedies the first shortcoming (i.e., the reactive nature) of the rule-based systems by forecasting the near future workload of the cloud service. In addition, the cost driven decision maker uses a genetic algorithm to automatically configure the rule-based decision makers. The evaluation results show that the proposed system reduces the total auto-scaling cost up to 25% compared with the Amazon auto-scaling system. 2 Acknowledgements I would like to express my sincere appreciation and thanks to my supervisors Dr. Samuel A. Ajila and Dr. Chung-Horng Lung for their support, patience, motivation, and immense knowledge. This thesis would not have been completed without their guidance and help. I would also like to thank my family. Words cannot express how grateful I am to my mother, father, brother, and sister for their support and encouragement. Last but not the least, my deepest appreciation is expressed to my beloved wife Saloumeh for her unconditional love, patience, and understanding. 3 Table of Contents Abstract .............................................................................................................................. 2 Acknowledgements ........................................................................................................... 3 Table of Contents .............................................................................................................. 4 List of Tables ..................................................................................................................... 9 List of Illustrations .......................................................................................................... 12 List of Acronyms ............................................................................................................. 14 List of Symbols ................................................................................................................ 16 Chapter 1 - Introduction ................................................................................................ 18 1.1 Research Motivation ............................................................................................ 18 1.2 Research Scope .................................................................................................... 19 1.3 Problem Statement ............................................................................................... 22 1.4 Formal Problem Definition .................................................................................. 23 1.5 Research Goal and Objectives .............................................................................. 25 1.6 Research Approach .............................................................................................. 28 1.7 Thesis Contributions ............................................................................................ 29 1.8 Outline of the Thesis ............................................................................................ 31 Chapter 2 - Literature Review ....................................................................................... 32 2.1 Reducing the Virtual Machine Boot-Up Time ..................................................... 32 2.2 Background Concepts .......................................................................................... 33 2.2.1 Infrastructure-as-a-Service Providers .............................................................. 34 2.2.1.1 Amazon Elastic Compute Cloud (Amazon EC2) ..................................... 36 2.2.2 Cloud Service Benchmarks ............................................................................. 37 2.2.2.1 TPC-W ...................................................................................................... 39 4 2.2.3 Service Level Agreements ............................................................................... 40 2.2.4 Workload ......................................................................................................... 41 2.3 Existing Auto-Scaling Techniques ....................................................................... 44 2.3.1 Target Tier ....................................................................................................... 45 2.3.2 Prediction Method ........................................................................................... 46 2.3.3 Decision Making Approach ............................................................................. 47 2.3.4 Performance Indicator ..................................................................................... 48 2.3.5 Workload Pattern ............................................................................................. 50 Chapter 3 - Theoretical Foundation of Machine Learning ......................................... 51 3.1 Formal Definition of the Machine Learning Process ........................................... 52 3.2 Empirical Risk Minimization ............................................................................... 54 3.2.1 VC-dimension ................................................................................................. 56 3.2.2 Uniform Convergence Rates for the ERM ...................................................... 57 3.3 Structural Risk Minimization ............................................................................... 58 3.4 Effect of the Workload Pattern on the Prediction Accuracy of the Empirical and the Structural Risk Minimizations ........................................................................ 59 3.5 Artificial Neural Networks ................................................................................... 62 3.5.1 Multi-Layer Perceptron with Empirical Risk Minimization ........................... 62 3.5.2 Multi-Layer Perceptron with Structural Risk Minimization ........................... 63 3.6 Support Vector Machine ...................................................................................... 64 Chapter 4 - Proposed Predictive Auto-Scaling System ............................................... 68 4.1 Self-Adaptive Workload Prediction Suite ............................................................ 69 4.2 Cost Driven Decision Maker ................................................................................ 75 4.2.1 The Reason to Choose Genetic Algorithm ...................................................... 79 4.2.2 Genetic Algorithm ........................................................................................... 80 4.2.2.1 Individual Presentation ............................................................................. 81 5 4.2.2.2 Fitness Function ........................................................................................ 82 4.2.2.3 Genetic Operators ..................................................................................... 83 4.2.2.3.1 Selection Operator ............................................................................. 84 4.2.2.3.2 Crossover and Mutation Operators .................................................... 85 4.2.3 The Proposed Decision Maker Algorithm ....................................................... 86 4.3 Evaluation ............................................................................................................ 90 4.3.1 Evaluation of the Cost Driven Decision Maker ............................................... 90 4.3.2 Evaluation of the Proposed Predictive Auto-Scaling System .......................... 93 4.3.2.1 Amazon Auto-Scaling System Details ..................................................... 93 4.3.2.2 Evaluation Results .................................................................................... 94 Chapter 5 - Experiments and Results ..........................................................................