Automated reconfiguration of shared network resources
First Claim
1. A computer-implemented method of managing resource capacity in a multi-tenant environment, comprising:
- determining a total capacity target and a free capacity target for one resource pool of a plurality of resource pools, the one 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 the resource pool against the total capacity target and the free capacity target for the resource pool;
when the capacity data for the resource pool does not satisfy at least one of the total capacity target or the free capacity target;
determining at least one resource that can be moved from a source pool to a target pool of the plurality of resource pools to enable at least a portion of the plurality of resource pools to satisfy at least one of the total capacity target or the free capacity target; and
causing the determined at least one resource to be reconfigured to provide capacity in the target pool;
receiving a request for an amount and type of capacity in the multi-tenant environment;
granting access to the amount and type of capacity in a respective pool when the amount and the type of capacity is available; and
when granting the access causes the type of capacity of a respective pool to fall below the total capacity target or the free capacity target, reconfiguring the determined at least one resource to provide additional capacity of the type of capacity.
0 Assignments
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.
46 Citations
21 Claims
-
1. A computer-implemented method of managing resource capacity in a multi-tenant environment, comprising:
-
determining a total capacity target and a free capacity target for one resource pool of a plurality of resource pools, the one 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 the resource pool against the total capacity target and the free capacity target for the resource pool; when the capacity data for the resource pool does not satisfy at least one of the total capacity target or the free capacity target; determining at least one resource that can be moved from a source pool to a target pool of the plurality of resource pools to enable at least a portion of the plurality of resource pools to satisfy at least one of the total capacity target or the free capacity target; and causing the determined at least one resource to be reconfigured to provide capacity in the target pool; receiving a request for an amount and type of capacity in the multi-tenant environment; granting access to the amount and type of capacity in a respective pool when the amount and the type of capacity is available; and when granting the access causes the type of capacity of a respective pool to fall below the total capacity target or the free capacity target, reconfiguring the determined at least one resource to provide additional capacity of the type of capacity. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A non-transitory computer-readable storage medium including instructions that, when executed by at least one processor of a computing system, cause the computing system to:
-
determine a total capacity target and a free capacity target for one resource pool of a plurality of resource pools in a multi-tenant environment, the one 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; compare capacity data for the one resource pool of the plurality of pools against the total capacity target and the free capacity target for the one resource pool; when the capacity data for the one resource pool does not satisfy at least one of the total capacity target or the free capacity target, determine at least one resource that can be moved from a source pool to a target pool of the plurality of resource pools to enable at least a portion of the plurality of resource pools to satisfy at least one of the total capacity target or the free capacity target, and cause the determined at least one resource to be reconfigured to provide capacity in the target pool; receive a request for an amount and type of capacity in the multi-tenant environment; grant access to the amount and type of capacity in a respective pool when the amount and the type of capacity is available; and when granting the access causes the type of capacity of the respective pool to fall below the total capacity target or the free capacity target, reconfigure the determined at least one resource to provide additional capacity of the type of capacity. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. 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 a total capacity target and a free capacity target for one resource pool of a plurality of resource pools in a multi-tenant environment, the one 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; compare capacity data for the one resource pool of the plurality of pools against the total capacity target and the free capacity target for the one resource pool; when the capacity data for the one resource pool does not satisfy at least one of the total capacity target or the free capacity target, determine at least one resource that can be moved from a source pool to a target pool of the plurality of resource pools to enable at least a portion of the plurality of resource pools to satisfy at least one of the total capacity target or the free capacity target, and cause the determined at least one resource to be reconfigured to provide capacity in the target pool; receive a request for an amount and type of capacity in the multi-tenant environment; grant access to the amount and type of capacity in a respective pool when the amount and the type of capacity is available; and when granting the access causes the type of capacity of the respective pool to fall below the total capacity target or the free capacity target, reconfigure the determined at least one resource to provide additional capacity of the type of capacity. - View Dependent Claims (16, 17, 18, 19, 20, 21)
-
Specification