SLA-based Resource Provisioning for Heterogeneous Workloads in a Virtualized Cloud Datacenter Saurabh Kumar Garg, Srinivasa K Gopalaiyengar and Rajkumar Buyya Cloud Computing and Distributed Systems Laboratory Department of Computer Science and Software Engineering The University of Melbourne, Australia {sgarg, raj}@csse.unimelb.edu.au Abstract. Efficient provisioning of resources is a challenging problem in cloud computing environments due to its dynamic nature and the need for supporting heterogeneous applications with different performance re- quirements. Currently, cloud datacenter providers either do not offer any performance guarantee or prefer static VM allocation over dynamic, which lead to inefficient utilization of resources. Earlier solutions, concen- trating on a single type of SLAs (Service Level Agreements) or resource usage patterns of applications, are not suitable for cloud computing envi- ronments. In this paper, we tackle the resource allocation problem within a datacenter that runs different type of application workloads, particu- larly non-interactive and transactional applications. We propose admis- sion control and scheduling mechanism which not only maximizes the resource utilization and profit, but also ensures the SLA requirements of users. In our experimental study, the proposed mechanism has shown to provide substantial improvement over static server consolidation and reduces SLA Violations. 1 Introduction With the increasing popularity of Cloud computing, research centers and enter- prises have started outsourcing their IT and computational needs to on-demand cloud services [3].The clouds are typically large scale virtualized datacenters hosting thousands of servers. While there are several advantages of these virtu- alized infrastructures such as on-demand scalability of resources, there are still issues which prevent their widespread adoption in clouds. In particular, for a commercial success of this computing paradigm, the cloud datacenters need to provide a better and strict Quality of Service (QoS) guarantees. These guaran- tees which are documented in the form of Service Level Agreement (SLA) are crucial, since only then the customers can be confident in outsourcing their jobs to clouds [19]. Resource provisioning plays a key role in ensuring that the cloud providers adequately accomplish their obligations to customers while maximiz- ing the utilization of underlying infrastructure. An efficient resource manage- ment scheme would require to automatically allocate to each service request,