IP Library › Granted Patent US 11,265,366
Granted Patent B2
US 11,265,366 · App. 16/517,189 · Granted Mar 1, 2022

Lifecycle management of custom resources in a cloud computing environment

Inventors: Kiril Angelov Stefanov (Sofia, BG); Boris Savov (Sofia, BG); Rostislav Georgiev (Sofia, BG); Ventsyslav Raikov (Sofia, BG)
Assignee: VMware, Inc.
H04L67/10H04L41/5045H04L41/5048H04L41/5096
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,265,366
App. No.
16/517,189
Granted
Mar 1, 2022
Kind
B2
Abstract

Example virtual appliances disclosed herein include processor circuitry to accept a resource definition of a custom resource to be executed in a cloud computing environment. Disclosed example virtual appliances also include a lifecycle manager to manage a lifecycle of the custom resource based on a state machine. Disclosed example virtual appliances further include a database to: (i) query the lifecycle manager for a set of operations available to execute in a current lifecycle state of the custom resource; (ii) update a catalog item for the custom resource to present the set of operations available to execute in the current lifecycle state of the custom resource, the catalog item created based on the resource definition of the custom resource; and (iii) in response to selection of a first operation in the set of operations, send a message to cause the processor circuitry to execute the first operation.

Claims (45)

1. An appliance comprising:

memory; and

processor circuitry to execute computer readable instructions to:

obtain a resource definition of a custom resource to be executed in a cloud computing environment;

manage a lifecycle of the custom resource based on a state machine, the state machine to represent a set of lifecycle states of the custom resource;

obtain a set of one or more operations available to execute in a current lifecycle state of the custom resource;

update a catalog item for the custom resource to present the set of one or more operations available to execute in the current lifecycle state of the custom resource, the catalog item created based on the resource definition of the custom resource;

in response to selection of a first operation in the set of one or more operations, publish a first event to a plurality of components of the cloud computing environment that are subscribers to receive events associated with the custom resource, the first event to inform the plurality of components of the cloud computing environment that the first operation has been selected to be executed;

after publication of the first event, evaluate one or more responses from one or more of the plurality of components of the cloud computing environment to validate whether the first operation is available to execute in the current lifecycle state of the custom resource;

send, in response to a determination that the first operation is valid, a first message to cause execution of the first operation; and

at least one of (i) present a confirmation that the first operation was executed in response to a second message, or (ii) publish a second event after the first event, the second event to inform the plurality of components of the cloud computing environment that the first operation has been executed.

2. The appliance of claim 1 , wherein the resource definition includes a name of the custom resource and details of the custom resource to be presented in the catalog item for the custom resource.

3. The appliance of claim 1 , wherein the processor circuitry is to identify the current lifecycle state of the custom resource.

4. The appliance of claim 1 , wherein the processor circuitry is to:

present the set of one or more operations available to execute in the current lifecycle state of the custom resource in response to a user query corresponding to the custom resource; and

present the confirmation that the first operation was executed in response to a user selection of the first operation.

5. A method for custom resource lifecycle management, the method comprising:

determining, by executing an instruction with a virtual appliance, a current lifecycle state of a custom resource based on a state machine, the state machine to represent a set of lifecycle states of the custom resource, the custom resource to be executed in a cloud computing environment;

determining, by executing an instruction with the virtual appliance, a set of one or more operations available to execute in the current lifecycle state of the custom resource;

updating, by executing an instruction with the virtual appliance, a catalog item for the custom resource to present the set of one or more operations available to execute in the current lifecycle state of the custom resource, the catalog item created based on a resource definition of the custom resource;

in response to selection of a first operation in the set of one or more operations, publishing, by executing an instruction with the virtual appliance, a first event to a plurality of components of the cloud computing environment that are subscribers to receive events associated with the custom resource, the first event to inform the plurality of components of the cloud computing environment that the first operation has been selected to be executed;

after the publishing of the first event, evaluating, by executing an instruction with the virtual appliance, one or more responses from one or more of the plurality of components of the cloud computing environment to validate whether the first operation is available to execute in the current lifecycle state of the custom resource; and

sending, in response to determining the first operation is valid, a message to cause execution of the first operation.

6. The method of claim 5 , wherein the resource definition includes a name of the custom resource and details of the custom resource to be presented in the catalog item for the custom resource.

7. The method of claim 5 , further including receiving a confirmation that the first operation was executed.

8. The method of claim 7 , further including:

implementing a catalog interface;

presenting, with the catalog interface, the set of one or more operations available to execute in the current lifecycle state of the custom resource in response to a user query corresponding to the custom resource; and

presenting, with the catalog interface, the confirmation that the first operation was executed subsequent to a user selection of the first operation.

9. The method of claim 5 , further including, after publishing the first event, publishing a second event to inform the plurality of components of the cloud computing environment that the first operation has been executed.

10. A non-transitory computer readable medium comprising computer readable instructions that, when executed, cause a virtual appliance to at least:

determine a current lifecycle state of a custom resource based on a state machine, the state machine to represent a set of lifecycle states of the custom resource, the custom resource to be executed in a cloud computing environment;

determine a set of one or more operations available to execute in the current lifecycle state of the custom resource;

update a catalog item for the custom resource to present the set of one or more operations available to execute in the current lifecycle state of the custom resource, the catalog item created based on a resource definition of the custom resource;

in response to selection of a first operation in the set of one or more operations, publish a first event to a plurality of components of the cloud computing environment that are subscribers to obtain events associated with the custom resource, the first event to inform the plurality of components of the cloud computing environment that the first operation has been selected to be executed;

after publication of the first event, evaluate one or more responses from one or more of the plurality of components of the cloud computing environment to validate whether the first operation is available to execute in the current lifecycle state of the custom resource; and

send, in response to a determination that the first operation is valid, a message to cause execution of the first operation.

11. The non-transitory computer readable medium of claim 10 , wherein the resource definition includes a name of the custom resource and details of the custom resource to be presented in the catalog item for the custom resource.

12. The non-transitory computer readable medium of claim 10 , wherein the instructions, when executed, further cause the virtual appliance to receive a confirmation that the first operation was executed.

13. The tangible non-transitory computer readable medium of claim 12 , wherein the instructions, when executed, further cause the virtual appliance to:

implement a catalog interface;

present, with the catalog interface, the set of one or more operations available to execute in the current lifecycle state of the custom resource in response to a user query corresponding to the custom resource; and

present, with the catalog interface, the confirmation that the first operation was executed subsequent to a user selection of the first operation.

14. The non-transitory computer readable medium of claim 10 , wherein the instructions, when executed, further cause the virtual appliance to publish a second event after the first event, the second event to inform the plurality of components of the cloud computing environment that the first operation has been executed.

15. The non-transitory computer readable medium of claim 10 , wherein the instructions, when executed, further cause the virtual appliance to update the current lifecycle state of the custom resource based on the state machine after the first operation has been executed.

Assignments (2)
CHANGE OF NAME Recorded Apr 15, 2024
From: VMWARE, INC.
To: VMWARE LLC
Reel/Frame 067102/0395 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 28, 2019
From: STEFANOV, KIRIL ANGELOV; SAVOV, BORIS; GEORGIEV, ROSTISLAV; RAIKOV, VENTSYSLAV
To: VMWARE, INC.
Reel/Frame 050536/0244 →
Continuity (2)
Continuation 15360632 · Nov 23, 2016
Related Publication 20190342375A1 · Nov 7, 2019
Cited By (1)
US 12,596,615