Live Virtual Machine Migration Techniques: Survey and Research Challenges
Total Page:16
File Type:pdf, Size:1020Kb
Live Virtual Machine Migration Techniques: Survey and Research Challenges Divya Kapil, Emmanuel S. Pilli and Ramesh C. Joshi Department of Computer Science and Engineering Graphic Era University Dehradun, India (divya.k.rksh, emmshub, chancellor.geu)@gmail.com Abstract—Cloud is an emerging technology in the world of interaction with each service provider. Broad network access information technology and is built on the key concept of gives access to capabilities available over the network through virtualization. Virtualization separates hardware from software standard mechanisms. Resource pooling pools computing and has benefits of server consolidation and live migration. Live resources to serve multiple consumers. Rapid elasticity is used migration is a useful tool for migrating OS instances across to elastically provision and release capabilities or resources. distant physical of data centers and clusters. It facilitates load Measured service control and optimize resource use by balancing, fault management, low-level system maintenance and leveraging a metering capability. reduction in energy consumption. In this paper, we survey the major issues of virtual machine live migration. We discuss how The key concept of the cloud computing is Virtualization. the key performance metrics e.g downtime, total migration time Virtualization technology has become popular and valuable for and transferred data are affected when a live virtual machine is cloud computing environment. Virtualization technology was migrated over WAN, with heavy workload or when VMs are implemented on IBM mainframe 1960. Virtualization is the migrated together. We classify the techniques and compare the abstraction of the physical resources needed to complete a various techniques in a particular class. request and underlying hardware used to provide service. It splits up a physical machine into several virtual machines. Keywords—Cloud computing; Virtualization; Virtual machine, Live migration; Pre-copy; Post-copy; “A virtual machine (VM) is a software implementation of a computing environment in which an operating system or I. INTRODUCTION program can be installed and run” [6]. The computational world has become very large and complex. Cloud computing is the latest evolution of Application Application computing, where IT capabilities are offered as services. Cloud Operating Systems Operating System computing delivers services like software or applications (SaaS – Software as a Service), infrastructure (IaaS - Infrastructure as Virtualized Hardware Virtualized Hardware a service), and platform (PaaS - Platform as a service). Computing is made available in a Pay-As-You-Use manner to Hypervisor (Virtualization) users. Some common examples are Google’s App Engine [1], MEM NIC DISK Amazon’s EC2 [2], Microsoft Azure [3], IBM SmartCloud [4]. CPU Cloud based services are on demand, scalable, device Fig. 1. Virtualization independent and reliable. Many different businesses and organization have adopted the concept of the cloud computing. VMware ESX / ESXi [7], Virtual PC [8], Xen [9], and Cloud computing enables consumer and businesses to use Microsoft Hyper-V [10], KVM [11], VirtualBox [12] are application without installation and they can access their files popular virtualization software. Virtualization can run multiple on any computer through Internet. A standard definition for operating systems concurrently as shown in Fig. 1. A single cloud computing is a model for enabling convenient, on host can have many smaller virtual machines in which isolated demand network access to a shared pool of configurable operating system instances are running. Virtualization computing resources (e.g., networks, server, storage, technologies have a host program called Virtual Machine application, and services) that can be rapidly provisioned and Monitor or “Hypervisor”, which is a logical layer between released with minimal management effort or service provider underlying hardware and computational processes, and runs on interaction” [5]. the top of a given host. Cloud model is composed of five essential characteristics: In cloud computing, storage, application, server and On-demand self service, Broad network access, Resource network devices can be virtualized. Virtualization can provide pooling, Rapid elasticity and Measured service. On-demand many benefits, such as resource utilization, portability, and self service ensures that a consumer can one-sidedly provision computing capabilities automatically without requiring human 978-1-4673-4529-3/12/$31.00 c 2012 IEEE 963 application isolation, reliability of system, higher performance, state in its disks, memory, CPU registers, and I/O devices. It is improved manageability and fault tolerance. a hardware state called a capsule and includes the entire operating system as well as applications and running processes. The reasons for VM migration are: Load Balancing, They have developed techniques to reduce the amount of data accomplished by migrating VMs out of overloaded / sent over the network. The copy-on-write disks track only the overheated servers, and Server Consolidation, where servers updates to capsule disks, "ballooning" zeros unused memory, can be selectively brought down for maintenance after demand paging fetches only needed blocks, and hashing avoids migrating their workload to other servers [13]. sending blocks that already exist at the remote end. In this paper we survey on the performance technologies of The basic idea of live migration algorithm, first proposed the VM live migration. We discuss live migration techniques to by Clark et. al. [15]. First Hypervisor marks all pages as dirty, cluster, grid etc, much before the concept was applied to Cloud then algorithm iteratively transfer dirty pages across the computing. We survey the literature on the evaluation of network until the number of pages remaining to be transferred various VM migration techniques and identify the performance is below a certain threshold or a maximum number of iterations metrics. All the existing live virtual machine migration is reached. Then Hypervisor mark transferred pages as clean, techniques are studied and classified based on these metrics. since VM operates during live migration, so already transferred This paper is organized as follows. Section II gives a brief memory pages may be dirtied during iteration and must need to introduction of Virtual Machine Migration (VMM). Section III be re-transferred. The VM is suspended at some point on the describes some related work on evaluation metrics. Live VMM source for stopping further memory writes and transfer Techniques are surveyed in section IV. We conclude our work remaining pages. After transferring all the memory contents, in section V with future directions. the VM resumes at destination. II. BACKGROUND Nelson et. al. [16] describes the design and implementation Virtualization technology allows multiple operating of a system that uses virtual machine technology to provide systems run concurrently on the same physical machine. fast, transparent application migration, neither the applications Virtualization provides facility to migrate virtual machine from nor the operating systems need to be modified. Performance is one host (source) to another physical host (destination). Virtual measured with hundred virtual machines, migrating Machine Migration (VMM) is a useful tool for administrator of concurrently with standard industry benchmarks. It shows that data center and clusters: it allows clean separation between for a variety of workloads, application downtime due to hardware and software. Process level migration problems can migration is less than a second. be avoided by migrating a virtual machine. VMM avoids A high performance virtual machine migration design Residual Dependencies. Virtual Machine Migration enables based on Remote Direct Memory Access (RDMA) was energy saving, load balancing, efficient resources utilization. proposed by Huang et al. [17]. InfiniBand is an emerging Virtual Machine Migration methods are divided into two interconnects offering high performance and features such as types: Hot (live) migration and cold (non-live) migration. The OS-bypass and RDMA. RDMA is a direct memory status of the VM loses and user can notice the service access from the memory of one computer into that of another interruption in cold migration. Virtual machine keeps running without involving either one's operating system. By using while migrating and does not lose its status. User doesn’t feel RDMA remote memory can be read and write (modified) any interruption in service in hot (live) migration. In live directly, hardware I/O devices can directly access memory migration process, the state of a virtual machine to migrate is without involving OS. transferred. The state consists of its memory contents and local Luo et. al. [18] describe a whole-system live migration file system. Local file system need not be transferred. First, scheme, which transfers the whole system run-time state, VM is suspended, then its state is transferred, and lastly, VM is including CPU state, memory data, and local disk storage, of resumed at destination host. the virtual machine (VM). They propose a three-phase Live migration facilitates online maintenance, load migration (TPM) algorithm as well as an incremental migration balancing and energy management: (IM) algorithm, which migrate the virtual machine back to the 1. Online maintenance: To Improve system’s reliability and source machine in a very