Dynamic Virtual Machine Placement in Cloud Computing

Dynamic Virtual Machine Placement in Cloud Computing

Arnab Kumar Paul (Virginia Tech, USA) and Bibhudatta Sahoo (National Institute of Technology Rourkela, India)
Copyright: © 2017 |Pages: 32
DOI: 10.4018/978-1-5225-1721-4.ch006
OnDemand PDF Download:
No Current Special Offers


The aim of cloud computing is to enable users to access resources on demand. The number of users is continuously increasing. In order to fulfil their needs, we need more number of physical machines and data centers. The increase in the number of physical machines is directly proportional to the consumption of energy. This gives us one of the major challenges; minimization of energy consumption. One of the most effective ways to minimize the consumption of energy is the optimal virtual machine placement on physical machines. This chapter focuses on finding the solution to the problem of dynamic virtual machine placement for the optimized consumption of energy. An energy consumption model is built which takes into account the states of physical machines and live migration of virtual machines. On top of this, the cloud computing model is built. Unlike centralized approaches towards virtual machine placement which result in many unreachable solutions, a decentralized approach is used in this chapter which provides a list of virtual machine migrations for their optimal placement.
Chapter Preview

Anatomy Of Cloud Computing

In cloud computing, virtualization is the most important factor in giving dynamic and scalable architectures. Apart from providing the important aspects of resource sharing and scalability, virtualization also contributes to the capability of virtual machine migration between PMs in order to balance the load (Jones, 2010).

Figure 1 depicts the key elements in a single node in the environment of cloud computing. The component of virtualization in a cloud node is given by the Hypervisor, which is also called as the Virtual Machine Monitor (VMM). This layer is responsible for providing the interface of executing many instances of operating systems in one PM. Thus, hypervisors create virtual machine objects which provide encapsulation for operating system, applications and configuration. Another important aspect in a cloud node known as device emulation is given either in the hypervisor or as a VM. VM management takes place both in local PMs as well as in global DCs.

Figure 1.

Core elements of cloud node


Thus in order to form a DC, the cloud node shown in Figure 1 is multiplied over a network provided with the management orchestration over the complete infrastructure:

  • Hypervisors: This is the initial level of a PM (a single cloud node). It provides the virtual operating platform, thus managing the execution of guest operating systems, known as VMs. The VMs share the virtualized hardware resources of the cloud node. One of the best examples of hypervisors for production environments is the Linux Kernel Virtual Machine (KVM).

  • Device Emulation: Hypervisors are responsible for providing the platform for sharing virtualized physical resources. But in order to achieve complete virtualization, the whole cloud node must be virtualized. This is the job of a device emulator. QEMU is the example of a complete package combining emulator and hypervisor.

  • Virtual Networking: As the number of cloud users grow, the number of VMs increases. In order to achieve intensified networking system, virtual machines are required to communicate on a virtualized network rather than on a physical level. This reduces the load on the physical infrastructure of the system. Virtual switches are also introduced for effective communication among the VMs.

Complete Chapter List

Search this Book: