IP Library Granted Patent US 10,320,699
Granted Patent B1
US 10,320,699 · App. 14/919,789 · Granted Jun 11, 2019

Computer implemented system and method, and a computer program product, for allocating virtualized resources across an enterprise

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 10,320,699
App. No.
14/919,789
Granted
Jun 11, 2019
Kind
B1
Abstract

A computer implemented system and method, and a computer program product, for allocating virtualized information technology resources across an enterprise. For example, a method may include accessing hierarchical enterprise information, which is information identifying a plurality of hierarchically arranged organizational units of the enterprise. The method accesses virtualized resource information, which is information identifying virtualized resource available to the enterprise. The method also accesses virtualized resource allocation information, which is information identifying one or more of the plurality of hierarchically arranged organizational units and information identifying one or more virtualized resources allocated to each of the identified one or more of the plurality of hierarchically arranged organizational units. The method may receive a virtualized resources request from one of the plurality of hierarchically arranged organizational units, which identifies one or more virtualized resources requested by the one of the plurality of hierarchically arranged organizational units. Responsive to receiving the virtualized resources request, the method determines whether provisioning each of the virtualized resources identified in the virtualized resources request does not exceed the virtualized resources allocated to the one of the plurality of hierarchically arranged organizational units from which the virtualized resource request was received. If not, the method causes the provisioning each of the virtualized resources identified in the virtualized resources request to the one of the plurality of hierarchically arranged organizational units from which the virtualized resource request was received.

Claims (76)

1. A computer implemented method for allocating virtualized resources to a hierarchical enterprise, the method comprising:

accessing hierarchical enterprise information, wherein the hierarchical enterprise information is comprised of information identifying a plurality of hierarchically arranged organizational units of the enterprise;

accessing virtualized resource information, wherein the virtualized resource information is comprised of information identifying virtualized resources available to the enterprise;

accessing virtualized resource allocation information, wherein the virtualized resource allocation information is comprised of information identifying one or more of the plurality of hierarchically arranged organizational units and information identifying one or more virtualized resources allocated to each of the identified one or more of the plurality of hierarchically arranged organizational units;

receiving a virtualized resources request from one of the plurality of hierarchically arranged organizational units, wherein the computing resources request is comprised of information identifying a respective amount of one or more virtualized resources requested by the one of the plurality of hierarchically arranged organizational units;

responsive to receiving the virtualized resources request, determining whether provisioning the respective amount of each of the virtualized resources identified in the virtualized resources request exceeds the virtualized resources allocated to the one of the plurality of hierarchically arranged organizational units from which the virtualized resource request was received; and

upon determining that provisioning the respective amount of each of the virtualized resources identified in the virtualized resources request does not exceed the virtualized resources allocated to the one of the plurality of hierarchically arranged organizational units, provisioning the respective amount of each of the virtualized resources identified in the virtualized resources request to the one of the plurality of hierarchically arranged organizational units from which the virtualized resource request was received.

2. The method of claim 1 , wherein the virtualized resource information is comprised of virtualized resource pool information,

wherein the virtualized resource pool information is comprised of information identifying one or more pools of virtualized resources, and

wherein the virtualized resource allocation information is comprised of information identifying one or more virtualized resource pools allocated to each of the identified one or more of the plurality of hierarchically arranged organizational units,

the method further comprising:

responsive to receiving the virtualized resources request, determining whether provisioning the respective amount of each of the virtualized resources identified in the virtualized resources request exceeds the virtualized resources comprising the pool of virtualized resources allocated to the one of the plurality of hierarchically arranged organizational units from which the virtualized resources request was received; and

upon determining that provisioning the respective amount of each of the virtualized resources identified in the virtualized resources request does not exceed the virtualized resources comprising the pool of virtualized resources allocated to the one of the plurality of hierarchically arranged organizational units, provisioning the respective amount of each of the pool of virtualized computer resources identified in the virtualized resources request to the one of the plurality of hierarchically arranged organizational units from which the virtualized resources request was received.

3. The method of claim 1 , further comprising:

authenticating the one of the plurality of hierarchically arranged organizational units via a directory service.

4. The method of claim 1 , wherein the hierarchical enterprise information is further comprised of information identifying a plurality of allocable organizational units,

