Enhancing the Performance of Live Migration of Virtual Machine s with WSClock Replacement Algorithm



Similar documents
A Migration of Virtual Machine to Remote System

Xen Live Migration. Networks and Distributed Systems Seminar, 24 April Matúš Harvan Xen Live Migration 1

Infrastructure as a Service (IaaS)

A Hybrid Approach To Live Migration Of Virtual Machines

A Survey Paper: Cloud Computing and Virtual Machine Migration

Dynamic Load Balancing of Virtual Machines using QEMU-KVM

Downtime Analysis of Virtual Machine Live Migration

Migration of Virtual Machines for Better Performance in Cloud Computing Environment

Virtualization for Cloud Computing

Chapter 14 Virtual Machines

Keywords Distributed Computing, On Demand Resources, Cloud Computing, Virtualization, Server Consolidation, Load Balancing

Full and Para Virtualization

MODULE 3 VIRTUALIZED DATA CENTER COMPUTE

COS 318: Operating Systems. Virtual Machine Monitors

Energy Conscious Virtual Machine Migration by Job Shop Scheduling Algorithm

Dynamic resource management for energy saving in the cloud computing environment

GUEST OPERATING SYSTEM BASED PERFORMANCE COMPARISON OF VMWARE AND XEN HYPERVISOR

Virtual Machine Monitors. Dr. Marc E. Fiuczynski Research Scholar Princeton University

Dynamic memory Allocation using ballooning and virtualization in cloud computing

Virtualization. Types of Interfaces

Towards Unobtrusive VM Live Migration for Cloud Computing Platforms

A Dynamic Resource Management with Energy Saving Mechanism for Supporting Cloud Computing

Virtual Machine Migration with an Open Source Hypervisor

COM 444 Cloud Computing

Live Virtual Machine Migration Based on Cow Checkpointing Using XEN Hypervisor

Live Migration of Virtual Machines in Cloud

Virtualization Technologies (ENCS 691K Chapter 3)

Virtualization. Explain how today s virtualization movement is actually a reinvention

Migration without Virtualization

Balancing Server in Public Cloud Using AJAS Algorithm

Distributed and Cloud Computing

COS 318: Operating Systems. Virtual Machine Monitors

Live and Incremental Whole-System Migration of Virtual Machines Using Block-Bitmap

Database Virtualization

Cloud Computing CS

Keywords Virtualization, Virtual Machines, Migration, Hypervisor, Cloud Computing

Virtualization. Jukka K. Nurminen

Virtualization. Pradipta De

Performance Comparison of VMware and Xen Hypervisor on Guest OS

PARALLELS CLOUD SERVER

A Fuzzy Predictable Load Balancing Approach in Cloud Computing

The Key Technology Research of Virtual Laboratory based On Cloud Computing Ling Zhang

Avoiding Overload Using Virtual Machine in Cloud Data Centre

Analysis on Virtualization Technologies in Cloud

Virtualization Technologies and Blackboard: The Future of Blackboard Software on Multi-Core Technologies

Chapter 2 Addendum (More on Virtualization)

Windows Server 2008 R2 Hyper-V Live Migration

Remus: : High Availability via Asynchronous Virtual Machine Replication

Best Practices for Monitoring Databases on VMware. Dean Richards Senior DBA, Confio Software

Cloud Server. Parallels. An Introduction to Operating System Virtualization and Parallels Cloud Server. White Paper.

A SURVEY ON VIRTUALIZATION TECHNOLOGY IN CLOUD COMPUTING

Experimental Investigation Decentralized IaaS Cloud Architecture Open Stack with CDT

The VMware Administrator s Guide to Hyper-V in Windows Server Brien Posey Microsoft

BridgeWays Management Pack for VMware ESX

Basics of Virtualisation

Windows Server 2008 R2 Hyper-V Live Migration

Xen and the Art of. Virtualization. Ian Pratt

Chapter 16: Virtual Machines. Operating System Concepts 9 th Edition

