Capacity reclamation and resource adjustment
First Claim
1. A system for providing capacity reclamation of resources allocated to one or more virtual machines, the system comprising:
- a memory device with computer-readable program code stored thereon;
a communication device;
a processing device operatively coupled to the memory device and the communication device, wherein the processing device is configured to execute the computer-readable program code to;
provision resources to one or more virtual machines based partially on received resource parameters, the provisioning comprising;
receiving resource parameters comprising information indicating an intended use of the one or more virtual machines;
based on the information indicating the intended use, determining a predetermined type and amount of resources to be allocated for the intended use; and
based on the predetermined type and amount of resources, allocating a corresponding type and amount of resources to the one or more virtual machines;
monitor resource usage of the one or more virtual machines over a predetermined period of time;
compare resource usage to resource allocation;
based on the comparison of the resource usage to the resource allocation, adjust resource allocation based on the monitored resource usage;
based on the resource usage, predict future resource demand;
initiate a supplemental build of one or more second virtual machines, wherein the one or more second virtual machines are allocated temporary supplemental resources; and
based on a sustained decrease in resource demand, reclaim the temporary supplemental resources and re-allocating them to a pool of available resources.
1 Assignment
0 Petitions
Accused Products
Abstract
Embodiments of the invention are directed to a system, method, or computer program product for providing capacity reclamation of resources allocated to one or more virtual machines. The invention monitors resource usage of the one or more virtual machines over a predetermined period of time, compares resource usage to resource allocation; and, based on the comparison of the resource usage to the resource allocation, adjusts resource allocation based on the monitored resource usage. Comparing the resource usage may include comparing resource usage to a target upper threshold percentage of allocated resources, and if the resource usage exceeds the target upper threshold, increasing the allocated resources by a predetermined amount and comparing resource usage to a target lower threshold percentage of allocated resources, and if the resource usage is less than the target lower threshold, decreasing the allocated resources by a predetermined amount.
141 Citations
17 Claims
-
1. A system for providing capacity reclamation of resources allocated to one or more virtual machines, the system comprising:
-
a memory device with computer-readable program code stored thereon; a communication device; a processing device operatively coupled to the memory device and the communication device, wherein the processing device is configured to execute the computer-readable program code to; provision resources to one or more virtual machines based partially on received resource parameters, the provisioning comprising; receiving resource parameters comprising information indicating an intended use of the one or more virtual machines; based on the information indicating the intended use, determining a predetermined type and amount of resources to be allocated for the intended use; and based on the predetermined type and amount of resources, allocating a corresponding type and amount of resources to the one or more virtual machines; monitor resource usage of the one or more virtual machines over a predetermined period of time; compare resource usage to resource allocation; based on the comparison of the resource usage to the resource allocation, adjust resource allocation based on the monitored resource usage; based on the resource usage, predict future resource demand; initiate a supplemental build of one or more second virtual machines, wherein the one or more second virtual machines are allocated temporary supplemental resources; and based on a sustained decrease in resource demand, reclaim the temporary supplemental resources and re-allocating them to a pool of available resources. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A computer program product for providing capacity reclamation of resources allocated to one or more virtual machines, the computer program product comprising at least one non-transitory computer-readable medium having computer-readable program code portions embodied therein, the computer-readable program code portions comprising:
-
an executable portion configured for provisioning resources to one or more virtual machines based partially on received resource parameters, the provisioning comprising; receiving resource parameters comprising information indicating an intended use of the one or more virtual machines; based on the information indicating the intended use, determining a predetermined type and amount of resources to be allocated for the intended use; and based on the predetermined type and amount of resources, allocating a corresponding type and amount of resources to the one or more virtual machines; an executable portion configured for monitoring resource usage of the one or more virtual machines over a predetermined period of time; an executable portion configured for comparing resource usage to resource allocation; an executable portion configured for, based on the comparison of the resource usage to the resource allocation, adjusting resource allocation based on the monitored resource usage; an executable portion configured for, based on the resource usage, predicting future resource demand; an executable portion configured for initiating a supplemental build of one or more second virtual machines, wherein the one or more second virtual machines are allocated temporary supplemental resources; and an executable portion configured for, based on a sustained decrease in resource demand, reclaiming the temporary supplemental resources and re-allocating them to a pool of available resources. - View Dependent Claims (8, 9, 10, 11, 12)
-
-
13. A computer-implemented method for providing capacity reclamation of resources allocated to one or more virtual machines, the method embodied in at least one non-transitory computer-readable medium having computer-readable program code embodied therein, the computer-readable program code to cause a computer processor to:
-
provision resources to one or more virtual machines based partially on received resource parameters, the provisioning comprising; receiving resource parameters comprising information indicating an intended use of the one or more virtual machines; based on the information indicating the intended use, determining a predetermined type and amount of resources to be allocated for the intended use; and based on the predetermined type and amount of resources, allocating a corresponding type and amount of resources to the one or more virtual machines; monitor resource usage of the one or more virtual machines over a predetermined period of time; compare resource usage to resource allocation; and based on the comparison of the resource usage to the resource allocation, adjust resource allocation based on the monitored resource usage; based on the resource usage, predict future resource demand; initiate a supplemental build of one or more second virtual machines, wherein the one or more second virtual machines are allocated temporary supplemental resources; and based on a sustained decrease in resource demand, reclaim the temporary supplemental resources and re-allocating them to a pool of available resources. - View Dependent Claims (14, 15, 16, 17)
-
Specification