IP Library Granted Patent US 9,923,765
Granted Patent B2
US 9,923,765 · App. 15/594,483 · Granted Mar 20, 2018

Deploying and monitoring multiplatform cloud-based infrastructures

Inventor: Paul Dennis Allen (Bellevue, WA)
Assignee: CloudCoreo, Inc.
H04L41/0806H04L41/046H04L41/0813H04L41/0826H04L41/0856H04L41/0866H04L41/145
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,923,765
App. No.
15/594,483
Filed
May 12, 2017
Granted
Mar 20, 2018
Kind
B2
Art Unit
2457
USPC
709/226
Abstract

Embodiments are directed towards managing computer applications. A configuration package may be provided to provision a cloud service stack on a cloud platform such that the cloud service stack corresponds to a main stack model. If a monitoring engine identifies inconsistencies between the cloud service stack and the main stack model, a deployment engine may be provided to traverse the main stack model such that the deployment engine may visit each of one or more stack model entities included in the main stack model. Then an updated configuration package may be provided for the cloud platform based on the traversal. And, the updated configuration package may be provided to the cloud platform to re-provision the cloud service stack.

Claims (116)

1. A method for managing computer stacks using a network computer that employs one or more processors to execute instructions that perform actions, comprising:

employing a modeling engine to provide a configuration package that is used to provision a cloud service stack on a cloud platform, wherein the cloud service stack corresponds to a main stack model that is stored in a stack model repository that is located on a non-transitory processor readable media, and wherein the configuration package is based on the main stack model; and

when a monitoring engine identifies one or more inconsistencies or potential resource use optimizations between the cloud service stack and the main stack model, the monitoring engine performs actions, including:

providing a deployment engine to traverse the main stack model, wherein the deployment engine performs actions, comprising:

visiting each of one or more stack model entities that are included in the main stack model;

updating the configuration package to correct identified inconsistencies or optimize use of resources based on the traversal of the one or more stack model entities; and

providing the updated configuration package to the cloud platform, wherein the updated configuration package is used to re-provision the cloud service stack, wherein the re-provisioned cloud service stack performs one or more of correcting identified inconsistencies or optimizing resource use.

2. The method of claim 1 , further comprising, when the deployment engine visits a stack model entity that is a root of another stack model, performing further actions:

employing the deployment engine to traverse the other stack model; and

modifying the updated configuration package for the cloud platform based on the traversal of the other stack model.

3. The method of claim 1 , further comprising:

providing a local copy of the main stack model to a user, wherein the user is enabled to modify the local copy of the main stack model; and

providing the user's local copy of the main stack model to the stack model repository, wherein modifications made to the user's local copy of the main stack model are merged into the main stack model.

4. The method of claim 1 , wherein providing the updated configuration package, further comprises:

assembling instructions that are specific to the cloud platform based on one or more definitions that are included in the one or more stack model entities; and

providing one or more portions of the configuration package based on the assembled instructions.

5. The method of claim 1 , wherein providing the configuration package that provisions the cloud service stack further comprises:

provisioning one or more cloud instances, wherein the one or more cloud instances include a cloud management agent;

employing the cloud management agent to monitor one or more metrics of the one or more cloud instances; and

employing the cloud management agent to perform configuration actions on the one or more cloud instances.

6. The method of claim 1 , further comprising:

employing the monitoring engine to compare cloud service stack resource utilization with current prices of the cloud platform; and

when the comparison identifies one or more cost optimizations, employing the modeling engine to modify the main stack model based on the one or more cost optimizations.

7. The method of claim 1 , further comprising:

employing the monitoring engine to audit content of the cloud service stack; and

when the audit identifies that one or more defined conditions are met, providing one or more notifications to alert one or more users.

8. The method of claim 1 , further comprising, when the deployment engine visits a stack model entity that is an override stack model entity, employing the deployment engine to modify the updated configuration package by at least one of adding information or replacing information based on the override stack model entity.

9. A system arranged for managing computer stacks over a network, comprising:

a network computer, including:

a transceiver that communicates over the network;

a memory that stores at least instructions; and

one or more processor devices that execute instructions that perform actions, including:

employing a modeling engine to provide a configuration package that is used to provision a cloud service stack on a cloud platform, wherein the cloud service stack corresponds to a main stack model that is stored in a stack model repository that is located on a non-transitory processor readable media, and wherein the configuration package is based on the main stack model; and