IMPLEMENTATION OF VIRTUAL MACHINES FOR DISTRIBUTION OF DATA RESOURCES

Takahiro Hirofuchi, Hidemoto Nakada, Satoshi Itoh, and Satoshi Sekiguchi

8th WSEAS International Conference on SYSTEMS THEORY and SCIENTIFIC COMPUTATION (ISTASC 08) Rhodes, Greece, August 20-22, 2008

A Security State Transfer Model for Virtual Machine Migration in Cloud Infrastructure

IaaS Cloud Architectures: Virtualized Data Centers to Federated Cloud Infrastructures

Rackspace Cloud Databases and Container-based Virtualization

Virtualization. Dr. Yingwu Zhu

Efficient Load Balancing using VM Migration by QEMU-KVM

Virtual Machine Synchronization for High Availability Clusters

Microkernels, virtualization, exokernels. Tutorial 1 CSC469

White Paper on NETWORK VIRTUALIZATION

Study of Various Load Balancing Techniques in Cloud Environment- A Review

CLOUD COMPUTING. Virtual Machines Provisioning and Migration Services Mohamed El-Refaey

Allocation of Resources Dynamically in Data Centre for Cloud Environment

Two-Level Cooperation in Autonomic Cloud Resource Management

Energy Constrained Resource Scheduling for Cloud Environment

Making a Smooth Transition to a Hybrid Cloud with Microsoft Cloud OS

Multi-dimensional Affinity Aware VM Placement Algorithm in Cloud Computing

Research of Disk Migration Technology for Virtual Machine in Cloud Computing

A New Strategy for Data Management in a Time of Hyper Change

Virtualization with Windows

Basics in Energy Information (& Communication) Systems Virtualization / Virtual Machines

Dynamic Resource management with VM layer and Resource prediction algorithms in Cloud Architecture

International Journal of Computer & Organization Trends Volume20 Number1 May 2015

Index C, D. Background Intelligent Transfer Service (BITS), 174, 191

Monitoring Databases on VMware

Virtualization Technology using Virtual Machines for Cloud Computing

Virtual Software Routers: A Performance and Migration Study

Effective Resource Allocation For Dynamic Workload In Virtual Machines Using Cloud Computing

Coordinating Virtual Machine Migrations in Enterprise Data Centers and Clouds

IOS110. Virtualization 5/27/2014 1

Efficient Scheduling Of On-line Services in Cloud Computing Based on Task Migration

Cloud Computing #6 - Virtualization

Iaas for Private and Public Cloud using Openstack

Improving Virtual Machine Migration via Deduplication

CPET 581 Cloud Computing: Technologies and Enterprise IT Strategies. Virtualization of Clusters and Data Centers

Enabling Technologies for Distributed Computing

Live Migration of Multiple Virtual Machines with Resource Reservation in Cloud Computing Environments

Masters Project Proposal

Data center modeling, and energy efficient server management

Performance Management in the Virtual Data Center, Part II Memory Management

A Novel Way of Deduplication Approach for Cloud Backup Services Using Block Index Caching Technique

Transcription:

