Clustering server providing virtual machine data sharing
First Claim
1. A computer-implemented method for allowing different instances of an application to execute in different virtual machines, comprising:
- providing a clustering agent interfacing with a plurality of virtual machines, each virtual machine running at least one instance of the application, each instance of the application accessing a plurality of objects;
configuring one or more managed objects selected from the plurality of objects, the managed objects comprising a subset of the plurality of objects, said configuring identifying operations which may affect the one or more managed objects in a each instance of application on each virtual machine;
detecting application operations performed on the one or more managed objects by any instance of the application which affect state information of the managed objects; and
communicating the application operations detected in one application instance in one virtual machine to a central manager for use in replicating the managed object state information to others of said virtual machines.
3 Assignments
0 Petitions
Accused Products
Abstract
Technology for sharing data among multiple virtual machines in a cluster of virtual machines is disclosed. Each virtual machine identifies “managed” objects of an instance of an application running at the virtual machine. The managed objects are objects for which state information is to be replicated at the other virtual machines in the cluster on which other instances of the application are running. Operations performed by an instance of one application which affect the state of managed objects are detected and distributed. A computer-implemented method for maintaining consistent object states at different virtual machines includes receiving managed object state information from a first virtual machine including a first instance of an application; creating a representation of each of the managed objects; and responsive to the received information, communicating state information to at least a second virtual machine on which a second instance of the application is running to replicate the state information at the second virtual machine.
-
Citations
21 Claims
-
1. A computer-implemented method for allowing different instances of an application to execute in different virtual machines, comprising:
-
providing a clustering agent interfacing with a plurality of virtual machines, each virtual machine running at least one instance of the application, each instance of the application accessing a plurality of objects; configuring one or more managed objects selected from the plurality of objects, the managed objects comprising a subset of the plurality of objects, said configuring identifying operations which may affect the one or more managed objects in a each instance of application on each virtual machine; detecting application operations performed on the one or more managed objects by any instance of the application which affect state information of the managed objects; and communicating the application operations detected in one application instance in one virtual machine to a central manager for use in replicating the managed object state information to others of said virtual machines. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A computer-implemented method for maintaining consistent data at different virtual machines, comprising:
-
providing one or more clustering agents interfacing with a plurality of virtual machines, each of the plurality of virtual machine interfacing with a local instance of an application associated with the virtual machine, each application accessing a plurality of objects at the virtual machine; receiving application operations describing events affecting a local instance of a managed object state from any one of the virtual machines at a central controller; creating a representation of each of the managed objects using the application operations at the central controller, the representation describing the object state; and communicating update operations describing the detected operations on the managed object to others of said plurality of virtual machines to replicate the managed object state in a local instance of the managed object on others of the virtual machines. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. A computer-implemented method for maintaining consistent data at different virtual machines, comprising:
-
providing a clustering agent interfacing with a plurality of virtual machines, each of the plurality of virtual machine interfacing with a local instance of an application associated with the virtual machine, each application accessing a plurality of objects at the virtual machine; on any one of the virtual machines, identifying operations which may affect state in one or more managed objects in a first instance of an application on the one of the virtual machines; detecting application operations performed on the one or more managed objects by the first instance of the application which affect the state information; and communicating the application operations to a central manager for use in replicating the managed object state information at other virtual machines, and on the central manager, creating a representation of each of the managed objects using the application operations, the representation describing the object state; and communicating update operations detected in one application instance in one virtual machine describing the object state information to at least a second virtual machine to replicate the managed object state in a local instance of the managed object on the second virtual machine. - View Dependent Claims (16, 17, 18, 19, 20, 21)
-
Specification