Cloud computing introduced a new paradigm in IT industry by providing ondemand, elastic, ubiquitous computing resources for users. In a virtualized cloud data center, there are a large number of physical machines (PMs) hosting different types of virtual machines (VMs). Unfortunately, the cloud data centers do not fully utilize their computing resources and cause a considerable amount of energy waste that has a great operational cost and dramatic impact on the environment. Server consolidation is one of the techniques that provide efficient use of physical resources by reducing the number of active servers. Since VM placement plays an important role in server consolidation, one of the main challenges in cloud data centers is an efficient mapping of VMs to PMs. Multiobjective VM placement is generating considerable interest among researchers and academia. This paper aims to represent a detailed review of the recent state-of-the-art multiobjective VM placement mechanisms using nature-inspired metaheuristic algorithms in cloud environments. Also, it gives special attention to the parameters and approaches used for placing VMs into PMs. In the end, we will discuss and explore further works that can be done in this area of research.KEYWORDS cloud computing, multiobjective optimization, nature-inspired metaheuristic algorithms, server consolidation, virtual machine placement
| INTRODUCTIONCloud computing is an emerging paradigm in IT industry, which is mainly based on two important concepts including abstraction and virtualization. 1 As NIST 2 defined, this model provides on-demand, ubiquitous, rapid, and elastic access to shared resources, which is based on the pay-as-go model. Cloud services can appear into two distinct models: deployment models and service models. Cloud deployment models are based on where the cloud's infrastructure has deployed, and they can be classified into four categories: public clouds, private clouds, hybrid clouds, and community clouds. [3][4][5] On the other hand, the cloud service models are based on the services they provide. Generally, there are three common basic cloud services including Infrastructure as a Service (IaaS), Platform as a Service (PaaS), and Software as a Service (SaaS).