Enhancing the Performance of Live Migration of Virtual Machine s with WSClock Replacement Algorithm C.Sagana M.Geetha Dr R.C.Suganthe PG student, Assistant Professor, Professor, Dept of CSE, Dept of CSE Dept of CSE Kongu Engineering College, Kongu Engineering College, Kongu Engineering College, Perundurai, TamilNadu Perundurai, TamilNadu Perundurai, TamilNadu sagana.c@gmail.com geetha@kongu.ac.in suganthe_rc@kongu.ac.in Abstract- Live migration of virtual machines is an important component of the emerging cloud computing environments. Migrating operating system instances across distinct physical hosts is a useful tool for administrators of data centres and clusters. Hence, a key issue in live migration is the total migration time and the downtime. To improve the performance of live migration, an optimized iterative pre-copy algorithm is used to reduce the dirty rate of VM. WSClock page replacement algorithm has been proposed along with traditional pre-copy approach that includes pre-processing phase for reducing the amount of transferred memory page and total migration time. Keywords- Live Migration, Working Set, Total Migration Time, Virtual Machine, Downtime, Dirty page. 1. INTRODUCTION Cloud is a computing model that delivers web-based software and computing resources on demand and subscription-based service. It allows the users to use applications without installing software and access their files at any computer with internet access. This technology enables efficient computing by centralizing data storage, processing and bandwidth and the user can access information from anywhere at any time. Cloud Computing offers services at a reasonable cost, and leave the maintenance and cost of ownership to the cloud providers. Major benefit of cloud is sharing documents between users from anywhere and offers on-demand scaling of resources, such as acquiring unlimited storage capacity. One way to reduce power consumption in a data center is to apply virtualization technology. This technology allows consolidating several servers to one physical node as Virtual Machines (VMs) to reducing the amount of the hardware in use. Virtualization is the enabling technology, which abstract the resources such as CPU and memory through generating virtual machines and hides the complexity of underlying hardware or software. It allows separation of a resource or request for a service from the underlying physical machine. It makes single physical resource (such as server, OS application or storage device) to appear as multiple logical resources and multiple physical resources (such as storage devices or servers) to appear as a single logical resource. 1.1 Virtualization Virtualization is a technology for cloud computing environments. It allows partitioning one physical machine into multiple virtual machines that runs concurrently and also shares the same physical resources. Virtual Machines (VM) can be provisioned on-demand, replicated and migrated. It has the ability to migrating virtual machine from one physical machine to another machine for the purpose of load balancing and also to make the physical machine fault tolerant. Virtual Machine consolidations can be used to reduce power consumption of cloud data centers. For instance, through server consolidation, multiple (virtual) servers can be allowed to run simultaneously on a single physical server. 1.2 Live migration Live migration decouples the applications executing within the VM from the hardware on which they execute. Live virtual machine migration is one of the key enabling technologies for fault tolerance and load balancing. Operating system and running tasks are moved from one physical machine to Integrated Intelligent Research (IIR) 139

another without halting. Virtual machines can be provisioned on-demand, replicated and migrated. As VM is running a live service it is important that the transfer balances the requirements of minimizing both downtime and total migration time. Live migration can also be used for load balancing, in which work is shared among computers in order to optimize the utilization of available CPU resources. Live Migration allows dynamic load balancing of virtualized resource pools and hardware maintenance without any downtime. This migration must be transparent to the guest operating system and the applications running on the virtual machine, and remote clients of the VM. The migration process consists of transferring the memory image from the source host to the destination host. It is the process of migrating virtual machine to other physical machine by copying the memory pages from source to destination machine and it can be done in iterative manner. Further, migration can be divided into live and suspend migration. In live migration, VM and its applications will be running during migration. In suspend migration, the VM is suspended and then migrated. Fig. 1. Live Migrations of VMs The parameter that affect the performance of live migration are: total migration time (the time taken from the start of the first VM s migration at the source to the end of the last VM s migration at the destination), downtime (the time period during VM s CPU execution is fully suspended during live migration). During downtime, the VM s CPU execution state and its pages in the Working set is transferred to the target host. Major contribution of this paper can be characterized as follows: We proposed mechanism WSClock replacement algorithm for migrating virtual machines to reduce the downtime and total migration time. Analyzing the parameter that affects the performance of live migration. Implement this prototype on Live Xen hypervisor. The rest of the report is organized as follows: In chapter 2, related works are reviewed. Chapter 3 describes the problem of Iterative pre copy approach. Chapter 4 describes the proposed method to overcome the problem of existing method. Chapter 5 concludes the report. 2. RELATED WORK Live migration is a powerful tool for cluster administrators, which allows separation of hardware and software considerations and consolidation of clustered hardware into a single management domain. If a physical machine needs to be removed from the service or a data center, an administrator may migrate OS instances including the applications that they are running to alternative machine, freeing the original machine for maintenance (load balancing and fault tolerance). Nelson et al [3] proposed fast transparent migration to improve the system utilization by load balancing across physical machines and improve system serviceability and availability by moving applications. While migrating virtual machines, the states of networking, storage devices and physical memory are also migrated. Clark et al [1] characterized the parameters that affect migration time. In iterative pre copy approach, pages to be transferred during round n are modified during round n-1. The main drawback is the wasted overhead of transferring memory pages that are subsequently modified and it must be transferred again. In first pre-copy round they transfer pages using a minimum bandwidth value. For the subsequent rounds, the number of pages dirtied in the previous round are counted and the count is divided by the duration of the previous round to calculate the Integrated Intelligent Research (IIR) 140

