Coordinating service performance and application placement management
Abstract
Apparatus, systems and methods for service and/or business for coordinating tasks of performance management and application placement management in a dynamic fashion. An example process is dynamic in the face of fluctuations in the request load to the distributed computer system and the periodic adjustments to the placement of applications onto servers in said distributed computer system. There are two opposite functional flows in said process: a demand estimation function and a capacity adjustment function. The coordination system involves two subsystems: a demand estimator and a capacity adjuster, along with appropriate interfaces to of the performance manager and the application placement manager. This results in application placement process reacting quicker to demand fluctuations, performance guarantees are better met by rearranging the resources to be allocated to the various classes of service, and the management system works in an unsupervised mode, thus reducing manual administration costs and human errors.
Claims
exact text as granted — not AI-modified1 . A method comprising provisioning at least one application to satisfy at least one quality of service guarantee, said at least one application satisfying a plurality of service requests for a particular service, said step of provisioning comprising:
computing a desired capacity to achieve said quality of service level defined for said particular service; employing said desired capacity in determining a placement of said at least one application onto at least one server in said computer system in accordance with a placement policy; computing a capacity limit of said particular service to said at least one application based on said placement; and determining an allocation of capacity to satisfy said quality of service level subject to said placement and capacity limit.
2 . A method as recited in claim 1 , wherein said step of computing a desired capacity includes optimizing achievement of the quality of service while disregarding any application placement constraints.
3 . A method as recited in claim 1 , wherein said step of employing comprises determining if desired capacities are satisfied by a current application placement,
if satisfied using the current placement as a solution to the application placement; if not satisfied using the desired capacity as an input into a method for solving an application placement problem.
4 . A method as recited in claim 1 , wherein said step of computing a capacity limit includes examining a placement matrix and capacity of servers within said computer system.
5 . A method as recited in claim 1 , wherein said step of determining an allocation of capacity includes solving an optimization problem to achieve the quality of service, said optimization problem is constrained by an application placement matrix.
6 . A method as recited in claim 1 , further comprising:
monitoring performance of the computer system in meeting the quality of service guarantee, when the quality of service guarantee is not being met; and repeating the steps of: computing a desired capacity; employing; computing a capacity limit; and determining; until the quality of service guarantee is met.
7 . A method as recited in claim 6 , wherein the step of monitoring is performed based on a monitoring criterion.
8 . A method as recited in claim 1 , further comprising:
said at least one application satisfying a plurality of service requests for a plurality of services; and repeating the steps of: computing a desired capacity; employing; computing a capacity limit; and determining; until the quality of service guarantee is met for all service requests and all services.
9 . A method comprising coordinating performance management and application placement management, said step of coordinating comprising:
estimating capacity needs for various service classes of service requests; computing desired capacities of at least one application for said service requests; deciding whether the desired capacities are satisfied by the current application placement; making no change to current application placement if the desired capacities are satisfied; determining a new application placement based on the desired capacities and a projected load if the desired capacities are not satisfied; computing corresponding capacity constraints for all pairs of service classes and servers; and computing an optimal allocation of capacities among the service classes so as to optimize the quality of service.
10 . A method as recited in claim 9 , further comprising repeating the steps of estimating;
computing desired capacities; deciding; computing corresponding capacity constraints; and computing an optimal allocation; based on a repetition criterion.
11 . A method for provisioning at least one application to satisfy a quality service level for at least one service, said method comprising:
coordinating a service performance manager and an application placement manager in a computer system, said service performance manager managing performance of said at least one service, and said application placement manager managing placement of at least one application, said application satisfying a service request for a particular service, the step of coordinating comprising the steps of: computing a desired capacity to achieve said quality of service level defined for said particular service; said application placement manager employing said desired capacity in determining a placement of said at least one application onto at least one server in said computer system in accordance with a placement policy; computing a capacity limit of said particular service to said at least one application based on said placement; and said performance manager determining an allocation of capacity to satisfy said quality of service level subject to said placement and capacity limit.
12 . A method as recited in claim 11 , further comprising:
communicating said desired capacity to said application placement manager; and communicating said placement and said capacity limit to the service performance manager.
13 . An apparatus to provision at least one application to satisfy at least one quality of service guarantee, said at least one application satisfying a plurality of service requests for a particular service, said apparatus comprising:
means for computing a desired capacity to achieve said quality of service level defined for said particular service; means for employing said desired capacity in determining a placement of said at least one application onto at least one server in a computer system in accordance with a placement policy; means for computing a capacity limit of said particular service to said at least one application based on said placement; and means for determining an allocation of capacity to satisfy said quality of service level subject to said placement and capacity limit.
14 . An apparatus to coordinate performance management and application placement management, said apparatus comprising:
means for estimating capacity needs for various service classes of service requests; means for computing desired capacities of at least one application for said service requests; means for deciding whether the desired capacities are satisfied by the current application placement; means for making no change to current application placement if the desired capacities are satisfied; means for determining a new application placement based on the desired capacities and a projected load if the desired capacities are not satisfied; means for computing corresponding capacity constraints for all pairs of service classes and servers; and means for computing an optimal allocation of capacities among the service classes so as to optimize the quality of service.
15 . An apparatus to provision at least one application to satisfy a quality service level for at least one service, said apparatus comprising:
means for coordinating a service performance manager and an application placement manager in a computer system, said service performance manager comprising means for managing performance of said at least one service, and said application placement manager comprising means for managing placement of at least one application, said application satisfying a service request for a particular service, the means for coordinating comprising: means for computing a desired capacity to achieve said quality of service level defined for said particular service, said application placement manager comprising means for employing said desired capacity in determining a placement of said at least one application onto at least one server in said computer system in accordance with a placement policy; means for computing a capacity limit of said particular service to said at least one application based on said placement; and said performance manager comprising means for determining an allocation of capacity to satisfy said quality of service level subject to said placement and capacity limit.
16 . An article of manufacture comprising a computer usable medium having computer readable program code means embodied therein for causing provisioning of at least one application to satisfy at least one quality of service guarantee, said at least one application satisfying a plurality of service requests for a particular service, the computer readable program code means in said article of manufacture comprising computer readable program code means for causing a computer to effect the steps of:
computing a desired capacity to achieve said quality of service level defined for said particular service; employing said desired capacity in determining a placement of said at least one application onto at least one server in said computer system in accordance with a placement policy; computing a capacity limit of said particular service to said at least one application based on said placement; and determining an allocation of capacity to satisfy said quality of service level subject to said placement and capacity limit.
17 . A computer program product comprising a computer usable medium having computer readable program code means embodied therein for causing provisioning of at least one application to satisfy at least one quality of service guarantee, said at least one application satisfying a plurality of service requests for a particular service, the computer readable program code means in said computer program product comprising computer readable program code means for causing a computer to effect the functions of claim 13 .
18 . A program storage device readable by machine, tangibly embodying a program of instructions executable by the machine to perform method steps for provisioning at least one application to satisfy at least one quality of service guarantee, said method steps comprising the steps of claim 13 .
19 . A program storage device readable by machine, tangibly embodying a program of instructions executable by the machine to perform method steps for coordinating performance management and application placement management, said method steps comprising the steps of claim 14 .
20 . A program storage device readable by machine, tangibly embodying a program of instructions executable by the machine to perform method steps for provisioning at least one application to satisfy a quality service level for at least one service, said method steps comprising the steps of claim 15 .
21 . A program storage device readable by machine, tangibly embodying a program of instructions executable by the machine to perform method steps for provisioning of at least one application to satisfy at least one quality of service guarantee, said at least one application satisfying a plurality of service requests for a particular service, said method steps comprising the steps of claim 1 .
22 . An article of manufacture comprising a computer usable medium having computer readable program code means embodied therein for causing to coordination of performance management and application placement management, the computer readable program code means in said article of manufacture comprising computer readable program code means for causing a computer to effect the functions of claim 14 .
23 . An article of manufacture comprising a computer usable medium having computer readable program code means embodied therein for causing coordination of performance management and application placement management, the computer readable program code means in said article of manufacture comprising computer readable program code means for causing a computer to effect the steps of claim 9 .
24 . A program storage device readable by machine, tangibly embodying a program of instructions executable by the machine to perform method steps for coordination of performance management and application placement management, said at least one application satisfying a plurality of service requests for a particular service, said method steps comprising the steps of claim 9 .
25 . A method as recited in claim 12 , wherein:
the step of communicating said desired capacity comprises representing said desired capacity as a desired capacity vector, wherein an element in said desired capacity vector corresponds to said quality of service level; and the step of communicating said placement and said capacity limit comprises representing said placement as a placement matrix, wherein rows of said placement matrix correspond to said applications and columns of said placement matrix correspond to said servers, and representing said capacity limit as a capacity limit vector wherein an element in said capacity limit vector correspond to said server.
26 . An article of manufacture comprising a computer usable medium having computer readable program code means embodied therein for causing provisioning of at least one application to satisfy a quality service level for at least one service, the computer readable program code means in said article of manufacture comprising computer readable program code means for causing a computer to effect the steps of:
coordinating a service performance manager and an application placement manager in a computer system, said service performance manager managing performance of said at least one service, and said application placement manager managing placement of at least one application, said application satisfying a service request for a particular service, the step of coordinating comprising the steps of: computing a desired capacity to achieve said quality of service level defined for said particular service; said application placement manager employing said desired capacity in determining a placement of said at least one application onto at least one server in said computer system in accordance with a placement policy; computing a capacity limit of said particular service to said at least one application based on said placement; and said performance manager determining an allocation of capacity to satisfy said quality of service level subject to said placement and capacity limit.
27 . A program storage device readable by machine, tangibly embodying a program of instructions executable by the machine to perform method steps for provisioning of at least one application to satisfy a quality service level for at least one service, said method steps comprising the steps of claim 11 .
28 . A method as recited in claim 1 , wherein at least a portion of the step of provisioning is performed by a service provider.
29 . A method as recited in claim 1 , further comprising forming a business providing at least a portion of the step of provisioning.
30 . A method as recited in claim 11 , wherein at least a portion of the step of coordinating is performed by a service provider.
31 . A method as recited in claim 11 , further comprising forming a business providing at least a portion of the step of coordinating.
32 . An apparatus as recited in claim 13 , wherein at least a portion of a means of the apparatus is performed by a service provider.
33 . A method as recited in claim 13 , wherein at least a portion of a means of the apparatus is used to form a business.
34 . An apparatus as recited in claim 14 , wherein at least a portion of a means of the apparatus is performed by a service provider.
33 . A method as recited in claim 14 , at least a portion of a means of the apparatus is used to form a business.Cited by (0)
No later patents cite this yet.
References (0)
No backward citations on record.