IP Library Granted Patent US 8,732,705
Granted Patent B2
US 8,732,705 · App. 13/732,590 · Granted May 20, 2014

Method and system for virtual machine migration

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,732,705
App. No.
13/732,590
Granted
May 20, 2014
Kind
B2
Abstract

Virtual machine (VM) technology allows multiple operating systems each deploying multiple applications to run on a single host. This invention presents an effective method and system for virtual machine migration from a source host to a target host. The method and system concern the migration of both the service VM and the element managing it. State of the migrating VM is preserved so that it can resume its execution on the target host.

Claims (83)

1. A method for migrating a service Virtual Machine (VM), comprising an operating system and applications running on a hypervisor, comprising a VM managed element and dependent elements of the VM managed element, from a source host to a target host, the method comprising:

migrating the service VM, using at least one hardware processor, comprising:

(a) migrating the service VM during an execution of the service VM under control of a mobile autonomic element having a sensor interface and an effector interface, the mobile autonomic element being an object, which is separate from the service VM;

wherein the step (a) further comprises:

queuing events to be processed at the source host, and sending information regarding a state of the events from the source host to the target host;

sending information regarding a state of the VM managed element and the dependent elements, and components of the VM managed element and the dependent elements, which have changed during the queuing, from the source host to the target host; and

processing the information at the target host;

(b) migrating the mobile autonomic element separately from and concurrently with the migrating of the service VM; and

(c) resuming execution of the service VM on the target host under control of the mobile autonomic element.

2. The method of claim 1 , wherein the step (a) further comprises:

preserving a state of the service VM by the mobile autonomic element; and

migrating policies managing the service VM by using the mobile autonomic element.

3. The method of claim 2 , wherein the migrating policies further comprising:

storing the policies within the mobile autonomic element; and

migrating the stored policies prior to executing the service VM on the target host.

4. The method of claim 1 , further comprising:

serializing the queued events and the state of the VM managed element and the dependent elements; and

sending a message containing a serialized queue of events and a serialized state of the VM managed element and the dependent elements from the source host to the target host.

5. The method of claim 1 , further comprising:

serializing the components of the VM managed element and the dependent elements that have changed; and

sending the serialized components from the source host to the target host.

6. The method of claim 1 , further comprising:

deserializing the state of the VM managed element and the dependent elements, and extracting dependencies for the dependent elements at the target host; and

deserializing the queued events and creating queues of events at the target host.

7. The method of claim 1 , wherein the step (c) further comprises:

starting events for the VM managed element and the dependent elements at the target host; and

removing the VM managed element and the dependent elements at the source host.

8. The method of claim 7 , further comprising:

locating a sensor service of the sensor interface; and

adding the events for the VM managed element and the dependent elements to a time-ordered queue of events stored within the sensor service.

9. A system for migrating a service Virtual Machine (VM), comprising an operating system and applications running on a hypervisor, comprising a VM managed element and dependent elements of the VM managed element, from a source host to a target host, the system comprising:

a processor;

a memory device having computer readable instructions stored thereon for execution by the processor, causing the processor to:

(a) migrate the service VM during an execution of the service VM under control of a mobile autonomic element having a sensor interface and an effector interface, the mobile autonomic element being an object, which is separate from the service VM;

wherein the computer readable instructions further cause the processor to:

queue events to be processed at the source host, and send information regarding a state of the events from the source host to the target host;

send information regarding a state of the VM managed element and the dependent elements, and components of the VM managed element and the dependent elements, which have changed during queuing, from the source host to the target host; and

process the information at the target host;

(b) migrate the mobile autonomic element separately from and concurrently with migrating the service VM; and

(c) resume execution of the service VM on the target host under control of the mobile autonomic element.

10. The system of claim 9 , wherein the computer readable instructions further cause the processor to:

preserve a state of the service VM by the mobile autonomic element; and

migrate policies managing the service VM by using the mobile autonomic element.

