Patent ID: 7516221

Claim:
A method for dynamically allocating computer resources of a multi-node computer system, the method comprising computer implemented steps of: monitoring performance realized by a plurality of services running on the multi-node computer system, wherein said plurality of services includes a first service and a second service; based on said monitoring the performance of a plurality of services, generating performance metrics that indicate performance realized by each service of said plurality of services; based on the performance metrics, said multi-node computer system detecting a violation of service-level agreements for said first service; in response to detecting said violation of said service-level agreements, said multi-node computer system adjusting allocation of computer resources of said multi-node system between said first service and said second service; said computer resources containing pools of resources; the step of adjusting allocation of computer resources includes attempting to resolve said performance violation by adjusting, for said first service, allocation of a first pool of resources that is lower in a hierarchy before attempting to adjust allocation of a second pool of resources that is higher in said hierarchy.