dirtying rate. The bandwidth limit for the next round can be calculated by adding a constant increment to the previous round. Sleator et al [6] uses Splay tree, which is a self-adjusting binary search tree with the additional property that recently accessed elements are quick to access again. It uses heuristic restructuring called splaying to move a specified node to the root of the tree via sequence of rotations along the path from that node to the root. Specified node are always moved to the top of the root. It performs various operations like Zig, Zig-zig, Zig-Zag. Zaw et al [9] present a working set prediction algorithm which uses LRU and Splay Tree Algorithm to improve the VM live migration. This algorithm predicts the most recently used memory pages that affects the total migration time. Live Migration process consists of transferring OS instances including the applications that they are running in the primary host to alternative VMs and freeing the original VM for maintenance. Michael et al [2] proposed an post-copy approach which transmits all processor states to the target, starts the VM at the target, and then actively pushes the VM s memory pages from source to target. It ensures that each memory page is transferred at most once, thus avoiding the duplicate transmission overhead of precopy. Sapuntzakis et al [10] proposed a technique called Hash based compression. Before transferring the memory data, hash of memory page is sent to the destination. If same page exist on the destination node, there is no need to copy the page. It decrease transfer time by sending a hash of data blocks instead of the data. If the receiver can find data on local storage that hashes to the same value, it copies the data from local storage. Otherwise, the receiver requests the data from the server. many freed pages, whose contents are not compressible. Discarding pages holding cached data, dirty buffers and active data, however, may have a negative effect. If these pages are immediately used, that will be fetched on demand over the network. Inflating the balloon increases memory pressure, that forces the guest OS to invoke its own memory management algorithms. The guest OS may page out to its virtual disk when memory is insufficient. 3. PRE-COPY MIGRATION Haijin et al [5] proposed a pre-copy approach to optimize the live migration of virtual machine to reduce the rate of dirty memory generation. While migrating VM from source to destination dirty bits are generated due to memory bits are changed during send or copy phase. When VM writes memory too fast, the process running in the VCPU will be slowed down. This can be done by adjusting VCPU; CPU is allocated to the VM during live migration to control the memory writing speed. VMM assigns separate weight for each VM representing the proportion of CPU share. CPU is allocated to a VM based on the weight higher that of the other VMs. The scheduler will allocate more CPU time to the one with higher weight. VM s execution speed could be controlled by adjusting its weight. One optimization method used here is optimized iterative pre-copy algorithm which improves the live migration efficiency that can be implemented by dynamically adjusting CPU and memory resources in the source machine. For example allocate more CPU resource to the virtual machine to be migrated. The basic idea of iterative pre-copy algorithm is, by transferring dirty data repeatedly, changed memory could be decreased round by round. It can be done in iterative manner. In first iteration, all memory pages transferred from source to destination. Subsequent iterations copied only the pages that are dirtied in previous round. Waldspurger et al [6] proposed a technique called Memory balloon, which eliminates unused memory for reducing the number of pages transferred and it saves the The time for transferring memory in time for first pre-copy round. Ballooning round i is calculated using the formula reduces the size of the compressed memory state and the start-up time of capsules. This technique works only if the memory has too Integrated Intelligent Research (IIR) 141