11. The system of claim 10 , wherein the computer readable instructions further cause the processor to:

store the policies within the mobile autonomic element; and

migrate the stored policies prior to executing the service VM on the target host.

12. The system of claim 9 , wherein the computer readable instructions further cause the processor to:

serialize the queued events and the state of the VM managed element and the dependent elements; and

send a message containing a serialized queue of events and a serialized state of the VM managed element and the dependent elements from the source host to the target host.

13. The system of claim 9 , wherein the computer readable instructions further cause the processor to:

serialize the components of the VM managed element and the dependent elements that have changed; and

send the serialized components from the source host to the target host.

14. The system of claim 9 , wherein the computer readable instructions further cause the processor to:

deserialize the state of the VM managed element and the dependent elements, and extracting dependencies for the dependent elements at the target host; and

deserializing the queued events and creating queues of events at the target host.

15. The system of claim 9 , wherein the computer readable instructions further cause the processor to:

start events for the VM managed element and the dependent elements at the target host; and

remove the VM managed element and the dependent elements at the source host.

16. The system of claim 15 , wherein the computer readable instructions further cause the processor to:

locate a sensor service of the sensor interface; and

add the events for the VM managed element and the dependent elements to a time-ordered queue of events stored within the sensor service.

17. A method for migrating a service Virtual Machine (VM), comprising an operating system and applications running on a hypervisor, comprising a VM managed element and dependent elements of the VM managed element, from a source host to a target host, the method comprising:

migrating the service VM using at least one hardware processor, comprising:

(a) migrating the service VM during an execution of the service VM under control of a managing element managing the service VM, the management element being an object, which is separate from the service VM,

wherein the step (a) further comprises:

queuing events to be processed at the source host, and sending information regarding a state of the events from the source host to the target host;

sending information regarding a state of the VM managed element and the dependent elements, and components of the VM managed element and the dependent elements, which have changed during the queuing, from the source host to the target host; and

processing the information at the target host;

(b) migrating the managing element separately from and concurrently with the migrating of the service VM; and

(c) resuming execution of the service VM on the target host under control of the managing element, comprising:

deserializing the state of the VM managed element and the dependent elements, and extracting dependencies for the dependent elements at the target host; and

deserializing the queued events and creating queues of events at the target host.

18. A system for migrating a service Virtual Machine (VM), comprising an operating system and applications running on a hypervisor, comprising a VM managed element and dependent elements of the VM managed element, from a source host to a target host, the system comprising:

a non-transitory computer readable storage medium having computer readable instructions stored thereon for execution by a processor, causing the processor to:

(a) migrate the service VM during an execution of the service VM under control of a managing element managing the service VM, the management element being an object, which is separate from the service VM;

the computer readable instructions further causing the processor to:

queue events to be processed at the source host, and send information regarding a state of the events from the source host to the target host;

send information regarding a state of the VM managed element and the dependent elements, and components of the VM managed element and the dependent elements, which have changed during the queuing, from the source host to the target host; and

process the information at the target host;

(b) migrate the managing element separately from and concurrently with migration of the service VM; and

(c) resume execution of the service VM on the target host under control of the managing element, comprising:

deserializing the state of the VM managed element and the dependent elements, and extracting dependencies for the dependent elements at the target host; and

deserializing the queued events and creating queues of events at the target host.

