NetApp Data ONTAP data motion library.
This library handles transferring data from a source to a destination. Its
responsibility is to handle this as efficiently as possible given the
location of the data’s source and destination. This includes cloning,
SnapMirror, and copy-offload as improvements to brute force data transfer.
-
class DataMotionMixin
Bases: object
-
break_snapmirror(src_backend_name, dest_backend_name, src_flexvol_name, dest_flexvol_name)
Break SnapMirror relationship.
- Quiesce any ongoing SnapMirror transfers
- Wait until SnapMirror finishes transfers and enters quiesced state
- Break SnapMirror
- Mount the destination volume so it is given a junction path
-
break_snapmirrors(config, src_backend_name, src_flexvol_names, chosen_target)
Break all existing SnapMirror relationships for a given back end.
-
create_destination_flexvol(src_backend_name, dest_backend_name, src_flexvol_name, dest_flexvol_name)
Create a SnapMirror mirror target FlexVol for a given source.
-
create_snapmirror(src_backend_name, dest_backend_name, src_flexvol_name, dest_flexvol_name)
Set up a SnapMirror relationship b/w two FlexVols (cinder pools)
- Create SnapMirror relationship
- Initialize data transfer asynchronously
If a SnapMirror relationship already exists and is broken off or
quiesced, resume and re-sync the mirror.
-
delete_snapmirror(src_backend_name, dest_backend_name, src_flexvol_name, dest_flexvol_name, release=True)
Ensure all information about a SnapMirror relationship is removed.
- Abort SnapMirror
- Delete the SnapMirror
- Release SnapMirror to cleanup SnapMirror metadata and snapshots
-
ensure_snapmirrors(config, src_backend_name, src_flexvol_names)
Ensure all the SnapMirrors needed for whole-backend replication.
-
get_replication_backend_names(config)
Get the backend names for all configured replication targets.
-
get_replication_backend_stats(config)
Get the driver replication info for merging into volume stats.
-
get_snapmirrors(src_backend_name, dest_backend_name, src_flexvol_name=None, dest_flexvol_name=None)
Get info regarding SnapMirror relationship/s for given params.
-
quiesce_then_abort(src_backend_name, dest_backend_name, src_flexvol_name, dest_flexvol_name)
Quiesce a SnapMirror and wait with retries before aborting.
-
resume_snapmirror(src_backend_name, dest_backend_name, src_flexvol_name, dest_flexvol_name)
Resume SnapMirror relationship from a quiesced state.
-
resync_snapmirror(src_backend_name, dest_backend_name, src_flexvol_name, dest_flexvol_name)
Re-sync (repair / re-establish) SnapMirror relationship.
-
update_snapmirror(src_backend_name, dest_backend_name, src_flexvol_name, dest_flexvol_name)
Schedule a SnapMirror update on the backend.
-
update_snapmirrors(config, src_backend_name, src_flexvol_names)
Update all existing SnapMirror relationships on a given back end.