|
APIs in Category: Migrate |
API version 5.0 |
MigrateCancel |
A set of APIs To MigrateStart Datasets and vFiler units. Migration APIs can be used To start migration, update migration relationships, complete migration, cancel migration and To cleanup stale storage after migration. In a typical migration sequence, MigrateStart would be issued To initiate baseline transfers To the destination. Subsequently, after a few MigrateUpdate calls, the user can select a suitable time and cutover To the new destination using MigrateComplete API. Once the MigrateComplete job finishes, data is served From the new destination. If in between, there is a need To cancel the migration, it can be done using MigrateCancel API. Once the migration is completed, the stale storage can be cleaned up From the Source storage system using MigrateCleanup API. |
| MigrateCancel (supported) | [top] |
Cancel the migration Operation for the specified vFiler Unit or Dataset. Error conditions:
- EDATABASEERROR - A database Error occurred while processing the Request.
- EACCESSDENIED - User does not have required Capabilities To initiate the MigrateStart Operation. If ObjectNameOrId refers To a Dataset, user should have DFM.Dataset.Write on the datset. If ObjectNameOrId refers To a vFiler Unit, user should have DFM.Resource.Control on the Dataset.
- EOBJECTAMBIGUOUS - When the specified object Name is ambiguous.
- EOBJECTNOTFOUND - When the specified vFiler Unit or Dataset is not found.
- EINVALIDMIGRATIONSTATUS - When the migration Status of the specified vFiler Unit is such that MigrateCancel Operation cannot be initiated.
Input Name Type MigrateCancel MigrateCancel
Output Name Type MigrateCancelResult MigrateCancelResult
Error Name Description EACCESSDENIED EDATABASEERROR EINVALIDMIGRATIONSTATUS EOBJECTAMBIGUOUS EOBJECTNOTFOUND
| MigrateChangeState (supported) | [top] |
Change the state of a migration Operation initiated for a vFiler Unit or Dataset. Only the following state changes are allowed through this API:
- Change From "migrated" To "not_started": This is used To retain stale storage on the Source hosting storage system and migrating a vFiler Unit again.
- Change From "migrated_with_errors" To "migrated": This is used To change the state after going through the Errors that occured after cutover and correcting them as necessary.
- Change From "rolledback_with_errors" To "rolledback": This is used To change the state after going through the Errors that occured after cutover and correcting them as necessary. Error conditions:
EDATABASEERROR - A database Error occurred while processing the Request. EACCESSDENIED - User does not have required Capabilities To initiate the MigrateStart Operation. If ObjectNameOrId refers To a Dataset, user should have DFM.Dataset.Write on the datset. If ObjectNameOrId refers To a vFiler Unit, user should have DFM.Resource.Control on the Dataset. EOBJECTAMBIGUOUS - When the specified object Name is ambiguous. EOBJECTNOTFOUND - When the specified vFiler Unit or Dataset is not found.
- EINVALIDMIGRATIONSTATUS - When the migration Status change is not allowed. EINVALIDINPUT - Invalid input specified.
Input Name Type MigrateChangeState MigrateChangeState
Output Name Type MigrateChangeStateResult MigrateChangeStateResult
Error Name Description EACCESSDENIED EDATABASEERROR EINVALIDINPUT EINVALIDMIGRATIONSTATUS EOBJECTAMBIGUOUS EOBJECTNOTFOUND
| MigrateCleanup (supported) | [top] |
Delete the stale storage associated with a migration Operation From the Source storage system. This will Destroy all the Volumes of the Source vFiler Unit after successful migration of the vFiler Unit. Error conditions:
- EDATABASEERROR - A database Error occurred while processing the Request.
- EACCESSDENIED - User does not have required Capabilities To initiate the MigrateStart Operation. If ObjectNameOrId refers To a Dataset, user should have DFM.Dataset.Write on the datset. If ObjectNameOrId refers To a vFiler Unit, user should have DFM.Resource.Control on the Dataset.
- EOBJECTAMBIGUOUS - When the specified object Name is ambiguous.
- EOBJECTNOTFOUND - When the specified vFiler Unit or Dataset is not found.
- EINVALIDMIGRATIONSTATUS - When the migration Status of the specified vFiler Unit is such that MigrateCleanup Operation cannot be initiated.
Input Name Type MigrateCleanup MigrateCleanup
Output Name Type MigrateCleanupResult MigrateCleanupResult
Error Name Description EACCESSDENIED EDATABASEERROR EINVALIDMIGRATIONSTATUS EOBJECTAMBIGUOUS EOBJECTNOTFOUND
| MigrateComplete (supported) | [top] |
Complete the migration Operation by doing a cutover From the Source vFiler Unit To destination vFiler Unit. As part of cutover Operation the following will be done: A script if specified, will be run in pre mode. The actual cutover will be carried out so that the Source vFiler Unit is destroyed and data will be served From the destination vFiler Unit. The script if specified, will be run in post mode after successful cutover. For all Volumes of the vFiler Unit, the protection relationships will be migrated To the new destination. All the backup versions will be modified so that they point appropriately To the newly created destination Volumes. The migration Status is changed To 'migrated' after a successful completion of migration. If MigrateComplete fails To cutover To destination storage, then the migration Status is changed To 'migrate-failed'. If the cutover To the destination storage succeeds during completion, but some of the subsequent steps like migrating the protection relationships, or copying the History data fails, then the Status is changed To 'migrated-with-errors'. Error conditions:
- EDATABASEERROR - A database Error occurred while processing the Request.
- EACCESSDENIED - User does not have required Capabilities To initiate the MigrateStart Operation. If ObjectNameOrId refers To a Dataset, user should have DFM.Dataset.Write on the datset. If ObjectNameOrId refers To a vFiler Unit, user should have DFM.Resource.Control on the Dataset.
- EOBJECTAMBIGUOUS - When the specified object Name is ambiguous.
- EOBJECTNOTFOUND - When the specified vFiler Unit or Dataset is not found.
- EINVALIDMIGRATIONSTATUS - When the specified vFiler Unit is not in "migrating" Status.
- EONLINENOTPOSSIBLE - When online migration cannot be performed, but offline migration is still possible.
Input Name Type MigrateComplete MigrateComplete
Output Name Type MigrateCompleteResult MigrateCompleteResult
Error Name Description EACCESSDENIED EDATABASEERROR EINVALIDMIGRATIONSTATUS EOBJECTAMBIGUOUS EOBJECTNOTFOUND EONLINENOTPOSSIBLE
| MigrateFix (supported) | [top] |
Fix the migration Status of a Dataset. This API should be called if migration job was aborted abnormally, due To server shutdown or machine reboot etc. It fixes the database entries and migration Status of the Dataset. It can be called only if the last migration job run on the Dataset terminated abnormally. Error conditions:
- EDATABASEERROR - A database Error occurred while processing the Request.
- EACCESSDENIED - User does not have required Capabilities To initiate the MigrateStart Operation. If ObjectNameOrId refers To a Dataset, user should have DFM.Dataset.Write on the datset. If ObjectNameOrId refers To a vFiler Unit, user should have DFM.Resource.Control on the Dataset.
- EOBJECTAMBIGUOUS - When the specified object Name is ambiguous.
- EOBJECTNOTFOUND - When the specified vFiler Unit or Dataset is not found.
- EINVALIDINPUT - Invalid input specified.
Input Name Type MigrateFix MigrateFix
Output Name Type MigrateFixResult MigrateFixResult
Error Name Description EACCESSDENIED EDATABASEERROR EINVALIDMIGRATIONSTATUS EOBJECTAMBIGUOUS EOBJECTNOTFOUND
| MigrateRollback (supported) | [top] |
Rollback the previous migrated vFiler Unit From the destination vFiler Unit To it's original Source vFiler Unit. As part of rollback Operation the following will be done: A script if specified, will be run in pre mode. Rollback will be carried out so that the destination vFiler Unit is destroyed and data will be served From the Source vFiler Unit. The script if specified, will be run in post mode after successful cutover. For all Volumes of the vFiler Unit, the protection relationships will be migrated To the new destination. All the backup versions will be modified so that they point appropriately To the newly created Source Volumes. The migration Status is changed To 'rolled_back' after a successful rollback. If MigrateRollback fails To cutover To Source storage, then the migration Status will be changed To 'migrated'. If the cutover To the Source storage succeeds during rollback, but some of the subsequent steps like migrating the protection relationships, or copying the History data fails, then the Status is changed To 'rolled_back_with_errors'. Error conditions:
- EDATABASEERROR - A database Error occurred while processing the Request.
- EACCESSDENIED - User does not have required Capabilities To initiate the MigrateStart Operation. If ObjectNameOrId refers To a Dataset, user should have DFM.Dataset.Write on the datset. If ObjectNameOrId refers To a vFiler Unit, user should have DFM.Resource.Control on the Dataset.
- EOBJECTAMBIGUOUS - When the specified object Name is ambiguous.
- EOBJECTNOTFOUND - When the specified vFiler Unit or Dataset is not found.
- EONLINENOTPOSSIBLE - When online migration cannot be performed, but offline migration is still possible.
Input Name Type MigrateRollback MigrateRollback
Output Name Type MigrateRollbackResult MigrateRollbackResult
Error Name Description EACCESSDENIED EDATABASEERROR EINVALIDMIGRATIONSTATUS EOBJECTAMBIGUOUS EOBJECTNOTFOUND EONLINENOTPOSSIBLE
| MigrateStart (supported) | [top] |
Start the migration Operation for a Dataset or a vFiler Unit. This initiates a baseline transfer for all the Volumes in the Source vFiler Unit and changes the migration Status To 'migrating'. When a Dataset is given as input then the following conditions should hold good: If any of these conditions are not met, then EMIGRATENOTSUPPORTED is returned. If PerformCutover is set To true, then MigrateComplete will be done after MigrateStart. Error conditions:
- A vFiler Unit should be attached To the primary node of the Dataset.
- All the Volumes of the vFiler Unit with the exception of the root storage should belong To this Dataset.
- For offline migration, the migrating vFiler Unit may contain Qtree as it's root storage.
- For online migration, the migrating vFiler Unit should contain a Volume as it's root storage.
- EDATABASEERROR - A database Error occurred while processing the Request.
- EACCESSDENIED - User does not have required Capabilities To initiate the MigrateStart Operation. If ObjectNameOrId refers To a Dataset, user should have DFM.Dataset.Write on the datset. If ObjectNameOrId refers To a vFiler Unit, user should have DFM.Resource.Control on the Dataset. If ResourceNameOrId refers To a Resource pool, user should have DFM.ResourcePool.Provision on it. If ResourceNameOrId refers To a storage system, user should have DFM.Resource.Control on it. If ProvisioningPolicyNameOrId is specified, user should have DFM.Policy.Read on it.
- EOBJECTAMBIGUOUS - When the specified object Name is ambiguous.
- EOBJECTNOTFOUND - When the specified vFiler Unit, Dataset, destination storage system or provisioning Policy is not found.
- EINVALIDMEMBERTYPE - When the specified Filer is in c-mode.
- EINVALIDINPUT - When invalid inputs are provided for IP Address, Netmask.
- EINVALIDMIGRATIONSTATUS - When the specified vFiler Unit is already in "migrating" Status or in a state where migration cannot be started.
- EMIGRATENOTSUPPORTED - When the Dataset or Source vFiler Unit cannot be migrated due To various reasons like invalid vFiler Status, ONTAP Version.
- EMIGRATEDESTINATIONSELECTIONFAILED - When a suitable storage system is not found as a destination for migration.
Input Name Type MigrateStart MigrateStart
Output Name Type MigrateStartResult MigrateStartResult
Error Name Description EACCESSDENIED EDATABASEERROR EINVALIDINPUT EINVALIDMEMBERTYPE EINVALIDMIGRATIONSTATUS EMIGRATEDESTINATIONSELECTIONFAILED EMIGRATENOTSUPPORTED EOBJECTAMBIGUOUS EOBJECTNOTFOUND
| MigrateUpdate (supported) | [top] |
Update all the SnapMirror relationships of a vFiler Unit for which migration Operation has been initiated. Error conditions:
- EDATABASEERROR - A database Error occurred while processing the Request.
- EACCESSDENIED - User does not have required Capabilities To initiate the MigrateStart Operation. If ObjectNameOrId refers To a Dataset, user should have DFM.Dataset.Write on the datset. If ObjectNameOrId refers To a vFiler Unit, user should have DFM.Resource.Control on the Dataset.
- EOBJECTAMBIGUOUS - When the specified object Name is ambiguous.
- EOBJECTNOTFOUND - When the specified vFiler Unit or Dataset is not found.
- EINVALIDMIGRATIONSTATUS - When the migration Status of the vFiler Unit is such that MigrateUpdate cannot be called.
Input Name Type MigrateUpdate MigrateUpdate
Output Name Type MigrateUpdateResult MigrateUpdateResult
Error Name Description EACCESSDENIED EDATABASEERROR EINVALIDMIGRATIONSTATUS EOBJECTAMBIGUOUS EOBJECTNOTFOUND
| MigrateVolume (supported) | [top] |
Migrate one or more Volumes From one Aggregate To another Aggregate on the same or different storage system. Currently this API works only for secondary Volumes i.e destinations of a Volume SnapMirror or Qtree SnapMirror relationships or if the Volumes are SnapVault secondaries. In addition To the above, the following rules must be satisfied To be able To MigrateStart Volumes using this API :-
- The Volume(s) should not have child clones (FlexClones).
- The Volume(s) should not have NFS exports, CIFS shares or contain LUNs mapped To storage clients.
- The Volumes(s) should be part of a Dataset (i.e either imported into Datasets, or provisioned by Protection Manager.) so that incoming and outgoing data protection relationships To and From the Volumes are managed by Protection Manager.
If the destination Aggregate is not specified, then the system will automatically select an Aggregate, based on the Type of the Volume, space requirements, provisioning and protection Policy configuration associated with the Dataset.
Input Name Type MigrateVolume MigrateVolume
Output Name Type MigrateVolumeResult MigrateVolumeResult
Error Name Description EACCESSDENIED EDATABASEERROR EDATASETBUSY EINVALIDINPUT EMIGRATEDESTINATIONSELECTIONFAILED EMIGRATENOTSUPPORTED EOBJECTAMBIGUOUS EOBJECTNOTFOUND
| Element definition: MigrateCancel | [top] |
Cancel the migration Operation for the specified vFiler Unit or Dataset. Error conditions:
- EDATABASEERROR - A database Error occurred while processing the Request.
- EACCESSDENIED - User does not have required Capabilities To initiate the MigrateStart Operation. If ObjectNameOrId refers To a Dataset, user should have DFM.Dataset.Write on the datset. If ObjectNameOrId refers To a vFiler Unit, user should have DFM.Resource.Control on the Dataset.
- EOBJECTAMBIGUOUS - When the specified object Name is ambiguous.
- EOBJECTNOTFOUND - When the specified vFiler Unit or Dataset is not found.
- EINVALIDMIGRATIONSTATUS - When the migration Status of the specified vFiler Unit is such that MigrateCancel Operation cannot be initiated.
Name Type Description DryRun xsd:boolean
optional
Indicates whether a dry run needs To be done of all the tasks To be performed as part of MigrateCancel Operation. Default Value is false. ObjectNameOrId ObjNameOrId
Full Name or identifier of the vFiler Unit or Dataset whose migration Operation has To be cancelled. The migration Status of the vFiler Unit or the vFiler Unit attached To the specified Dataset should be either "migrating" or "migrate_failed".
| Element definition: MigrateCancelResult | [top] |
Name Type Description DryRunResults ArrayOfDryRunResult
optional
Results of a dry run. Each Result describes one Action the system would take and the predicted effects of that Action. Only returned if DryRun is true. JobId xsd:integer
optional
Identifier of the job started To cancel the migration Operation. only returned if DryRun is false.
| Element definition: MigrateChangeState | [top] |
Change the state of a migration Operation initiated for a vFiler Unit or Dataset. Only the following state changes are allowed through this API:
- Change From "migrated" To "not_started": This is used To retain stale storage on the Source hosting storage system and migrating a vFiler Unit again.
- Change From "migrated_with_errors" To "migrated": This is used To change the state after going through the Errors that occured after cutover and correcting them as necessary.
- Change From "rolledback_with_errors" To "rolledback": This is used To change the state after going through the Errors that occured after cutover and correcting them as necessary. Error conditions:
EDATABASEERROR - A database Error occurred while processing the Request. EACCESSDENIED - User does not have required Capabilities To initiate the MigrateStart Operation. If ObjectNameOrId refers To a Dataset, user should have DFM.Dataset.Write on the datset. If ObjectNameOrId refers To a vFiler Unit, user should have DFM.Resource.Control on the Dataset. EOBJECTAMBIGUOUS - When the specified object Name is ambiguous. EOBJECTNOTFOUND - When the specified vFiler Unit or Dataset is not found.
- EINVALIDMIGRATIONSTATUS - When the migration Status change is not allowed. EINVALIDINPUT - Invalid input specified.
Name Type Description NewMigrationStatus MigrationStatus
The new migration Status for the vFiler Unit or Dataset. ObjectNameOrId ObjNameOrId
Full Name or identifier of the vFiler Unit or Dataset whose migration Status has To be changed.
| Element definition: MigrateChangeStateResult | [top] |
[none]
| Element definition: MigrateCleanup | [top] |
Delete the stale storage associated with a migration Operation From the Source storage system. This will Destroy all the Volumes of the Source vFiler Unit after successful migration of the vFiler Unit. Error conditions:
- EDATABASEERROR - A database Error occurred while processing the Request.
- EACCESSDENIED - User does not have required Capabilities To initiate the MigrateStart Operation. If ObjectNameOrId refers To a Dataset, user should have DFM.Dataset.Write on the datset. If ObjectNameOrId refers To a vFiler Unit, user should have DFM.Resource.Control on the Dataset.
- EOBJECTAMBIGUOUS - When the specified object Name is ambiguous.
- EOBJECTNOTFOUND - When the specified vFiler Unit or Dataset is not found.
- EINVALIDMIGRATIONSTATUS - When the migration Status of the specified vFiler Unit is such that MigrateCleanup Operation cannot be initiated.
Name Type Description DryRun xsd:boolean
optional
A DryRun flag that indicates To show a DryRun Result of the Volumes that will be destroyed as part of this cleanup Operation From the Source storage system. Default is false. ObjectNameOrId ObjNameOrId
Full Name or identifier of the vFiler Unit or the Dataset whose stale storage has To be cleaned up. The migration Status of the vFiler Unit or the vFiler Unit attached To the Dataset should be "migrated".
| Element definition: MigrateCleanupResult | [top] |
Name Type Description DryRunResults ArrayOfDryRunResult
optional
Results of a dry run. Each Result describes one Action the system would take and the predicted effects of that Action. Only returned if DryRun is true. JobId xsd:integer
optional
Identifier of the job started To cleanup storage after the migration Operation. Returned only when DryRun is false.
| Element definition: MigrateComplete | [top] |
Complete the migration Operation by doing a cutover From the Source vFiler Unit To destination vFiler Unit. As part of cutover Operation the following will be done: A script if specified, will be run in pre mode. The actual cutover will be carried out so that the Source vFiler Unit is destroyed and data will be served From the destination vFiler Unit. The script if specified, will be run in post mode after successful cutover. For all Volumes of the vFiler Unit, the protection relationships will be migrated To the new destination. All the backup versions will be modified so that they point appropriately To the newly created destination Volumes. The migration Status is changed To 'migrated' after a successful completion of migration. If MigrateComplete fails To cutover To destination storage, then the migration Status is changed To 'migrate-failed'. If the cutover To the destination storage succeeds during completion, but some of the subsequent steps like migrating the protection relationships, or copying the History data fails, then the Status is changed To 'migrated-with-errors'. Error conditions:
- EDATABASEERROR - A database Error occurred while processing the Request.
- EACCESSDENIED - User does not have required Capabilities To initiate the MigrateStart Operation. If ObjectNameOrId refers To a Dataset, user should have DFM.Dataset.Write on the datset. If ObjectNameOrId refers To a vFiler Unit, user should have DFM.Resource.Control on the Dataset.
- EOBJECTAMBIGUOUS - When the specified object Name is ambiguous.
- EOBJECTNOTFOUND - When the specified vFiler Unit or Dataset is not found.
- EINVALIDMIGRATIONSTATUS - When the specified vFiler Unit is not in "migrating" Status.
- EONLINENOTPOSSIBLE - When online migration cannot be performed, but offline migration is still possible.
Name Type Description DryRun xsd:boolean
optional
A DryRun flag that indicates To show a DryRun Result of the MigrateComplete Operation. Default is false. MaxCutoverTime xsd:integer
optional
The Value provided will be in seconds and this Value defines, the time by which non-disruptive migration should complete. Default Value is 120 seconds. Range [120..1800]. MigrateOffline xsd:boolean
optional
This flag is considered only when migration is started as online migration. When true, offline migration is performed. If false or not specified online migration is performed. This flag is ignored if the migration is not online. Default Value is false. ObjectNameOrId ObjNameOrId
Full Name or identifier of the vFiler Unit or the Dataset for which the migration Operation has To be completed. For a MigrateComplete Operation, the Source vFiler Unit should be given as input. The migration Status of the vFiler Unit or the vFiler Unit attached To the Dataset should be "migrating". PersistentMigratedRoutes xsd:boolean
optional
If this Option is set, then the migrated routes From the Source will be made persistent on the destination storage system. This input is ignored, if the RouteMigrationMode is 'none'. Default Value is true. RouteMigrationMode RouteMigrationMode
optional
Type of routes that needs To be migrated as part of cutover. RunDedupeScan xsd:boolean
optional
Indicates whether a full deduplication scan has To be run on the deduplication enabled Volumes of the migrating vFiler Unit on destination storage system after migration. This input is valid only for Volumes in the vFiler Unit which have deduplication turned on and ignored for other Volumes. Default is true. ScriptPath xsd:string
optional
Path To a script that will be run in pre and post mode just before and after cutover Operation.
| Element definition: MigrateCompleteResult | [top] |
Name Type Description DryRunResults ArrayOfDryRunResult
optional
Results of a dry run. Each Result describes one Action the system would take and the predicted effects of that Action. Only returned if DryRun is true. JobId xsd:integer
optional
Identifier of the job started To carry out the complete Operation. Returned only when DryRun flag is false.
| Element definition: MigrateFix | [top] |
Fix the migration Status of a Dataset. This API should be called if migration job was aborted abnormally, due To server shutdown or machine reboot etc. It fixes the database entries and migration Status of the Dataset. It can be called only if the last migration job run on the Dataset terminated abnormally. Error conditions:
- EDATABASEERROR - A database Error occurred while processing the Request.
- EACCESSDENIED - User does not have required Capabilities To initiate the MigrateStart Operation. If ObjectNameOrId refers To a Dataset, user should have DFM.Dataset.Write on the datset. If ObjectNameOrId refers To a vFiler Unit, user should have DFM.Resource.Control on the Dataset.
- EOBJECTAMBIGUOUS - When the specified object Name is ambiguous.
- EOBJECTNOTFOUND - When the specified vFiler Unit or Dataset is not found.
- EINVALIDINPUT - Invalid input specified.
Name Type Description DatasetNameOrId ObjNameOrId
optional
Full Name or identifier of the Dataset for which migration job was terminated abnormally. This field is deprecated now and ObjectNameOrId field should be used. This field will be ignored if ObjectNameOrId is specified. ObjectNameOrId ObjNameOrId
optional
Name of Id of the dataset/vfiler for which migration job was terminated abnormally.
| Element definition: MigrateFixResult | [top] |
Name Type Description JobId xsd:integer
Identifier of the job started To fix the previous crashed/stopped vFiler Unit migration.
| Element definition: MigrateRollback | [top] |
Rollback the previous migrated vFiler Unit From the destination vFiler Unit To it's original Source vFiler Unit. As part of rollback Operation the following will be done: A script if specified, will be run in pre mode. Rollback will be carried out so that the destination vFiler Unit is destroyed and data will be served From the Source vFiler Unit. The script if specified, will be run in post mode after successful cutover. For all Volumes of the vFiler Unit, the protection relationships will be migrated To the new destination. All the backup versions will be modified so that they point appropriately To the newly created Source Volumes. The migration Status is changed To 'rolled_back' after a successful rollback. If MigrateRollback fails To cutover To Source storage, then the migration Status will be changed To 'migrated'. If the cutover To the Source storage succeeds during rollback, but some of the subsequent steps like migrating the protection relationships, or copying the History data fails, then the Status is changed To 'rolled_back_with_errors'. Error conditions:
- EDATABASEERROR - A database Error occurred while processing the Request.
- EACCESSDENIED - User does not have required Capabilities To initiate the MigrateStart Operation. If ObjectNameOrId refers To a Dataset, user should have DFM.Dataset.Write on the datset. If ObjectNameOrId refers To a vFiler Unit, user should have DFM.Resource.Control on the Dataset.
- EOBJECTAMBIGUOUS - When the specified object Name is ambiguous.
- EOBJECTNOTFOUND - When the specified vFiler Unit or Dataset is not found.
- EONLINENOTPOSSIBLE - When online migration cannot be performed, but offline migration is still possible.
Name Type Description DryRun xsd:boolean
optional
Indicates whether a dry run needs To be done of all the tasks To be performed as part of MigrateRollback Operation. Default Value is false. MaxCutoverTime xsd:integer
optional
The Value provided will be in seconds and this Value defines, the time by which non-disruptive migration should complete. Default Value is 120 seconds. Range [120..1800]. MigrateOffline xsd:boolean
optional
This flag is considered only when cutover was done as online migration. When true, offline migration is performed. If false or not specified online migration is performed. The flag is ignored if the migration is not online. Default Value is false. ObjectNameOrId ObjNameOrId
Full Name or identifier of the vFiler Unit or Dataset whose migration Operation has To be rolled back. The migration Status of the vFiler Unit or the vFiler Unit attached To the specified Dataset should be in "migrated". PersistentMigratedRoutes xsd:boolean
optional
If this Option is set, then the migrated routes From the Source will be made persistent on the destination storage system. This input is ignored, if the RouteMigrationMode is 'none'. Default Value is true. RouteMigrationMode RouteMigrationMode
optional
Type of routes that needs To be migrated as part of cutover. RunDedupeScan xsd:boolean
optional
Indicates whether a full deduplication scan has To be run on the deduplication enabled Volumes of the migrating vFiler Unit on Source storage system after migration. This input is valid only for Volumes in the vFiler Unit which have deduplication turned on and ignored for other Volumes. Default is true. ScriptPath xsd:string
optional
Path To a script that will be run in pre and post mode just before and after rollback Operation.
| Element definition: MigrateRollbackResult | [top] |
Name Type Description DryRunResults ArrayOfDryRunResult
optional
Results of a dry run. Each Result describes one Action the system would take and the predicted effects of that Action. Only returned if DryRun is true. JobId xsd:integer
optional
Identifier of the job started To rollback the migration Operation. Returned only when DryRun is false. Range [1..2^31-1].
| Element definition: MigrateStart | [top] |
Start the migration Operation for a Dataset or a vFiler Unit. This initiates a baseline transfer for all the Volumes in the Source vFiler Unit and changes the migration Status To 'migrating'. When a Dataset is given as input then the following conditions should hold good: If any of these conditions are not met, then EMIGRATENOTSUPPORTED is returned. If PerformCutover is set To true, then MigrateComplete will be done after MigrateStart. Error conditions:
- A vFiler Unit should be attached To the primary node of the Dataset.
- All the Volumes of the vFiler Unit with the exception of the root storage should belong To this Dataset.
- For offline migration, the migrating vFiler Unit may contain Qtree as it's root storage.
- For online migration, the migrating vFiler Unit should contain a Volume as it's root storage.
- EDATABASEERROR - A database Error occurred while processing the Request.
- EACCESSDENIED - User does not have required Capabilities To initiate the MigrateStart Operation. If ObjectNameOrId refers To a Dataset, user should have DFM.Dataset.Write on the datset. If ObjectNameOrId refers To a vFiler Unit, user should have DFM.Resource.Control on the Dataset. If ResourceNameOrId refers To a Resource pool, user should have DFM.ResourcePool.Provision on it. If ResourceNameOrId refers To a storage system, user should have DFM.Resource.Control on it. If ProvisioningPolicyNameOrId is specified, user should have DFM.Policy.Read on it.
- EOBJECTAMBIGUOUS - When the specified object Name is ambiguous.
- EOBJECTNOTFOUND - When the specified vFiler Unit, Dataset, destination storage system or provisioning Policy is not found.
- EINVALIDMEMBERTYPE - When the specified Filer is in c-mode.
- EINVALIDINPUT - When invalid inputs are provided for IP Address, Netmask.
- EINVALIDMIGRATIONSTATUS - When the specified vFiler Unit is already in "migrating" Status or in a state where migration cannot be started.
- EMIGRATENOTSUPPORTED - When the Dataset or Source vFiler Unit cannot be migrated due To various reasons like invalid vFiler Status, ONTAP Version.
- EMIGRATEDESTINATIONSELECTIONFAILED - When a suitable storage system is not found as a destination for migration.
Name Type Description BandwidthThrottle xsd:integer
optional
Specify the bandwidth throttle(in kbps) To be used for baseline transfer and subsequent SnapMirror updates. This element is valid only for OnlineMigration. Default is 0 which means unlimited bandwidth for the transfers. Range: [1..2^31-1] Description xsd:integer
optional
A short optional Description of the migration activity. Default is an empty Description. Range: [0..4096] characters. DryRun xsd:boolean
optional
Indicates whether a dry run needs To be done of all the tasks To be performed as part of MigrateStart Operation. Default Value is false. IpBindings ArrayOfIpBindingInfo
optional
IP Address To Interface binding information for the destination vFiler Unit. If this element is not present, then the Interface configured as the "defaultVFilerInterface" for the selected destination storage system is used To bind IP Addresses of the Source vFiler Unit at the destination. ObjectNameOrId ObjNameOrId
Full Name or identifier of the vFiler Unit or the Dataset which has To be migrated. If the input element is a Dataset, then a vFiler Unit should be attached To the Dataset and all the Volumes of the vFiler Unit should be Members of the primary node of the Dataset with the exception of the root storage. The vFiler Unit will be migrated To a new storage system. OnlineMigration xsd:boolean
optional
Indicates, that cutover has To be performed non-disruptively. This input is considered only when a vFiler Unit is migrated and ignored when ObjectNameOrId refers To a Dataset. For Datasets, the migration will be done in an online or offline mode depending on 'OnlineMigration' attribute set on the Dataset Default Value is false. PerformCutover xsd:boolean
optional
If this Option is set To true, then MigrateComplete will be done after MigrateStart. If cutover fails because of some Reason, then MigrateStart Status will be set To 'Migrating' and user can issue the MigrateComplete zapi To perform the cutover. Default Value is false. PersistentMigratedRoutes xsd:boolean
optional
If this Option is set, then the migrated routes From the Source will be made persistent on the destination storage system. This input is ignored, if the RouteMigrationMode is 'none'. This Option is valid if PerformCutover is set To true. Default Value is true. ProvisioningPolicyNameOrId ObjNameOrId
optional
Name or identifier of the provisioning Policy To be used To provision destination Volumes during migration. This input is valid only when ObjectNameOrId refers To a Dataset. Default behavior is To use the current provisioning Policy associated with the Dataset or if not associated, To use the same Volume configuration as that of the Source vFiler Unit. ResourceNameOrId ObjNameOrId
optional
Name or identifier of the destination storage system or Resource pool To which the vFiler Unit is To be migrated. If ObjectNameOrId refers To a Dataset, this storage system should be a member of a Resource pool on which the user has required Capabilities. If ObjectNameOrId refers To a vFiler Unit, this can refer To any destination storage system on which the user has required Capabilities. The storage system should be running ONTAP Version same or above the Source storage system. RouteMigrationMode RouteMigrationMode
optional
Type of routes that needs To be migrated as part of cutover. This Option is valid if PerformCutover is set To true. RunDedupeScan xsd:boolean
optional
Indicates whether a full deduplication scan has To be run on the deduplication enabled Volumes of the migrating vFiler Unit on destination storage system after migration. This input is valid only if PerformCutover is set To TRUE and that too for Volumes in the vFiler Unit which have deduplication turned on and ignored for other Volumes. Default is true for IC.X. ScriptPath xsd:string
optional
Path To a script that will be run in pre and post mode just before and after cutover Operation. This is applicable only when PerformCutover is set To true. VolumeAggregateMap ArrayOfVolumeAggregatePair
optional
A list of (Volume, Aggregate) pairs. The Volume is the vFiler Volume being migrated. The Aggregate is the Aggregate on the destination storage system where this Volume should be migrated To. This input is valid only when the ObjectNameOrId is a vFiler Name or Id. If both VolumeAggregateMap and ResourceNameOrId inputs are specified, an Error will be reported.
| Element definition: MigrateStartResult | [top] |
Name Type Description DryRunResults ArrayOfDryRunResult
optional
Results of a dry run. Each Result describes one Action the system would take and the predicted effects of that Action. Only returned if DryRun is true. JobId xsd:integer
optional
The identifier of the job started To carry out the MigrateStart Operation. This field is returned only when DryRun is false.
| Element definition: MigrateUpdate | [top] |
Update all the SnapMirror relationships of a vFiler Unit for which migration Operation has been initiated. Error conditions:
- EDATABASEERROR - A database Error occurred while processing the Request.
- EACCESSDENIED - User does not have required Capabilities To initiate the MigrateStart Operation. If ObjectNameOrId refers To a Dataset, user should have DFM.Dataset.Write on the datset. If ObjectNameOrId refers To a vFiler Unit, user should have DFM.Resource.Control on the Dataset.
- EOBJECTAMBIGUOUS - When the specified object Name is ambiguous.
- EOBJECTNOTFOUND - When the specified vFiler Unit or Dataset is not found.
- EINVALIDMIGRATIONSTATUS - When the migration Status of the vFiler Unit is such that MigrateUpdate cannot be called.
Name Type Description ObjectNameOrId ObjNameOrId
Full Name or identifier of the Dataset or vFiler Unit whose migration Status is "migrating" and whose SnapMirror relationships are To be updated.
| Element definition: MigrateUpdateResult | [top] |
Name Type Description JobId xsd:integer
Identifier of the job started To update the SnapMirror relationships for a vFiler Unit migration.
| Element definition: MigrateVolume | [top] |
Migrate one or more Volumes From one Aggregate To another Aggregate on the same or different storage system. Currently this API works only for secondary Volumes i.e destinations of a Volume SnapMirror or Qtree SnapMirror relationships or if the Volumes are SnapVault secondaries. In addition To the above, the following rules must be satisfied To be able To MigrateStart Volumes using this API :-
- The Volume(s) should not have child clones (FlexClones).
- The Volume(s) should not have NFS exports, CIFS shares or contain LUNs mapped To storage clients.
- The Volumes(s) should be part of a Dataset (i.e either imported into Datasets, or provisioned by Protection Manager.) so that incoming and outgoing data protection relationships To and From the Volumes are managed by Protection Manager.
If the destination Aggregate is not specified, then the system will automatically select an Aggregate, based on the Type of the Volume, space requirements, provisioning and protection Policy configuration associated with the Dataset.
Name Type Description DryRun xsd:boolean
optional
Indicates whether a dry run needs To be done of all the tasks To be executed as part of migrating Volumes. Default Value is false. MigrationRequestInfo MigrationRequestInfo
Details of migration Request for Volumes.
| Element definition: MigrateVolumeResult | [top] |
Name Type Description MigrationDryRunResults ArrayOfMigrationDryRunResult
optional
Dry run Results for migrating each individual Volume. Only returned if DryRun is true. MigrationJobs ArrayOfMigrationJobInfo
optional
Job identifiers of migration Jobs for each Volume. Only returned if DryRun is false.
| Element definition: ArrayOfDryRunResult | [top] |
Name Type Description DryRunResult DryRunResult[]
| Element definition: ArrayOfIpBindingInfo | [top] |
Name Type Description IpBindingInfo IpBindingInfo[]
| Element definition: ArrayOfMigrationDryRunResult | [top] |
Name Type Description MigrationDryRunResult MigrationDryRunResult[]
| Element definition: ArrayOfMigrationJobInfo | [top] |
Name Type Description MigrationJobInfo MigrationJobInfo[]
| Element definition: ArrayOfVolumeAggregatePair | [top] |
Name Type Description VolumeAggregatePair VolumeAggregatePair[]
| Element definition: MigrationRequestInfo | [top] |
Details of a Volume migration Request.
Name Type Description CleanupStaleStorage CleanupStaleStorage
optional
Indicates when should the Volumes in the Source Aggregate should be destroyed after successful migration. Default Value is "cleanup_after_migration". DestinationAggregateNameOrId ObjNameOrId
optional
Name or identifier of the destination Aggregate To which all the Volumes has To be migrated To. If the destination Aggregate is not provided, the system will select a suitable Aggregate From the Resource pools associated with the Dataset node To which the Volumes belong To. RetentionType DpBackupRetentionType
optional
Retention Type To which the backup Version created should be archived for the Backups created as part of running an on-demand update after successful migration. This element is ignored if RunOnDemandUpdate is false. Default Value is "daily". RunDedupeScan xsd:boolean
optional
Indicates whether a full deduplication scan has To be run on the new Volume after migration. This Option is applicable only for Volumes that are enabled for deduplication and is useful To regenerate the fingerprint database used in deduplication and will be ignored for other Volumes. Default Value is false. RunOnDemandUpdate xsd:boolean
optional
Indicates whether an on-demand update has To be triggered after successful migration on the Dataset To which the Volumes that were migrated belong To. Default Value is false. Volumes ArrayOfObjNameOrId
Name or ids of one or more Volumes To be migrated. Currently, all the Volumes should belong To the same Aggregate. The Volumes, if they belong To a Dataset should all belong To the same node of the Dataset.
| Element definition: MigrationStatus | [top] |
Migration Status for an ongoing vFiler Unit migration. Possible Values: "in_progress", "migrating", "migrated", "migrated_with_errors", "migrate_failed", "rolled_back", "rolled_back_with_errors".
[none]
| Element definition: ObjNameOrId | [top] |
Name or internal ID of a DFM object. This typedef is an alias for the builtin ZAPI Type string. An ObjNameOrId must contain between 1 and 64 characters, and must conform To one of the following formats: Elements of Type ObjNameOrId are used only as inputs To ZAPIs. The Value must Match either the Name or internal ID of an existing DFM object. The ZAPI must specify the object's DFM object Type (e.g. Dataset, Host, DP Policy, etc.). Some ZAPIs allow the object To be one of several different types.
- It must have the format of an ObjName, or
- It must be the decimal numeric string form of a positive integer whose Value is in the range [1..2^31 - 1].
- In case of application resources From the Host Service, this field can contain unique identifier assigned To the object by the Host Service e.g. for a Virtual Machine, it can be a GUID of the VM. One exception is when such unique identifier is a decimal numeric string containing only digits From 0 through 9. In that case, you cannot use such identifier as ObjNameOrId input.
If the format of an ObjNameOrId input element does not conform, or the Value does not Match the Name or ID of an existing object, then generally the ZAPI documents that it fails with Error code EOBJECTNOTFOUND. A ZAPI may return more specific Error codes. In such cases, the ZAPI specification must document its behavior.
If a ZAPI can accept a null Value (e.g. reference To no object at all) for such an element, then the element is declared optional, and the absence of the input element represents a null Value.
[none]
| Element definition: RouteMigrationMode | [top] |
Type of migrating routes. Possible Values are: 'static', 'persistent', 'none'.
- static: Static routes present in the IPSpace of the migrating vFiler Unit will be migrated.
- persistent: Persistent routes present in /etc/rc file related To the migrating vFiler Unit will be migrated.
- none: None of the routes will be migrated. Choosing this Option may lead To non-disruptive migration, if the routes in the migrating vFiler Unit are not present on the destination storage system. This Option should be chosen only when all the routes are already present on the destination storage system. By default 'static' routes will be migrated.
[none]
| Element definition: ArrayOfObjNameOrId | [top] |
Name Type Description ObjNameOrId ObjNameOrId[]
| Element definition: CleanupStaleStorage | [top] |
Indicates when the Volumes in the Source Aggregate should be destroyed after successful migration. Possible Values are:
- cleanup_after_update
- cleanup_after_migration
- no_cleanup
[none]
| Element definition: DpBackupRetentionType | [top] |
Retention Type To which the backup should be archived. Possible Values are: 'hourly', 'daily', 'weekly', 'monthly' and 'unlimited'.
[none]
| Element definition: DryRunResult | [top] |
A Description of one Action and the predicted effects of taking that Action.
Name Type Description DryRunAction xsd:string
An Action the system would take. DryRunEffect xsd:string
The predicted Effect of the Action. DryRunReason xsd:string
optional
Present only if Severity is Error or warning. Specifies possible reasons for the Error, warning. If there are no reasons To specify, this element will not be present. DryRunReasonDetails ArrayOfResultDetail
optional
These details apply To the associated DryRunReason within the same DryRunResult. These offer additional information such as the reasons individual reasources may not have been selected for the DryRunAction in this same DryRunResult. DryRunSeverity ObjStatus
Severity of the DryRun Result. Possible Values are "information", "Error" or "warning". DryRunSuggestion xsd:string
Present only if Severity is Error or warning. Specifies any suggestions To rectify the warnings, Errors. If there are no suggestions To specify, this element will not be present.
| Element definition: IpBindingInfo | [top] |
vFiler IP Address To Interface binding information.
Name Type Description Interface ObjNameOrId
Name or identifier of the Interface To bind the vFiler IP Address To. This can be either a physical Interface, VIF or a VLAN. Example: "e0a", "myvif", "service_vlan" IpAddress IpAddress
IP Address of the vFiler which is bound To the Interface. If this IP Address is not already added To the vFiler, then the IP Address is first added To the vFiler before binding the IP Address with the given Interface. MtuSize xsd:integer
optional
MTU Size of the new VLAN Interface. This element should be present only if a new VLAN Interface is being created during vFiler setup. Also the Version of Data ONTAP on the storage system on which the vFiler is being setup, should be 7.3.3 or later. Range: [296..9196] Netmask xsd:string
optional
Netmask for the IP Address in dotted decimal notation. For IPv4 Address, either Netmask or PrefixLength can be supplied. For IPv6 Address, Netmask is ignored. PartnerInterface ObjNameOrId
optional
Name or identifier of the Interface on the partner node. This element is valid when the storage system on which this vFiler Unit is present is in a Active/Active configuration. If a new VLAN is getting created on the local node, then a new corresponding VLAN will also be created on the partner node on this Interface. PrefixLength xsd:integer
optional
Prefix Length for the IP Address. This is required if IPv6 Address is supplied. For IPv4 Address, either Netmask or PrefixLength can be supplied. Range: [1..127] VlanIdentifier xsd:integer
optional
Identifier for creating a new VLAN Interface. If this element is present, the Interface element should refer To a physical VLAN tagged Interface. Range: [1..4094]
| Element definition: MigrationDryRunResult | [top] |
Dry run Results of migration of each individual Volume
Name Type Description DryRunResults ArrayOfDryRunResult
Results of a dry run. Each Result describes one Action the system would take and the predicted effects of that Action. VolumeId ObjId
Identifier of the Volume To MigrateStart VolumeName ObjName
Full Name of the Volume To MigrateStart
| Element definition: MigrationJobInfo | [top] |
Job information of Volume migration job.
Name Type Description JobId xsd:integer
Identifier of job started for the Volume migration. VolumeId ObjId
Identifier of the Volume To MigrateStart VolumeName ObjName
Full Name of the Volume To MigrateStart
| Element definition: VolumeAggregatePair | [top] |
A Volume and Aggregate pair.
Name Type Description Aggregate ObjNameOrId
Name or Id of the Aggregate. Volume ObjNameOrId
Name or Id of the Volume.
| Element definition: ArrayOfResultDetail | [top] |
Name Type Description ResultDetail ResultDetail[]
| Element definition: IpAddress | [top] |
IP Address in string format. The Length of this string cannot be more than 40 characters.
[none]
| Element definition: ObjId | [top] |
Identification number (ID) for a DFM object. This typedef is an alias for the builtin ZAPI Type integer. Object IDs are unsigned integers in the range [1..2^31 - 1]. In some contexts, an object ID is also allowed To be 0, which is interpreted as a null Value, e.g., a reference To no object at all. The ID for a DFM object is always assigned by the system; the user is never allowed To assign an ID To an object. Therefore, an input element of Type ObjId is always used To refer To an existing object by its ID. The ZAPI must specify the object's DFM object Type (e.g. Dataset, Host, DP Policy, etc.). Some ZAPIs allow the object To be one of several different types.
If the Value of an ObjId input element does not Match the ID of any existing DFM object of the specified Type or types, then typically the ZAPI fails with Error code EOBJECTNOTFOUND. A ZAPI may deviate From this general rule, for example, it may return a more specific Error code. In either case, the ZAPI specification must document its behavior.
[none]
| Element definition: ObjName | [top] |
Name of a DFM object. This typedef is an alias for the built in ZAPI Type string. An object Name must conform To the following format: The behavior of a ZAPI when it encounters an Error involving an ObjName input element depends on how the ZAPI uses the input element. Here are the general rules:
- It must contain between 1 and 64 characters.
- It may start with any character and may contain any combination of characters, except that it may not consist solely of decimal digits ('0' through '9').
- In some contexts, a Name may be the empty string (""), which is interpreted as a null Value, e.g., a reference To no object at all.
A ZAPI may deviate From these general rules, for example, it may return more specific Error codes. In such cases, the ZAPI specification must document its behavior.
- If the input Name element is used To create a new object with the given Name, or rename an existing object To that Name, and the Name does not conform To the above format, then the ZAPI fails with Error code EINVALIDINPUTERROR. Note that because EINVALIDINPUTERROR is such a common Error code, ZAPI specifications are not required To document cases when they may return it.
- If the input Name element is used To refer To an existing object with that Name, and there is no object with that Name, then the ZAPI fails with Error code EOBJECTNOTFOUND. Generally the ZAPI specification documents cases when it may return this Error code.
If an input Name element is used To refer To an existing object, then the ZAPI specification must specify which DFM object Type (e.g. data set, Host, DP Policy, etc.) is allowed. Some ZAPIs allow the object To be one of several different types. See the Description of ObjFullName for examples of valid input formats.
Note that there is no requirement that all object names must be unique. However, the names for some specific types of Objects are constrained such that no two Objects of that Type may have the same Name. For example, this constraint applies To Datasets, DP schedules, and DP policies. This means that no two Datasets may have the same Name, but a Dataset may have the same Name as a DP schedule or DP Policy.
In general, object names are compared in a case-insensitive manner. This means that, for example, "MyObject" and "MYOBJECT" are considered To be the same Name for purposes of: creating new Objects, renaming existing Objects, or looking up an object by Name. On the other hand, ZAPIs that return an ObjName generally do not change the capitalization at all. For example, if an object's Name has been set To "MyObject", then list iteration ZAPIs that return the object's Name return it as "MyObject" rather than "MYOBJECT" or "myobject".
ZAPIs that operate on ObjName Values and do not follow these general rules about case sensitivity must document the rules that they do follow.
One important exception To these general rules is that Volumes, Qtrees, OSSV Directories, SRM Paths, Interfaces, FCP Targets and FC switch ports all have case-sensitive names. When looking up Objects of these types by Name, the case must Match the object Name.
[none]
| Element definition: ObjStatus | [top] |
A Status Value which can be associated with a DFM object. This typedef is an alias for the builtin ZAPI Type string. The Severity associated with an event has this Type. Possible Values are: 'unknown', 'normal', 'information', 'unmanaged' 'warning', 'Error', 'critical', 'emergency'.
In some contexts, it is important that severities are ordered (as above). For example, an alarm might be triggered if an event with a given Severity "or worse" occurs. In this example, worse means "after" in the list above.
- unknown: An object has an unknown Status when it transitions From one state To another. Ideally, an object will have this Status briefly. For example, when an object has been added, but not yet discovered.
- normal: An object has normal Status when it is working within the Thresholds specified in DFM.
- information: The information Events are normal occurrences on an object for which you can define alarms.
- unmanaged: An object is considered To be unmanaged when the login and Password are not set for the storage system or agent.
- warning: An object has the warning Status when an event related To the object occurred that an administrator should know about. The event will not cause Service disruption.
- Error: An object has Error Status when it does not cause any Service disruption, but it may affect performance.
- critical: An object has critical Status when it is still performing, but Service disruption may occur if corrective Action is not taken immediately.
- emergency: An object is in emergency Status when it stops performing unexpectedly and could lose data.
[none]
| Element definition: ResultDetail | [top] |
Details on a specific Action that adds information intended To explain more about a higher level Result. For example, the detail may be used To explain a DryRun Result by explaining why resources were not selected.
Name Type Description Action xsd:string
An Action or check the system had taken. Effect xsd:string
The Result of the Action or check. Reason xsd:string
optional
Specifies possible reasons for the this Result. If there are no reasons To specify, this element will not be present. Severity ObjStatus
Severity of the Result Result. Possible Values are "information", "Error" "warning". It is normal for "information" To be used To explain why a Resource was not selected. Suggestion xsd:string
Specifies any suggestions To rectify the information, warnings, Errors. If there are no suggestions To specify, this element will not be present.