US2019310880A1PendingUtilityA1

Managed orchestration of virtual machine instance migration

Assignee: AMAZON TECH INCPriority: Jun 25, 2015Filed: Jun 14, 2019Published: Oct 10, 2019
Est. expiryJun 25, 2035(~8.9 yrs left)· nominal 20-yr term from priority
G06F 9/45558G06F 2009/4557G06F 9/4856G06F 9/5077G06F 9/45533
59
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

A virtual machine running on a source host is determined to be migrated away from the source host. The virtual machine is migrated away from the source host at least by a target host being selected for the virtual machine and a state of the virtual machine being copied from the source host to the target host while the virtual machine continues to run on the source host. The virtual machine is further migrated from the source host by a change to the state of the virtual machine t running on the source host that resulted during the copying being propagated to the target host. The virtual machine is run on the target host such that the virtual machine running on the target host includes the change to the state.

Claims

exact text as granted — not AI-modified
What is claimed is: 
     
         1 . A computer-implemented method, comprising:
 determining that a virtual machine running on a source host is to be migrated away from the source host; and   migrating the virtual machine away from the source host at least by:
 selecting a target host for the virtual machine; 
 copying, while the virtual machine continues to run on the source host, a state of the virtual machine from the source host to the target host; 
 propagating, to the target host, a change to the state of the virtual machine, the change resulting from the virtual machine running on the source host during the copying; and 
 running the virtual machine on the target host such that the virtual machine running on the target host includes the change to the state. 
   
     
     
         2 . The computer-implemented method of  claim 1 , wherein the change to the state of the virtual machine occurs as a result of fulfilment of a request received at the virtual machine running on the source host during the copying. 
     
     
         3 . The computer-implemented method of  claim 1 , wherein:
 the computer-implemented method further comprises pausing the virtual machine running on the source host; and   propagating the change to the target host further comprises propagating the change to the target host while the virtual machine running on the source host is paused.   
     
     
         4 . The computer-implemented method of  claim 1 , wherein determining that the virtual machine is to be migrated away from the source host is based at least in part on a change in availability of a resource associated with the source host. 
     
     
         5 . The computer-implemented method of  claim 4 , where the change in availability of the resource is due to an insufficiency of at least one of:
 computing power,   memory, or   network bandwidth.   
     
     
         6 . The computer-implemented method of  claim 1 , wherein selecting the target host is based at least in part on a capability of the target host. 
     
     
         7 . The computer-implemented method of  claim 6 , wherein migrating the virtual machine further comprises determining that the capability of the target host is sufficient to fulfill a desired capability specified for the virtual machine. 
     
     
         8 . The computer-implemented method of  claim 7 , wherein the desired capability is one or more of:
 a type of processor to run the virtual machine,   a quantity of or processors to run the virtual machine, or   an amount of memory to allocate to the virtual machine.   
     
     
         9 . A system, comprising:
 one or more processors; and   memory including executable instructions that, if executed by the one or more processors, cause the system to:
 determine to perform a migration of a virtual machine away from a source host; 
 identify a target host for the migration; and 
 perform the migration by causing the system to at least:
 while a first instance of the virtual machine continues to execute on the source host, copy a state of the first instance of the virtual machine from the source host to the target host; 
 propagate, to the target host, a change to the state of the virtual machine, the change resulting during execution of the first instance during copying the state; and 
 execute a second instance of the virtual machine on the target host such that the second instance includes the change to the state. 
 
   
     
     
         10 . The system of  claim 9 , wherein the executable instructions further cause the system to:
 terminate the first instance; and   reclaim a resource associated with the first instance.   
     
     
         11 . The system of  claim 9 , wherein the executable instructions further cause the system to identify the target host based at least in part on resource availability, location, or operation cost. 
     
     
         12 . The system of  claim 9 , wherein the executable instructions further cause the system to begin execution of the second instance during copying the state. 
     
     
         13 . The system of  claim 9 , wherein the executable instructions further cause the system to:
 obtain, during copying the state, a request directed to the first instance;   determine, based at least in part on a type of the request, to perform an operation that results in the change to the state of the first instance; and   perform the operation.   
     
     
         14 . The system of  claim 13 , wherein the executable instructions further cause the system to at least:
 lock the first instance of the virtual machine;   compare the state of the first instance of the virtual machine to a second state of the second instance of the virtual machine;   determine that a difference between the state and the second state exceeds a threshold; and   in response to determining that the difference exceeds the threshold, cancel migration of the virtual machine.   
     
     
         15 . The system of  claim 9 , wherein the executable instructions further cause the system to:
 lock the first instance of the virtual machine;   determine that the state of the first instance including the change has been copied to the second instance of the virtual machine; and   forward a request directed to the virtual machine to the second instance.   
     
     
         16 . The system of  claim 9 , wherein the executable instructions further cause the system to:
 pause the first instance of the virtual machine; and   propagate, to the target host while the first instance of the virtual machine is paused, the change to the state of the virtual machine.   
     
     
         17 . One or more non-transitory computer-readable storage media storing executable instructions that, if executed by one or more processors, cause the one or more processors to at least:
 receive a command to migrate a virtual machine running on a source host to a target host;   copy, while the virtual machine continues to run on the source host, a state of the virtual machine from the source host to the target host;   identify a change to the state of the virtual machine resulting from the virtual machine running on the source host during copying the state; and   propagate the change to the target host.   
     
     
         18 . The one or more non-transitory computer-readable storage media of  claim 17 , wherein the executable instructions further cause the one or more processors to:
 determine that the virtual machine running on the source host is to be migrated away to fulfill a request from a customer associated with the virtual machine, the request indicating to reduce a cost associated with the virtual machine running on the source host; and   select the target host as a result of a determination that a cost associated with the virtual machine running on the target host is reduced compared to the cost associated with the virtual machine running on the source host.   
     
     
         19 . The one or more non-transitory computer-readable storage media of  claim 17 , wherein the executable instructions further cause the one or more processors to:
 detach a resource from the virtual machine running on the source host; and   attach the resource to the virtual machine running on the target host.   
     
     
         20 . The one or more non-transitory computer-readable storage media of  claim 17 , wherein the executable instructions further cause the one or more processors to:
 determine that the virtual machine is to be moved logically closer to a computing resource; and   select the target host at least in part as a result of the target host being logically closer to the computing resource.   
     
     
         21 . The one or more non-transitory computer-readable storage media of  claim 17 , wherein the executable instructions further cause the one or more processors to:
 obtain, while the virtual machine continues to run on the source host during copying the state, a request directed to the virtual machine running on the source host;   determine, based at least in part on the request, an operation to perform; and   perform the operation, resulting in the change to the state of the virtual machine.   
     
     
         22 . The one or more non-transitory computer-readable storage media of  claim 17 , wherein the executable instructions further cause the one or more processors to:
 lock the virtual machine running on the source host;   determine that the state of the virtual machine including the change has been copied to the virtual machine running on the target host; and   forward a request directed to the virtual machine to the target host.

Join the waitlist — get patent alerts

Track US2019310880A1 — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.