IP Library Granted Patent US 9,122,538
Granted Patent B2
US 9,122,538 · App. 12/709,962 · Granted Sep 1, 2015

Methods and apparatus related to management of unit-based virtual resources within a data center environment

Inventors: Julian J. Box (St. Helier, JE); Kevin D. Reid (Bethesda, MD); Karl J. Simpson (St. Helier, JE)
Assignee: Virtustream, Inc.
G06F9/5077G06F9/5027G06F9/5072G06F2209/501
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,122,538
App. No.
12/709,962
Granted
Sep 1, 2015
Kind
B2
Abstract

In one embodiment, a processor-readable medium can be configured to store code representing instructions to be executed by a processor. The code can include code to receive a request to change a value representing a number of data center units included in a set of data center units assigned to a user. Each of the data center units from the set of data center units can be associated with hardware resources managed based on a set of predefined hardware resource limit values. The code can include code to determine, in response to the request, whether hardware resources of a data center unit mutually exclusive from hardware resources of the set of data center units and managed based on the set of predefined resource limit values is available for assignment to the user when the request to change is an increase request.

Claims (80)

1. A non-transitory processor-readable medium storing code representing instructions to be executed by a processor to perform a method of managing virtual resources, the code comprising code to:

manage virtual resources within a data center environment using a database configured to keep track of and manage resources by processing the virtual resources using derived values that characterize the virtual resources as a function of unit-based information associated with one or more predefined hardware resource limit units, the database configured for processing the derived values and storing each derived value along with associated database fields for user identifier information, quantity of data center units assigned to each user, unit-based listings of data center units assigned to each user, virtual resource information regarding virtual resources associated with each user, and user preference information;

process a request to change a value of one or both of the quantity of data center units and the unit-based listings in the database representing a number of data center units included in a set of data center units assigned to a user, each of the data center units from the set of data center units associated with hardware resources managed based on a set of the predefined hardware resource limit units; and

determine, in response to the request, whether hardware resources of a data center unit mutually exclusive from hardware resources of the set of data center units and managed based on the set of the predefined hardware resource limit units are available for assignment to the user when the request to change is an increase request;

wherein, via management of the virtual resource as a function of the derived values, one or more guaranteed levels of service that correspond to the one or more predefined hardware resource limit units are provided, and

the virtual resource information is configured to emulate one or more functions of a legacy source device being migrated to the virtual resources.

2. The non-transitory processor-readable medium of claim 1 , wherein at least a portion of the data center units from the set of data centers units are configured to operate a set of virtual resources at a guaranteed service level.

3. The non-transitory processor-readable medium of claim 1 , further comprising code to:

remove a data center unit from the set of data center units when the request to change is a decrease request.

4. The non-transitory processor-readable medium of claim 1 , further comprising code to:

modify a distribution of a set of virtual resources operating within the set of data center units when the request to change is a decrease request such that the set of virtual resources operate within a first subset of the set of data center units before the code to modify is executed and operate within a second subset of the set of data center units different from the first subset of the set of data center units after the code to modify is executed.

5. The non-transitory processor-readable medium of claim 1 , further comprising code to:

identify a data center unit for removal from the set of data center units when the request to change is a decrease request; and

associate the data center unit with a pool of unassigned data center units.

6. The non-transitory processor-readable medium of claim 1 , wherein the user is a first user, the code further comprising code to:

reassign a data center unit from the set of data center units associated with the first user to a set of data center units associated with a second user when the request to change is a decrease request.

7. The non-transitory processor-readable medium of claim 1 , further comprising code to:

send a notification that the request to change has been denied when the additional data center unit is unavailable for assignment to the user.

8. The non-transitory processor-readable medium of claim 1 , wherein the set of predefined hardware resource limit values includes:

at least one of a processor speed limit value, a memory space limit value, or a network bandwidth limit value; and

at least one of a disk space limit value, a disk bandwidth limit value, or a disk input/output limit value.

9. An apparatus, comprising:

a memory configured to store information representing assignment of a set of data center units to a user identifier, each data center unit from the set of data center units associated with a set of processing resources managed based on a set of predefined resource limit values; and

a processor configured to:

manage virtual resources within a data center environment using a database configured to keep track of and manage resources by processing the virtual resources using derived values that characterize the virtual resources as a function of unit-based information associated with one or more predefined hardware resource limit units, the database configured for processing the derived values and storing each derived value along with associated database fields for user identifier information, quantity of data center units assigned to each user, unit-based listings of data center units assigned to each user, virtual resource information regarding virtual resources associated with each user, and user preference information;

