IP Library › Granted Patent US 10,387,209
Granted Patent B2
US 10,387,209 · App. 14/867,217 · Granted Aug 20, 2019

Dynamic transparent provisioning of resources for application specific resources

Inventors: John A. Bivens (Ossining, NY); Michele M. Franceschini (White Plains, NY); Ashish Jagmohan (Irvington, NY); Valentina Salapura (Chappaqua, NY)
Assignee: International Business Machines Corporation
G06F9/5077G06F9/45558G06F9/5072G06F2009/4557G06F2009/45595
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,387,209
App. No.
14/867,217
Granted
Aug 20, 2019
Kind
B2
Abstract

A system and method dynamically provisions resources in a virtual environment. A current resource requirement is determined based on a current workload demand using one or more computer systems providing resources and access to the resources. The method and system includes comparing the current resource requirement with a current resource allocation using an engine communicating with resources. The engine is configured to allocate the resources, and the engine determines the resource requirement responsive to communications with a plurality of library instances. The library exposes a single-node interface for use by a user-application. The current resource allocation is modified based on the comparison of the current resource requirement with the current resource allocation, and in response to the current resource requirement, using the engine.

Claims (38)

1. A computer implemented method for dynamically provisioning resources in a virtual environment, comprising:

determining a current resource requirement using an engine based on a current workload demand, the current workload demand using one or more computer systems providing resources and access to the resources;

determining a new resource requirement using the engine and in response to communications with a library, the communications including a plurality of library instances of accessing the library, wherein the plurality of library instances access the resources using the engine, the library exposing a single-node interface for use by a user-application for accessing the library, each accessing of the library including accessing the resources using the engine, the single-node interface communicating with the engine, the engine and the library being remote from the user-application, and the engine and the library being available to a plurality of users via the single-node interface;

comparing the new resource requirement with a current resource allocation of the current resource requirement using the engine communicating with the resources, the engine being configured to allocate the resources;

modifying, using the engine, the current resource allocation based on the comparison of the current resource allocation with the new resource requirement to dynamically provision a new resource allocation in response to the user-application accessing the library, the user-application accessing the library in response to the single-node interface receiving a request for resources initiated by a user; and

dynamically providing the new resource allocation by the engine based on the request for resources, wherein the current workload demand includes a number of users requiring the resources, and wherein the library and the engine are in a dynamic transport provisioning layer of a cloud based environment.

2. The method of claim 1 , wherein the current resource requirement and the new resource requirement each include an amount of resources, respectively.

3. The method of claim 1 , wherein the current resource requirement includes an amount of virtual machines (VMs).

4. The method of claim 1 , wherein the engine provides specified hardware to modify the current resource allocation.

5. The method of claim 4 , wherein the specified hardware includes hardware accelerators.

6. The method of claim 1 , wherein the virtual environment is the cloud based environment.

7. The method of claim 1 , wherein a resource is for processing video data which includes video streaming, initiated by the user-application in response to the request for resources by the user.

8. A computer program product for delegating authority on an online account, the computer program product comprising a computer readable storage medium having program instructions embodied therewith, wherein the computer readable storage medium is not a transitory signal per se, the program instructions executable by a computer having a processor to cause the computer to perform a method, comprising:

determining a current resource requirement using an engine based on a current workload demand, the current workload demand using one or more computer systems including the computer and the processor for executing the program instruction, the one or more computer systems providing resources and access to the resources;

determining a new resource requirement using the engine and in response to communications with a library, the communications including a plurality of library instances of accessing the library, wherein the plurality of library instances access the resources using the engine, the library exposing a single-node interface for use by a user-application for accessing the library, each accessing of the library including accessing the resources using the engine, the single-node interface communicating with the engine, the engine and the library being remote from the user-application, and the engine and the library being available to a plurality of users via the single-node interface;

comparing the new current resource requirement with a current resource allocation of the current resource requirement using the engine communicating with the resources, the engine being configured to allocate the resources;

