Virtual machine memory migration by storage
First Claim
Patent Images
1. A method, comprising:
- receiving a request to migrate a virtual machine from a source host machine to a destination host machine;
mapping, by a hypervisor executed by a processing device, memory of the virtual machine on the source host machine to a storage device, wherein the storage device is accessible by the source host machine and by the destination host machine;
caching, in cache memory on the source host machine, at least a portion of the memory of the virtual machine;
caching, in the cache memory on the source host machine, changes to the virtual machine on the source host machine that occur over a period of time after the mapping;
determining whether the virtual machine is to access the mapped memory of the storage device or the cached memory;
in response to determining that the virtual machine is to access the cached memory, directing, by the hypervisor, the virtual machine to the cache memory to cause memory accesses of the virtual machine to occur at the cache memory on the source host machine;
in response to determining that the virtual machine is to access the mapped memory on the storage device, accessing the memory of the virtual machine from the storage device;
issuing a synchronization command to synchronize the cache memory on the source host machine with the storage device;
issuing a stop command to stop the virtual machine on the source host machine in response to the changes over the period of time being below a threshold; and
transmitting a remaining portion of a state of the virtual machine from the source host machine to the destination host machine to complete the migration of the virtual machine.
1 Assignment
0 Petitions
Accused Products
Abstract
Systems and methods for live migration are provided. A hypervisor receives a request to migrate a virtual machine from a source host machine to a destination host machine, and maps memory of the virtual machine on the source host machine to a storage device accessible by the source host machine and by the destination host machine.
22 Citations
17 Claims
-
1. A method, comprising:
-
receiving a request to migrate a virtual machine from a source host machine to a destination host machine; mapping, by a hypervisor executed by a processing device, memory of the virtual machine on the source host machine to a storage device, wherein the storage device is accessible by the source host machine and by the destination host machine; caching, in cache memory on the source host machine, at least a portion of the memory of the virtual machine; caching, in the cache memory on the source host machine, changes to the virtual machine on the source host machine that occur over a period of time after the mapping; determining whether the virtual machine is to access the mapped memory of the storage device or the cached memory; in response to determining that the virtual machine is to access the cached memory, directing, by the hypervisor, the virtual machine to the cache memory to cause memory accesses of the virtual machine to occur at the cache memory on the source host machine; in response to determining that the virtual machine is to access the mapped memory on the storage device, accessing the memory of the virtual machine from the storage device; issuing a synchronization command to synchronize the cache memory on the source host machine with the storage device; issuing a stop command to stop the virtual machine on the source host machine in response to the changes over the period of time being below a threshold; and transmitting a remaining portion of a state of the virtual machine from the source host machine to the destination host machine to complete the migration of the virtual machine. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A system, comprising:
-
a memory; and
a processing device, operatively coupled with the memory, to;
receive a request to migrate a virtual machine from a source host machine to a destination host machine;map, by a hypervisor executed by the processing device, memory of the virtual machine on the source host machine to a storage device, wherein the storage device is accessible by the source host machine and by the destination host machine; cache, in cache memory on the source host machine, at least a portion of the memory of the virtual machine; cache, in the cache memory on the source host machine, changes to the virtual machine on the source host machine that occur over a period of time after mapping memory of the virtual machine; determine whether the virtual machine is to access the mapped memory of the storage device or the cached memory; in response to determining that the virtual machine is to access the cached memory, direct, by the hypervisor, the virtual machine to the cache memory to cause memory accesses of the virtual machine to occur at the cache memory on the source host machine; in response to determining that the virtual machine is to access the mapped memory on the storage device, access the memory of the virtual machine from the storage device; issue a synchronization command to synchronize the cache memory on the source host machine with the storage device; issuing a stop command to stop the virtual machine on the source host machine in response to the changes over the period of time being below a threshold; and transmit a remaining portion of a state of the virtual machine from the source host machine to the destination host machine to complete the migration of the virtual machine. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16)
-
-
17. A non-transitory computer readable storage medium comprising instructions that, when executed by a processing device, cause the processing device to:
-
receive a request to migrate a virtual machine from a source host machine to a destination host machine; map, by a hypervisor executed by the processing device, memory of the virtual machine on the source host machine to a storage device, wherein the storage device is accessible by the source host machine and by the destination host machine; cache, in cache memory on the source host machine, at least a portion of the memory of the virtual machine; cache, in the cache memory on the source host machine, changes to the virtual machine on the source host machine that occur over a period of time after the mapping; determine whether the virtual machine is to access the mapped memory of the storage device or the cached memory; in response to determining that the virtual machine is to access the cached memory, direct, by the hypervisor, the virtual machine to the cache memory to cause memory accesses of the virtual machine to occur at the cache memory on the source host machine; in response to determining that the virtual machine is to access the mapped memory on the storage device, access the memory of the virtual machine from the storage device; issue a synchronization command to synchronize the cache memory on the source host machine with the storage device; issue a stop command to stop the virtual machine on the source host machine in response to the changes over the period of time being below a threshold; and transmit a remaining portion of a state of the virtual machine from the source host machine to the destination host machine to complete the migration of the virtual machine.
-
Specification