IP Library Granted Patent US 10,891,121
Granted Patent B2
US 10,891,121 · App. 16/381,890 · Granted Jan 12, 2021

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 10,891,121
App. No.
16/381,890
Granted
Jan 12, 2021
Kind
B2
Abstract

A disclosed example to configure an application blueprint includes binding, during a design phase, 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 to be selectable during a runtime phase to implement the node; and storing, during the design phase, the application blueprint for subsequent access 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, selected from the service template to implement the node.

Claims (38)

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

one or more processors; and

memory including machine readable instructions that, when executed, cause the one or more processors to at least, during a design phase:

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.

2. The apparatus as defined in claim 1 , wherein the service template is generated before the design phase, and the machine readable instructions, when executed, are to cause the one or more processors to retrieve the service template during the design phase from a repository.

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

4. The apparatus as defined in claim 1 , wherein the service template is configured before the design phase to include dependency properties defining inter-node dependencies between the node and other nodes.

5. The apparatus as defined in claim 1 , wherein the service template is configured before the design phase to include values of properties that are configured to be the same for the plurality of the services during the runtime phase.

6. The apparatus as defined in claim 1 , wherein the machine readable instructions, when executed, are to cause the one or more processors 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.

7. The apparatus as defined in claim 1 , 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.

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

bind a service template to a node of an 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.

9. The non-transitory computer readable storage medium as defined in claim 8 , wherein the service template is generated before a design phase, and the instructions, when executed, are to cause the one or more processors to retrieve the service template during the design phase from a repository.

10. The non-transitory computer readable storage medium as defined in claim 8 , wherein the first service is a load balancer service, and the second service is selected from at least one of an application server service or a database service.

11. The non-transitory computer readable storage medium as defined in claim 8 , wherein the service template is configured before a design phase to include dependency properties defining inter-node dependencies between the node and other nodes.

12. The non-transitory computer readable storage medium as defined in claim 8 , wherein the service template is configured before a design phase to include values of properties that are configured to be the same for the plurality of the services during the runtime phase.

13. The non-transitory computer readable storage medium as defined in claim 8 , wherein the instructions, when executed, are to cause the one or more processors 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.

14. The non-transitory computer readable storage medium as defined in claim 8 , 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.

15. A method to configure an application blueprint, the method comprising:

binding, by executing an instruction with a processor during a design phase, 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

storing, by executing an instruction with the processor during the design phase, 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.

16. The method as defined in claim 15 , wherein the service template is generated before the design phase, and further including retrieving the service template during the design phase from a repository.

17. The method as defined in claim 15 , wherein the first service is a load balancer service, and the second service is selected from at least one of an application server service or a database service.

18. The method as defined in claim 15 , wherein the service template is configured before the design phase to include dependency properties defining inter-node dependencies between the node and other nodes.

19. The method as defined in claim 15 , wherein the service template is configured before the design phase to include values of properties that are configured to be the same for the plurality of the services during the runtime phase.

20. The method as defined in claim 15 , further including:

identifying the plurality of the services based on user input;

configuring configuration properties of the plurality of services; and

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

21. The method as defined in claim 15 , 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.

Assignments (2)
CHANGE OF NAME Recorded Apr 15, 2024
From: VMWARE, INC.
To: VMWARE LLC
Reel/Frame 067103/0030 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 30, 2019
From: GOVINDARAJU, AGILA; SINGH, KIRAN; JAIN, ASHISH KUMAR
To: VMWARE, INC.
Reel/Frame 049033/0990 →
Cited By (1)
US 12,476,970