The cinder.volume.drivers.netapp.dataontap.utils.data_motion Module¶
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. 
 
-