Split Migration of Large Memory Virtual Machines
Masato Suetake, Hazuki Kizu, Kenichi Kourai · 2016
Recently, Infrastructure-as-a-Service clouds provide VMs with a large amount of memory, e.g., X1 instances with 2 TB in Amazon EC2. Such large memory VMs make VMmigration difficult because VM migration needs sufficient free memory at the destination host. Even in clouds, it is costly to always reserve hosts with a large amount of free memory. This paper proposes S-memV, which enables split migration of large memory VMs. Split migration migrates a large memory VM to multiple hosts by dividing its memory. It transfers core information and frequently accessed memory of a VM to the main host, whereas it transfers infrequently accessed memory to the sub-hosts. When the VM requires the memory stored in the sub-hosts, S-memV performs remote paging between the main host and the sub-hosts. Since split migration is aware of remote paging, S-memV can keep the performance of migrated VMs. In addition to such one-to-N migration, split migration supports N-to-one and partial migration. We have implemented S-memV in KVM and showed that migration time was much shorter than that of the traditional migration with virtual memory.