Type: Process Essays
Sample donated: Alberto Patrick
Last updated: September 22, 2019
MigrationTechniques involves migration of CPU, memory states, hardware device statesrunning VM from one host to another. Migration technique differs in order ofstate transfer. 1) Stop and Copy: In stop and copymechanism, running virtual machine on one host is stopped using SAVE commandand memory states, hardware states, and CPU content is stored in an image file.This image file is then transferred to another host using any secure mechanismwhere it is restored to resume normal processing using RESTORE command.Meanwhile state of VM remains halted.
Its costly because of large migration anddowntime. 2)Pre-copy Migration: Most of thehypervisors such as Xen, KVM, Vmware use pre-copy migration approach.In Pre-copy migration, memory contents are copied to the target machine in thebackground while the VM is still running (Figure 2). As memory content could bechanged during the transfer processes, the changed contents (called dirty pages)are copied to the target machine in iterations.
The process continues untileither the number of remaining pages is small, or a fixed threshold is reached,whichever happens first. VM is then suspended, permitting the rest of the pagesto be copied over. The VM will then resume its execution in the destination machine,and the source VM is then destroyed. The main advantage of pre-copy migrationis low VM downtime (required for copying the remaining dirty pages).
On anotherhand, the total migration time may be large due to repeated copying of dirtypages. 3) Post Copy: VM migration is startedby suspending the VM at the source. With the VM suspended, a minimal subset ofthe execution state of the VM (CPU registers and nonpageable memory) istransferred to the target.
Post-copy migration refers totransferring memory content after the process state has been transferred(Figure 2). Specially, in post-copy migration, the processstates are first copied to the destination machine, permitting the VM to resumequickly. VM’s memory contents are then actively fetched from source to target.All access to memory contents that have yet to be migrated are trapped bymemory faults, causing the missing content to be fetched from source machine.As frequent memory faults can cause significant service disruption, additional techniques,like memory prepaging, are often used to decrease the number of memory faults.Memory prepaging assumes that VM memory access exhibits special and temporallocality, therefore the subsequent memory access can be predicted with highaccuracy. So, by proactively transferring the related memory pages with highaccess probability, the number of memory faults can be significantly reduced.
Finally,as the source VM no longer maintains the up-to-date memory contents, a failureduring the migration process can potentially lead to unrecoverable VM states.One way may be to address this limitation is to checkpoint the VM state fromthe destination VM back to the source VM. Overall, the main benefit ofpost-copy migration is to reduce migration time, as memory contents are copiedat most once during the entire process. But, it causes more service disruption becauseof the occurrence of memory faults.