|
| Local Properties | Local Methods | |
| Managed Object Types | Data Object Types | All Properties | All Methods |
Entitlements are identified by a short string 'key'. Keys can represent either a particular edition (Full, Starter) or a particular feature/function (featureKey) (backup, nas). An edition implies zero one or more functions which are express, denied or optional. For example a 'Full' edition includes 'iscsi' function but a Starter edition might disallow it.
Which edition a given VMware platform uses can be defined at any time. Generally this is done right after first install and boot as installation software may not set it. For editions that are similar in nature, any future changes to edition type will only impact future requests for functionality. Current functionality is left unaffected. The same is true for optional functions enabled/disabled after some period of time. For dissimilar editions, such transitions may require entering maintenance mode first else an exception of InvalidState will be thrown.
To specify the edition type and any optional functions, first use configureSource() to specify where license data will come from. There are two options, provide the entitlement data directly which the VMware platform will store on its local storage or specify a host running license server software it can connect to over previously configured interface to obtain license data.
Once a source of entitlement data has been specified the list of editions and related details can be obtained with querySupportedFeatures(). Some editions may only be served from a license server. Be sure to check servedSourceOnly in object type FeatureInfo.
When an edition is specified for a given host, the cost of that edition (how many licenses are needed) is determined. The cost is computed using the license's CostUnit value multiplied by the number of units activated. For example, when a VMware platform is set to an edition which uses a 'cpuPackage' on a two socket server, two licenses would be needed to sucessfully install that edition.
Here is a diagram of the unit costs supported by this API and their relationships.
+------------------------------+ +--------+ +-------+ | +-----------+ +-----------+ | | Server | | Host | | | | | | | +--------+ +-------+ | | cpuCore | | cpuCore | | +-------+ | +-----------+ +-----------+ | +--------+ | Host | | cpuPackage | | VM | +-------+ +------------------------------+ +--------+Once an edition is installed, additional features may be enabled either implicitly or explicitly. This information is available in FeatureInfo object type State value. See product literature for the tables defining this data.
Some editions may require additional licenses at runtime. The dependentKeys list in FeatureInfo object type can be used to determine this relationship.
Notes for monitoring License subsystem:
When a centralized/remote host is for licensing a connection is maintained between the VMware platform and the license server. This connection may be monitored using the DiagnosticInfo object type.
Properties
| Name | Type | Description |
|---|---|---|
| diagnostics* | LicenseDiagnostics |
Return current diagnostic information.
Since VI API 2.5 |
| featureInfo* | LicenseFeatureInfo[] | Deprecated.
As of VI API 2.5, use QuerySupportedFeatures.
The list of features that can be licensed.
|
| licensedEdition | xsd:string |
The product's license edition. The edition defines which product license
the server requires. This, in turn, determines the core set of functionalities
provided by the product and the additional features that can be licensed. If
no edition is set the property is set to the empty string ("").
To set the edition use SetLicenseEdition.
Since VI API 2.5 |
| source | LicenseSource |
Set or return a data object type of LocalLicense or LicenseServer.
|
| sourceAvailable | xsd:boolean |
Current state of the license source. License sources that are LocalSource
are always available.
|
Methods
| Methods defined in this Managed Object |
|---|
| CheckLicenseFeature, ConfigureLicenseSource, DisableFeature, EnableFeature, QueryLicenseSourceAvailability, QueryLicenseUsage, QuerySupportedFeatures, SetLicenseEdition |
Parameters
| Name | Type | Description |
|---|---|---|
| _this | ManagedObjectReference | A reference to the LicenseManager used to make the method call. |
| host* | ManagedObjectReference
to a HostSystem |
Host to act on if LicenseManager is not on a host.
|
| featureKey | xsd:string |
Name of the feature to enable.
|
Return Value
| Type | Description |
|---|---|
| xsd:boolean | Returns true if the feature is enabled and false if it is not. |
Faults
| Type | Description |
|---|---|
| InvalidArgument | Thrown if a feature name is not found. |
| InvalidState | Thrown if the feature cannot be supported on the platform, potentially because the hardware configuration does not support it. |
| RuntimeFault | Thrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error. |
This changes the licensing source to be either served or local. Before changing the license source location, the API checks the number of licenses available at the new potential source to ensure there are at least as many licenses there as have been issued by the current source. If there are an equal or greater number of licenses at the new source, all licenses on the current source are released and then reacquired from the new source. If there are not enough licenses available on the new source to reissue all licenses, the operation fails.
This is used to configure the license source on an individual host.
PLATFORM Specific Notes: VirtualCenter - only supports a served source. the host parameter is mandatory. ESX Server - the host parameter is optional.
Parameters
| Name | Type | Description |
|---|---|---|
| _this | ManagedObjectReference | A reference to the LicenseManager used to make the method call. |
| host* | ManagedObjectReference
to a HostSystem |
Host for which the license manager should be reconfigured.
|
| licenseSource | LicenseSource |
ServedSource or LocalSource.
|
Return Value
| Type | Description |
|---|---|
| None | |
Faults
| Type | Description |
|---|---|
| CannotAccessLocalSource | Thrown if the local source cannot be accessed. |
| InvalidLicense | Thrown if the new license source is LocalLicenseSource and the license file is not valid. |
| LicenseServerUnavailable | Thrown if the license server is unreachable. |
| NotEnoughLicenses | Thrown if the new license source does not have enough licenses. |
| RuntimeFault | Thrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error. |
Parameters
| Name | Type | Description |
|---|---|---|
| _this | ManagedObjectReference | A reference to the LicenseManager used to make the method call. |
| host* | ManagedObjectReference
to a HostSystem |
Host to act on if LicenseManager is not on a host.
|
| featureKey | xsd:string |
key of the feature to disable.
|
Return Value
| Type | Description |
|---|---|
| xsd:boolean | Returns true if the feature was disabled and false if not. |
Faults
| Type | Description |
|---|---|
| InvalidArgument | Thrown if a feature name is not found or it is not optional. |
| InvalidState | Thrown if the feature is in use. |
| LicenseServerUnavailable | Thrown if the license server is unavailable. |
| RuntimeFault | Thrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error. |
Parameters
| Name | Type | Description |
|---|---|---|
| _this | ManagedObjectReference | A reference to the LicenseManager used to make the method call. |
| host* | ManagedObjectReference
to a HostSystem |
Host to act on if LicenseManager is not on a host.
|
| featureKey | xsd:string |
Name of the feature to enable.
|
Return Value
| Type | Description |
|---|---|
| xsd:boolean | Returns true if enabling the feature was successful, false otherwise. |
Faults
| Type | Description |
|---|---|
| InvalidArgument | Thrown if a feature name is not found or it is not optional. |
| InvalidState | Thrown if the feature cannot be supported on the platform, potentially because the hardware configuration does not support it. |
| LicenseServerUnavailable | Thrown if the license server is unavailable. |
| RuntimeFault | Thrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error. |
Parameters
| Name | Type | Description |
|---|---|---|
| _this | ManagedObjectReference | A reference to the LicenseManager used to make the method call. |
| host* | ManagedObjectReference
to a HostSystem |
Use the license source of the specified host.
|
Return Value
| Type | Description |
|---|---|
| LicenseAvailabilityInfo[] |
Faults
| Type | Description |
|---|---|
| RuntimeFault | Thrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error. |
PLATFORM Specific Notes: VirtualCenter - Empty string returns the usage of non-host specific features. Must specify managed host to query. ESX Server - Host argument ignored.
Parameters
| Name | Type | Description |
|---|---|---|
| _this | ManagedObjectReference | A reference to the LicenseManager used to make the method call. |
| host* | ManagedObjectReference
to a HostSystem |
Host to query for usage. If missing, query the server the
LicenseManager is on.
|
Return Value
| Type | Description |
|---|---|
| LicenseUsageInfo |
Faults
| Type | Description |
|---|---|
| RuntimeFault | Thrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error. |
Parameters
| Name | Type | Description |
|---|---|---|
| _this | ManagedObjectReference | A reference to the LicenseManager used to make the method call. |
| host* | ManagedObjectReference
to a HostSystem |
Use the license source of the specified host.
|
Return Value
| Type | Description |
|---|---|
| LicenseFeatureInfo[] |
Faults
| Type | Description |
|---|---|
| RuntimeFault | Thrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error. |
To determine what featureKey the current platform will accept, use querySourceAvailablity() at runtime, or consult the documentation for the current platform.
Parameters
| Name | Type | Description |
|---|---|---|
| _this | ManagedObjectReference | A reference to the LicenseManager used to make the method call. |
| host* | ManagedObjectReference
to a HostSystem |
Host to act on if LicenseManager is not on a host.
|
| featureKey* | xsd:string |
Name of edition feature to select. If featureKey is not
set or set to empty string, the product becomes unlicensed.
|
Return Value
| Type | Description |
|---|---|
| None | |
Faults
| Type | Description |
|---|---|
| InvalidArgument | Thrown if a feature key is not an edition feature key. |
| InvalidState | Thrown if the feature cannot be supported on the platform, potentially because the hardware configuration does not support it. |
| LicenseServerUnavailable | Thrown if the license server is unavailable. |
| RuntimeFault | Thrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error. |
| Top of page | Local Properties | Local Methods | |
| Managed Object Types | Data Object Types | All Properties | All Methods |