IP Library › Granted Patent US 10,007,534
Granted Patent B2
US 10,007,534 · App. 14/824,049 · Granted Jun 26, 2018

Methods and apparatus to manage asset capabilities in a computing environment using a common agent framework

Inventors: Brian Williams (Woodland Park, CO); Gregory Burk (Colorado Springs, CO); Michael Donahue (Colorado Springs, CO)
Assignee: VMware, Inc.
G06F9/44526G06F21/604H04L63/0823G06F2221/2141
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,007,534
App. No.
14/824,049
Granted
Jun 26, 2018
Kind
B2
Abstract

Methods, apparatus, systems and articles of manufacture are disclosed to manage asset in a computing environment using a common agent framework. An example method includes maintaining a catalog of capabilities available to an asset based on plugins installed at the asset. The example method also includes determining whether a capability is installed at the asset based on the catalog of capabilities, and installing the capability at the asset when the capability is not installed at the asset. The example method also includes receiving, at the asset, a request to perform the capability, validating, via a processor, the request, and, in response to the validating, performing the capability.

Claims (50)

1. A method comprising:

maintaining a catalog of capabilities available to a virtualization asset based on plugins installed at the virtualization asset;

in response to a request from a virtualization asset management application, determining whether a capability identified in a list of capabilities of the virtualization asset management application is installed at the virtualization asset based on the catalog of capabilities, the virtualization asset executing in a first container operating on top of a host operating system without the need for a hypervisor, the first container isolating the virtualization asset from applications executing in a second container operating on top of the host operating system, the first container not instantiating its own operating system;

installing the capability at the virtualization asset when the capability is not installed at the virtualization asset;

receiving, at the virtualization asset, a request to perform the capability from the virtualization asset management application, the request to perform the capability including a capability identifier corresponding to the capability;

validating, via a processor, the request; and

in response to the validating, performing the capability, wherein performing the capability includes mapping, via the catalog of capabilities, the capability identifier to a plugin identifier, and executing a plugin corresponding to the plugin identifier.

2. A method as defined in claim 1 , wherein maintaining the catalog of capabilities includes:

registering a plugin in an inventory of plugins;

retrieving a set of capabilities provided by the plugin; and

updating the catalog of capabilities to include the set of capabilities.

3. A method as defined in claim 2 , wherein registering the plugin in the inventory includes:

recording a plugin identifier associated with the plugin in the inventory; and

recording a reference to a plugin invoker associated with the plugin, the plugin invoker facilitating executing the plugin at the virtualization asset.

4. A method as defined in claim 3 , wherein the plugin identifier includes a namespace, a name and a version.

5. A method as defined in claim 3 , wherein retrieving the set of capabilities includes calling the plugin invoker to provide the set of capabilities.

6. A method as defined in claim 2 , wherein updating the catalog of capabilities includes:

logging the set of capabilities in the catalog of capabilities;

logging arguments needed to execute the respective capabilities; and

mapping the respective capabilities to the plugin.

7. A method as defined in claim 2 , further including transmitting the catalog of capabilities to an application in communication with the virtualization asset.

8. A method as defined in claim 7 , further including encrypting a message including the catalog of capabilities.

9. A method as defined in claim 7 , further including transmitting the catalog of capabilities in response to a request received by the application.

10. A method as defined in claim 7 , further including transmitting the catalog of capabilities in response to updating the catalog of capabilities.

11. A method as defined in claim 8 , wherein validating the request includes decrypting the message.

12. A method as defined in claim 1 , wherein the capability identifier includes at least a class namespace, a class name, a class version or a capability name.

13. A method as defined in claim 1 , wherein executing the plugin includes:

calling a plugin invoker to facilitate executing the plugin by loading a resource used by the plugin; and

invoking the plugin.

14. An apparatus comprising:

a plugins monitor to: (a) maintain a catalog of capabilities available to a virtualization asset based on plugins installed at the virtualization asset, and (b) in response to a request from a virtualization asset management application, determine whether a capability identified in a list of capabilities of the virtualization asset management application is installed at the virtualization asset based on the catalog of capabilities, the virtualization asset executing in a first container operating on top of a host operating system without the need for a hypervisor, the first container isolating the virtualization asset from applications executing in a second container operating on top of the host operating system, the first container not instantiating its own operating system;

a plugins registrar to install the capability at the virtualization asset when the capability is not installed at the virtualization asset;

a security engine to validate a request to perform the capability, the request to perform the capability including a capability identifier corresponding to the capability; and

a capabilities executor to, when the request to perform the capability is validated, map, via the catalog of capabilities, the capability identifier to a plugin identifier, and execute a plugin corresponding to the plugin identifier, at least one of the plugins monitor, the plugins registrar, the security engine or the capabilities executor including hardware.

15. A tangible computer readable storage medium comprising instructions that, when executed, cause a machine to at least:

maintain a catalog of capabilities available to a virtualization asset based on plugins installed at the virtualization asset;

in response to a request from a virtualization asset management application, determine whether a capability identified in a list of capabilities of the virtualization asset management application is installed at the virtualization asset based on the catalog of capabilities, the virtualization asset executing in a first container operating on top of a host operating system without the need for a hypervisor, the first container isolating the virtualization asset from applications executing in a second container operating on top of the host operating system, the first container not instantiating its own operating system;

install a capability at the virtualization asset when the capability is not installed at the virtualization asset;

validate a request to perform the capability, the request to perform the capability including a capability identifier corresponding to the capability; and

when the request to perform the capability is validated, map, via the catalog of capabilities, the capability identifier to a plugin identifier, and execute a plugin corresponding to the plugin identifier, the plugin to perform the capability.

16. A system comprising:

at least one processor;

memory including computer executable instructions, that when executed by the at least one processor, cause a virtualization asset management application to:

determine whether a capability identified in a list of capabilities of the virtualization

asset management application is installed at a virtualization asset based on a catalog of capabilities available to the virtualization asset and based on plugins installed at the virtualization asset, the virtualization asset executing in a first container operating on top of a host operating system without the need for a hypervisor, the first container isolating the virtualization asset from applications executing in a second container operating on top of the host operating system, the first container not instantiating its own operating system; and

initiate installing the capability at the asset when the capability is not installed at the asset; and

a capabilities management agent to:

maintain the catalog of capabilities available to the asset;

validate a request to perform the capability, the request to perform the capability including a capability identifier corresponding to the capability; and

in response to the validating, map, via the catalog of capabilities, the capability identifier to a plugin identifier, and execute a plugin corresponding to the plugin identifier, the plugin, when executed, to perform the capability.

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 Aug 18, 2015
From: WILLIAMS, BRIAN; BURK, GREGORY; DONAHUE, MICHAEL
To: VMWARE, INC.
Reel/Frame 036345/0521 →
Continuity (1)
Related Publication 20170046181A1 · Feb 16, 2017