Elasticity in IaaS Clouds

Infrastructure-as-a-Service (IaaS), one of the service models of cloud computing, provides resources in the form of Virtual Machines (VMs). Many applications hosted on the IaaS cloud have time varying workloads. These kind of applications benefit from the on-demand provisioning characteristic of cloud platforms. Applications with time varying workloads demand time varying resources in IaaS, which requires elastic resource provisioning in IaaS, such that their performance is intact. In current IaaS cloud systems, VMs are static in nature as their configurations do not change once they are instantiated. Therefore, fluctuation in resource demand is handled in two ways: allocating more VMs to the ap-plication (horizontal scaling) or migrating the application to another VM with a different configuration (vertical scaling). This forces the customers to characterize their workloads at a coarse grained level which potentially leads to under-utilized VM resources or un-der performing application.

Furthermore, the current IaaS architecture does not provide performance guarantees to applications, because of two major factors:

  1. Performance metrics of the application are not used for resource allocation mechanisms by the IaaS
  2. Current resource allocation mechanisms do not consider virtualization overheads, can significantly impact the application’s performance, especially for I/O workloads.

In this work, we develop an Elastic Resource Framework for IaaS, which provides exible resource provisioning mechanism and at the same time preserves performance of applications specified by the Service Level Agreement (SLA). For identification of work-loads which needs elastic resource allocation, variability has been defined as a metric and is associated with the definition of elasticity of a resource allocation system. We introduce new components Forecasting Engine based on a Cost Model and Resource man-ager in OpenNebula IaaS cloud, which compute an optimal resource requirement for the next scheduling cycle based on prediction. Scheduler takes this as an input and enables fine grained resource allocation by dynamically adjusting the size of the VM. Since the prediction may not always be entirely correct, there might be under-allocation or over-allocation of resources based on forecast errors. The design of the cost model accounts for both over-allocation of resources and SLA violations caused by under-allocation of resources. Also, proper resource allocation requires consideration of the virtualization overhead, which is not captured by current monitoring frameworks. We modify exist-ing monitoring frameworks to monitor virtualization overhead and provide fine-grained monitoring information in the Virtual Machine Monitor (VMM) as well as VMs.

In our approach, the performance of the application is preserved by

  1. Binding the application level performance SLAs to resource allocation
  2. Accounting for virtualization over-head while allocating resources.

The proposed framework is implemented using the forecasting strategies like Seasonal AutoRegressive and Moving Average model (Seasonal ARIMA), and Gaussian Process model. However, this framework is generic enough to use any other forecasting strategy as well. It is applied to the real workloads, namely web server and mail server workloads, obtained through Supercomputer Education and Research Centre, Indian Institute of Science. The results show that significant reduction in the resource requirements can be obtained while preserving the performance of application by restricting the SLA violations. We further show that more intelligent scaling decisions can be taken using the monitoring information derived by the modification in monitoring framework.

  1. Resource Usage Monitoring in Clouds, Mohit Dhingra, J. Lakshmi, S. K. Nandy, The 13th IEEE/ACM International Conference on Grid Computing (GRID12), Beijing, Sept, 2012. (PDF)
  2. Elastic Resources Framework in IaaS, preserving performancs SLAs, Mohit Dhingra, J. Lakshmi, S. K. Nandy, Chiranjeeb B, K. Gopinath, IEEE-Cloud, Santa Clara-California, June 2013. (PDF)
  3. Elasticity in IaaS Cloud, preserving performance SLAs, Mohit Dhingra, MSc (Engg) Thesis, 2014 (PDF)*

* This thesis won the Subramanian Rajalakshmi medal for the best MSc thesis for the year 2014.