Review
An overview of virtual machine placement schemes in cloud computing

https://doi.org/10.1016/j.jnca.2016.01.011Get rights and content

Abstract

In cloud computing, Virtual Machine (VM) placement is a critical operation which is conducted as part of the VM migration and aimed to find the best Physical Machine (PM) to host the VMs. It has a direct effect on the performance, resource utilization and power consumption of the data centers and can reduce the maintenance cost of the data centers for cloud providers. Numerous VM placement schemes are designed and proposed for VM placement in the cloud computing environment aimed to improve various factors affecting the data centers, the VMs and their executions. This article provides a complete survey and analyses of the existing state of the art VM placement schemes proposed in the literature for the cloud computing and data centers. Furthermore, it classifies the VM placement schemes based on the type of the placement algorithm and assesses their capabilities and objectives. Moreover, the properties, advantages and limitations of the VM placement schemes are compared. Finally, the concluding remarks and future research directions are provided.

Introduction

Cloud computing is a model for enabling ubiquitous, convenient, on-demand network access to a shared pool of configurable virtual resources which can rapidly be provisioned and used based on the pay-for use model. It provides facilities to its users to dynamically scale up the applications, the platform and the hardware infrastructure (Gahlawat and Sharma, 2014, Tang et al., 2014, Shu et al., 2014). The cloud service models can be categorized into Software-as-a-Service (SaaS), Platform-as a-Service (PaaS) and Infrastructure-as-a-Service (IaaS) (Buyya et al., 2009, Lombardi and Di Pietro, 2011, Zhang et al., 2010).

In addition, some primary deployment models as public clouds, community clouds, private clouds, and hybrid clouds exist (Komu et al., 2012, Davidovic et al., 2015, Srinivasan et al., 2015, Zhang et al., 2013).The Public clouds provide their services via the Internet to everyone, while private clouds are internally managed and operated by a single organization and offer increased reliability, control, and security to their users. On the other hand, a community cloud is deployed between two or more organizations with similar service requirements. Moreover, the hybrid clouds are a collection of the clouds which possibly of different types and interconnected with each other (Komu et al., 2012, Zhang et al., 2013). The cloud computing provides numerous advantages to its users and providers. Some of the key benefits of the cloud computing are flexibility, cost savings, location and hardware independence, multi-tenancy and reliability.

The cloud computing enables its users to utilize computing resources from the cloud data centers as a service, instead of owning it. For this purpose, cloud computing applies virtualization in which hardware resources of one or more computer systems are divided into several execution environments called Virtual Machines (VMs). Generally, each VM is isolated from other VMs and can act as a complete system to execute the user applications. In order to host a VM, a Physical Machine (PM) or server must provide all resources that the VM requires, including its CPU, memory, storage and network bandwidth requirements (Vu and Hwang, 2014). Inside a server or a physical machine, the VMs are controlled by a layer of software called VM Monitor (VMM) or hypervisor, which, as indicated in Fig. 1, resides between the hardware platform and the VMs. Generally, the VM monitor supports the creating, migrating and terminating VM instances (Komu et al., 2012).

VM migration is an interesting cloud computing feature which is aimed to respond to dynamic requests of the VMs in order to guarantee the promised Service Level Agreement (SLA) to the cloud consumers. Thus, when a VM requests some resources which cannot be provided in the hosted physical machine, the VM is migrated to another physical machine to satisfy the VM׳s requested resource. Also, the VMs may be migrated to provide better management of the physical machines and data centers.

One of the important operations which is conducted as a part of the VM migration is the VM placement in which a proper physical machine is selected to host the VM. Because of its importance, the problem of the VM placement in the cloud computing environment has been the focus of substantial researches, and numerous VM placement schemes have been designed and proposed in the literature. Each VM placement scheme pursuits some objectives and utilizes a placement algorithm which applies some placement factors to achieve these objectives. For example, some VM placement schemes try to reduce the data center׳s network traffic and power consumption. Also, an ideal VM placement scheme should reduce the need for future VM migrations and improve the resource utilization and availability of the data centers’ resources (Dashti and Rahmani, 2015).

This paper presents a comprehensive survey and analysis of the various state of the art the VM placement solutions have been proposed for the various cloud computing environments and data centers. The proposed schemes are classified according to the algorithm type applied in the VM placement, and the properties, advantages and limitations of each scheme are investigated in detail. Also, besides analyzing the objectives of each VM placement scheme, we have investigated and compared various placement factors which have been utilized to realize each objective. Conducting this research is very important for understanding the current trends in the VM placement methods and designing effective VM placement for emerging issues of the cloud computing environment.

The rest of the paper is organized as follows: Section 2 illuminates the VM placement problem in cloud computing and Section 3 provides an overview of proposed VM placement schemes. Section 4, discusses about the simulators/provider applied in VM placement schemes and Section 5 presents an in-depth comparison of VM placement schemes. Finally Section 6 provides the concluding remarks and future research directions.

Section snippets

Problem definition

Virtualization is one of the core technologies of the cloud computing environment. A Virtual Machine (VM) emulate a computer system and presents the targeted system and support the execution of an operating system. Classification of the VMs can be based on the extent of which they implement functionality of the targeted machines. Various levels of virtualization are as follows:

  • Full virtualization

  • Para virtualization

  • Hardware assisted virtualization

  • Resource virtualization

