You can add functions to vSphere by developing software applications that you register as vCenter Server extensions. A vCenter solution is an extension that registers with vCenter Server and implements some or all of the extension features of the vSphere API.

Developing and Deploying vSphere Solutions, vServices, and ESX Agents uses the terms solution and extension interchangeably.

The extension features in the vSphere API include functions so that you can perform the following tasks:

Register permissions, faults, and events for an extension.

Identify and prevent manual operations on virtual machines and vApps that extensions deploy.

Integrate extensions with Solutions Manager.

Store data about extensions in the vSphere database.

Provide user interface plug-ins that extend the vSphere client.

To use the extension functions of the vSphere API, a solution must register itself with the ExtensionManager that runs in a vCenter Server instance. By registering with ExtensionManager, a solution can access the extension features of the vSphere extension API.

You can develop solutions that add functions to the standard functions of vCenter Server. You can deploy a solution as an Open Virtualization Format (OVF) package, with optional VMware vSphere Installation Bundles (VIB). You can also install solutions by using an installer, such as Windows Installer (MSI) or RPM Package Manager. Most of the extension functions in the vSphere API are independent of the technology that you use to deploy a solution. If you deploy a solution by using OVF, you can use the vCenter Extension vService to simplify the registration of the solution with vCenter Server.

vCenter Server 5.0 provides built-in solutions.

ESX Agent Manager

vServices Manager

ESX Agent Manager and vServices Manager are part of a standard vCenter Server installation. These solutions appear in Solutions Manager with any other solutions that register with Solutions Manager.

The vSphere SDK provides a set of APIs that you can use to register extensions with vCenter Server. To develop vSphere extensions, the most important object in the vSphere Extension API is the ExtensionManager managed object.

vCenter Solutions Manager is a view in the vSphere client where you can monitor and interact with the solutions that register with a vCenter Server instance.

A vSphere ESX agent is a virtual machine and an optional vSphere Installation Bundle (VIB) that extends the functions of an ESX host to provide additional services that a vSphere solution requires.

vSphere ESX Agent Manager automates the process of deploying and managing vSphere ESX agents.

A vService is a service that a solution provides to specific applications that run inside virtual machines and vApps. A solution can provide several types of vServices. Virtual machines or vApps can have dependencies on several types of vServices.

vService Manager allows you to manage the set of vServices that extensions provide and to configure virtual machines and vApps to be dependent on these vServices.

The vCenter Extension vService is a standard vService that vSphere 5.0 provides. With the vCenter Extension vService you can register virtual machines as vCenter Server extensions with minimal user interaction.