modifying, using the engine, the current resource allocation based on the comparison of the current resource allocation with the new resource requirement to dynamically provision a new resource allocation in response to the user-application accessing the library, the user-application accessing the library in response to the single-node interface receiving a request for resources initiated by a user; and

dynamically providing the new resource allocation by the engine based on the request for resources, wherein the current workload demand includes a number of users requiring the resources, and wherein the library and the engine are in a dynamic transport provisioning layer of a cloud based environment.

9. The product of claim 8 , wherein the current resource requirement and the new resource requirement each include an amount of resources, respectively.

10. The product of claim 8 , wherein the current resource requirement includes an amount of virtual machines (VMs).

11. The product of claim 8 , wherein the engine provides specified hardware to modify the current resource allocation.

12. The product of claim 11 , wherein the specified hardware includes hardware accelerators.

13. The product of claim 8 , wherein the virtual environment is the cloud based environment.

14. A computer system for delegating authority on an online account, the computer system comprising:

one or more computer processors, one or more computer-readable storage media, and program instructions stored on one or more of the computer-readable storage media for execution by at least one of the one or more processors, the program instructions, comprising:

determining a current resource requirement using an engine based on a current workload demand, the current workload demand using one or more computer systems providing resources and access to the resources;

determining a new resource requirement using the engine and in response to communications with a library, the communications including a plurality of library instances of accessing the library, wherein the plurality of library instances access the resources using the engine, the library exposing a single-node interface for use by a user-application for accessing the library, each accessing of the library including accessing the resources using the engine, the single-node interface communicating with the engine, the engine and the library being remote from the user application, and the engine and the library being available to a plurality of users via the single-node interface;

comparing the new resource requirement with a current resource allocation of the current resource requirement using the engine communicating with the resources, the engine being configured to allocate the resources;

modifying, using the engine, the current resource allocation based on the comparison of the current resource allocation with the new resource requirement to dynamically provision a new resource allocation in response to the user-application accessing the library, the user-application accessing the library in response to the single-node interface receiving a request for resources initiated by a user; and

dynamically providing the new resource allocation by the engine based on the request for resources, wherein the current workload demand includes a number of users requiring the resources, and wherein the library and the engine are in a dynamic transport provisioning layer of a cloud based environment.

15. The computer system of claim 14 , wherein the current resource requirement and the new resource requirement each include an amount of resources, respectively.

16. The computer system of claim 14 , wherein the current resource requirement includes an amount of virtual machines (VMs).

17. A computer implemented method for dynamically provisioning resources in a virtual environment, comprising:

determining a current resource requirement using an engine based on a current workload demand, the current workload demand using one or more computer systems providing resources and access to the resources;

determining a new resource requirement using the engine and in response to communications with a library, the communications including a plurality of library instances of accessing the library, wherein the plurality of library instances access the resources using the engine, the library exposing a single-node interface for use by a user-application for accessing the library, each accessing of the library including accessing the resources using the engine, the single-node interface communicating with the engine, the engine and the library being remote from the user-application, and the engine and the library being available to a plurality of users via the single-node interface;

comparing the new resource requirement with a current resource allocation of the current resource requirement using the engine communicating with the resources, the engine being configured to allocate the resources;

modifying, using the engine, the current resource allocation based on the comparison of the current resource allocation with the new resource requirement to dynamically provision a new resource allocation in response to the user-application accessing the library, the user- application accessing the library in response to the single-node interface receiving a request for resources initiated by a user; and

dynamically providing the new resource allocation by the engine based on the request for resources, wherein the library and the engine are in a dynamic transport provisioning layer of a cloud based environment, and wherein a resource is for processing video data which includes video streaming, initiated by the user-application in response to the request for resources by the user.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 28, 2015
From: BIVENS, JOHN A.; FRANCESCHINI, MICHELE M.; JAGMOHAN, ASHISH; SALAPURA, VALENTINA
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 036667/0839 →
Continuity (1)
Related Publication 20170090992A1 · Mar 30, 2017