A Virtual Machine Placement and Reconfiguration Framework for Cloud Computing Platforms

A Virtual Machine Placement and Reconfiguration Framework for Cloud Computing Platforms

Wei Chen (Institute of Software, The Chinese Academy of Sciences, Beijing, China), Xiaoqiang Qiao (Institute of Software, The Chinese Academy of Sciences, Beijing, China), Jun Wei (Institute of Software, The Chinese Academy of Sciences, Beijing, China), Hua Zhong (Institute of Software, The Chinese Academy of Sciences, Beijing, China) and Tao Huang (Institute of Software, The Chinese Academy of Sciences, Beijing, China)
DOI: 10.4018/ijaras.2014040101


As a rising application paradigm and technology, cloud computing can leverage the efficient pooling of on-demand, self-managed virtual infrastructure. How to maximize the resource utilization and how to reduce the cost of configuration are essential issues in cloud computing. In this paper, the authors propose a framework to achieve these objectives by optimizing VM placement and deciding when and how to perform the VM reconfigurations. The authors leverage the vector arithmetic to model the objective of balancing the multiple resource utilization and propose an optimization method for the static VM placement. Then the authors propose a two-level runtime reconfiguration policy, including the local adjustment and the parallel migration, to minimize the reconfiguration cost. Finally, the authors implement a prototype to validate and evaluate the proposed mechanism with a set of preliminary experiments, which shows that our work can maximize the resource utilization while effectively reducing the cost of the runtime reconfiguration.
Article Preview


Cloud computing, providing software, platforms and infrastructures as services, is popular as a rising application paradigm (Armbrust et al., 2009). Virtualization technology (Smith & Nair, 2005), as an essential impetus of cloud computing, allows multiple applications to run on the Virtual Machines (VMs) instead of the physical ones (PMs) by virtualizing the resources (e.g. CPU, memory, etc.), which effectively improves the resource utilizations, scalabilities, flexibilities, availabilities, and isolation of applications. Due to these advantages, the large-scale distributed applications are preferred to be hosted on the cloud platforms.

In a typical cloud computing environment, VM is the basic unit of placement and management, and the platform provider takes the responsibility of satisfying the resource demands of the applications. The provider determines where to place VMs and how to allocate the resources through the operation, including static VM placement, VM adjustment (Almeida et al., 2006; Padala, 2007), live migration (Wood et al., 2007) and consolidation (Hermenier et al., 2009), to achieve the flexible resource allocation and the efficient resource utilization. In the static placement, a set of VMs and their resource requirements, as well as a set of PMs and their individual capacity are given, and the objective is to minimize the required PMs when placing the VMs onto them. The VM adjustment changes the resource allocations of VMs dynamically. The live migration can transfer VMs from the overloaded PMs to the ones having sufficient resources in short time. The consolidation aims to reduce power consumption and maximize the resource utilization, by moving several VMs on multiple PMs to a single one. Except for the static placement, all the operations can be performed at runtime.

VM placement and reconfiguration are important because they can achieve some objectives, including making the sufficient resource utilization, maintaining the Qualities of Services (QoS), mitigating the hotspots, and so on. However, they are also complicated because of: 1) the large scale of the cloud computing, 2) many decisive factors, including the multiple resource capacities, Service Level Agreement (SLA) violation penalties, power consumptions, hotspot dissipation and other management costs, and 3) the objectives of the different stakeholders.

VM placement and reconfiguration have attracted considerable interests, and there is some work devoted to addressing the problems with various objectives, including maximizing the resource utilization, reducing power consumption, and minimizing VM migration costs. Initially, some work just considered the resource utilizations and the workload, using ordering algorithm (Khanna et al., 2006), constraint programming (Hermenier et al., 2009) and genetic algorithm (Xu& Fortes, 2010). Recently, some factors relating to providers’ costs, including power consumption (Jung et al., 2010), thermal dissipation, reconfiguration costs (Tarighi et al., 2010) and penalty of SLA violation (Bobroff et al., 2007), were considered. Ramos & Bianchini (2008) and Tang (2008) proposed the temperature-aware workload placements method respectively. Xu & Fortes (2011) simultaneously considered workload, power consumption and thermal management when performing runtime reconfiguration.

However, we find that there are still some other issues should be considered:

Complete Article List

Search this Journal:
Open Access Articles: Forthcoming
Volume 7: 1 Issue (2016)
Volume 6: 2 Issues (2015)
Volume 5: 4 Issues (2014)
Volume 4: 4 Issues (2013)
Volume 3: 4 Issues (2012)
Volume 2: 4 Issues (2011)
Volume 1: 4 Issues (2010)
View Complete Journal Contents Listing