IP Library Granted Patent US 11,714,621
Granted Patent B2
US 11,714,621 · App. 17/146,229 · Granted Aug 1, 2023

Application blueprints based on service templates to deploy applications in different cloud environments

Inventors: Agila Govindaraju (Bangalore, IN); Kiran Singh (Bangalore, IN); Ashish Kumar Jain (Bangalore, IN)
Assignee: VMware, Inc.
G06F8/60G06F8/20G06F9/50G06F9/5072
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 11,714,621
App. No.
17/146,229
Granted
Aug 1, 2023
Kind
B2
Abstract

An example apparatus includes means for generating an application blueprint during a design phase, the application blueprint to bind a service template to a node of an application to be deployed in a cloud environment, the service template to be mapped to a plurality of services that are selectable during a runtime phase; and means for generating a deployment profile during the runtime phase, the deployment profile generating means to: select a first service and a second service from the plurality of services mapped to the service template when the application is to be deployed in the cloud environment, the first service different from the second service; generate a first deployment profile to deploy a first instance of the application based on the first service; and generate a second deployment profile to deploy a second instance of the application based on the second service.

Claims (47)

1. An apparatus comprising:

means for generating an application blueprint during a design phase, the application blueprint to bind a service template to a node of an application to be deployed in a cloud environment, the service template to be mapped to a plurality of services that are selectable during a runtime phase; and

means for generating a deployment profile during the runtime phase, the deployment profile generating means to:

select a first service and a second service from the plurality of services mapped to the service template when the application is to be deployed in the cloud environment, the first service different from the second service;

generate a first deployment profile to deploy a first instance of the application based on the first service; and

generate a second deployment profile to deploy a second instance of the application based on the second service.

2. The apparatus as defined in claim 1 , wherein the first and second services are mapped to the service template before the design phase, the mapping of the first and second services to the service template before the design phase being indicative of the first and second services being selectable during the runtime phase for binding to the node associated with the service template.

3. The apparatus as defined in claim 1 , further including means for deploying the application, the deploying means to send configuration properties defined in the service template to a virtual machine, the configuration properties including dependency properties to configure inter-node dependencies between the node and other nodes of the application blueprint.

4. The apparatus as defined in claim 3 , wherein the deploying means is to deploy the first and second instances of the application in the cloud environment based on configuring the virtual machine to host the first and second instances of the application using the configuration properties associated with the service template.

5. The apparatus as defined in claim 1 , further including means for storing the application blueprint during the design phase.

6. The apparatus as defined in claim 1 , wherein the service template includes dependency properties defining inter-node dependencies between the node and other nodes.

7. The apparatus as defined in claim 1 , wherein the service template includes values of properties, the values of the properties to be the same for the plurality of the services that are selectable during the runtime phase to implement the node in the cloud environment.

8. An apparatus comprising:

means for generating first and second deployment profiles during a runtime phase, the means for generating to:

select a first service and a second service from a plurality of services mapped to a service template, the service template bound to a node by an application blueprint generated during a design phase, the first service different from the second service;

generate the first deployment profile based on the application blueprint, the first deployment profile to deploy a first instance of an application on the node to implement the first service in a first environment, the first deployment profile specifying the first service; and

generate the second deployment profile based on the application blueprint to deploy a second instance of the application on the node to implement the second service in a second environment, the second deployment profile specifying the second service; and

means for storing the first and second deployment profiles.

9. The apparatus as defined in claim 8 , wherein the first service is mapped to the service template before the design phase, the mapping of the first service to the service template before the design phase being indicative of the first service being selectable during the runtime phase to bind to the node associated with the service template.

10. The apparatus as defined in claim 8 , wherein the means for generating is to associate configuration properties with the first deployment profile, the configuration properties including dependency properties to configure inter-node dependencies between the node and other nodes corresponding to the application blueprint.

