Managed Object - VsanPerformanceManager(vim.cluster.VsanPerformanceManager)

See also
ClusterComputeResource, ComputeResource, DynamicData, Task, VirtualMachineProfileSpec, VsanObjectInformation, VsanPerfDiagnoseQuerySpec, VsanPerfDiagnosticException, VsanPerfDiagnosticResult, VsanPerfEntityMetricCSV, VsanPerfEntityType, VsanPerfNodeInformation, VsanPerfQuerySpec, VsanPerfTimeRange, VsanPerfTimeRangeQuerySpec
Since
vSphere API 5.5


Managed Object Description

This managed object type provides the service interface for obtaining statistical data about various aspects of vSAN performance, as generated and maintained by the vSAN performance service of the cluster. It also offers methods to enable/disable, configure and perform other maintenance tasks about the vSAN performance service. It is available on both vCenter as well as ESXi under the vSAN extension endpoint. On both systems a singleton object is registered under the Managed Object ID 'vsan-performance-manager'.
All the vSAN hosts belongs to one of the following two type in performance service perspective.
Stats Master node: see VsanPerfNodeInformation
Agent node: all other nodes except the master node, which collect its performance statistics when receive the request from master then send it back.

Properties

Name Type Description
None

Methods

Methods defined in this Managed Object
GetVsanPerfDiagnosisResult, VsanPerfCreateStatsObject, VsanPerfCreateStatsObjectTask, VsanPerfDeleteStatsObject, VsanPerfDeleteStatsObjectTask, VsanPerfDeleteTimeRange, VsanPerfDiagnose, VsanPerfDiagnoseTask, VsanPerfGetAggregatedEntityTypes, VsanPerfGetSupportedDiagnosticExceptions, VsanPerfGetSupportedEntityTypes, VsanPerfQueryClusterHealth, VsanPerfQueryNodeInformation, VsanPerfQueryPerf, VsanPerfQueryStatsObjectInformation, VsanPerfQueryTimeRanges, VsanPerfSaveTimeRanges, VsanPerfSetStatsObjectPolicy, VsanPerfToggleVerboseMode

GetVsanPerfDiagnosisResult(getVsanPerfDiagnosisResult)

Returns the diagnosis result from the in memory cache for the supplied task. The task should have been returned by VsanPerfDiagnoseTask. This API is available only in the vCenter, it is not available at the end-host.

Combined Privileges Required (on vSphere ManagedEntity):
Privileges Required on
Global.Diagnostics ClusterComputeResource
* The RootFolder entity in above table refers to the vCenter server itself in the vCenter UI
* The ClusterComputeResource entity in above table refers to the cluster which is being operated on

* The Required Privileges section below is not used, please ignore.
Required Privileges
System.Read
Since
vSAN API 6.7

Parameters

NameTypeDescription
_thisManagedObjectReference A reference to the VsanPerformanceManager used to make the method call.
taskManagedObjectReference
to a Task

Task returned by VsanPerfDiagnoseTask
cluster*ManagedObjectReference
to a ComputeResource

vSAN cluster. Ignored if called against host.

Since vSAN API 6.7
*Need not be set

Return Value

Type Description
VsanPerfDiagnosticResult[]A list of performance issues.

Faults

Type Description
NotFoundThrown if no result is found in the cache for the specified task
RuntimeFaultThrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error.
Timedout
VsanFaultThrown if the caller doesn't have the required privilege, or the cluster has no hosts.

Events

Type
None

Show WSDL type definition



VsanPerfCreateStatsObject(createStatsObject)