in response to at least of (1) a request associated with the user identifier, or (2) a threshold condition being satisfied based on a change in performance of a set of virtual responses operating within the set of data center units, determine whether hardware resources of a data center unit mutually exclusive from hardware resources of the set of data center units and managed based on the set of the predefined hardware resource limit units are available for assignment to the user when the request to change is an increase request; and

modify a value of one or both of the quantity of data center units and the unit-based listings in the database representing a number of data center units included in the set of data center units in response to at least one of (1) the request associated with the user identifier, or (2) the threshold condition being satisfied based on a change in performance of a set of virtual resources operating within the set of data center units;

wherein, via the processor's management of the virtual resource as a function of the derived values, one or more guaranteed levels of service that correspond to the one or more predefined hardware resource limit units are provided, and

the virtual resource information is configured to emulate one or more functions of a legacy source device being migrated to the virtual resources.

10. The apparatus of claim 9 , wherein the processor is configured to send a plurality of instructions related to modification of the value representing the number of data center units to a plurality of resource controllers, each resource controller from the plurality of resource controllers is configured to implement a predefined resource limit value from the set of predefined resource limit values.

11. The apparatus of claim 9 , wherein at least a portion of the data center units from the set of data centers units are configured to operate the set of virtual resources associated with user identifier at a guaranteed service level.

12. The apparatus of claim 9 , wherein the memory is further configured to store a user preference, the management module is configured to modify the value representing the number of data center units based on the user preference.

13. The apparatus of claim 9 , wherein the memory is further configured to store a user preference, the threshold condition being defined within the user preference.

14. The apparatus of claim 9 , wherein the processor is configured operate for a plurality of hypervisor platforms, the set of virtual resources being associated with a first hypervisor platform from the plurality of hypervisor platforms.

15. A non-transitory processor-readable medium storing code representing instructions to be executed by a processor to perform a method of managing virtual resources, the code comprising code to:

manage virtual resources within a data center environment using a database configured to keep track of and manage resources by processing the virtual resources using derived values that characterize the virtual resources as a function of unit-based information associated with one or more predefined hardware resource limit units, the database configured for processing the derived values and storing each derived value along with associated database fields for user identifier information, quantity of data center units assigned to each user, unit-based listings of data center units assigned to each user, virtual resource information regarding virtual resources associated with each user, and user preference information;

process information representing that a set of data center units is assigned to operate a set of virtual resources, each data center unit from the plurality of data center units associated with a set of hardware resources managed based on a set of predefined hardware resource limit values;

process an indicator representing that a utilization value of at least a portion of the set of virtual resources, when operating within the set of data center units, has satisfied a threshold condition;

determine, in response to the indicator, whether hardware resources of a data center unit mutually exclusive from hardware resources of the set of data center units and managed based on the set of the predefined hardware resource limit units are available for assignment to the user when the request to change is an increase request; and

modify a value of one or both of the quantity of data center units and the unit-based listings in the database representing a number of data center units included in the set of data center units in response to the indicator;

wherein, via management of the virtual resource as a function of the derived values, one or more guaranteed levels of service that correspond to the one or more predefined hardware resource limit units are provided, and

the virtual resource information is configured to emulate one or more functions of a legacy source device being migrated to the virtual resources.

16. The non-transitory processor-readable medium of claim 15 , wherein the threshold condition is satisfied when the utilization value is below a specified value for a specified period of time, the threshold condition is based on a user preference.

17. The non-transitory processor-readable medium of claim 15 , wherein a magnitude of the modification of the value representing the number of data center units is based on a magnitude of the utilization value relative to the threshold condition.

18. The non-transitory processor-readable medium of claim 15 , wherein the value representing the number of data center units represents a minimum number of data center units to operate the set of virtual resources at a guaranteed service level.

19. The non-transitory processor-readable medium of claim 15 , wherein the threshold condition is satisfied when a guaranteed service level is maintained.

20. The non-transitory processor-readable medium of claim 15 , further comprising code to:

receive authorization from a user to modify the value representing the number of data center units before modifying the value representing the number of data center units.

21. A method for managing virtual resources, the method comprising:

managing virtual resources within a data center environment using a database configured to keep track of and manage resources by processing the virtual resources using derived values that characterize the virtual resources as a function of unit-based information associated with one or more predefined hardware resource limit units, the database configured for processing the derived values and storing each derived value along with associated database fields for user identifier information, quantity of data center units assigned to each user, unit-based listings of data center units assigned to each user, virtual resource information regarding virtual resources associated with each user, and user preference information;

processing information representing that a set of data center units is assigned to operate a set of virtual resources, each data center unit from the plurality of data center units associated with a set of hardware resources managed based on a set of predefined hardware resource limit values;

processing an indicator representing that a utilization value of at least a portion of the set of virtual resources, when operating within the set of data center units, has satisfied a threshold condition;