11. The apparatus as defined in claim 8 , further including means for deploying the first instance of the application in the first environment by configuring at least one virtual machine to host the first instance of the application using configuration properties associated with the service template.

12. The apparatus as defined in claim 8 , wherein the service template is preconfigured before the design phase to include dependency properties, the dependency properties to define inter-node dependencies between the node and other nodes.

13. The apparatus as defined in claim 8 , wherein the service template is preconfigured before the design phase to include values of properties, the values of the properties to be the same for the plurality of the services that are selectable during the runtime phase to implement the node in the first environment or the second environment.

14. An apparatus to configure an application blueprint, the apparatus comprising:

means for generating the application blueprint during a design phase, the application blueprint generating means to:

bind a service template to a node of the application blueprint, the application blueprint corresponding to an application to be deployed, the service template mapped to a plurality of services, ones of the services from the plurality of services selectable during a runtime phase to implement the node; and

store the application blueprint, the application blueprint accessible during the runtime phase to generate a first deployment profile and a second deployment profile, the first deployment profile to deploy a first instance of the application based on a first service selected from the service template to implement the node, and the second deployment profile to deploy a second instance of the application based on a second service, different from the first service, the second service selected from the service template to implement the node; and

means for storing the application blueprint.

15. The apparatus as defined in claim 14 , wherein the service template is generated before the design phase, and the application blueprint generating means is to retrieve the service template during the design phase from a repository.

16. The apparatus as defined in claim 14 , wherein the first service is a load balancer service, and the second service is at least one of an application server service or a database service.

17. The apparatus as defined in claim 14 , wherein the service template includes dependency properties defining inter-node dependencies between the node and other nodes.

18. The apparatus as defined in claim 14 , wherein the service template includes values of properties, the values of the properties to be the same for the plurality of the services during the runtime phase.

19. The apparatus as defined in claim 14 , wherein the application blueprint generating means is to:

identify the plurality of the services based on user input;

configure configuration properties of the plurality of services; and

map the plurality of services and the configuration properties to the service template.

20. The apparatus as defined in claim 14 , wherein the first instance of the application is to be deployed in a first deployment environment, and the second instance of the application is to be deployed in a second deployment environment.

21. A non-transitory computer readable storage medium comprising instructions that, when executed, cause one or more processors to at least:

generate an application blueprint during a design phase, the application blueprint to bind a service template to a node of an application to be deployed in a cloud environment, the service template to be mapped to a plurality of services that are selectable during a runtime phase; and

generate a deployment profile during the runtime phase by:

selecting a first service and a second service from the plurality of services mapped to the service template when the application is to be deployed in the cloud environment, the first service different from the second service;

generating a first deployment profile to deploy a first instance of the application based on the first service; and

generating a second deployment profile to deploy a second instance of the application based on the second service.

22. The non-transitory computer readable storage medium as defined in claim 21 , wherein the first and second services are mapped to the service template before the design phase, the mapping of the first and second services to the service template before the design phase being indicative of the first and second services being selectable during the runtime phase for binding to the node associated with the service template.

23. The non-transitory computer readable storage medium as defined in claim 21 , wherein the instructions are to cause the one or more processors to send configuration properties defined in the service template to a virtual machine, the configuration properties including dependency properties to configure inter-node dependencies between the node and other nodes of the application blueprint.

24. The non-transitory computer readable storage medium as defined in claim 23 , wherein the instructions are to cause the one or more processors to deploy the first and second instances of the application in the cloud environment based on configuring the virtual machine to host the first and second instances of the application using the configuration properties associated with the service template.

25. The non-transitory computer readable storage medium as defined in claim 21 , wherein the instructions are to cause the one or more processors to store the application blueprint during the design phase.

Assignments (1)
CHANGE OF NAME Recorded Apr 15, 2024
From: VMWARE, INC.
To: VMWARE LLC
Reel/Frame 067102/0395 →
Cited By (1)
US 12,572,345