Generally, each VM shares

Analysis of VM placement scheme

This section discusses the existing VM placement schemes proposed in the literature for cloud IaaS layer. Almost all of the proposed VM placement schemes consider a three-tier architecture for data center network. The goal of data center network is to interconnect several servers with high-speed links. As indicated in Fig. 5, at the bottom level servers are organized in racks, and each server in a rack connects to one or two Top-of-Rack (ToR) switches. Also, each ToR switch connects to one or

Cloud simulators and providers

This section analyzes some of the simulators and cloud providers which have been utilized in evaluation and analysis of the VM placement schemes. Each subsection illustrates the capabilities and properties of each environment.

Discussion

This section provides a complete comparative analysis of the VM placement schemes proposed for the cloud environment. It mainly provides a comparison of the following issues:

  • The number of schemes provided for each algorithm.

  • The VM placement factors applied in each scheme.

  • The resources which have been considered in each.

  • The power-related factors in the VM placement schemes.

  • The cost factors in the VM placement schemes.

  • The network factors in the VM placement schemes.

Figure 14 indicates the number

Conclusion

Cloud computing is an emerging computing platform which presents virtual resources pool by centralizing computing resources connected with network and presents them as various services such as IaaS, PaaS, SaaS. Virtualization is one of the necessary technologies which make the cloud computing possible. Recently, the VM placement problem has become a hot topic in the cloud data centers because proper placement can greatly reduce the VMs traffic in the data center and improve the physical

References (77)

  • J. Tordsson

    Cloud brokering mechanisms for optimized placement of virtual machines across multiple providers

    Future Gener Comput Syst

    (2012)
  • Z. Xiao

    A solution of dynamic VMs placement problem for energy consumption optimization based on evolutionary game theory

    J Syst Softw

    (2015)
  • Y. Zhang et al.

    Automatic software deployment using user-level virtualization for cloud-computing

    Future Gener Comput Syst

    (2013)
  • Abazari F, Analoui M. Exploring the effects of virtual machine placement on the transmission of infections in cloud....
  • Buyya R, Beloglazov A, Abawajy J. Energy-efficient management of data center resources for cloud computing: a vision,...
  • Babu K, Samuel P. Virtual machine placement for improved quality in IaaS cloud. In: Fourth International Conference on...
  • Breitgand D, et al. Network aware virtual machine and image placement in a cloud. In: 2013 9th International Conference...
  • Chaisiri S, Lee B-S, Niyato D. Optimal virtual machine placement across multiple cloud providers. In: IEEE Asia-Pacific...
  • Calcavecchia NM, et al. VM placement strategies for cloud scenarios. In: IEEE 5th international conference on Cloud...
  • Chen W, et al. A profit-aware virtual machine deployment optimization framework for cloud platform providers. In: IEEE...
  • Chen K-Y, et al. Intelligent virtual machine placement for cost efficiency in geo-distributed cloud systems. In: IEEE...
  • S.E. Dashti et al.

    Dynamic VMs placement for energy efficiency by PSO in cloud computing

    J Exp Theor Artif Intell

    (2015)
  • Dupont C, et al. An energy aware framework for virtual machine placement in cloud federated data centres. In: Third...
  • Dong J, et al. Virtual machine placement for improving energy efficiency and network performance in IaaS cloud. In:...
  • Dong J, et al. Energy-saving virtual machine placement in cloud data centers. In: 13th IEEE/ACM international symposium...
  • Dai X, Wang JM, Bensaou B. Energy-efficient virtual machine placement in data centers with heterogeneous requirements....
  • Duong-Ba T, et al. Joint virtual machine placement and migration scheme for datacenters. In: Global Communications...
  • Do AV, et al. Profiling applications for virtual machine placement in clouds. In: IEEE international conference on...
  • Elmroth E, Larsson L. Interfaces for placement, migration, and monitoring of virtual machines in federated clouds. In:...
  • Fang S, et al. Power-efficient virtual machine placement and migration in data centers. In: IEEE International...
  • Gahlawat M, Sharma P. Survey of virtual machine placement in federated Clouds. In: IEEE International Advance Computing...
  • R.K. Gupta et al.

    Survey on virtual machine placement techniques in cloud computing environment

    Int J Cloud Comput: Serv Archit

    (2014)
  • Gupta A, et al. Hpc-aware vm placement in infrastructure clouds. In: IEEE International Conference on Cloud Engineering...
  • Goudarzi H, Pedram M. Energy-efficient virtual machine replication and placement in a cloud computing system. In: 5th...
  • Gao J, Tang G. Virtual machine placement strategy research. In: Cyber-Enabled Distributed Computing and Knowledge...
  • B. Heller et al. ElasticTree: saving energy in data center networks. In: Proceedings of NSDI;...
  • Huang W, Li X, Qian Z. An energy efficient virtual machine placement algorithm with balanced resource utilization. In:...
  • He L. A method of virtual machine placement based on gray correlation degree. In: 5th IEEE International Conference on...
  • Cited by (245)

    View all citing articles on Scopus
    View full text