where t is the time of transferring memory, p is the dirty rate of round, M is the total memory of the VM, and B is the network bandwidth assigned to the migration. 3.1 Phases in pre-copy Pre-copy migration consists of the following phases: 1. Initialisation: A target is pre-selected where the resource required to receive migration. 2. Reservation: Resources at the destination host are reserved for future migration. 3. Iterative pre-copy: The entire RAM is sent in the first iteration. In subsequent iteration copy only the pages that are modified during the previous iteration. 4. Stop-and-copy: Halting the original VM, copying all pages from source to destination and then new VM is started. 5. Commitment: The destination host indicates that it has received successfully a consistent copy of the VM. Then source discards the original VM and destination host becomes the primary host. 6. Activation: Destination host is activated and resources are re-attached to the VM on the destination. 3.2 Iterative pre-copy algorithm Iterative pre-copy algorithm limits the rate of dirty memory of VM and improves the performance of live migration. It occurs in many rounds, pages to be transferred during round n are modified during round n-1. This algorithm consists of following steps: Memory files to be transferred M is initialized to VM Number of round R is initialized to 1 Copy the VM dirtied memory, if a page reaches the threshold or last round Perform traditional pre-copy that save the changed memory and count the transferring time Transfer the speed for last round and moves the content of Temp M to total memory M Dirty rate P, of current round is calculated CPU time is allocated for the VM New execution percentage E is calculated based on the dirty rate P Constant 1 is added to the each round Pause the VM and remaining memory is send via stop and copy method Then resume VM on the destination host 4 METHODOLOGY In pre-copy based live migration, system first transfers the memory page including CPU state to the target VM and then transfers the pages that are modified during the previous round. In proposed system, working set is added along with the traditional pre-copy is to reduce the total migration time. The proposed algorithm consists of pre-processing phase, push phase and stop and copy phase as shown in Fig. 2 1. Pre-processing Phase The system applies the proposed writable working set algorithm as the pre-processing phase. This algorithm predicts the working set, which consists of frequently updated set of pages. 2. Push Phase The system transfers memory pages that are not frequently updated in source VM and then memory pages modified during the previous iteration are transferred to the destination. 3. Stop and Copy Phase This phase consists of three steps. The system suspends the source VM for a final transfer round. The system discards the source VM and then transfers last modified pages and CPU state. The system activates the Target VM. 4.1 WSClock Page Replacement Algorithm WSClock combines the best features of Clock algorithm and the information in working set that prevents thrashing. Working set list collects the most recently used memory pages that directly affects the total migration time. It collects the memory page which is at the top of the LRU cache and its splay tree. Initially WSClock list is empty. When the first page is loaded, it is added to the list. As more Integrated Intelligent Research (IIR) 142

number of pages added, they enter into the list to form a ring. page encountered is evicted. This page is not necessarily the first write scheduled because the disk driver may reorder writes in order to optimize disk performance. If no clean pages exist, then the current page is chosen and written back to disk 4.2 Algorithm for wsclock page replacement All pages are kept in the circular list. If a new page is added to the list, it enters into the ring. The clock hand advances around the ring and each entry contains the time of last use. INPUT: memory pages OUTPUT: Working set If the reference bit is equal to 1, then the page is in use and there is no need to remove page from the memory Otherwise, clear the reference bit and update the time of last use field If the reference bit is equal to 0, and age of the page is less than T Then the page is in the working set and advance the hand Else the age of page is greater than T Then clean the page If the page is dirty, then write the page and advance the hand position 5 EXPERIMENTAL SETUP Fig.2 Flowchart for working set replacement algorithm Each entry contains the Time of last use field from the basic working set algorithm, as well as the R bit and the M bit. Here the hand position just keeps moving and looking for a clean page. Since one or more writes have been scheduled, eventually some write will complete and its page will be marked as clean. The first clean We evaluate the performance of live migration using WSClock page replacement algorithm and performance is compared with traditional pre-copy based migration algorithm with the help of Xen. Xen is a built-in migration tool for cloud computing environment and it is a type of Para virtualization. Xen is a virtual machine monitor, also called as hypervisor for IA-32 (x86, x86-64), IA-64 architectures. It allows several guest operating systems to be executed on the same computer hardware concurrently. Here, four guest OS is running on the xen hypervisor which contains information about name of the guest OS, domain ID, memory usage, number of VCPUs, state of the machine and CPU time is shown in the Figure3. Integrated Intelligent Research (IIR) 143