Assignments (21)
RELEASE OF FIRST LIEN SECURITY INTEREST IN PATENTS - REEL/FRAME 066615-0824 Recorded Aug 22, 2025
From: JEFFERIES FINANCE LLC
To: SNOW SOFTWARE, INC.
Reel/Frame 072527/0879 →
SECURITY INTEREST Recorded Aug 15, 2025
From: FLEXERA SOFTWARE LLC
To: KKR LOAN ADMINISTRATION SERVICES LLC, AS COLLATERAL GENT
Reel/Frame 072460/0828 →
MERGER Recorded Nov 22, 2024
From: SNOW SOFTWARE US, INC.
To: FLEXERA SOFTWARE LLC
Reel/Frame 069373/0957 →
RELEASE OF SECOND LIEN SECURITY INTEREST IN PATENTS Recorded Apr 18, 2024
From: JEFFERIES FINANCE LLC
To: SNOW SOFTWARE, INC.
Reel/Frame 067165/0214 →
PATENT SECURITY AGREEMENT (FIRST LIEN) Recorded Feb 16, 2024
From: SNOW SOFTWARE, INC.
To: JEFFERIES FINANCE LLC, AS COLLATERAL AGENT
Reel/Frame 066615/0824 →
PATENT SECURITY AGREEMENT (SECOND LIEN) Recorded Feb 16, 2024
From: SNOW SOFTWARE, INC.
To: JEFFERIES FINANCE LLC, AS SECOND LIEN COLLATERAL AGENT
Reel/Frame 066619/0340 →
RELEASE OF SECURITY INTEREST Recorded Feb 15, 2024
From: WELLS FARGO BANK, NATIONAL ASSOCIATION
To: SNOW SOFTWARE, INC.
Reel/Frame 066471/0027 →
RELEASE OF SECURITY INTEREST Recorded Jul 8, 2021
From: OBSIDIAN AGENCY SERVICES, INC.
To: EMBOTICS CORPORATION
Reel/Frame 056792/0547 →
PATENT SECURITY AGREEMENT Recorded Jul 7, 2021
From: SNOW SOFTWARE, INC.
To: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 056784/0335 →
AMALGAMATION Recorded Jul 2, 2021
From: EMBOTICS CORPORATION; KEYSTRIKE CANADA INC.
To: EMBOTICS CORPORATION
Reel/Frame 056756/0440 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 2, 2021
From: EMBOTICS ULC
To: SNOW SOFTWARE, INC.
Reel/Frame 056746/0317 →
CHANGE OF NAME Recorded Jul 2, 2021
From: EMBOTICS CORPORATION
To: EMBOTICS ULC
Reel/Frame 056745/0413 →
SECURITY INTEREST Recorded Dec 12, 2019
From: EMBOTICS CORPORATION
To: OBSIDIAN AGENCY SERVICES, INC., AS COLLATERAL AGENT
Reel/Frame 051262/0731 →
CHANGE OF NAME Recorded Dec 11, 2019
From: 1229377 B.C. LTD
To: EMBOTICS CORPORATION
Reel/Frame 051256/0529 →
MERGER AND CHANGE OF NAME Recorded Dec 11, 2019
From: EMBOTICS CORPORATION; 1229377 B.C. LTD.
To: 1229377 B.C. LTD
Reel/Frame 051256/0371 →
RELEASE OF SECURITY INTEREST Recorded Dec 11, 2019
From: CANADIAN IMPERIAL BANK OF COMMERCE
To: EMBOTICS CORPORATION
Reel/Frame 051247/0045 →
SECURITY INTEREST Recorded Dec 12, 2018
From: EMBOTICS CORPORATION
To: CANADIAN IMPERIAL BANK OF COMMERCE
Reel/Frame 047750/0272 →
CHANGE OF ADDRESS Recorded Jan 19, 2017
From: EMBOTICS CORPORATION
To: EMBOTICS CORPORATION
Reel/Frame 041420/0583 →
CHANGE OF ADDRESS OF COMPANY Recorded Jan 2, 2013
From: EMBOTICS CORPORATION
To: EMBOTICS CORPORATION
Reel/Frame 029561/0235 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 2, 2013
From: WHITE, ANTHONY RICHARD PHILLIP
To: EMBOTICS CORPORATION
Reel/Frame 029553/0088 →
CHANGE OF ADDRESS OF COMPANY Recorded Jan 2, 2013
From: EMBOTICS CORPORATION
To: EMBOTICS CORPORATION
Reel/Frame 029561/0233 →