when a monitoring engine identifies one or more inconsistencies or potential resource use optimizations between the cloud service stack and the main stack model, the monitoring engine performs actions, including:

providing a deployment engine to traverse the main stack model, wherein the deployment engine performs actions, comprising:

visiting each of one or more stack model entities that are included in the main stack model;

updating the configuration package to correct identified inconsistencies or optimize use of resources based on the traversal of the one or more stack model entities; and

providing the updated configuration package to the cloud platform, wherein the updated configuration package is used to re-provision the cloud service stack, wherein the re-provisioned cloud service stack performs one or more of correcting identified inconsistencies or optimizing resource use; and

a client computer, including:

a transceiver that communicates over the network;

a memory that stores at least instructions; and

one or more processor devices that execute instructions that perform actions, including:

enabling a user to access a cloud management application.

10. The system of claim 9 , wherein the network computer's one or more processor devices perform actions, further comprising, when the deployment engine visits a stack model entity that is a root of another stack model, performing further actions:

employing the deployment engine to traverse the other stack model; and

modifying the updated configuration package for the cloud platform based on the traversal of the other stack model.

11. The system of claim 9 , wherein the network computer's one or more processor devices perform actions, further comprising:

providing a local copy of the main stack model to a user, wherein the user is enabled to modify the local copy of the main stack model; and

providing the user's local copy of the main stack model to the stack model repository, wherein modifications made to the user's local copy of the main stack model are merged into the main stack model.

12. The system of claim 9 , wherein providing the updated configuration package, further comprises:

assembling instructions that are specific to the cloud platform based on one or more definitions that are included in the one or more stack model entities; and

providing one or more portions of the configuration package based on the assembled instructions.

13. The system of claim 9 , wherein providing the configuration package that provisions the cloud service stack further comprises:

provisioning one or more cloud instances, wherein the one or more cloud instances include a cloud management agent;

employing the cloud management agent to monitor one or more metrics of the one or more cloud instances; and

employing the cloud management agent to perform configuration actions on the one or more cloud instances.

14. The system of claim 9 , wherein the network computer's one or more processor devices perform actions, further comprising:

employing the monitoring engine to compare cloud service stack resource utilization with current prices of the cloud platform; and

when the comparison identifies one or more cost optimizations, employing the modeling engine to modify the main stack model based on the one or more cost optimizations.

15. The system of claim 9 , wherein the network computer's one or more processor devices perform actions, further comprising:

employing the monitoring engine to audit content of the cloud service stack; and

when the audit identifies that one or more defined conditions are met, providing one or more notifications to alert one or more users.

16. The system of claim 9 , wherein the network computer's one or more processor devices perform actions, further comprising, when the deployment engine visits a stack model entity that is an override stack model entity, employing the deployment engine to modify the updated configuration package by at least one of adding information or replacing information based on the override stack model entity.

17. A network computer that manages computer stacks, comprising:

a transceiver that communicates over the network;

a memory that stores at least instructions; and

one or more processor devices that execute instructions that perform actions, including:

employing a modeling engine to provide a configuration package that is used to provision a cloud service stack on a cloud platform, wherein the cloud service stack corresponds to a main stack model that is stored in a stack model repository that is located on a non-transitory processor readable media, and wherein the configuration package is based on the main stack model; and

when a monitoring engine identifies one or more inconsistencies or potential resource use optimizations between the cloud service stack and the main stack model, the monitoring engine performs actions, including:

providing a deployment engine to traverse the main stack model, wherein the deployment engine performs actions, comprising:

visiting each of one or more stack model entities that are included in the main stack model;

updating the configuration package to correct identified inconsistencies or optimize use of resources based on the traversal of the one or more stack model entities; and

providing the updated configuration package to the cloud platform, wherein the updated configuration package is used to re-provision the cloud service stack, wherein the re-provisioned cloud service stack performs one or more of correcting identified inconsistencies or optimizing resource use.

18. The network computer of claim 17 , further comprising, when the deployment engine visits a stack model entity that is a root of another stack model, performing further actions:

employing the deployment engine to traverse the other stack model; and

modifying the updated configuration package for the cloud platform based on the traversal of the other stack model.

19. The network computer of claim 17 , further comprising:

providing a local copy of the main stack model to a user, wherein the user is enabled to modify the local copy of the main stack model; and

