Automated reconfiguration of shared network resources
First Claim
1. A computer-implemented method of managing shared resource capacity in a multi-tenant environment, comprising:
- determining whether an amount of a type of capacity for each of a plurality of resource pools will satisfy at least one forecast capacity target; and
when the amount of capacity of at least one of the resource pools is determined to not satisfy at least one forecast capacity target;
determining a priority score for each of the resource pools based at least in part upon at least one of an amount of total resource capacity or an amount of free resource capacity of the resource pool;
selecting a designated source pool from the plurality of resource pools based at least on the priority score of the selected resource pool;
iteratively selecting a target pool with a highest priority score from the plurality of resource pools, herein the designated source pool is not eligible to be selected as a target pool;
locating one or more resources in the designated source pool that is available to be reconfigured to provide capacity in the target pool; and
causing the located one or more resources to be reconfigured to provide capacity in the target pool.
1 Assignment
0 Petitions
Accused Products
Abstract
A resource manager can adjust the amount of capacity in each of a plurality of resource pools using a combination of proactive and reactive approaches. Targets such as an amount of total capacity and an amount of free capacity can be forecast and periodically compared against actual capacity and usage of the pools. A pool balancing algorithm can be used to shift capacity among pools as needed, in order to provide the targeted amount of capacity for each pool before the capacity is needed. When actual usage varies sufficiently from the forecasted usage on which the targets are based, the resource manager can react by reconfiguring resources as needed.
66 Citations
25 Claims
-
1. A computer-implemented method of managing shared resource capacity in a multi-tenant environment, comprising:
-
determining whether an amount of a type of capacity for each of a plurality of resource pools will satisfy at least one forecast capacity target; and when the amount of capacity of at least one of the resource pools is determined to not satisfy at least one forecast capacity target; determining a priority score for each of the resource pools based at least in part upon at least one of an amount of total resource capacity or an amount of free resource capacity of the resource pool; selecting a designated source pool from the plurality of resource pools based at least on the priority score of the selected resource pool; iteratively selecting a target pool with a highest priority score from the plurality of resource pools, herein the designated source pool is not eligible to be selected as a target pool; locating one or more resources in the designated source pool that is available to be reconfigured to provide capacity in the target pool; and causing the located one or more resources to be reconfigured to provide capacity in the target pool. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
-
13. A system, comprising:
-
at least one device processor; and memory including instructions that, when executed by the at least one processor, cause the system to; determine at least one of a plurality of resource pools where an amount of a type of capacity for the resource pools does not satisfy at least one forecast capacity target; determine a priority score for each of the resource pools based at least in part upon at least one of an amount of total resource capacity or an amount of free resource capacity of the resource pool; select a designated source pool from the plurality of resource pools based at least on the priority score of the selected resource pool; iteratively select a target pool with a highest priority score from the plurality of resource pools, wherein the designated source pool is not eligible to be selected as a target pool; locate one or more resources in the designated source pool that is available to be reconfigured to provide capacity in the target pool; and cause the located one or more resources to be reconfigured to provide capacity in the target pool. - View Dependent Claims (14, 15, 16, 17)
-
-
18. A non-transitory computer-readable medium including instructions that, when executed by at least one processor of a computer system, cause the computing system to:
-
determine at least one of a plurality of resource pools where an amount of a type of capacity for the resource pools does not satisfy at least one forecast capacity target; determine a priority score for each of the resource pools based at least in part upon at least one of an amount of total resource capacity or an amount of free resource capacity of the resource pool; select a designated source pool from the plurality of resource pools based at least on the priority score of the selected resource pool; iteratively select a target pool with a highest priority score from the plurality of resource pools, wherein the designated source pool is not eligible to be selected as a target pool; locate one or more resources in the designated source pool that is available to be reconfigured to provide capacity in the target pool; and cause the located one or more resources to be reconfigured to provide capacity in the target pool. - View Dependent Claims (19, 20, 21)
-
-
22. A computer-implemented method, comprising:
-
determining a total capacity target and a free capacity target for each of a plurality of resource pools in a multi-tenant environment, each resource pool including a set of resources having a similar configuration, the total capacity target and the free capacity target each being calculated based at least in part upon a forecast usage by customers of the plurality of resource pools; comparing capacity data for each of the plurality of pools against the total capacity target and the free capacity target for the pool; and when the capacity data of at least one of the resource pools is determined to not satisfy at least one of the total capacity target or the free capacity target; determining a priority score for each of the resource pools based at least in part upon at least one of an amount of total resource capacity or an amount of free resource capacity of the resource pool; selecting a designated source pool from the plurality of resource pools based at least on the priority score of the selected resource pool; iteratively selecting a target pool with a highest priority score from the plurality of resource pools, wherein the designated source pool is not eligible to be selected as a target pool; locating one or more resources in the designated source pool that is available to be reconfigured to provide capacity in the target pool; and causing the located one or more resources to be reconfigured to provide capacity in the target pool. - View Dependent Claims (23, 24, 25)
-
Specification