Create SnapMirror then SnapMirror cascade

 

 Goal

 

This workflow automates the creation of SnapMirror relationship for the specified volume and then creates another SnapMirror relationship from the destination of the first SnapMirror. As part of the implementation logic, workflow will select suitable aggregates for provisioning the destination volumes from the specified resource pools. If the resource pool is not specified (value = "NONE"), all available aggregates on the specified destination cluster are considered for provisioning.

 

 

The topology for this workflow would be the following –

 

 

 

  1. Assign the selected snapshot policy to the primary volume. Any existing snapshot policy attached to the volume is replaced. It’s important to note that one can specify “NO CHANGE” as input to ensure that existing snapshot policy is retained.
  2. Once Snapshot policy is attached to the primary volume, workflow performs a license check on the clusters for “SnapMirror” license.

3.       SnapMirror: 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. SnapMirror: 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. SnapMirror: 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:
  1. Create the SnapMirror relationship between source and destination volumes with the specified policy and schedule. Use default value (unlimited) for the maximum transfer bandwidth.
  2. Start initialization of the SnapMirror relationship.
  3. Wait until the initialization is successful.

At the end of step #9, workflow creates SnapMirror relationship from primary to secondary volume. The subsequent steps of the workflow is the repeat of the same steps from “1- 9” where workflow creates SnapMirror relationship from the secondary to tertiary volume. Workflow ensures that “SnapMirror” license is available on the cluster for successful completion. 

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

 

 

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.

This is the primary volume to be protected. As part of the cluster and selected primary Storage Virtual Machine only, the list of volume is populated in the drop-down list for selection. This list will have Volume name, aggregate, used size, total size, and space guarantee information.

Provide the snapshot policy to be assigned to the primary volume. Policy describes the schedules and retention counts for the local Snapshot copies. Available snapshot policy list that can be used from the specified primary Storage Virtual Machine only is displayed with a drop-down list showing policy name, snapshot schedules, snapshot counts and Snapmirror labels (comma separated list). It’s important to note that the list includes cluster-scoped policies and the policies scoped to the primary Storage Virtual Machine as well.

 

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

 

 

 

Resource Pool*: First 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 will be considered for the resource selection. The list of available resource pools is displayed in the drop-down list and will show resource pool name, number of aggregates, % used total capacity. There is an included value “NONE” which will facilitate a way to specify no selection.

Cluster*: First SnapMirrorDestinationClusterName [Mandatory]

Select the Cluster to be used for provisioning the SnapMirror destination volume. If a resource pool is specified, this input will be 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 result will be ONTAP 8.2 and later clusters only.

Storage Virtual Machine*: First 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’s important to note that only ‘data’ Storage Virtual Machines are shown only.

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

Select the Policy to be attached to the new SnapMirror relationship. For SnapMirror relationship, policy controls the following attributes:

 

Transfer Priority, number of retries, restarts behavior

 

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

Select the Schedule for transferring snapshots to the SnapMirror destination. For selection, a drop-down list showing schedule name and description is displayed (as generated by ONTAP). It’s important to note that-

o    Only the schedules on the destination cluster are selected.

o    Value “NONE” is provided to omit any schedule selection.

 

Note: All of the variable descriptions as stated above for the first SnapMirror destination settings.

Note: All of the variable descriptions as stated above for the first SnapMirror relationship settings.

 Result

This workflow protects the primary volume by provisioning the SnapMirror destination and then creates another SnapMirror relationship from the destination of the first SnapMirror. Selected schedules and policies will be applied to both source and destination SnapMirror relationships.