Create the vSAN object/directory containing the vSAN Perf Stats DB. Creation of the object also starts the collection of statistics as a side effect, i.e., it effectively enables the vSAN performance service. Profile can be 3 formats:
  • VirtualMachineEmptyProfileSpec means to use the empty vSAN policy. This is not the default policy, but a policy where all fields have default values.
  • VirtualMachineDefinedProfileSpec where profileId is set, in which case this profileId will be looked up in SPBM for the detailed policy information.
  • VirtualMachineDefinedProfileSpec where profileId is an empty string and instead the profileData is set for extensionKey 'com.vmware.vim.sps'. In this case the objectData field can be either the vSAN expression format, or a SPBM XML string.

  • If no profile is supplied, and the call is executed against vCenter, then SPBM will be consulted for the vSAN datastore's default profile.
    Profile is ignored if executed against ESXi host.
  • If the vSAN object is already exist, return directly.
  • If vSAN is disabled, DestinationVsanDisabled exception will be raised.
  • If SPBM needs to be contacted, but SPBM is not available, RuntimeFault exception will be raised.
  • If the profileId can not be resolved with SPBM, InvalidArgument exception will be raised.
  • If objectData was provided but is neither of the two supported formats, InvalidArgument exception will be raised.
  • If the statsDB object can not be found, FileNotFound exception will be raised.
  • If the statsDB object failed to set the policy, e.g. because it is not accessible, FileNotWritable exception will be raised.
  • If called against VC, but no ESX host could be contacted to perform the operation NotFound exception will be raised.
  • Combined Privileges Required (on vSphere ManagedEntity):
    Privileges Required on
    Host.Inventory.EditCluster ClusterComputeResource
    * The RootFolder entity in above table refers to the vCenter server itself in the vCenter UI
    * The ClusterComputeResource entity in above table refers to the cluster which is being operated on

    * The Required Privileges section below is not used, please ignore.
    Required Privileges
    System.Read

    Parameters

    NameTypeDescription
    _thisManagedObjectReference A reference to the VsanPerformanceManager used to make the method call.
    cluster*ManagedObjectReference
    to a ComputeResource

    vSAN cluster. Ignored if called against host.

    Since vSphere API 5.5
    profile*VirtualMachineProfileSpec

    Profile to be used for the stats object, see above.

    Since vSphere API 5.5
    *Need not be set

    Return Value

    Type Description
    xsd:stringmounted path of the vSAN stats object (using "/" as path separator) i.e. /vmfs/volumes/vsan:525218c52dce3d62-e51a774ec7aef712/

    Faults

    Type Description
    CannotCreateFileThrown if it cannot complete file creation operation.
    FileAlreadyExistsThrown if the stats object already exists.
    NotFoundThrown if no ESXi host could be contacted to perform the operation when called against vCenter.
    NotSupported
    RuntimeFaultThrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error.
    VsanFaultThrown if the pre-check tests failed.

    Events

    Type
    None

    Show WSDL type definition



    VsanPerfCreateStatsObjectTask(createStatsObjectTask)

    The asynchronous API of CreateStatsObject. The stats obj is created in in background, with a task returned. This method is only supported on vCenter.

    Combined Privileges Required (on vSphere ManagedEntity):
    Privileges Required on
    Host.Inventory.EditCluster ClusterComputeResource
    * The RootFolder entity in above table refers to the vCenter server itself in the vCenter UI
    * The ClusterComputeResource entity in above table refers to the cluster which is being operated on

    * The Required Privileges section below is not used, please ignore.
    Required Privileges
    System.Read

    Parameters

    NameTypeDescription
    _thisManagedObjectReference A reference to the VsanPerformanceManager used to make the method call.
    cluster*ManagedObjectReference
    to a ComputeResource

    vSAN cluster. Ignored if called against host.

    Since vSphere API 5.5
    profile*VirtualMachineProfileSpec

    Profile to be used for the stats object, see above

    Since vSphere API 5.5
    *Need not be set

    Return Value

    Type Description
    ManagedObjectReference
    to a Task
    vim task

    Faults

    Type Description
    NotSupported
    RuntimeFaultThrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error.
    VsanFaultThrown if the caller doesn't have the required privilege, or the cluster has no hosts.

    Events

    Type
    None

    Show WSDL type definition



    VsanPerfDeleteStatsObject(deleteStatsObject)

    Delete vSAN object/directory containing the vSAN Perf Stats DB. This method is only supported on ESXi host. Note: this will destroy all history and shut down the vSAN performance service. If the vSAN object doesn't exist, FileNotWritable exception will be raised. If vSAN is disabled, DestinationVsanDisabled exception will be raised. The operation can only be performed by masters, so VsanNodeNotMaster is raised when the node is not Stats master.

    Combined Privileges Required (on vSphere ManagedEntity):
    Privileges Required on
    Host.Inventory.EditCluster ClusterComputeResource
    * The RootFolder entity in above table refers to the vCenter server itself in the vCenter UI
    * The ClusterComputeResource entity in above table refers to the cluster which is being operated on

    * The Required Privileges section below is not used, please ignore.
    Required Privileges
    System.Read

    Parameters

    NameTypeDescription
    _thisManagedObjectReference A reference to the VsanPerformanceManager used to make the method call.
    cluster*ManagedObjectReference
    to a ComputeResource

    vSAN cluster. Ignored if called against host.

    Since vSphere API 5.5
    *Need not be set

    Return Value

    Type Description
    xsd:booleanTrue on success

    Faults

    Type Description
    CannotCreateFileThrown if it cannot complete file creation operation.
    FileNotWritable
    NotFoundThrown if no ESXi host could be contacted to perform the operation when called against vCenter.
    NotSupported
    RuntimeFaultThrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error.
    VsanFaultThrown if the pre-check tests failed, or the host in the states that do not allow objects deletion (i.e. maintenance mode with data migration mode: ensure accessibility).
    VsanNodeNotMaster

    Events

    Type
    None

    Show WSDL type definition



    VsanPerfDeleteStatsObjectTask(deleteStatsObjectTask)

    The asynchronous API of DeleteStatsObject. The statistics object is created in background, with a task returned. This method is only supported on vCenter.

    Combined Privileges Required (on vSphere ManagedEntity):
    Privileges Required on
    Host.Inventory.EditCluster ClusterComputeResource
    * The RootFolder entity in above table refers to the vCenter server itself in the vCenter UI
    * The ClusterComputeResource entity in above table refers to the cluster which is being operated on

    * The Required Privileges section below is not used, please ignore.
    Required Privileges
    System.Read

    Parameters

    NameTypeDescription
    _thisManagedObjectReference A reference to the VsanPerformanceManager used to make the method call.
    cluster*ManagedObjectReference
    to a ComputeResource

    vSAN cluster. Ignored if called against host.

    Since vSphere API 5.5
    *Need not be set

    Return Value

    Type Description
    ManagedObjectReference
    to a Task
    vim task

    Faults

    Type Description
    NotSupported
    RuntimeFaultThrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error.
    VsanFaultThrown if the caller doesn't have the required privilege, or the cluster has no hosts.

    Events

    Type
    None

    Show WSDL type definition



    VsanPerfDeleteTimeRange(deleteTimeRange)

    Delete saved time range in performance service.

    Combined Privileges Required (on vSphere ManagedEntity):
    Privileges Required on
    Global.Diagnostics RootFolder
    * The RootFolder entity in above table refers to the vCenter server itself in the vCenter UI
    * The ClusterComputeResource entity in above table refers to the cluster which is being operated on

    * The Required Privileges section below is not used, please ignore.
    Required Privileges
    System.Read
    Since
    vSAN API 6.6

    Parameters

    NameTypeDescription
    _thisManagedObjectReference A reference to the VsanPerformanceManager used to make the method call.
    cluster*ManagedObjectReference
    to a ClusterComputeResource

    Since vSAN API 6.6
    namexsd:string

    Delete by the name of VsanPerfTimeRange
    *Need not be set

    Return Value

    Type Description
    None

    Faults

    Type Description
    InvalidArgument
    NotFound
    NotSupported
    RuntimeFaultThrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error.
    Timedout
    VsanNodeNotMaster

    Events

    Type
    None

    Show WSDL type definition



    VsanPerfDiagnose(vsanPerfDiagnose)

    Deprecated. As of vSphere API 6.7, please use VsanPerfDiagnoseTask instead.

    Combined Privileges Required (on vSphere ManagedEntity):
    Privileges Required on
    System.Read ClusterComputeResource
    * The RootFolder entity in above table refers to the vCenter server itself in the vCenter UI
    * The ClusterComputeResource entity in above table refers to the cluster which is being operated on

    * The Required Privileges section below is not used, please ignore.

    API to do performance diagnosis.
    Required Privileges
    System.Read
    Since
    vSAN API 6.6

    Parameters

    NameTypeDescription
    _thisManagedObjectReference A reference to the VsanPerformanceManager used to make the method call.
    perfDiagnoseQueryVsanPerfDiagnoseQuerySpec

    The query describing details of diagnosis required, such as the period of diagnosis and the query type.
    cluster*ManagedObjectReference
    to a ComputeResource

    vSAN cluster. Ignored if called against host.

    Since vSAN API 6.6
    *Need not be set

    Return Value

    Type Description
    VsanPerfDiagnosticResult[]The list of performance issues found. Each performance issue is returned as a VsanPerfDiagnosticResult. The VsanPerfDiagnosticResult object will contain the entity and the metrics that caused the performance exception.

    Faults

    Type Description
    InvalidArgument
    NotFound
    NotSupported
    RuntimeFaultThrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error.
    Timedout
    VsanNodeNotMaster

    Events

    Type
    None

    Show WSDL type definition



    VsanPerfDiagnoseTask(vsanPerfDiagnoseTask)

    Runs a diagnostic query to determine performance issues in a vSAN cluster. This API call investigates the state of the vSAN cluster during the chosen period of time, and returns any issues (list of VsanPerfDiagnosticResult) that may be limiting the performance of the vSAN cluster. This API is available from only the vCenter, it is not available at the end-host. Processing is performed in the background, and a task is returned. Please wait for the task to finish, and then call GetVsanPerfDiagnosisResult to retrieve results.

    Combined Privileges Required (on vSphere ManagedEntity):
    Privileges Required on
    Global.Diagnostics ClusterComputeResource
    * The RootFolder entity in above table refers to the vCenter server itself in the vCenter UI
    * The ClusterComputeResource entity in above table refers to the cluster which is being operated on

    * The Required Privileges section below is not used, please ignore.
    Required Privileges
    System.Read
    Since
    vSAN API 6.7

    Parameters

    NameTypeDescription
    _thisManagedObjectReference A reference to the VsanPerformanceManager used to make the method call.
    perfDiagnoseQueryVsanPerfDiagnoseQuerySpec

    The query describing details of diagnosis required, such as the period of diagnosis and the query type.
    cluster*ManagedObjectReference
    to a ComputeResource

    vSAN cluster. Ignored if called against host.

    Since vSAN API 6.7
    *Need not be set

    Return Value

    Type Description
    ManagedObjectReference
    to a Task
    A task doing the asynchronous work.

    Faults

    Type Description
    InvalidArgumentThrown if the set of arguments passed to the function is not specified correctly.
    NotFoundThrown if no ESXi host could be contacted to perform the operation when called against vCenter or if the API was not invoked on vCenter or if CEIP is not enabled
    RuntimeFaultThrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error.
    Timedout
    VsanFaultThrown if the caller doesn't have the required privilege, or the cluster has no hosts.
    VsanNodeNotMaster

    Events

    Type
    None

    Show WSDL type definition



    VsanPerfGetAggregatedEntityTypes(getAggregatedEntityTypes)

    Get supported aggregated entity types for front end data-driven reporting of diagnostic exceptions which return aggregated data. This API can be used to build performance graphs of aggregated data in a dynamic way.
    Required Privileges
    System.Read
    Since
    vSAN API 6.7

    Parameters

    NameTypeDescription
    _thisManagedObjectReference A reference to the VsanPerformanceManager used to make the method call.

    Return Value

    Type Description
    VsanPerfEntityType[]

    Faults

    Type Description
    NotFound
    RuntimeFaultThrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error.

    Events

    Type
    None

    Show WSDL type definition



    VsanPerfGetSupportedDiagnosticExceptions(getSupportedDiagnosticExceptions)

    Get supported performance exceptions for front end data-driven performance exception reporting
    Required Privileges
    System.Read
    Since
    vSAN API 6.6

    Parameters

    NameTypeDescription
    _thisManagedObjectReference A reference to the VsanPerformanceManager used to make the method call.

    Return Value

    Type Description
    VsanPerfDiagnosticException[]

    Faults

    Type Description
    RuntimeFaultThrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error.

    Events

    Type
    None

    Show WSDL type definition



    VsanPerfGetSupportedEntityTypes(getSupportedEntityTypes)

    This API is used to build performance graphs in a data-driven and dynamic way. Before querying stats, you need to know the entity type for specifying entity ID of the query spec. If you want to query specific metrics, you need to know what metrics are supported by that type of entities. And you may want to know how to organize the metrics into different graphs. The returned list of VsanPerfEntityType data model tells you all the information you needed for above questions.
    Each VsanPerfEntityType object describes supported metrics grouped by graphs for a type of entities like VMs. The name attribute of VsanPerfEntityType is the entity type ID used as part of the entity ID in the query spec. See entityRefId.
    The model of vim.cluster.VsanPerfEntityType defines a list of performance graphs (VsanPerfGraph). And VsanPerfGraph defines a list of metrics (VsanPerfMetricId). This tells you how to organized different metrics to a graph and supported metrics of a type of entities. Then front-end/client can compose query specs using the information from the VsanPerfEntityType list and entity instance UUIDs to retrieved wanted performance statistics.
    Required Privileges
    System.Read

    Parameters

    NameTypeDescription
    _thisManagedObjectReference A reference to the VsanPerformanceManager used to make the method call.

    Return Value

    Type Description
    VsanPerfEntityType[]

    Faults

    Type Description
    RuntimeFaultThrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error.

    Events

    Type
    None

    Show WSDL type definition



    VsanPerfQueryClusterHealth(queryClusterHealth)

    Compute the health summary of the cluster with regards to the performance service. Will return health summary groups (VsanClusterHealthGroup) that express the health of the vSAN Performance Service. This method is supported on both vCenter and host.
    When it is invoked on an ESXi host, the behaviors depends on the managed objects on which it invokes. If it is invoked on instance with mo id "vsan-performance-manager", it only includes current ESXi host performance health information, while for mo id "vsan-cluster-performance-manager", it includes information of hosts belonging to the whole vSAN cluster, similar as invoked against vCenter. If no ESXi host could be contacted to perform the operation NotFound exception will be raised.

    Combined Privileges Required (on vSphere ManagedEntity):
    Privileges Required on
    System.Read ClusterComputeResource
    * The RootFolder entity in above table refers to the vCenter server itself in the vCenter UI
    * The ClusterComputeResource entity in above table refers to the cluster which is being operated on

    * The Required Privileges section below is not used, please ignore.
    Required Privileges
    System.Read

    Parameters

    NameTypeDescription
    _thisManagedObjectReference A reference to the VsanPerformanceManager used to make the method call.
    clusterManagedObjectReference
    to a ClusterComputeResource

    The cluster for which to compute health for.

    Return Value

    Type Description
    DynamicData[]vim.cluster.VsanClusterHealthGroup[] A list of health groups.

    Faults

    Type Description
    NotFoundThrown if no ESXi host could be contacted to perform the operation when called against vCenter.
    RuntimeFaultThrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error.

    Events

    Type
    None

    Show WSDL type definition



    VsanPerfQueryNodeInformation(queryNodeInformation)

    Query performance service related information about the node(s). Always returns a list, but when run against the host the list is guaranteed to have length=1. If run against vCenter, information about all hosts in the cluster is retrieved. If information of one host can not be retrieved, there are 2 situations:
    1. If the host is connected: it will throw "invalid Request", "method fault", "vsan fault" or other run time exception message.
    2. If the host is not connected, it will throw "host is not in connected status" message.

    Combined Privileges Required (on vSphere ManagedEntity):
    Privileges Required on
    System.Read ClusterComputeResource
    * The RootFolder entity in above table refers to the vCenter server itself in the vCenter UI
    * The ClusterComputeResource entity in above table refers to the cluster which is being operated on

    * The Required Privileges section below is not used, please ignore.
    Required Privileges
    System.Read

    Parameters

    NameTypeDescription
    _thisManagedObjectReference A reference to the VsanPerformanceManager used to make the method call.
    cluster*ManagedObjectReference
    to a ComputeResource

    vSAN cluster. Ignored if called against host.

    Since vSphere API 5.5
    *Need not be set

    Return Value

    Type Description
    VsanPerfNodeInformation[]

    Faults

    Type Description
    NotSupported
    RuntimeFaultThrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error.

    Events

    Type
    None

    Show WSDL type definition



    VsanPerfQueryPerf(queryVsanPerf)

    Retrieves the performance metrics for the specified vSAN entity (or entities) based on the properties specified in the VsanPerfQuerySpec data object The supported entity types are listed as bellow.
  • 'cluster-domclient'
  • 'cluster-domcompmgr'
  • 'host-domclient'
  • 'host-domcompmgr'
  • 'cache-disk'
  • 'capacity-disk'
  • 'disk-group'
  • 'vscsi'
  • 'virtual-machine'
  • 'virtual-disk'
  • 'vsan-host-net'
  • 'vsan-vnic-net'
  • 'vsan-pnic-net'
  • 'lsom-world-cpu'
  • 'dom-world-cpu'
  • 'host-cpu'
  • The below entity types are used for vSAN iSCSI service related metrics. The metrics are only collected when vSAN iSCSI service is enabled.
  • 'vsan-iscsi-host'
  • 'vsan-iscsi-lun'
  • 'vsan-iscsi-target'
  • The below entity type is used for vSAN datastore capacity historical data.
  • 'vsan-cluster-capacity'
  • To identify an entity in vSAN performance query spec, a vSAN performance entity reference is used.
    An vSAN performance entity is in this format <entity-type>:<entity-uuid>.
    Below are the examples:
    Entity Type Entity ID format Example Notes
    cluster-domclient <cluster-UUID> 'cluster-domclient:52c89b61-f818-e495-af20-816d24c850b8' The UUID is represented by the associated cluster UUID.
    cluster-domcompmgr <cluster-UUID> 'cluster-domcompmgr:52c89b61-f818-e495-af20-816d24c850b8' The UUID is represented by the associated cluster UUID.
    host-domclient <host-UUID> 'host-domclient:588b2225-c58c-8365-c47b-02001065be12' The UUID is represented by the associated ESXi host UUID.
    host-domcompmgr <host-UUID> 'host-domcompmgr:588b2225-c58c-8365-c47b-02001065be12' The UUID is represented by the associated ESXi host UUID.
    cache-disk <CacheDisk-UUID> 'cache-disk:55c98c4d-41f0-6ff7-2784-0200103eb5e1' The UUID is represented by the associated cache disk UUID.
    capacity-disk <CapacityDisk-UUID> 'capacity-disk:55c98c4d-41f0-6ff7-2784-0200103eb5e1' The UUID is represented by the associated capacity disk UUID.
    disk-group <CacheDisk-UUID> 'disk-group:55c98c4d-41f0-6ff7-2784-0200103eb5e1' The UUID is represented by the associated disk group UUID, which is the same as cache disk UUID.
    vscsi <VM-instance-UUID>|<VSCSI-name> 'vscsi:55c98c4d-41f0-6ff7-2784-0200103eb5e1|vscsi0:1' The UUID is represented by the associated VM instance UUID with its VSCSI name. Virtual disk IOPS limit statistics are associated with 'virtual-disk'.
    virtual-disk <VM-dir-uuid>/<VMDK-file-name> 'virtual-disk:a2a04b57-e0e6-502b-e4a0-0200073bd703/iops-160-10.160.109.28-1_1.vmdk' The UUID is represented by the VMDK file path, which can be retrieved using the vSphere API.
    vsan-vnic-net <host-UUID>|<stack-name>|<vnic-name> 'vsan-vnic-net:588b2225-c58c-8365-c47b-02001065be12|defaultTcpipStack|vmknic0' The UUID is represented by the associated ESXi host UUID with its stack name and vNIC name.
    vsan-pnic-net <host-UUID>|<pnic-name> 'vsan-pnic-net:588b2225-c58c-8365-c47b-02001065be12|vmnic0' This UUID is represented by the associated ESXi host UUID with the pNIC name.
    lsom-world-cpu <host-UUID>|<world-name>|<world-id> 'lsom-world-cpu:5ad47458-3bca-870a-602c-02002c89fe44|VSAN_0x43050bf3f7f8_LSOMLLOG|1001393599' The UUID is represented by the associated ESXi host UUID with the LSOM world name and its world ID.
    dom-world-cpu <host-UUID>|<world-name>|<world-id> 'dom-world-cpu:5ad47458-3bca-870a-602c-02002c89fe44|VSAN_0x430bfa348888_CompServer|1001393015' The UUID is represented by the associated ESXi host UUID with its DOM world name and world ID.
    host-cpu <host-UUID> 'host-cpu:5ad47458-3bca-870a-602c-02002c89fe44' The UUID is represented by the associated ESXi host UUID.
    iscsi-target-alias <iscsi-target-alias>|<lunid> 'iscsi-target-alias:iscsitargetaliasexample|1' The UUID is represented by iSCSI target alias with the LUN ID.
    vsan-datastore-capacity <cluster-UUID> 'vsan-cluster-capacity:52c89b61-f818-e495-af20-816d24c850b8' The UUID is represented by the associated cluster UUID.

    Supported metrics for each entity type:
    Entity TypeMetrics (Labels)
    'cluster-domclient' 'iopsRead', 'throughputRead', 'latencyAvgRead', 'iopsWrite', 'throughputWrite', 'latencyAvgWrite', 'congestion', 'oio'
    'cluster-domcompmgr' 'iopsRead', 'throughputRead', 'latencyAvgRead', 'iopsWrite', 'throughputWrite', 'latencyAvgWrite', 'iopsRecWrite', 'throughputRecWrite', 'latencyAvgRecWrite', 'congestion', 'oio', 'iopsResyncRead', 'tputResyncRead', 'latAvgResyncRead'
    'host-domclient' 'iopsRead', 'throughputRead', 'latencyAvgRead', 'readCount', 'iopsWrite', 'throughputWrite', 'latencyAvgWrite', 'writeCount', 'congestion', 'oio', 'clientCacheHits', 'clientCacheHitRate', 'iopsUnmap', 'throughputUnmap', 'latencyAvgUnmap'
    'host-domcompmgr' 'iopsRead', 'throughputRead', 'latencyAvgRead', 'readCount', 'iopsWrite', 'throughputWrite', 'latencyAvgWrite', 'writeCount', 'iopsRecWrite', 'throughputRecWrite', 'latencyAvgRecWrite', 'recWriteCount', 'congestion', 'oio', 'iopsResyncRead', 'tputResyncRead', 'latAvgResyncRead', 'iopsUnmap', 'iopsRecUnmap', 'throughputUnmap', 'throughputRecUnmap', 'latencyAvgUnmap', 'latencyAvgRecUnmap'
    'cache-disk' 'iopsDevRead', 'throughputDevRead', 'latencyDevRead', 'ioCountDevRead', 'iopsDevWrite', 'throughputDevWrite', 'latencyDevWrite', 'ioCountDevWrite', 'latencyDevDAvg', 'latencyDevGAvg'
    'capacity-disk' 'iopsDevRead', 'throughputDevRead', 'latencyDevRead', 'ioCountDevRead', 'iopsDevWrite', 'throughputDevWrite', 'latencyDevWrite', 'ioCountDevWrite', 'latencyDevDAvg', 'latencyDevGAvg', 'iopsRead', 'latencyRead', 'ioCountRead', 'iopsWrite', 'latencyWrite', 'ioCountWrite'
    'disk-group' 'iopsSched', 'latencySched', 'outstandingBytesSched', 'iopsSchedQueueRec', 'throughputSchedQueueRec','latencySchedQueueRec', 'iopsSchedQueueVM', 'throughputSchedQueueVM','latencySchedQueueVM', 'iopsSchedQueueMeta', 'throughputSchedQueueMeta','latencySchedQueueMeta', 'iopsDelayPctSched', 'latencyDelaySched', 'rcHitRate', 'wbFreePct', 'warEvictions', 'quotaEvictions', 'iopsRcRead', 'latencyRcRead', 'ioCountRcRead', 'iopsWbRead', 'latencyWbRead', 'ioCountWbRead', 'iopsRcWrite', 'latencyRcWrite', 'ioCountRcWrite', 'iopsWbWrite', 'latencyWbWrite', 'ioCountWbWrite', 'ssdBytesDrained', 'zeroBytesDrained', 'memCongestion', 'slabCongestion', 'ssdCongestion', 'iopsCongestion', 'logCongestion', 'compCongestion', 'iopsDirectSched', 'iopsRead', 'throughputRead', 'latencyAvgRead', 'readCount', 'iopsWrite', 'throughputWrite', 'latencyAvgWrite', 'writeCount', 'oioWrite', 'oioRecWrite', 'oioWriteSize', 'oioRecWriteSize', 'rcSize', 'wbSize', 'capacity', 'capacityUsed', 'capacityReserved', 'throughputSched', 'iopsResyncReadPolicy', 'iopsResyncReadDecom', 'iopsResyncReadRebalance', 'iopsResyncReadFixComp', 'iopsResyncWritePolicy', 'iopsResyncWriteDecom', 'iopsResyncWriteRebalance', 'iopsResyncWriteFixComp', 'tputResyncReadPolicy', 'tputResyncReadDecom', 'tputResyncReadRebalance', 'tputResyncReadFixComp', 'tputResyncWritePolicy', 'tputResyncWriteDecom', 'tputResyncWriteRebalance', 'tputResyncWriteFixComp', 'latResyncReadPolicy', 'latResyncReadDecom', 'latResyncReadRebalance', 'latResyncReadFixComp', 'latResyncWritePolicy', 'latResyncWriteDecom', 'latResyncWriteRebalance', 'latResyncWriteFixComp'
    'virtual-machine' 'iopsRead', 'throughputRead', 'latencyReadAvg', 'latencyReadStddev', 'readCount', 'iopsWrite', 'throughputWrite', 'latencyWriteAvg', 'latencyWriteStddev', 'writeCount'
    'vscsi' 'iopsRead', 'throughputRead', 'latencyRead', 'readCount', 'iopsWrite', 'throughputWrite', 'latencyWrite', 'writeCount'
    'virtual-disk' 'iopsLimit', 'NIOPS', 'NIOPSDelayed'
    'vsan-host-net' 'rxThroughput', 'rxPackets', 'rxPacketsLossRate', 'txThroughput', 'txPackets', 'txPacketsLossRate', 'tcpTxRexmitRate', 'tcpRxErrRate'
    'vsan-vnic-net' 'rxThroughput', 'rxPackets', 'rxPacketsLossRate', 'txThroughput', 'txPackets', 'txPacketsLossRate', 'portRxDrops', 'portTxDrops'
    'vsan-pnic-net' 'rxThroughput', 'rxPackets', 'rxPacketsLossRate', 'txThroughput', 'txPackets', 'txPacketsLossRate', 'portRxDrops', 'portTxDrops'
    'lsom-world-cpu' 'usedPct', 'readyPct'
    'dom-world-cpu' 'usedPct', 'readyPct'
    'host-cpu' 'coreUtilPct', 'pcpuUtilPct', 'pcpuUsedPct'
    'vsan-iscsi-host' 'iopsRead', 'iopsWrite', 'iopsTotal', 'bandwidthRead', 'bandwidthWrite', 'bandwidthTotal', 'latencyRead', 'latencyWrite', 'latencyTotal', 'queueDepth'
    'vsan-iscsi-target' 'iopsRead', 'iopsWrite', 'iopsTotal', 'bandwidthRead', 'bandwidthWrite', 'bandwidthTotal', 'latencyRead', 'latencyWrite', 'latencyTotal', 'queueDepth'
    'vsan-iscsi-lun' 'iopsRead', 'iopsWrite', 'iopsTotal', 'bandwidthRead', 'bandwidthWrite', 'bandwidthTotal', 'latencyRead', 'latencyWrite', 'latencyTotal', 'queueDepth'
    'vsan-cluster-capacity' 'total', 'used', 'free', 'savedByDedup', 'dedupRatio'

    Combined Privileges Required (on vSphere ManagedEntity):
    Privileges Required on
    System.Read ClusterComputeResource
    * The RootFolder entity in above table refers to the vCenter server itself in the vCenter UI
    * The ClusterComputeResource entity in above table refers to the cluster which is being operated on

    * The Required Privileges section below is not used, please ignore.
    Required Privileges
    System.Read

    Parameters

    NameTypeDescription
    _thisManagedObjectReference A reference to the VsanPerformanceManager used to make the method call.
    querySpecsVsanPerfQuerySpec[]

    A array of VsanPerfQuerySpec objects. The VsanPerfQuerySpec object specifies a reference for an entity, plus optional criteria for filtering results. Only metrics for the entities that can be resolved are returned in any result.
    The VsanPerfQuerySpec object in this operation can query for different metrics. Or, select all types of statistics for a single entity. See above for supported entity types, metric groups and metrics
    Note: To avoid performance and resource usage issues caused by massive stats data from a stats query. In each query, the startTime and endTime must be specified in the query spec. And the suggested time span is less than 24 hours. To query stats for larger time range, please use paging mechanism. For example, split the time range in to smaller ones, and use multiple status queries with smaller time ranges.
    cluster*ManagedObjectReference
    to a ComputeResource

    vSAN cluster. Ignored if called against host.

    Since vSphere API 5.5
    *Need not be set

    Return Value

    Type Description
    VsanPerfEntityMetricCSV[]The metric values for the specified entity or entities.

    Faults

    Type Description
    InvalidArgumentThrown if the set of arguments passed to the function is not specified correctly.
    NotFoundThrown if no ESXi host could be contacted to perform the operation when called against vCenter.
    NotSupportedThrown if the host queried is not a Stats Daemon master
    RuntimeFaultThrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error.
    Timedout
    VsanNodeNotMaster

    Events

    Type
    None

    Show WSDL type definition



    VsanPerfQueryStatsObjectInformation(queryStatsObjectInformation)

    Get information about the vSAN object/directory containing the vSAN Perf Stats DB. If the statsDB object can not be found, FileNotFound exception will be raised. If the statsDB object failed to read the policy, e.g. because it is not accessible, FileNotWritable exception will be raised. If called against vCenter, but no ESXi host could be contacted to perform the operation NotFound exception will be raised.

    Combined Privileges Required (on vSphere ManagedEntity):
    Privileges Required on
    System.Read ClusterComputeResource
    * The RootFolder entity in above table refers to the vCenter server itself in the vCenter UI
    * The ClusterComputeResource entity in above table refers to the cluster which is being operated on

    * The Required Privileges section below is not used, please ignore.
    Required Privileges
    System.Read

    Parameters

    NameTypeDescription
    _thisManagedObjectReference A reference to the VsanPerformanceManager used to make the method call.
    cluster*ManagedObjectReference
    to a ComputeResource

    vSAN cluster. Ignored if called against host.

    Since vSphere API 5.5
    *Need not be set

    Return Value

    Type Description
    VsanObjectInformationObject information structure

    Faults

    Type Description
    FileNotFound
    FileNotWritable
    NotFoundThrown if no ESXi host could be contacted to perform the operation when called against vCenter.
    NotSupported
    RuntimeFaultThrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error.

    Events

    Type
    None

    Show WSDL type definition



    VsanPerfQueryTimeRanges(queryTimeRanges)

    Query saved time ranges in performance service.

    Combined Privileges Required (on vSphere ManagedEntity):
    Privileges Required on
    System.Read ClusterComputeResource
    * The RootFolder entity in above table refers to the vCenter server itself in the vCenter UI
    * The ClusterComputeResource entity in above table refers to the cluster which is being operated on

    * The Required Privileges section below is not used, please ignore.
    Required Privileges
    System.Read
    Since
    vSAN API 6.6

    Parameters

    NameTypeDescription
    _thisManagedObjectReference A reference to the VsanPerformanceManager used to make the method call.
    cluster*ManagedObjectReference
    to a ClusterComputeResource

    Since vSAN API 6.6
    querySpecVsanPerfTimeRangeQuerySpec

    Specify the name and time boundaries. See details in VsanPerfTimeRangeQuerySpec
    *Need not be set

    Return Value

    Type Description
    VsanPerfTimeRange[]

    Faults

    Type Description
    InvalidArgument
    NotFound
    NotSupported
    RuntimeFaultThrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error.
    Timedout
    VsanNodeNotMaster

    Events

    Type
    None

    Show WSDL type definition



    VsanPerfSaveTimeRanges(saveTimeRanges)

    Save time ranges in performance service.

    Combined Privileges Required (on vSphere ManagedEntity):
    Privileges Required on
    Global.Diagnostics RootFolder
    * The RootFolder entity in above table refers to the vCenter server itself in the vCenter UI
    * The ClusterComputeResource entity in above table refers to the cluster which is being operated on

    * The Required Privileges section below is not used, please ignore.
    Required Privileges
    System.Read
    Since
    vSAN API 6.6

    Parameters

    NameTypeDescription
    _thisManagedObjectReference A reference to the VsanPerformanceManager used to make the method call.
    cluster*ManagedObjectReference
    to a ClusterComputeResource

    Since vSAN API 6.6
    timeRangesVsanPerfTimeRange[]

    VsanPerfTimeRange list to be saved.
    *Need not be set

    Return Value

    Type Description
    None

    Faults

    Type Description
    InvalidArgument
    NotFound
    NotSupported
    RuntimeFaultThrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error.
    Timedout
    VsanNodeNotMaster

    Events

    Type
    None

    Show WSDL type definition



    VsanPerfSetStatsObjectPolicy(setStatsObjectPolicy)

    Set the policy of the vSAN object/directory containing the vSAN Perf Stats DB. The cluster parameter is ignored if called on ESXi. Profile can be 3 formats:
  • 1. VirtualMachineEmptyProfileSpec means to use the empty vSAN policy. This is not the default policy, but a policy where all fields have default values.
  • 2. VirtualMachineDefinedProfileSpec where profileId is set, in which case this profileId will be looked up in SPBM for the detailed policy information.
  • 3. VirtualMachineDefinedProfileSpec where profileId is an empty string and instead the profileData is set for extensionKey 'com.vmware.vim.sps'. In this case the objectData field can be either the vSAN expression format, or a SPBM XML string.

  • If no profile is supplied, and the call is executed against vCenter, then SPBM will be consulted for the vSAN datastore's default profile.
    When this method returns successfully, the profile has been applied, but vSAN may still be remediating in order to implement the new policy. The health state of the object and resync information should be monitored to check on the progress.
    Only the third option is available when called on ESXi, other formats will raise InvalidArgument exception.
    Exception:
  • If SPBM needs to be contacted, but SPBM is not available, RuntimeFault exception will be raised.
  • If the profileId can not be resolved with SPBM, InvalidArgument exception will be raised.
  • If objectData was provided but is neither of the two supported formats, InvalidArgument exception will be raised.
  • If the statsDB object can not be found, FileNotFound exception will be raised.
  • If the statsDB object failed to set the policy, e.g. because it is not accessible, FileNotWritable exception will be raised.
  • If called against vCenter, but no ESXi host could be contacted to perform the operation NotFound exception will be raised.

  • Python code example:
    spec = vim.vm.DefinedProfileSpec()
    VsanPerfSetStatsObjectPolicy(self.clusterRef, spec)

    Combined Privileges Required (on vSphere ManagedEntity):
    Privileges Required on
    Host.Inventory.EditCluster ClusterComputeResource
    * The RootFolder entity in above table refers to the vCenter server itself in the vCenter UI
    * The ClusterComputeResource entity in above table refers to the cluster which is being operated on

    * The Required Privileges section below is not used, please ignore.
    Required Privileges
    System.Read

    Parameters

    NameTypeDescription
    _thisManagedObjectReference A reference to the VsanPerformanceManager used to make the method call.
    cluster*ManagedObjectReference
    to a ComputeResource

    vSAN cluster. Ignored if called against host.

    Since vSphere API 5.5
    profile*VirtualMachineProfileSpec

    See above description for all possible options.

    Since vSphere API 5.5
    *Need not be set

    Return Value

    Type Description
    xsd:booleanTrue

    Faults

    Type Description
    FileNotFound
    FileNotWritable
    InvalidArgument
    NotFoundThrown if no ESXi host could be contacted to perform the operation when called against vCenter.
    NotSupported
    RuntimeFaultThrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error.
    VsanFaultThrown if the caller doesn't have the required privilege

    Events

    Type
    None

    Show WSDL type definition



    VsanPerfToggleVerboseMode(toggleVerboseMode)

    Toggle vSAN performance service verbose mode.

    Combined Privileges Required (on vSphere ManagedEntity):
    Privileges Required on
    Global.Settings RootFolder
    * The RootFolder entity in above table refers to the vCenter server itself in the vCenter UI
    * The ClusterComputeResource entity in above table refers to the cluster which is being operated on

    * The Required Privileges section below is not used, please ignore.
    Required Privileges
    System.Read
    Since
    vSAN API 6.6

    Parameters

    NameTypeDescription
    _thisManagedObjectReference A reference to the VsanPerformanceManager used to make the method call.
    cluster*ManagedObjectReference
    to a ClusterComputeResource

    Since vSAN API 6.6
    verboseModexsd:boolean

    Switch of verbose mode, the type is boolean.
    *Need not be set

    Return Value

    Type Description
    None

    Faults

    Type Description
    InvalidArgument
    NotFound
    NotSupported
    RuntimeFaultThrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error.
    Timedout
    VsanNodeNotMaster

    Events

    Type
    None

    Show WSDL type definition