Resource-Efficient Replication and Migration of Virtual Machines
Add to Google Calendar
In a virtualized environment, applications run in Virtual Machines (VMs), and multiple VMs may
be consolidated in a physical host. VM replication and migration are two prevalent ways to relocate VMs
between physical hosts for maintaining high-availability and enhancing system performance. However, current
replication and migration approaches are resource-expensive.
This thesis explores ways to replicate and migrate VMs using resources efficiently. First, we investigate the
tradeoffs in using different checkpoint compression methods to reduce the network bandwidth required
by continuous check- point replication. We conduct a detailed evaluation of three checkpoint compression
methods, including gzip, delta compression, and similarity compression. Based on this evaluation, we suggest
guidelines for selecting and using them for workload types and resource constraints.
Next, we propose HydraVM, a storage-based high-availability system, to eliminate the unproductive memory
reservations made in backup hosts as passive receptacles of redundant VM state.
Finally, we propose application-assisted VM live migration, which skips transfer of VM memory that need not be
migrated for the execution of running applications in the destination host. This not only reduces the migration
traffic sent over the network, but also reduces the time required to finish migration of a VM and the impact of
VM migration on running applications' performance. We develop a generic framework for application-assisted
live migration, and then use the framework to build JAVMM, a system that migrates VMs running various
types of Java applications skip- ping transfer of garbage in Java memory. Our experimental results show that
compared to Xen live migration, which is agnostic of the applications running in the migrating VM, JAVMM can
reduce the completion time, network traffic and application downtime caused by JavaVM migration, all by up
to over 90%.