Downtime Downtime can be defined as the sum of final three stages in the migration process. Downtime = Stop and Copy + Commitment + Activation (2) 6 CONCLUSION Each guest OS manages its own applications. This management includes the responsibility of scheduling each application within the time allotted to the VM by Xen. The first domain; Domain 0 is created automatically when the system boots and it has special management privileges. Domain 0 builds other domains and manages their virtual devices. It also performs administrative tasks such as suspending, resuming and migrating other virtual machines. The CPU usage and memory usage of the Guest operating system, that runs on the Xen hypervisor as shown in the Figure 4. Fig.4.CPU and memory usage of the guest operating system. 5.1 Parameters for evaluation To evaluate the performance of live migration both the total migration time and downtime are calculated. Total migration time Total migration time is defined as the sum of the time spent on all six migration stages from initialization at the source host to activation at the destination. Total migration time = Initialization + Reservation + Iterative pre-copy + Stop and Copy + Commitment + Activation (1) Live migration of virtual machines is an efficient technology which is used to implement fault tolerance, energy saving and load balancing in virtualized cloud computing data center. Iterative pre copy mechanism is used to control the VM memory writing speed and reduce the rate of dirty memory generation by copying memory pages from source to destination. In proposed system, along with traditional pre-copy approach, WSClock page replacement algorithm is used to reduce the total migration time in live migration of virtual machines with the help of Xen hypervisor. REFERENCE 1. Nelson M., Lim B.H. and Hutchins H. (2005), Fast transparent migration for virtual machines, Proceedings of USENIX Annual Technical Conference 2. Phaneendra K., Sunkara V.M., Vijaya R. and Rajendra G. (2012), Parameter Dependent Performance Optimization In Live Migration Of Virtual Machine, International Journal of Modern Engineering research, vol.2.pp.1564-1571 3. Jin H., Gao W., Wu S., Shi X., Wub X., Zhou F. (2011), Optimizing the live migration of virtual machine by CPU scheduling, Journal of Network and Computer Applications 4. Sleator D.D. and Tarjan R.E. (1985), Self- Adjusting Binary Search Trees, In Journal of the Association for Computing Machinery, Vol. 32. pp. 652-686 5. Surie A., Cavilla A.L. and Lara E.D. (2008), Low-bandwidth VM migration via opportunistic replay, The 9th workshop on mobile computing systems and applications. pp. 74 79 6. Waldspurger C. (2002), Memory Resource Management in VMware ESX server, proceedings of the 5 th symposium on Operating Systems Design and Implementation (OSDI), pp. 181 194 Integrated Intelligent Research (IIR) 144

7. Clark C., Fraser k. and Hand S. (2005), Live migration of virtual machines, Proceedings of the 2nd ACM/USENIX symposium on networked systems design and implementation (NSDI) 8. Michael R., Deshpande U. and Gopalan K. (2009), Post-Copy Live Migration of Virtual Machines, International Conference on Virtual Execution Environments 9. Sapuntzakis C.P., Chandra R., Pfaff B., Chow J., Lam M. and Rosenblum M. (2002), Optimizing the Migration of Virtual Computers, Proceedings of the 5 th symposium on Operating Systems Design and Implementation(OSDI),pp. 377 90 10. Zaw E.P. and Thein N.K. (2012), Improved Live VM Migration using LRU and Splay Tree Algorithm, International Journal of Computer Science and Telecommunications, vol.3 11. Denning P.J.(1970), The Working Set Model for Program Behavior, ACM 11, pp. 323-333 12. Carr R.W. and Hennessy J.L(1981), WSCLock - A Simple and Effective Algorithm for Virtual Memory Management, Proceedings of the eighth ACM symposium on Operating systems principles. Vol.15. Pp.87-95. Integrated Intelligent Research (IIR) 145