Create SnapMirror

Goal

This workflow automates the creation of SnapMirror relationship for a specific volume. The workflow selects a suitable aggregate for provisioning the destination volume from a resource pool, which is an optional parameter as part of the user input. If resource pool is not specified (value = "NONE") then, all available aggregates on the specified destination cluster are considered for provisioning. This workflow performs the following tasks:

  1. Assign the selected Snapshot copy policy to the primary volume. Any existing Snapshot copy policy attached to the volume is replaced. It is important to note that you can specify “NO CHANGE” as input to ensure that existing Snapshot copy policy is retained.
  2. Select the aggregate for secondary provisioning based on the following criteria:

o   Filter Aggregates based on effective Clustered ONTAP version (Same or newer version the source cluster)

o   Filter aggregates by available capacity (aggregate should have more space available than the size of the destination volume).

o   Filter aggregates by delegation to Storage Virtual Machine (if aggregate_list of the destination Storage Virtual Machine is populated consider one of those aggregates only. Otherwise, consider all aggregates).

o   Filter aggregates by used space % (aggregate should not be more than 80% full after provisioning the volume)

o   Filter aggregates excluding root aggregates (Exclude root aggregates)

o   Filter aggregates excluding the specified aggregate (Exclude primary aggregate)

o   Filter aggregates in a resource Pool (filter accepts “NONE” to mean no selection)

o   Get all aggregates by node priority and volume count (return all aggregates along with a rank based on whether it is on the specified node or not, and volume count on the node)

o   When multiple aggregates satisfy the selection criteria, use the following ordered criteria to sort the aggregates and select the top one:

 

Ø  node.priority, ascending (returned by Get all aggregates by node priority and volume count)

Ø  node.volume_count, ascending (returned by Get all aggregates by node priority and volume count)

Ø  available_capacity, descending, (returned by Filter aggregates by available capacity)

  1. Peer the source and destination Clusters. No error is returned if they are already peered. Both clusters must already have intercluster LIF/s created for each node.
  2. Peer the source and destination Storage Virtual Machines. No error is returned if they are already peered.
  3. Create the destination volume with the following properties:

o   Size: Same as the source volume size

o   Space Guarantee: Volume

o   Name: <source_volume_name>__mirror001. Use incremental naming (append 002, 003 etc.) in case the volume already exists.

o   Storage Virtual Machine: Selected by the user as an input to the workflow

o   Autogrow: on, Maxsize: default, Increment: default

o   Mount point: "/" + snapmirror_destination_volume.name

 

  1. Create the SnapMirror relationship between source and destination volumes with the specified policy and schedule. Use default values for the tries, transfer priority and throttle.
  2. Start initialization of the SnapMirror relationship.
  3. Wait until the initialization is successful.


Create SnapMirror User Inputs:

As part of the “Create SnapMirror” workflow, the following mandatory and optional user inputs are supplied,


 

§  Cluster*: Primary cluster Name [Mandatory]

This is the cluster where primary volume resides. It’s mandatory that it must be running Clustered Data ONTAP 8.2 or later. The lists of available clusters are displayed in the drop-down list showing cluster name, primary address and ONTAP version.

 

§  Storage Virtual Machine*: Storage Virtual Machine Name [Mandatory]
Select the primary Storage Virtual Machine name to which volume belongs. The list of available Storage Virtual Machine is displayed in the drop-down list for selection.

 

 

 

Note: This is an optional input and an empty policy named NO CHANGE is provided to allow keeping the existing policy.
    

 

Resource Pool*: SnapMirrorDestinationResourcePool [Mandatory]
Provide the resource pool for provisioning the SnapMirror destination volume. If specified, the destination aggregate is selected from this resource pool. If value "NONE" is specified, all available aggregates in the cluster are considered for the resource selection. The list of available resource pools is displayed in the drop-down list and shows resource pool name, number of aggregates, % used total capacity. There is an included value “NONE” which facilitates a way to specify no selection.

Cluster*: SnapMirrorDestinationClusterName [Mandatory]

Select the Cluster to be used for provisioning the SnapMirror destination volume. If a resource pool is specified, this input is automatically selected based on the aggregates in the specified pool. If no resource pool is specified (value = "NONE"), any available cluster can be selected. As part of the selection, a drop-down list with cluster name, primary address and ONTAP version is listed. All selected resources results are ONTAP 8.2 and later clusters only.

 

Storage Virtual Machine*: SnapMirrorDestination Storage Virtual Machine Name, 8.2 only [Mandatory]

Select the Storage Virtual Machine for the SnapMirror destination volume. For selection, a list of available Storage Virtual Machine on the destination cluster is displayed. It is important to note that only data Storage Virtual Machines are shown.

 

 

Policy*: Schedule to be attached to the relationship [Optional].

Select the Policy to be attached to the new SnapMirror relationship. The policy has rules that specify which Snapshot copies are transferred from the source to the SnapMirror destination and the retention count for the transferred Snapshot copies.  For selection, a drop-down list showing policy name, Snapshot copy labels, and Snapshot copy counts for that policy (comma separated list) is listed. Note: Only the policies that can be used from the specified destination Storage Virtual Machine are listed.

 

There are six policies available:

·         DPDefault—an asynchronous policy for mirroring all Snapshot copies and the latest active file system.

·         MirrorAllSnapshots—an asynchronous policy for mirroring all Snapshot copies and the latest active file system.

·         MirrorAllSnapshotsDiscardNetwork—an asynchronous policy for mirroring all Snapshot copies and the latest active file system, excluding the network configurations.

·         MirrorLatest—an asynchronous policy for mirroring the latest active file system.

·         StrictSync—a synchronous policy so that when there is a replication failure, the I/O to the primary volume is disrupted.

·         Sync—A synchronous policy that ensures client access is not disrupted on replication failure.

 

Note: ONTAP 9.5.0 provides support for the new StrictSync and Sync policies. Note too that a schedule by name NONEis provided to omit any schedule selection.

 

Transfer Schedule*: SnapMirrorSchedule to be attached to the relationship [Optional].

Select the Schedule for transferring Snapshot copies to the SnapMirror destination. For selection, a drop-down list showing schedule name and description is displayed (as generated by ONTAP). It is important to note that only the schedules on the destination cluster are selected.

 

Result
This workflow protects the selected primary volume by provisioning the SnapMirror destination volume and applies the chosen SnapMirror relationship policy and transfer schedule.

Potential Workflow Extensions

This workflow is provided just as a sample. Possible customizations would be:

Ø  For customizing the available set of schedules and policies, you can do so as described in Create Schedules and Policies workflow.

Ø  You can clone the certified workflow and assign fixed schedules, policies and/or resource pools to the workflow.

Ø  This workflow can be a reference workflow for creating a Fan-out mirror. Note that this will be a separate workflow.

Ø  You should be able to clone the topology workflow to create custom topologies such as Mirror to four destinations.