Virtual tiering
First Claim
Patent Images
1. A system comprising:
- a set of physical resources;
a virtualization layer, comprising a set of virtual resources and a virtualization platform;
wherein the set of virtual resources is mapped by the virtualization layer to the set of physical resources;
wherein the set of virtual resources is grouped into a plurality of distinct tiers, each respective tier having a respective performance level that differentiates the respective tier from the other tiers in the plurality of tiers, wherein each respective performance level is based on at least one respective performance characteristic of the virtual resources associated with the respective tier; and
wherein the virtualization platform is configured to allocate at least one or more respective portions of one or more respective tiers to provide respective virtual resources assigned to the one or more respective tiers to be consumed by one or more virtual machines to execute one or more applications, each of the one or more respective portions having a respective allocation size corresponding to a percent of the total respective virtual resources available at the respective tier that are allocated to the one or more virtual machines;
a set of policies configured to dynamically control and vary each respective allocation size based at least in part on at least one of user input and real-time monitoring of resource usage of the one or more applications; and
computer-executable logic configured to enable one or more processors to execute;
monitoring real-time resource requirements of the one or more applications;
wherein the one or more virtual machines execute the one or more applications using the virtual resources allocated to the one or more virtual machines via the allocated respective portions of the tiers;
making a determination, based at least in part on the monitoring and on at least one policy in the set of policies, whether to change any one or more of the respective allocation sizes, such that the one or more virtual machines executing the one or more applications are allocated a different percent of the respective resources associated with one or more of the respective tiers as compared to the percent associated with an existing allocation size; and
based at least in part on a positive determination, changing the allocation size, dynamically and in real-time, so as to provide the one or more virtual machines executing the one or more applications with a greater or lesser percent of the total virtual resources associated with a given respective tier.
6 Assignments
0 Petitions
Accused Products
Abstract
A computer-executable method, system, and computer program product for allocating resources to an application of a set of applications, wherein the virtualized resources are grouped into tiers based on the performance characteristics of the virtualized resources, the computer-executable method comprising, monitoring resource demand of an application of the set of applications; wherein the resources allocated to the application are from a first tier of the tiers, making a determination whether to allocate to the application a portion of the resources from a different tier of the tiers, based on a positive determination, allocating the portion from the different tier of the tiers.
13 Citations
20 Claims
-
1. A system comprising:
-
a set of physical resources; a virtualization layer, comprising a set of virtual resources and a virtualization platform;
wherein the set of virtual resources is mapped by the virtualization layer to the set of physical resources;
wherein the set of virtual resources is grouped into a plurality of distinct tiers, each respective tier having a respective performance level that differentiates the respective tier from the other tiers in the plurality of tiers, wherein each respective performance level is based on at least one respective performance characteristic of the virtual resources associated with the respective tier; and
wherein the virtualization platform is configured to allocate at least one or more respective portions of one or more respective tiers to provide respective virtual resources assigned to the one or more respective tiers to be consumed by one or more virtual machines to execute one or more applications, each of the one or more respective portions having a respective allocation size corresponding to a percent of the total respective virtual resources available at the respective tier that are allocated to the one or more virtual machines;a set of policies configured to dynamically control and vary each respective allocation size based at least in part on at least one of user input and real-time monitoring of resource usage of the one or more applications; and computer-executable logic configured to enable one or more processors to execute; monitoring real-time resource requirements of the one or more applications;
wherein the one or more virtual machines execute the one or more applications using the virtual resources allocated to the one or more virtual machines via the allocated respective portions of the tiers;making a determination, based at least in part on the monitoring and on at least one policy in the set of policies, whether to change any one or more of the respective allocation sizes, such that the one or more virtual machines executing the one or more applications are allocated a different percent of the respective resources associated with one or more of the respective tiers as compared to the percent associated with an existing allocation size; and based at least in part on a positive determination, changing the allocation size, dynamically and in real-time, so as to provide the one or more virtual machines executing the one or more applications with a greater or lesser percent of the total virtual resources associated with a given respective tier. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A computer program product comprising:
-
a non-transitory computer readable storage medium encoded with computer executable program code that when executed on one or more processors of a computer causes the computer to operate a virtualized system, the computer program product comprising; computer program code for implementing a virtualization layer, comprising a set of virtual resources and a virtualization platform, wherein the set of virtualized resource are mapped by the virtualization layer to a set of physical resources; computer program code for grouping the set of virtualized resources into a plurality of distinct tiers, each respective tier having a respective performance level that differentiates the respective tier from the other tiers in the plurality of tiers, wherein each respective performance level is based on at least one respective performance characteristic of the virtual resources associated with the respective tier, and wherein the virtualization platform is configured to allocate at least one or more respective portions of one or more respective tiers to provide respective virtual resources assigned to the one or more respective tiers to be consumed by or more virtual machines to execute one or more applications, each of the one or more respective portions having a respective allocation size corresponding to a percent of the total respective virtual resources available at the respective tier that are allocated to the one or more virtual machines; computer program code for implementing a set of policies configured to dynamically control and vary each respective allocation size based at least in part on at least one of user input and real-time monitoring of resource usage of the one or more applications; computer program code for monitoring real-time resource requirements of the one or more applications;
wherein the one or more virtual machines execute the one or more applications using the virtual resources allocated to one or more virtual machines via the allocated respective portions of the tiers;computer program code for making a determination based at least in part on the monitoring and on at least one policy in the set of policies, whether to change any one or more of the respective allocation sizes, such that the one or more virtual machines executing the one or more applications are allocated a different percent of the respective resources associated with one or more of the respective tiers as compared to the percent associated with an existing allocation size; and based at least in part on a positive determination, changing the allocation size, dynamically and in real-time, so as to provide the one or more virtual machines executing the one or more applications with a greater or lesser percent of the total virtual resources associated with a given respective tier. - View Dependent Claims (11)
-
-
12. The computer program product of 10, further comprising computer program code for dynamically implementing a Fast Pass performance boost for a given tier, if a Fast Pass performance boost option is enabled in one or more policies applicable to the given tier;
wherein the Fast Pass performance boost is configured to dynamically provide designated Fast Pass resources to the given tier, wherein provision of the designated Fast Pass resources is configured to increase overall performance of one or more virtual machines allocated to the given tier. - View Dependent Claims (13)
-
14. The computer program product of 10, further comprising at least one of:
-
computer program code for collecting information on the set of virtual resources allocated via the dynamically controlled allocated respective portions of the one or more respective tiers and billing a customer according to the set of virtual resources allocated; and computer program code for allocating computer resources using a service catalog, wherein the service catalog describes the resources in business terms.
-
-
15. The computer program product of 10, further comprising computer program code for:
allocating less than the full capability of the physical resources associated the respective one or more tiers to be consumed by the set of one or more applications.
-
16. A computer-executable method for allocating virtual resources to one or more virtual machines running an application, wherein the virtual resources are mapped to a set of physical resources and are grouped into distinct tiers, each respective tier having a respective performance level that differentiates the respective tier from the other tiers in the plurality of tiers, wherein each respective performance level is based on at least one performance characteristic of the virtualized resources associated with the respective tier, the computer-executable method comprising:
-
allocating at least one or more respective portions of one or more respective tiers to provide respective virtual resources assigned to the one or more respective tiers to be consumed by one or more virtual machines to execute one or more applications, each of the one or more respective portions having a respective allocation size corresponding to a percent of the total respective virtual resources available at the respective tier that are allocated to the one or more virtual machines; defining a set of policies configured to dynamically control and vary each respective allocation size based at least in part on at least one of user input and real-time monitoring of resource usage of the one or more applications; monitoring real-time resource requirements of the one or more applications, wherein the one or more virtual machines execute the one or more applications using the virtual resources allocated to the one or more virtual machines via the allocated respective portions of the tiers; making a determination, based at least in part on the monitoring and on at least one policy in the set of policies, whether to change any one or more of the respective allocation sizes, such that the one or more virtual machines executing the one or more applications are allocates a different percent of the respective resources associated with one or more of the respective tiers as compared to the percent associated with an existing allocation size; and based at least in part on a positive determination, changing the allocation size, dynamically and in real-time, so as to provide the one or more virtual machines executing the one or more applications with a greater or lesser percent of the total virtual resources associated with a given respective tier. - View Dependent Claims (17, 18, 19, 20)
-
Specification