Capacity Scaling for Elastic Compute Clouds

University dissertation from Umeå : Umeå universitet

Abstract: AbstractCloud computing is a computing model that allows better management, higher utiliza-tion and reduced operating costs for datacenters while providing on demand resourceprovisioning for different customers. Data centers are often enormous in size andcomplexity. In order to fully realize the cloud computing model, efficient cloud man-agement software systems that can deal with the datacenter size and complexity needto be designed and built.This thesis studies automated cloud elasticity management, one of the main andcrucial datacenter management capabilities. Elasticity can be defined as the abilityof cloud infrastructures to rapidly change the amount of resources allocated to anapplication in the cloud according to its demand. This work introduces algorithms,techniques and tools that a cloud provider can use to automate dynamic resource pro-visioning allowing the provider to better manage the datacenter resources. We designtwo automated elasticity algorithms for cloud infrastructures that predict the futureload for an application running on the cloud. It is assumed that a request is either ser-viced or dropped after one time unit, that all requests are homogeneous and that it takesone time unit to add or remove resources. We discuss the different design approachesfor elasticity controllers and evaluate our algorithms using real workload traces. Wecompare the performance of our algorithms with a state-of-the-art controller. We ex-tend on the design of the best performing controller out of our two controllers anddrop the assumptions made during the first design. The controller is evaluated with aset of different real workloads.All controllers are designed using certain assumptions on the underlying systemmodel and operating conditions. This limits a controller’s performance if the modelor operating conditions change. With this as a starting point, we design a workloadanalysis and classification tool that assigns a workload to its most suitable elasticitycontroller out of a set of implemented controllers. The tool has two main components,an analyzer and a classifier. The analyzer analyzes a workload and feeds the analysisresults to the classifier. The classifier assigns a workload to the most suitable elasticitycontroller based on the workload characteristics and a set of predefined business levelobjectives. The tool is evaluated with a set of collected real workloads and a set ofgenerated synthetic workloads. Our evaluation results shows that the tool can help acloud provider to improve the QoS provided to the customers.

  CLICK HERE TO DOWNLOAD THE WHOLE DISSERTATION. (in PDF format)