Providing application-aware high availability of virtual machines
First Claim
Patent Images
1. A method comprising:
- generating information indicating a state of each of a plurality of applications executing in a virtual machine, whereinthe generating is performed by an application monitoring agent executing outside of the virtual machine,the application monitoring agent obtains the state of each of the plurality of applications by interacting with an operating system interface provided by an operating system of the virtual machine, andthe application monitoring agent is configured to monitor at least one application on each of a plurality of virtual machines;
receiving the information indicating the state of each of the plurality of applications executing in the virtual machine, wherein the information is received by a computing device implementing a virtual machine monitoring agent that is monitoring the virtual machine, whereinthe application monitoring agent and the virtual machine monitoring agent are implemented by a virtual machine monitor;
in response to the receiving, determining whether the virtual machine should be restarted, based at least in part on the state of each of the plurality of applications executing in the virtual machine and a priority of each of the plurality of applications;
generating information indicating whether the virtual machine should be restarted in response to the determining; and
restarting the virtual machine if the information indicates that the virtual machine should be restarted.
7 Assignments
0 Petitions
Accused Products
Abstract
Various systems and methods can provide application-aware high availability of virtual machines. For example, one method involves receiving information indicating a state of an application executing in a virtual machine. The information is received by a computing device implementing a virtual machine monitoring agent that is monitoring the virtual machine. In response to receiving the information, the method determines whether the virtual machine should be restarted, based at least in part on the state of the application executing in the virtual machine. The method then generates information indicating whether the virtual machine should be restarted, in response to making the determination.
-
Citations
14 Claims
-
1. A method comprising:
-
generating information indicating a state of each of a plurality of applications executing in a virtual machine, wherein the generating is performed by an application monitoring agent executing outside of the virtual machine, the application monitoring agent obtains the state of each of the plurality of applications by interacting with an operating system interface provided by an operating system of the virtual machine, and the application monitoring agent is configured to monitor at least one application on each of a plurality of virtual machines; receiving the information indicating the state of each of the plurality of applications executing in the virtual machine, wherein the information is received by a computing device implementing a virtual machine monitoring agent that is monitoring the virtual machine, wherein the application monitoring agent and the virtual machine monitoring agent are implemented by a virtual machine monitor; in response to the receiving, determining whether the virtual machine should be restarted, based at least in part on the state of each of the plurality of applications executing in the virtual machine and a priority of each of the plurality of applications; generating information indicating whether the virtual machine should be restarted in response to the determining; and restarting the virtual machine if the information indicates that the virtual machine should be restarted. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A system comprising:
-
one or more processors; and memory coupled to the one or more processors, wherein the memory stores program instructions executable by the one or more processors to; generate information indicating a state of each of a plurality of applications executing in a virtual machine, wherein generating the information is performed by an application monitoring agent executing outside of the virtual machine, the application monitoring agent obtains the state of each of the plurality of applications by interacting with an operating system interface provided by an operating system of the virtual machine, and the application monitoring agent is configured to monitor at least one application on each of a plurality of virtual machines; monitor an operating state of a virtual machine, wherein monitoring the virtual machine is performed by a virtual machine monitoring agent, and the application monitoring agent and the virtual machine monitoring agent are implemented by a virtual machine monitor; receive information indicating the state of each of the plurality of applications executing in the virtual machine; in response to the operating state of the virtual machine and receipt of the information, determine whether the virtual machine should be restarted, based at least in part on the state of each of the plurality of applications executing in the virtual machine and a priority of each of the plurality of applications; and restart the virtual machine in response to the determination as to whether the virtual machine should be restarted. - View Dependent Claims (8, 9, 10, 11)
-
-
12. A non-transitory computer readable storage medium comprising program instructions executable to:
-
generate information indicating a state of each of a plurality of applications executing in a virtual machine, wherein generating the information is performed by an application monitoring agent executing outside of the virtual machine, the application monitoring agent obtains the state of each of the plurality of applications by interacting with an operating system interface provided by an operating system of the virtual machine, and the application monitoring agent is configured to monitor at least one application on each of a plurality of virtual machines; monitor an operating state of a virtual machine, wherein monitoring the virtual machine is performed by a virtual machine monitoring agent, and the application monitoring agent and the virtual machine monitoring agent are implemented by a virtual machine monitor; receive information indicating the state of each of the plurality of applications executing in the virtual machine; in response to the operating state of the virtual machine and receipt of the information, determine whether the virtual machine should be restarted, based at least in part on the state of each of the plurality of applications executing in the virtual machine and a priority of each of the plurality of applications; and restart the virtual machine in response to the determination as to whether the virtual machine should be restarted. - View Dependent Claims (13, 14)
-
Specification