System and method for restarting a workload based on global load balancing
First Claim
Patent Images
1. A method for restarting a virtual machine in a virtual computing system having a plurality of hosts and a resource scheduler for the plurality of hosts, comprising:
- detecting failure of one of the plurality of hosts or a component therein on which the virtual machine depends;
writing a placement request for the virtual machine to a shared channel that is accessible by the resource scheduler;
determining whether a commitment signal is written to the shared channel by the resource scheduler, wherein the commitment signal indicates either that the resource scheduler is able to compute a first placement result within a first amount of time or a second amount of time the resource scheduler is expected to take to compute the first placement result;
if the commitment signal is written to the shared channel and a service objective specifying a guaranteed time during which placement of the virtual machine must be achieved is satisfied, waiting and then reading the first placement result from the shared channel, wherein the first placement result is generated by the resource scheduler responsive to the placement request;
if the commitment signal is not written to the shared channel or the service objective is not satisfied, obtaining a second placement result for the virtual machine from a backup placement engine which makes placement decisions within the guaranteed time specified by the service objective; and
restarting the virtual machine in accordance with the first placement result or the second placement result.
2 Assignments
0 Petitions
Accused Products
Abstract
A method for restarting a virtual machine in a virtual computing system having a plurality of hosts and a resource scheduler for the plurality of hosts includes writing a placement request for the virtual machine to a shared channel that is accessible by the resource scheduler. The method further includes reading a placement result from the shared channel, wherein the placement result is generated by the resource scheduler responsive to the placement request; and restarting the virtual machine in accordance with the placement result.
-
Citations
14 Claims
-
1. A method for restarting a virtual machine in a virtual computing system having a plurality of hosts and a resource scheduler for the plurality of hosts, comprising:
-
detecting failure of one of the plurality of hosts or a component therein on which the virtual machine depends; writing a placement request for the virtual machine to a shared channel that is accessible by the resource scheduler; determining whether a commitment signal is written to the shared channel by the resource scheduler, wherein the commitment signal indicates either that the resource scheduler is able to compute a first placement result within a first amount of time or a second amount of time the resource scheduler is expected to take to compute the first placement result; if the commitment signal is written to the shared channel and a service objective specifying a guaranteed time during which placement of the virtual machine must be achieved is satisfied, waiting and then reading the first placement result from the shared channel, wherein the first placement result is generated by the resource scheduler responsive to the placement request; if the commitment signal is not written to the shared channel or the service objective is not satisfied, obtaining a second placement result for the virtual machine from a backup placement engine which makes placement decisions within the guaranteed time specified by the service objective; and restarting the virtual machine in accordance with the first placement result or the second placement result. - View Dependent Claims (2, 3)
-
-
4. A method for computing placement results for a virtual machine in a virtual computing system, comprising:
-
reading a placement request for the virtual machine from a shared channel, the placement request being written to the shared channel upon detecting failure of a host computer or a component therein on which the virtual machine depends; writing a commitment signal to the shared channel if a first placement result can be computed within an amount of time so as to satisfy a service objective specifying a guaranteed time during which placement of the virtual machine must be achieved, wherein if the first placement result cannot be computed within the amount of time so as to satisfy the service objective, a second placement result is computed by a backup placement engine which makes placement decisions within the guaranteed time specified by the service objective; if the first placement result can be computed within the amount of time so as to satisfy the service objective, computing the first placement result for the virtual machine based on the placement request read from the shared channel, wherein the first placement result includes information corresponding to a backup host computer on which the virtual machine is to be restarted; and writing the first placement result to the shared channel, wherein the virtual machine is restarted in accordance with the first placement result or the second placement result. - View Dependent Claims (5, 6, 7)
-
-
8. A non-transitory computer-readable storage medium comprising instructions that, when executed in a computing device, causes the computing device to restart a virtual machine in a virtual computing system having a plurality of hosts and a resource scheduler for the plurality of hosts, by performing the steps of:
-
detecting failure of one of the plurality of hosts or a component therein on which the virtual machine depends; writing a placement request for the virtual machine to a shared channel that is accessible by the resource scheduler; determining whether a commitment signal is written to the shared channel by the resource scheduler, wherein the commitment signal indicates either that the resource scheduler is able to compute a first placement result within a first amount of time or a second amount of time the resource scheduler is expected to take to compute the first placement result; if the commitment signal is written to the shared channel and a service objective specifying a guaranteed time during which placement of the virtual machine must be achieved is satisfied, waiting and then reading the first placement result from the shared channel, wherein the first placement result is generated by the resource scheduler responsive to the placement request; if the commitment signal is not written to the shared channel or the service objective is not satisfied, obtaining a second placement result for the virtual machine from a backup placement engine which makes placement decisions within the guaranteed time specified by the service objective; and restarting the virtual machine in accordance with the first placement result or the second placement result. - View Dependent Claims (9, 10)
-
-
11. A non-transitory computer-readable storage medium comprising instructions that, when executed in a computing device, causes the computing device to compute placement results for a virtual machine in a virtual computing system, by performing the steps of:
-
reading a placement request for the virtual machine from a shared channel, the placement request being written to the shared channel upon detecting the failure of a host computer or a component therein on which the virtual machine depends; writing a commitment signal to the shared channel if a first placement result can be computed within an amount of time so as to satisfy a service objective specifying a guaranteed time during which placement of the virtual machine must be achieved, wherein if the first placement result cannot be computed within the amount of time so as to satisfy the service objective, a second placement result is computed by a backup placement engine which makes placement decisions within the guaranteed time specified by the service objective; if the first placement result can be computed within the amount of time so as to satisfy the service objective, computing the first placement result for the virtual machine based on the placement request read from the shared channel, wherein the first placement result includes information corresponding to a backup host computer on which the virtual machine is to be restarted; and writing the first placement result to the shared channel, wherein the virtual machine is restarted in accordance with the first placement result or the second placement result. - View Dependent Claims (12, 13, 14)
-
Specification