determine, in response to the indicator, whether hardware resources of a data center unit mutually exclusive from hardware resources of the set of data center units and managed based on the set of the predefined hardware resource limit units are available for assignment to the user when the request to change is an increase request; and

modifying a value of one or both of the quantity of data center units and the unit-based listings in the database representing a number of data center units included in the set of data center units in response to the indicator;

wherein, via management of the virtual resource as a function of the derived values, one or more guaranteed levels of service that correspond to the one or more predefined hardware resource limit units are provided, and

the virtual resource information is configured to emulate one or more functions of a legacy source device being migrated to the virtual resources.

22. The method of claim 21 further comprising:

processing a value of a performance metric representing performance of a set of virtual resources associated with a user, wherein a threshold of the performance metric is specified in a user preference associated with the user; and

modifying a set of data center units assigned to operate the set of virtual resources in response to the value of the performance metric satisfying the threshold condition.

23. The method of claim 21 further comprising:

performing a routine for modifying a quantity of data center units in response to a request, the routine being configured to:

process a request for a change in a value representing a number of data center units included in a set of data center units assigned to a user;

determine if the request is an increase request or a decrease request;

if the request is an increase request:

determine availability of an additional data center unit;

deny the request if additional units are not available; and

assign one or more data center units to the user if additional units are available; and

perform processing, if the request is a decrease request, to include at least one relinquished data center unit in a pool of unassigned data center units.

24. The method of claim 23 wherein if the request is a decrease request, the routine is further configured to perform a reassignment process to reassign one or more of the data center units to another user.

25. The method of claim 21 further comprising:

performing a routine for modifying a quantity of data center units in response to a request, the routine being configured to:

process a request for a change in a value representing a number of data center units included in a set of data center units assigned to a user;

determine if the request is an increase request or a decrease request;

if the request is an increase request:

determine availability of an additional data center unit;

deny the request if additional units are not available; and

assign one or more data center units to the user if additional units are available; and

perform processing, if the request is a decrease request, to reassign one or more of the data center units to another user.

26. The method of claim 24 wherein hardware resources of a data center unit can be managed to provide a guaranteed level of processing speed and have a guaranteed portion of disk space available, while being managed such that the hardware resources may provide a specified bandwidth only in certain situations.

27. The method of claim 26 wherein hardware resources of one or more of the data center units can be managed so that they perform at 10 Mb/s or at more than 1 Mb/s, a disk I/O speed of 40 I/O operations/second or a disk I/O speed of more than 10 I/O operations/second, a disk bandwidth of 10 Mb/s, a disk bandwidth of more than 10 Mb/s, and/or the units can have a specified memory space of 30 gigabytes or a specified memory space of more than 1 gigabyte or a specified memory space of 768 megabytes.

Assignments (6)
MERGER Recorded Sep 16, 2025
From: VIRTUSTREAM IP HOLDING COMPANY LLC
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 072878/0578 →
RELEASE OF SECURITY INTEREST Recorded Dec 11, 2019
From: ORIX VENTURES, LLC
To: VIRTUSTREAM, INC.; VIRTUSTREAM DCS, LLC; VIRTUSTREAM LIMITED; VIRTUSTREAM UK LIMITED; NETWORK I LIMITED; VIRTUSTREAM CANADA HOLDINGS, INC.; VIRTUSTREAM SWITZERLAND SARL; VIRTUSTREAM GROUP HOLDINGS, INC.; VIRTUSTREAM SECURITY SOLUTIONS, LLC
Reel/Frame 051255/0178 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 10, 2016
From: VIRTUSTREAM, INC.
To: VIRTUSTREAM IP HOLDING COMPANY LLC
Reel/Frame 039694/0886 →
SECURITY INTEREST Recorded Aug 1, 2014
From: VIRTUSTREAM, INC.; VIRTUSTREAM DCS, LLC; VIRTUSTREAM LIMITED; VIRTUSTREAM UK LIMITED; NETWORK I LIMITED; VIRTUSTREAM CANADA HOLDINGS, INC.; VIRTUSTREAM SWITZERLAND SARL; VIRTUSTREAM GROUP HOLDINGS, INC.; VIRTUSTREAM SECURITY SOLUTIONS, LLC
To: ORIX VENTURES, LLC
Reel/Frame 033453/0702 →
SECURITY AGREEMENT Recorded Jun 13, 2011
From: VIRTUSTREAM, INC.
To: SILICON VALLEY BANK
Reel/Frame 026436/0423 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 26, 2010
From: BOX, JULIAN J.; REID, KEVIN D.; SIMPSON, KARL J.
To: VIRTUSTREAM, INC.
Reel/Frame 024000/0389 →
Continuity (1)
Related Publication 20110209147A1 · Aug 25, 2011