wherein an allocable organizational unit is a unit at the highest level of the hierarchical enterprise to which virtualized resources are allocated and information associating each of the plurality of hierarchically arranged organizational units with one of the plurality of allocable organizational units; and

wherein the virtualized resource allocation information is comprised of information identifying each of the plurality of allocable organizational units and information identifying one or more virtualized resources allocated to each of the plurality of allocable organizational units,

the method further comprising:

receiving a virtualized resources request from one of the plurality of hierarchically arranged organizational units, wherein the computing resources request is comprised of information identifying the respective amount of one or more virtualized resources requested by the one of the plurality of hierarchically arranged organizational units;

responsive to receiving the virtualized resources request, determining whether provisioning the respective amount of each of the virtualized resources identified in the virtualized resources request exceeds the virtualized resources allocated to the allocable organizational unit associated with the one of the plurality of hierarchically arranged organizational units from which the resources request was received; and

upon determining that provisioning the respective amount of each of the virtualized resources identified in the virtualized resources request does not exceed the virtualized resources allocated to the allocable organizational unit associated with the one of the plurality of hierarchically arranged organizational units, provisioning the respective amount of each of the virtualized computer resources identified in the virtualized resources request to the one of the plurality of hierarchically arranged organizational units from which the virtualized resources request was received.

5. The method of claim 1 , wherein the step of determining whether provisioning the respective amount of each of the virtualized resources identified in the virtualized resources request exceeds the virtualized resources allocated to the one of the plurality of hierarchically arranged organizational units from which the virtualized resource request was received is performed by a workflow orchestration engine.

6. The method of claim 1 , wherein the virtualized resources are implemented via a converged infrastructure, a hyper converged infrastructure or a software container infrastructure.

7. The method of claim 1 , wherein the virtualized resources comprise CPU resources.

8. The method of claim 1 , wherein the respective amount of one or more virtualized resources includes a respective percentage of a respective total amount of each of the one or more virtualized resources.

9. A computer implemented system for allocating virtualized resources to a hierarchical enterprise, the system comprising:

at least one processor; and

at least one memory storing computer program code, wherein the at least one memory and stored computer program code are configured, with the at least one processor, to cause the system to at least:

access hierarchical enterprise information, wherein the hierarchical enterprise information is comprised of information identifying a plurality of hierarchically arranged organizational units of the enterprise;

access virtualized resource information, wherein the virtualized resource information is comprised of information identifying virtualized resources available to the enterprise;

access virtualized resource allocation information, wherein the virtualized resource allocation information is comprised of information identifying one or more of the plurality of hierarchically arranged organizational units and information identifying one or more virtualized resources allocated to each of the identified one or more of the plurality of hierarchically arranged organizational units;

receive a virtualized resources request from one of the plurality of hierarchically arranged organizational units, wherein the computing resources request is comprised of information identifying a respective amount of one or more virtualized resources requested by the one of the plurality of hierarchically arranged organizational units;

responsive to receiving the virtualized resources request, determine whether provisioning the respective amount of each of the virtualized resources identified in the virtualized resources request exceeds the virtualized resources allocated to the one of the plurality of hierarchically arranged organizational units from which the virtualized resource request was received; and

upon determining that provisioning the respective amount of each of the virtualized resources identified in the virtualized resources request does not exceed the virtualized resources allocated to the one of the plurality of hierarchically arranged organizational units, provision the respective amount of each of the virtualized resources identified in the virtualized resources request to the one of the plurality of hierarchically arranged organizational units from which the virtualized resource request was received.

10. The system of claim 9 , wherein the virtualized resource information is comprised of virtualized resource pool information,

wherein the virtualized resource pool information is comprised of information identifying one or more pools of virtualized resources, and

wherein the virtualized resource allocation information is comprised of information identifying one or more virtualized resource pools allocated to each of the identified one or more of the plurality of hierarchically arranged organizational units,

wherein the at least one memory and stored computer program code are configured, with the at least one processor, to further cause the system to:

