Managed Object - VasaProvider(sms.provider.VasaProvider)

Extends
SmsProvider
See also
AlarmFilter, AlarmResult, FailoverParam, FaultDomainId, GroupOperationResult, PromoteParam, QueryPointInTimeReplicaParam, QueryReplicationPeerResult, ReplicationGroupId, TestFailoverParam
Since
SMS API 2.0


Managed Object Description

VASA(vStorage APIs for Storage Awareness) provider definition.

Properties

Name Type Description
None
Properties inherited from SmsProvider
None

Methods

Methods defined in this Managed Object
FailoverReplicationGroup_Task, PrepareFailoverReplicationGroup_Task, PromoteReplicationGroup_Task, QueryActiveAlarm, QueryPointInTimeReplica, QueryReplicationGroup, QueryReplicationPeer, ReverseReplicateGroup_Task, SyncReplicationGroup_Task, TestFailoverReplicationGroupStart_Task, TestFailoverReplicationGroupStop_Task, VasaProviderReconnect_Task, VasaProviderRefreshCertificate_Task, VasaProviderRevokeCertificate_Task, VasaProviderSync_Task
Methods inherited from SmsProvider
QueryProviderInfo

FailoverReplicationGroup_Task(failoverReplicationGroup)

Failover the specified device groups. This function will always be called at the replication target location.
Required Privileges
StorageViews.ConfigureService
Since
SMS API 6.5

Parameters

NameTypeDescription
_thisManagedObjectReference A reference to the VasaProvider used to make the method call.
failoverParamFailoverParam

Settings for the failover.

Return Value

Type Description
ManagedObjectReference
to a SmsTask

Faults

Type Description
InactiveProviderThrown if the provider is inactive for the specified entity.
InvalidArgumentThrown if failoverParam is null or contains invalid data.
NotImplementedThrown if the provider does not implement this function.
ProviderBusyThrown if the provider is busy and cannot process the request.
ProviderOutOfResourceThrown if it is not possible to perform the operation due to lack of resources.
ProviderUnavailableThrown if the provider is temporarily unavailable.
RuntimeFaultThrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error.
SmsReplicationFaultThrown if an error is encountered while processing the request.
TooManyThrown if the Provider is unable to handle the given set of replication groups in one call. The client needs to call this method based on the maxBatchSize specified in the TooMany fault. If the maxBatchSize is not specified, the client is expected to call the function for each group individually (i.e. maxBatchSize = 1).

Events

Type
None



PrepareFailoverReplicationGroup_Task(prepareFailoverReplicationGroup)

Prepare to fail over the specified replication groups. This function is always called at the replication source location.
Required Privileges
StorageViews.ConfigureService
Since
SMS API 6.5

Parameters

NameTypeDescription
_thisManagedObjectReference A reference to the VasaProvider used to make the method call.
groupId*ReplicationGroupId[]

List of replication group IDs.
*Need not be set

Return Value

Type Description
ManagedObjectReference
to a SmsTask

Faults

Type Description
InactiveProviderThrown if the provider is inactive for the specified entity.
InvalidArgumentThrown if groupId is null or empty.
NotImplementedThrown if the provider does not implement this function.
ProviderBusyThrown if the provider is busy and cannot process the request.
ProviderOutOfResourceThrown if it is not possible to perform the operation due to lack of resources.
ProviderUnavailableThrown if the provider is temporarily unavailable.
RuntimeFaultThrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error.
SmsReplicationFaultThrown if an error is encountered while processing the request.
TooManyThrown if the Provider is unable to handle the given set of replication groups in one call. The client needs to call this method based on the maxBatchSize specified in the TooMany fault. If the maxBatchSize is not specified, the client is expected to call the function for each group individually (i.e. maxBatchSize = 1).

Events

Type
None



PromoteReplicationGroup_Task(promoteReplicationGroup)

