US2016299774A1PendingUtilityA1

Techniques for Migrating a Virtual Machine Using Shared Storage

Assignee: MICROSOFT TECHNOLOGY LICENSING LLCPriority: Jun 29, 2010Filed: Mar 8, 2016Published: Oct 13, 2016
Est. expiryJun 29, 2030(~3.9 yrs left)· nominal 20-yr term from priority
Inventors:Lars Reuther
G06F 9/4856G06F 2009/4557G06F 9/5016G06F 2009/45583G06F 9/45558Y02D10/00
50
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

Techniques for providing the ability to live migrate a virtual machine from one physical host to another physical host employ shared storage as the transfer medium for the state of the virtual machine. In addition, the ability for a virtualization module to use second-level paging functionality is employed, paging-out the virtual machine memory content from one physical host to the shared storage. The content of the memory file can be restored on another physical host by employing on-demand paging and optionally low-priority background paging from the shared storage to the other physical host.

Claims

exact text as granted — not AI-modified
1 . (canceled) 
     
     
         2 . A method for migrating a source virtual machine running on a source computer system to a target computer system, comprising:
 copying, while a guest operating system is executing in the source virtual machine, a first portion of state information of guest physical memory allocated to the source virtual machine to the target computer system, wherein the first portion of state information of the guest physical memory is used in the execution of a target virtual machine on the target computer system; and   transferring, after the target virtual machine has started execution on the target computer system using the copied first portion of state information of the guest physical memory, a second portion of state information of the guest physical memory from the source computer system to the target computer system in response to determining that the second portion of state information of the guest physical memory is not already present in the target computer system.   
     
     
         3 . The method of  claim 2 , wherein said copying the first portion of state information further comprises:
 copying the first portion of state information of the guest physical memory allocated to the source virtual machine to a saved-state file located in a networked storage system shared and accessible by both the source computer system and the target computer system; and   reading at least the first portion from the saved-state file into guest physical memory of the target virtual machine executing on the target computer system.   
     
     
         4 . The method of  claim 2 , wherein said transferring the second portion of state information further comprises:
 copying the second portion of state information of the guest physical memory allocated to the source virtual machine to a saved-state file located in a networked storage system shared and accessible by both the source computer system and the target computer system; and   reading at least a part of the second portion from the saved-state file into guest physical memory of the target virtual machine executing on the target computer system.   
     
     
         5 . The method of  claim 4 , further comprising:
 establishing a network communication channel with the networked storage system; and   upon copying the second portion of state information of the guest physical memory allocated to the source virtual machine to the saved-state file, transferring ownership of the networked storage system from the source computer system to the target computer system.   
     
     
         6 . The method of  claim 2 , wherein said determining that the second portion of state information of the guest physical memory is not present in the target computer system is performed in response to receiving a request, from the target virtual machine executing on the target computer system, for at least a part of the second portion of state information of the guest physical memory allocated to the source virtual machine. 
     
     
         7 . The method of  claim 2 , further comprising:
 identifying at least one page in the first portion of state information that changed after the start of the copying of the first portion of state information to the target computer system; and   copying the at least one page to a saved-state file located in a networked storage system shared and accessible by both the source computer system and the target computer system.   
     
     
         8 . The method of  claim 2 , wherein the second portion of state information of the guest physical memory comprises one or more remaining portions of state information of the guest physical memory, wherein said transferring comprises iteratively transferring the one or more remaining portions of state information of the guest physical memory from the source computer system to the target computer system. 
     
     
         9 . A system for migrating a source virtual machine running on a source computer system to a target computer system, comprising:
 at least one processor;   at least one memory in communication with the at least one processor, the at least one memory having stored thereon computer-readable instructions that upon execution by the at least one processor cause the system at least to:   copy, while a guest operating system is executing in the source virtual machine, a first portion of state information of guest physical memory allocated to the source virtual machine to the target computer system, wherein the first portion of state information of the guest physical memory is used in the execution of a target virtual machine on the target computer system; and   transfer, after the target virtual machine has started execution on the target computer system using the copied first portion of state information of the guest physical memory, a second portion of state information of the guest physical memory from the source computer system to the target computer system in response to determining that the second portion of state information of the guest physical memory is not already present in the target computer system.   
     
     
         10 . The system of  claim 9 , wherein said computer-readable instructions that upon execution by the at least one processor cause the system at least to copy the first portion of state information further comprises computer-readable instructions that upon execution by the at least one processor cause the system at least to:
 copy the first portion of state information of the guest physical memory allocated to the source virtual machine to a saved-state file located in a networked storage system shared and accessible by both the source computer system and the target computer system; and   read at least the first portion from the saved-state file into guest physical memory of the target virtual machine executing on the target computer system.   
     
     
         11 . The system of  claim 9 , wherein said computer-readable instructions that upon execution by the at least one processor cause the system at least to transfer the second portion of state information further comprises computer-readable instructions that upon execution by the at least one processor cause the system at least to:
 copy the second portion of state information of the guest physical memory allocated to the source virtual machine to a saved-state file located in a networked storage system shared and accessible by both the source computer system and the target computer system; and   read at least a part of the second portion from the saved-state file into guest physical memory of the target virtual machine executing on the target computer system.   
     
     
         12 . The system of  claim 11 , further comprising computer-readable instructions that upon execution by the at least one processor cause the system at least to:
 establish a network communication channel with the networked storage system; and   after copying the second portion of state information of the guest physical memory allocated to the source virtual machine to the saved-state file, transfer ownership of the networked storage system from the source computer system to the target computer system.   
     
     
         13 . The system of  claim 9 , wherein said computer-readable instructions that upon execution by the at least one processor cause the system at least to determine that the second portion of state information of the guest physical memory is not present in the target computer system is performed in response to receiving a request, from the target virtual machine executing on the target computer system, for at least a part of the second portion of state information of the guest physical memory allocated to the source virtual machine. 
     
     
         14 . The system of  claim 9 , further comprising computer-readable instructions that upon execution by the at least one processor; cause the system at least to:
 identify at least one page in the first portion of state information that changed while the first portion of state information was being copied to the target computer system; and   copy the at least one page to a saved-state file located in a networked storage system shared and accessible by both the source computer system and the target computer system.   
     
     
         15 . The system of  claim 9 , wherein the second portion of state information of the guest physical memory comprises one or more remaining portions of state information of the guest physical memory, wherein said computer-readable instructions that upon execution by the at least one processor; cause the system at least to transfer comprises computer-readable instructions that upon execution by the at least one processor causes the system at least to iteratively transfer the one or more remaining portions of state information of the guest physical memory from the source computer system to the target computer system. 
     
     
         16 . A system for migrating a source virtual machine running on a source computer system to a target computer system, comprising:
 means for copying, while a guest operating system is executing in the source virtual machine, a first portion of state information of guest physical memory allocated to the source virtual machine to the target computer system, wherein the first portion of state information of the guest physical memory is used in the execution of a target virtual machine on the target computer system; and   means for moving, after the target virtual machine has started execution on the target computer system using the copied first portion of state information of the guest physical memory, a second portion of state information of the guest physical memory from the source computer system to the target computer system in response to determining that the second portion of state information of the guest physical memory is not already present in the target computer system.   
     
     
         17 . The system of  claim 16 , wherein said means for copying the first portion of state information further comprises computer readable instructions that upon executing on a computing device:
 copy the first portion of state information of the guest physical memory allocated to the source virtual machine to a saved-state file located in a networked storage system shared and accessible by both the source computer system and the target computer system; and   read at least the first portion from the saved-state file into guest physical memory of the target virtual machine executing on the target computer system.   
     
     
         18 . The system of  claim 16 , wherein said means for moving the second portion of state information further comprises computer-readable instructions that upon execution by a computing device cause the system at least to:
 copy the second portion of state information of the guest physical memory allocated to the source virtual machine to a saved-state file located in a networked storage system shared and accessible by both the source computer system and the target computer system; and   read at least a part of the second portion from the saved-state file into guest physical memory of the target virtual machine executing on the target computer system.   
     
     
         19 . The system of  claim 16 , wherein said determining that the second portion of state information of the guest physical memory is not present in the target computer system is performed in response to receiving a request, from the target virtual machine executing on the target computer system, for at least a part of the second portion of state information of the guest physical memory allocated to the source virtual machine. 
     
     
         20 . The system of  claim 16 , further comprising:
 means for identifying at least one page in the first portion of state information that changed while the first portion of state information was being copied to the target computer system; and   means for copying the at least one page to a saved-state file located in a networked storage system shared and accessible by both the source computer system and the target computer system.   
     
     
         21 . The system of  claim 16 , wherein the second portion of state information of the guest physical memory comprises one or more remaining portions of state information of the guest physical memory, wherein said means for moving comprises computer-readable instructions that upon execution by a computing device causes the system at least to iteratively transfer the one or more remaining portions of state information of the guest physical memory from the source computer system to the target computer system.

Join the waitlist — get patent alerts

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

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