responsive to receiving the virtualized resources request, determine whether provisioning the respective amount of each of the virtualized resources identified in the virtualized resources request exceeds the virtualized resources comprising the pool of virtualized resources allocated to the one of the plurality of hierarchically arranged organizational units from which the virtualized resources request was received; and

upon determining that provisioning the respective amount of each of the virtualized resources identified in the virtualized resources request does not exceed the virtualized resources comprising the pool of virtualized resources allocated to the one of the plurality of hierarchically arranged organizational units, provision the respective amount of each of the pool of virtualized computer resources identified in the virtualized resources request to the one of the plurality of hierarchically arranged organizational units from which the virtualized resources request was received.

11. The system of claim 9 , wherein the at least one memory and stored computer program code are configured, with the at least one processor, to further cause the system to:

authenticate the one of the plurality of hierarchically arranged organizational units via a directory service.

12. The system of claim 9 , wherein the hierarchical enterprise information is further comprised of information identifying a plurality of allocable organizational units,

wherein an allocable organizational unit is a unit at the highest level of the hierarchical enterprise to which virtualized resources are allocated and information associating each of the plurality of hierarchically arranged organizational units with one of the plurality of allocable organizational units, and

wherein the virtualized resource allocation information is comprised of information identifying each of the plurality of allocable organizational units and information identifying one or more virtualized resources allocated to each of the plurality of allocable organizational units,

wherein the at least one memory and stored computer program code are configured, with the at least one processor, to further cause the system to:

receive a virtualized resources request from one of the plurality of hierarchically arranged organizational units, wherein the computing resources request is comprised of information identifying the respective amount of one or more virtualized resources requested by the one of the plurality of hierarchically arranged organizational units;

responsive to receiving the virtualized resources request, determine whether provisioning the respective amount of each of the virtualized resources identified in the virtualized resources request exceeds the virtualized resources allocated to the allocable organizational unit associated with the one of the plurality of hierarchically arranged organizational units from which the resources request was received; and

upon determining that provisioning the respective amount of each of the virtualized resources identified in the virtualized resources request does not exceed the virtualized resources allocated to the allocable organizational unit associated with the one of the plurality of hierarchically arranged organizational units, provision the respective amount of each of the virtualized computer resources identified in the virtualized resources request to the one of the plurality of hierarchically arranged organizational units from which the virtualized resources request was received.

13. The system of claim 9 , wherein a workflow orchestration engine determines whether provisioning the respective amount of each of the virtualized resources identified in the virtualized resources request exceeds the virtualized resources allocated to the one of the plurality of hierarchically arranged organizational units from which the virtualized resource request was received.

14. The system of claim 9 , wherein the virtualized resources are implemented via a converged infrastructure, a hyper converged infrastructure or a software container infrastructure.

15. A computer program product for allocating virtualized resources to a hierarchical enterprise, the computer program product comprising at least one non-transitory computer-readable storage medium having program instructions stored thereon, which when executed by at least one processor, cause the at least one processor to perform a method comprising:

accessing hierarchical enterprise information, wherein the hierarchical enterprise information is comprised of information identifying a plurality of hierarchically arranged organizational units of the enterprise;

accessing virtualized resource information, wherein the virtualized resource information is comprised of information identifying virtualized resources available to the enterprise;

accessing virtualized resource allocation information, wherein the virtualized resource allocation information is comprised of information identifying one or more of the plurality of hierarchically arranged organizational units and information identifying one or more virtualized resources allocated to each of the identified one or more of the plurality of hierarchically arranged organizational units;

receiving a virtualized resources request from one of the plurality of hierarchically arranged organizational units, wherein the computing resources request is comprised of information identifying a respective amount of one or more virtualized resources requested by the one of the plurality of hierarchically arranged organizational units;

responsive to receiving the virtualized resources request, determining whether provisioning the respective amount of each of the virtualized resources identified in the virtualized resources request exceeds the virtualized resources allocated to the one of the plurality of hierarchically arranged organizational units from which the virtualized resource request was received; and

upon determining that provisioning the respective amount of each of the virtualized resources identified in the virtualized resources request does not exceed the virtualized resources allocated to the one of the plurality of hierarchically arranged organizational units, provisioning the respective amount of each of the virtualized resources identified in the virtualized resources request to the one of the plurality of hierarchically arranged organizational units from which the virtualized resource request was received.