providing the user's local copy of the main stack model to the stack model repository, wherein modifications made to the user's local copy of the main stack model are merged into the main stack model.

20. The network computer of claim 17 , wherein providing the updated configuration package, further comprises:

assembling instructions that are specific to the cloud platform based on one or more definitions that are included in the one or more stack model entities; and

providing one or more portions of the configuration package based on the assembled instructions.

21. The network computer of claim 17 , wherein providing the configuration package that provisions the cloud service stack further comprises:

provisioning one or more cloud instances, wherein the one or more cloud instances include a cloud management agent;

employing the cloud management agent to monitor one or more metrics of the one or more cloud instances; and

employing the cloud management agent to perform configuration actions on the one or more cloud instances.

22. The network computer of claim 17 , further comprising:

employing the monitoring engine to compare cloud service stack resource utilization with current prices of the cloud platform; and

when the comparison identifies one or more cost optimizations, employing the modeling engine to modify the main stack model based on the one or more cost optimizations.

23. The network computer of claim 17 , further comprising:

employing the monitoring engine to audit content of the cloud service stack; and

when the audit identifies that one or more defined conditions are met, providing one or more notifications to alert one or more users.

24. A processor readable non-transitory storage media that includes instructions for managing computer stacks, wherein execution of the instructions by one or more processor devices performs actions, comprising:

employing a modeling engine to provide a configuration package that is used to provision a cloud service stack on a cloud platform, wherein the cloud service stack corresponds to a main stack model that is stored in a stack model repository that is located on a non-transitory processor readable media, and wherein the configuration package is based on the main stack model; and

when a monitoring engine identifies one or more inconsistencies or potential resource use optimizations between the cloud service stack and the main stack model, the monitoring engine performs actions, including:

providing a deployment engine to traverse the main stack model, wherein the deployment engine performs actions, comprising:

visiting each of one or more stack model entities that are included in the main stack model;

updating the configuration package to correct identified inconsistencies or optimize use of resources based on the traversal of the one or more stack model entities; and

providing the updated configuration package to the cloud platform, wherein the updated configuration package is used to re-provision the cloud service stack, wherein the re-provisioned cloud service stack performs one or more of correcting identified inconsistencies or optimizing resource use.

25. The media of claim 24 , further comprising, when the deployment engine visits a stack model entity that is a root of another stack model, performing further actions:

employing the deployment engine to traverse the other stack model; and

modifying the updated configuration package for the cloud platform based on the traversal of the other stack model.

26. The media of claim 24 , further comprising:

providing a local copy of the main stack model to a user, wherein the user is enabled to modify the local copy of the main stack model; and

providing the user's local copy of the main stack model to the stack model repository, wherein modifications made to the user's local copy of the main stack model are merged into the main stack model.

27. The media of claim 24 , wherein providing the updated configuration package, further comprises:

assembling instructions that are specific to the cloud platform based on one or more definitions that are included in the one or more stack model entities; and

providing one or more portions of the configuration package based on the assembled instructions.

28. The media of claim 24 , wherein providing the configuration package that provisions the cloud service stack further comprises:

provisioning one or more cloud instances, wherein the one or more cloud instances include a cloud management agent;

employing the cloud management agent to monitor one or more metrics of the one or more cloud instances; and

employing the cloud management agent to perform configuration actions on the one or more cloud instances.

29. The media of claim 24 , further comprising:

employing the monitoring engine to compare cloud service stack resource utilization with current prices of the cloud platform; and

when the comparison identifies one or more cost optimizations, employing the modeling engine to modify the main stack model based on the one or more cost optimizations.

30. The media of claim 24 , further comprising, when the deployment engine visits a stack model entity that is an override stack model entity, employing the deployment engine to modify the updated configuration package by at least one of adding information or replacing information based on the override stack model entity.

Assignments (3)
CHANGE OF NAME Recorded Apr 15, 2024
From: VMWARE, INC.
To: VMWARE LLC
Reel/Frame 067102/0395 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 20, 2018
From: CLOUDCOREO, INC.
To: VMWARE, INC.
Reel/Frame 044982/0786 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 12, 2017
From: ALLEN, PAUL DENNIS
To: CLOUDCOREO, INC.
Reel/Frame 042364/0748 →
Continuity (2)
Provisional Application 62339702 · May 20, 2016
Related Publication 20170339013A1 · Nov 23, 2017