System and method for event-driven live migration of multi-process applications
First Claim
Patent Images
1. A system, comprising:
- one or more memory locations configured to store a primary application;
one or more Central Processing Units operatively connected to said one or more memory locations and configured to execute said primary application on a primary host with a host operating system and configured to send messages to one or more backup applications while said primary application is executed;
one or more backup hosts each with a host operating system and each comprising;
computer system memory comprising one or more memory locations configured to store one or more backup applications, and one or more Central Processing Units operatively connected to said computer system memory and configured to execute said one or more backup applications and configured to receive the one or more messages sent from said primary application;
one or more events configured to trigger a live migration of a primary application from a primary host to one or more backup applications on one or more backup hosts;
wherein said messages are configured to provide consistency between the primary application and said one or more backup applications; and
a barrier, wherein said barrier is configured to halt execution before or after said messages are sent to the one or more backup applications.
2 Assignments
0 Petitions
Accused Products
Abstract
A system and method for event-driven live migration of applications between two or more servers. Primary applications runs on primary hosts and one or more replicated instances of each primary application run on one or more backup hosts. Event driven live migration is provided through a combination of process replication, logging, barrier synchronization, reliable messaging and message playback. The event driven live migration is transparent to the application and requires no modification to the application, operating system, networking stack or libraries.
-
Citations
19 Claims
-
1. A system, comprising:
-
one or more memory locations configured to store a primary application; one or more Central Processing Units operatively connected to said one or more memory locations and configured to execute said primary application on a primary host with a host operating system and configured to send messages to one or more backup applications while said primary application is executed; one or more backup hosts each with a host operating system and each comprising;
computer system memory comprising one or more memory locations configured to store one or more backup applications, and one or more Central Processing Units operatively connected to said computer system memory and configured to execute said one or more backup applications and configured to receive the one or more messages sent from said primary application;one or more events configured to trigger a live migration of a primary application from a primary host to one or more backup applications on one or more backup hosts; wherein said messages are configured to provide consistency between the primary application and said one or more backup applications; and a barrier, wherein said barrier is configured to halt execution before or after said messages are sent to the one or more backup applications. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18)
-
-
19. A method, comprising:
-
storing, at one or more memory locations, a primary application executing on a primary host with a host operating system; generating, on said primary host, messages based on execution of said primary application; transmitting said messages to one or more backups; storing, at one or more additional memory locations, one or more backup applications executing on one or more backup hosts each with a corresponding host operating system; receiving, by each one or more backup applications, said messages; wherein said messages provide consistency between the primary application and said one or more backup applications; and halting, by a barrier, execution before or after said messages are sent to the one or more backup applications.
-
Specification