16. The computer program product of claim 15 , wherein the virtualized resource information is comprised of virtualized resource pool information,

wherein the virtualized resource pool information is comprised of information identifying one or more pools of virtualized resources, and

wherein the virtualized resource allocation information is comprised of information identifying one or more virtualized resource pools allocated to each of the identified one or more of the plurality of hierarchically arranged organizational units,

wherein the least one non-transitory computer-readable storage medium having program instructions stored thereon, which when executed by the at least one processor, cause the at least one processor to perform a method further comprising:

responsive to receiving the virtualized resources request, determining whether provisioning the respective amount of each of the virtualized resources identified in the virtualized resources request exceeds the virtualized resources comprising the pool of virtualized resources allocated to the one of the plurality of hierarchically arranged organizational units from which the virtualized resources request was received; and

upon determining that provisioning the respective amount of each of the virtualized resources identified in the virtualized resources request does not exceed the virtualized resources comprising the pool of virtualized resources allocated to the one of the plurality of hierarchically arranged organizational units, provisioning the respective amount of each of the pool of virtualized computer resources identified in the virtualized resources request to the one of the plurality of hierarchically arranged organizational units from which the virtualized resources request was received.

17. The computer program product of claim 15 , wherein the least one non-transitory computer-readable storage medium having program instructions stored thereon, which when executed by the at least one processor, cause the at least one processor to perform a method further comprising:

authenticating the one of the plurality of hierarchically arranged organizational units via a directory service.

18. The computer program product of claim 15 , wherein the hierarchical enterprise information is further comprised of information identifying a plurality of allocable organizational units,

wherein an allocable organizational unit is a unit at the highest level of the hierarchical enterprise to which virtualized resources are allocated and information associating each of the plurality of hierarchically arranged organizational units with one of the plurality of allocable organizational units, and

wherein the virtualized resource allocation information is comprised of information identifying each of the plurality of allocable organizational units and information identifying one or more virtualized resources allocated to each of the plurality of allocable organizational units,

wherein the least one non-transitory computer-readable storage medium having program instructions stored thereon, which when executed by the at least one processor, cause the at least one processor to perform a method further comprising:

receiving a virtualized resources request from one of the plurality of hierarchically arranged organizational units, wherein the computing resources request is comprised of information identifying the respective amount of one or more virtualized resources requested by the one of the plurality of hierarchically arranged organizational units;

responsive to receiving the virtualized resources request, determining whether provisioning the respective amount of each of the virtualized resources identified in the virtualized resources request exceeds the virtualized resources allocated to the allocable organizational unit associated with the one of the plurality of hierarchically arranged organizational units from which the resources request was received; and

upon determining that provisioning the respective amount of each of the virtualized resources identified in the virtualized resources request does not exceed the virtualized resources allocated to the allocable organizational unit associated with the one of the plurality of hierarchically arranged organizational units, provisioning the respective amount of each of the virtualized computer resources identified in the virtualized resources request to the one of the plurality of hierarchically arranged organizational units from which the virtualized resources request was received.

19. The computer program product of claim 15 , wherein determining whether provisioning the respective amount of each of the virtualized resources identified in the virtualized resources request exceeds the virtualized resources allocated to the one of the plurality of hierarchically arranged organizational units from which the virtualized resource request was received is performed by a workflow orchestration engine.

20. The computer program product of claim 15 , wherein the virtualized resources are implemented via a converged infrastructure, a hyper converged infrastructure or a software container infrastructure.

Assignments (5)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053546/0001) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC IP HOLDING COMPANY LLC
Reel/Frame 071642/0001 →
MERGER Recorded Mar 25, 2020
From: VCE IP HOLDING COMPANY LLC
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 052224/0314 →
SECURITY AGREEMENT Recorded Mar 21, 2019
From: CREDANT TECHNOLOGIES, INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 049452/0223 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 8, 2016
From: VCE COMPANY, LLC
To: VCE IP HOLDING COMPANY LLC
Reel/Frame 040576/0161 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 26, 2016
From: SANDHAM, ADRIAN J.
To: VCE COMPANY, LLC
Reel/Frame 039857/0068 →