Promotes the replication groups currently ReplicationState#INTEST to ReplicationState#FAILEDOVER. This function must be called at the replication target location.
Required Privileges
StorageViews.ConfigureService
Since
SMS API 6.5

Parameters

NameTypeDescription
_thisManagedObjectReference A reference to the VasaProvider used to make the method call.
promoteParamPromoteParam

Specifies an array of replication group IDs whose in-test devices (ReplicationStateEnum#INTEST) need to be promoted to failover ReplicationStateEnum#FAILEDOVER state.

Return Value

Type Description
ManagedObjectReference
to a SmsTask

Faults

Type Description
InactiveProviderThrown if the provider is inactive for the specified entity.
InvalidArgumentThrown if promoteParam is null or contains invalid data.
NotImplementedThrown if the provider does not implement this function.
ProviderBusyThrown if the provider is busy and cannot process the request.
ProviderOutOfResourceThrown if it is not possible to perform the operation due to lack of resources.
ProviderUnavailableThrown if the provider is temporarily unavailable.
RuntimeFaultThrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error.
SmsReplicationFaultThrown if an error is encountered while processing the request.
TooManyThrown if the Provider is unable to handle the given set of replication groups in one call. The client needs to call this method based on the maxBatchSize specified in the TooMany fault. If the maxBatchSize is not specified, the client is expected to call the function for each group individually (i.e. maxBatchSize = 1).

Events

Type
None



QueryActiveAlarm(queryActiveAlarm)

Query for the currently active alarms known to this VASA provider. Provider is expected to return Red and Yellow types of alarms only. No Green alarms should be included in the result for this API.
Required Privileges
StorageViews.View
Since
SMS API 6.5

Parameters

NameTypeDescription
_thisManagedObjectReference A reference to the VasaProvider used to make the method call.
alarmFilter*AlarmFilter

Filter criteria for the alarm state.
*Need not be set

Return Value

Type Description
AlarmResultAlarmResult containing all (or requested) active alarm objects owned by the VASA provider.

Faults

Type Description
InactiveProviderThrown if the provider is inactive for the specified entity.
InvalidArgumentThrown if invalid input is provided.
NotFoundThrown if the specified entity does not exist.
NotImplementedThrown if the provider does not implement this function.
ProviderBusyThrown if the provider is busy and cannot process the request.
ProviderUnavailableThrown if the provider is temporarily unavailable.
QueryExecutionFaultThrown if an error is encountered while processing the query request.
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



QueryPointInTimeReplica(queryPointInTimeReplica)

Query for the point-in-time replicas available at the target location.
Required Privileges
StorageViews.View
Since
SMS API 6.5

Parameters

NameTypeDescription
_thisManagedObjectReference A reference to the VasaProvider used to make the method call.
groupId*ReplicationGroupId[]

List of replication group IDs.
queryParam*QueryPointInTimeReplicaParam

Search criteria specification for all the groups.
*Need not be set

Return Value

Type Description
GroupOperationResult[]An array of GroupOperationResult elements.

Each of these elements is either GroupErrorResult or QueryPointInTimeReplicaSuccessResult or QueryPointInTimeReplicaSummaryResult for CDP capable replicators.

The fault in the result entry can be set to:

  • NotFound if the replication group identifier is not present.
  • DuplicateEntry if the replication group identifier is duplicate.
  • TooMany if the number of entries is too large to be returned in one call.
  • QueryExecutionFault for any other error.

  • Faults

    Type Description
    InactiveProviderThrown if the provider is inactive for the specified replication groups.
    InvalidArgumentThrown if groupId is null or empty, or queryParam is invalid.
    NotImplementedThrown if the provider does not implement this function.
    ProviderBusyThrown if the provider is busy and cannot process the request.
    ProviderUnavailableThrown if the provider is temporarily unavailable.
    QueryExecutionFaultThrown if an error is encountered while processing the query request.
    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



    QueryReplicationGroup(queryReplicationGroup)

    Query for the replication group details.
    Required Privileges
    StorageViews.View
    Since
    SMS API 6.5

    Parameters

    NameTypeDescription
    _thisManagedObjectReference A reference to the VasaProvider used to make the method call.
    groupId*ReplicationGroupId[]

    List of replication group IDs.
    *Need not be set

    Return Value

    Type Description
    GroupOperationResult[]An array of sms.storage.GroupOperationResult elements.

    If the input array is null or empty, VASA Provider needs to return all available replication groups. Depending on the number of replication groups to be returned, VASA Provider can return either a list of sms.storage.GroupOperationResult or a list of sms.storage.QueryReplicationGroupSuccessResult. However, VASA Provider should not return a hybrid result.

    If the input array is not empty, VASA Provider needs to return an array of results, one for each entry in the input. Each entry in the returned array is either a sms.storage.QueryReplicationGroupSuccessResult (for success), or a sms.storage.GroupErrorResult (for failure). The length of the result arrays must be the same as the input.

    The fault in the result entry can be set to:

  • NotFound if the replication group identifier is not present.
  • DuplicateEntry if the replication group identifier is duplicate.
  • TooMany if the number of entries is too large to be returned in one call.
  • QueryExecutionFault for any other error.

  • Faults

    Type Description
    InactiveProviderThrown if the provider is inactive for the specified replication groups.
    NotImplementedThrown if the provider does not implement this function.
    ProviderBusyThrown if the provider is busy and cannot process the request.
    ProviderUnavailableThrown if the provider is temporarily unavailable.
    QueryExecutionFaultThrown if an error is encountered while processing the query request.
    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



    QueryReplicationPeer(queryReplicationPeer)

    Query for the replication peer fault domains.
    Required Privileges
    StorageViews.View
    Since
    SMS API 6.5

    Parameters

    NameTypeDescription
    _thisManagedObjectReference A reference to the VasaProvider used to make the method call.
    faultDomainId*FaultDomainId[]

    An optional list of source fault domain ID.
    *Need not be set

    Return Value

    Type Description
    QueryReplicationPeerResult[]An array of sms.storage.QueryReplicationPeerResult.

    If the input array is null or empty, VASA provider needs to return result for all available source FaultDomain(s). If the input array is not empty, VASA Provider needs to return one entry in result for each entry in the input. The length of the input and result arrays must be same in that case.

    The fault in the result entry can be set to:

  • NotFound if the fault domain identifier is not present.
  • DuplicateEntry if the fault domain identifier is duplicate.
  • TooMany if the number of entries is too large to be returned in one call.
  • QueryExecutionFault for any other error.

  • Faults

    Type Description
    InactiveProviderThrown if the provider is inactive for the specified fault domains.
    NotImplementedThrown if the provider does not implement this function.
    ProviderBusyThrown if the provider is busy and cannot process the request.
    ProviderUnavailableThrown if the provider is temporarily unavailable.
    QueryExecutionFaultThrown if an error is encountered while processing the query request.
    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



    ReverseReplicateGroup_Task(reverseReplicateGroup)

    Initiate replication in the reverse way, making the currently ReplicationState#FAILEDOVER devices as sources.
    Required Privileges
    StorageViews.ConfigureService
    Since
    SMS API 6.5

    Parameters

    NameTypeDescription
    _thisManagedObjectReference A reference to the VasaProvider used to make the method call.
    groupId*ReplicationGroupId[]

    Array of replication groups (currently in ReplicationState#FAILEDOVER state) that need to be reversed.
    *Need not be set

    Return Value

    Type Description
    ManagedObjectReference
    to a SmsTask

    Faults

    Type Description
    InactiveProviderThrown if the provider is inactive for the specified entity.
    InvalidArgumentThrown if groupId is null or empty.
    NotImplementedThrown if the provider does not implement this function.
    ProviderBusyThrown if the provider is busy and cannot process the request.
    ProviderOutOfResourceThrown if it is not possible to perform the operation due to lack of resources.
    ProviderUnavailableThrown if the provider is temporarily unavailable.
    RuntimeFaultThrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error.
    SmsReplicationFaultThrown if an error is encountered while processing the request.
    TooManyThrown if the Provider is unable to handle the given set of replication groups in one call. The client needs to call this method based on the maxBatchSize specified in the TooMany fault. If the maxBatchSize is not specified, the client is expected to call the function for each group individually (i.e. maxBatchSize = 1).

    Events

    Type
    None



    SyncReplicationGroup_Task(syncReplicationGroup)

    Synchronize the data between source and replica for the specified replication group. This function will always be called at the replication target location.
    Required Privileges
    StorageViews.ConfigureService
    Since
    SMS API 6.5

    Parameters

    NameTypeDescription
    _thisManagedObjectReference A reference to the VasaProvider used to make the method call.
    groupId*ReplicationGroupId[]

    List of replication group IDs.
    pitNamexsd:string

    Localized name for the point-in-time snapshot created.
    *Need not be set

    Return Value

    Type Description
    ManagedObjectReference
    to a SmsTask

    Faults

    Type Description
    InactiveProviderThrown if the provider is inactive for the specified entity.
    InvalidArgumentThrown if groupId is null or empty, or pitName is null.
    NotImplementedThrown if the provider does not implement this function.
    ProviderBusyThrown if the provider is busy and cannot process the request.
    ProviderOutOfResourceThrown if it is not possible to perform the operation due to lack of resources.
    ProviderUnavailableThrown if the provider is temporarily unavailable.
    RuntimeFaultThrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error.
    SmsReplicationFaultThrown if an error is encountered while processing the request.
    TooManyThrown if the Provider is unable to handle the given set of replication groups in one call. The client needs to call this method based on the maxBatchSize specified in the TooMany fault. If the maxBatchSize is not specified, the client is expected to call the function for each group individually (i.e. maxBatchSize = 1).

    Events

    Type
    None



    TestFailoverReplicationGroupStart_Task(testFailoverReplicationGroupStart)

    Start a test failover for the specified replication groups. This function will always be called at the replication target location.
    Required Privileges
    StorageViews.ConfigureService
    Since
    SMS API 6.5

    Parameters

    NameTypeDescription
    _thisManagedObjectReference A reference to the VasaProvider used to make the method call.
    testFailoverParamTestFailoverParam

    Settings for the failover.

    Return Value

    Type Description
    ManagedObjectReference
    to a SmsTask

    Faults

    Type Description
    InactiveProviderThrown if the provider is inactive for the specified entity.
    InvalidArgumentThrown if testFailoverParam is null or contains invalid data.
    NotImplementedThrown if the provider does not implement this function.
    ProviderBusyThrown if the provider is busy and cannot process the request.
    ProviderOutOfResourceThrown if it is not possible to perform the operation due to lack of resources.
    ProviderUnavailableThrown if the provider is temporarily unavailable.
    RuntimeFaultThrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error.
    SmsReplicationFaultThrown if an error is encountered while processing the request.
    TooManyThrown if the Provider is unable to handle the given set of replication groups in one call. The client needs to call this method based on the maxBatchSize specified in the TooMany fault. If the maxBatchSize is not specified, the client is expected to call the function for each group individually (i.e. maxBatchSize = 1).

    Events

    Type
    None



    TestFailoverReplicationGroupStop_Task(testFailoverReplicationGroupStop)

    Stop the ongoing test failover. This function will always be called at the replication target location.
    Required Privileges
    StorageViews.ConfigureService
    Since
    SMS API 6.5

    Parameters

    NameTypeDescription
    _thisManagedObjectReference A reference to the VasaProvider used to make the method call.
    groupId*ReplicationGroupId[]

    Array of replication groups that need to stop test.
    forcexsd:boolean

    - if true, VP should force-unbind all Virtual Volumes and move the RG from INTEST to TARGET state. If false, VP will report all the Virtual Volumes which need to be cleaned up before a failover operation can be triggered. The default value will be false.
    *Need not be set

    Return Value

    Type Description
    ManagedObjectReference
    to a SmsTask

    Faults

    Type Description
    InactiveProviderThrown if the provider is inactive for the specified replication groups.
    InvalidArgumentThrown if groupId is null or empty.
    NotImplementedThrown if the provider does not implement this function.
    NotSupportedByProviderThrown if the provider does not support force operation.
    ProviderBusyThrown if the provider is busy and cannot process the request.
    ProviderOutOfResourceThrown if it is not possible to perform the operation due to lack of resources.
    ProviderUnavailableThrown if the provider is temporarily unavailable.
    RuntimeFaultThrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error.
    SmsReplicationFaultThrown if an error is encountered while processing the request.
    TooManyThrown if the Provider is unable to handle the given set of replication groups in one call. The client needs to call this method based on the maxBatchSize specified in the TooMany fault. If the maxBatchSize is not specified, the client is expected to call the function for each group individually (i.e. maxBatchSize = 1).

    Events

    Type
    None



    VasaProviderReconnect_Task(reconnect)

    Reconnect to the provider. This API will be used to reconnect to a provider that is in "disconnected" state. If reconnecting fails due to InvalidCertificate exception, that means the current provider certificate is expired or corrupted. Then user has to recover the provider following these steps: 1. Unregister the provider using sms.StorageManager.unregisterProvider 2. Provision a new self signed certificate for the provider 3. Register the provider using sms.StorageManager.registerProvider If the provider is not in "disconnected" state, this operation will be a no-op. Note: This API works only for providers that support VASA 2.0 and onwards.
    Required Privileges
    StorageViews.ConfigureService
    Since
    SMS API 5.0

    Parameters

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

    Return Value

    Type Description
    ManagedObjectReference
    to a SmsTask

    Faults

    Type Description
    InvalidCertificateThrown if the provider certificate is invalid
    ProviderConnectionFailedThrown if an error is encountered while reconnecting to the provider.
    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



    VasaProviderRefreshCertificate_Task(refreshCertificate)

    Refresh a CA signed certificate for the provider. This API will be used when provider certificate is about to expire, but still within soft or hard limit window. If the provider is in "disconnected" state, this operation will be a no-op. Note: This API works only for providers that support VASA 2.0 and onwards.
    Required Privileges
    StorageViews.ConfigureService
    Since
    SMS API 5.0

    Parameters

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

    Return Value

    Type Description
    ManagedObjectReference
    to a SmsTask

    Faults

    Type Description
    CertificateRefreshFailedThrown if an error is encountered while refreshing CA signed certificate for the provider.
    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



    VasaProviderRevokeCertificate_Task(revokeCertificate)

    Revoke CA signed certificate of the provider. This API will unregister the provider automatically. Note: This API works only for providers that support VASA 2.0 and onwards.
    Required Privileges
    StorageViews.ConfigureService
    Since
    SMS API 5.0

    Parameters

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

    Return Value

    Type Description
    ManagedObjectReference
    to a SmsTask

    Faults

    Type Description
    CertificateRevocationFailedThrown if an error is encountered while revoking CA signed certificate of the provider.
    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



    VasaProviderSync_Task(sync)

    Issue a sync for the given Storage Array.

    Required Privileges
    StorageViews.View

    Parameters

    NameTypeDescription
    _thisManagedObjectReference A reference to the VasaProvider used to make the method call.
    arrayId*xsd:string


    *Need not be set

    Return Value

    Type Description
    ManagedObjectReference
    to a SmsTask

    Faults

    Type Description
    InvalidArgumentThrown if invalid input is provided.
    ProviderSyncFailedThrown if an error is encountered while executing sync operation for the provider.
    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