IP Library Granted Patent US 9,971,584
Granted Patent B2
US 9,971,584 · App. 13/597,125 · Granted May 15, 2018

Packaged application delivery for converged infrastructure

Inventors: Hariharan Kannan (San Jose, CA); Faisal Choudry (London, GB); Mohit Kshirsagar (Santa Clara, CA); Rahul Talekar (San Jose, CA)
Assignee: VCE IP Holding Company LLC
G06F8/61G06F9/5066G06F9/45533
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,971,584
App. No.
13/597,125
Granted
May 15, 2018
Kind
B2
Abstract

A method and apparatus for deploying an application in a converged infrastructure is described. The application may be deployed according a model that specifies deployment of the application on resources allocated from the converged infrastructure. The model may be used to scale and adjust the deployment of the application according to pre-determined best practices and according to deployment-specific parameters provided by a system administrator.

Claims (40)

1. A method for deploying applications in computing environments, the method comprising:

receiving, using instructions stored on a non-transitory medium and executed on at least one processor, an application package including a plurality of functional components of an application;

allocating, using the instructions executed on at least one processor, a plurality of virtual resources from a virtualized computing environment according to a model that specifies use of the virtual resources by the plurality of functional components included in the application; and

deploying, using the instructions executed on at least one processor, one or more instances of the plurality of functional components on the allocated virtual resources, based on a deployment parameter, wherein the model comprises a function that determines a number of the instances to be deployed based upon a number of expected users, and wherein the deployment parameter comprises an expected user number parameter of the function, wherein the function is of a form X=N+1, wherein X is a value quantifying a number of the instances deployed, and wherein N is a function of the expected user number divided by an integer greater than 1.

2. The method of claim 1 , wherein the function relates the use of the virtual resources to the number of instances of each of the plurality of functional components.

3. The method of claim 1 , wherein allocating the plurality of virtual resources from the computing environment comprises:

receiving a deployment parameter for the model for use of the virtual resources by the plurality of functional components,

determining, based on the model specifying the plurality of the virtual resources as a function of the received deployment parameter, the plurality of virtual resources to be allocated from the computing environment based on the model.

4. The method of claim 1 , further comprising:

modifying at least one of the instances of the plurality of functional components of the application based on the model, wherein the model further specifies a plurality of configuration settings for the instances of the functional components and the allocated virtual resources.

5. The method of claim 1 , further comprising:

determining an amount of virtual resources and physical resources from the computing platform that are available for execution of instances of the functional components of the application.

6. The method of claim 1 , wherein the application package comprises one or more virtual machine instances, each virtual machine instance having at least one software component and a guest operating system.

7. A computing system for deploying an application in a computing environment, comprising:

a storage device configured to store one or more application packages including a plurality of functional components of an application, and

a management server to:

allocate a plurality of virtual resources from a virtualized computing environment according to a model that specifies use of the virtual resources by the plurality of functional components included in the application; and

deploy one or more instances of the plurality of functional components on the allocated virtual resources, based on a deployment parameter, wherein the model comprises a function that determines a number of the instances to be deployed based upon a number of expected users, wherein the deployment parameter comprises an expected user number parameter of the function, the function is of a form X=N+1, wherein X is a value quantifying a number of the instances deployed, and wherein N is a function of the expected user number divided by an integer greater than 1.

8. The computer system of claim 7 , wherein the function relates the use of the virtual resources to the number of instances of each of the plurality of functional components.

9. The computer system of claim 7 , wherein to allocate the plurality of virtual resources from the computing environment further comprises:

receiving a deployment parameter for the model for use of the virtual resources by the plurality of functional components; and

determining, based on the model specifying the plurality of the virtual resources as a function of the received deployment parameter, the plurality of virtual resources to be allocated from the computing environment based on the model.

10. The computer system of claim 7 , wherein the management server further:

modifies at least one of the instances of the plurality of functional components of the application based on the model, wherein the model further specifies a plurality of configuration settings for the instances of the functional components and the allocated virtual resources.

11. The computer system of claim 7 , wherein the management server further:

determines an amount of virtual resources and physical resources from the computing platform that are available for execution of instances of the functional components of the application.

12. The computer system of claim 7 , wherein the application package comprises one or more virtual machine instances, each virtual machine instance having at least one software component and a guest operating system.

13. A non-transitory computer-readable storage medium comprising instructions that, when executed in a computing device, deploy an application in a computing environment, by performing the steps of:

receiving an application package including a plurality of functional components of an application;

allocating a plurality of virtual resources from a virtualized computing environment according to a model that specifies use of the virtual resources by the plurality of functional components included in the application; and

deploying one or more instances of the plurality of functional components on the allocated virtual resources, based on a deployment parameter, wherein the model comprises a function that determines a number of the instances to be deployed based upon a number of expected users, and wherein the deployment parameter comprises an expected user number parameter of the function, the function is of a form X=N+1, wherein X is a value quantifying a number of the instances deployed, and wherein N is a function of the expected user number divided by an integer greater than 1.

14. The non-transitory computer-readable storage medium of claim 13 , wherein the function relates the use of the virtual resources to the number of instances of each of the plurality of functional components.

15. The non-transitory computer-readable storage medium of claim 13 , wherein the instructions for allocating the plurality of virtual resources from the computing environment further comprises instructions for:

receiving a deployment parameter for the model for use of the virtual resources by the plurality of functional components,

determining, based on the model specifying the plurality of the virtual resources as a function of the received deployment parameter, the plurality of virtual resources to be allocated from the computing environment based on the model.

16. The non-transitory computer-readable storage medium of claim 13 , further comprising instructions for modifying at least one of the instances of the plurality of functional components of the application based on the model, wherein the model further specifies a plurality of configuration settings for the instances of the functional components and the allocated virtual resources.

17. The non-transitory computer-readable storage medium of claim 13 , further comprising instructions for determining an amount of virtual resources and physical resources from the computing environment that are available for execution of instances of the functional components of the application.

18. The non-transitory computer-readable storage medium of claim 13 , wherein the application package comprises one or more virtual machine instances, each virtual machine instance having at least one software component and a guest operating system.

19. The method of claim 1 , wherein the function is of a form X=N+1, wherein X is a value quantifying a number of the instances deployed, and wherein N is the is the function of the expected user number/500.

20. The non-transitory computer-readable storage medium of claim 13 , wherein the function is of a form X=N+1, wherein X is a value quantifying a number of the instances deployed, and wherein N is the function of the expected user number/500.

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 →
SECURITY AGREEMENT Recorded Apr 22, 2020
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 053546/0001 →
MERGER Recorded Apr 14, 2020
From: VCE IP HOLDING COMPANY LLC
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 052398/0413 →
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 Nov 9, 2012
From: KANNAN, HARIHARAN; CHOUDRY, FAISAL; KSHIRSAGAR, MOHIT; TALEKAR, RAHUL
To: VCE COMPANY LLC
Reel/Frame 029270/0307 →
Continuity (1)
Related Publication 20140068599A1 · Mar 6, 2014