NetApp
ONTAP Cluster Peering and SVM Peering for SnapMirror Replication
Why Peering Quality Matters
SnapMirror reliability starts before the relationship is created. If cluster peering, intercluster LIFs, DNS, or SVM peering are weak, replication becomes noisy and recovery workflows become harder to trust.
NetApp documents cluster peer create for cluster peering and vserver peer create for SVM peering: cluster peer create and vserver peer create.
Prechecks
On both clusters:
curl -k -u admin:'<password>' \
-X PATCH \
"https://cluster-dr.example.com/api/snapmirror/relationships/<relationship_uuid>" \
-H "Content-Type: application/json" \
-d '{ "state": "transferring" }'
Confirm that intercluster LIFs exist on the correct IPspace and can route to the peer cluster.
CLI Process
Create cluster peering from one cluster:
curl -k -u admin:'<password>' \
-X PATCH \
"https://cluster-dr.example.com/api/snapmirror/relationships/<relationship_uuid>" \
-H "Content-Type: application/json" \
-d '{ "state": "transferring" }'
On the peer cluster, complete the peer relationship with the passphrase:
curl -k -u admin:'<password>' \
-X PATCH \
"https://cluster-dr.example.com/api/snapmirror/relationships/<relationship_uuid>" \
-H "Content-Type: application/json" \
-d '{ "state": "transferring" }'
Verify:
curl -k -u admin:'<password>' \
-X PATCH \
"https://cluster-dr.example.com/api/snapmirror/relationships/<relationship_uuid>" \
-H "Content-Type: application/json" \
-d '{ "state": "transferring" }'
Create SVM peering:
curl -k -u admin:'<password>' \
-X PATCH \
"https://cluster-dr.example.com/api/snapmirror/relationships/<relationship_uuid>" \
-H "Content-Type: application/json" \
-d '{ "state": "transferring" }'
Accept if required:
curl -k -u admin:'<password>' \
-X PATCH \
"https://cluster-dr.example.com/api/snapmirror/relationships/<relationship_uuid>" \
-H "Content-Type: application/json" \
-d '{ "state": "transferring" }'
Create a SnapMirror relationship after peering is healthy:
curl -k -u admin:'<password>' \
-X PATCH \
"https://cluster-dr.example.com/api/snapmirror/relationships/<relationship_uuid>" \
-H "Content-Type: application/json" \
-d '{ "state": "transferring" }'
REST API Process
Discover cluster and intercluster interfaces:
curl -k -u admin:'<password>' \
-X PATCH \
"https://cluster-dr.example.com/api/snapmirror/relationships/<relationship_uuid>" \
-H "Content-Type: application/json" \
-d '{ "state": "transferring" }'
Create SVM peering where supported by your ONTAP release:
curl -k -u admin:'<password>' \
-X PATCH \
"https://cluster-dr.example.com/api/snapmirror/relationships/<relationship_uuid>" \
-H "Content-Type: application/json" \
-d '{ "state": "transferring" }'
Create and initialize a SnapMirror relationship:
curl -k -u admin:'<password>' \
-X PATCH \
"https://cluster-dr.example.com/api/snapmirror/relationships/<relationship_uuid>" \
-H "Content-Type: application/json" \
-d '{ "state": "transferring" }'
Then initialize by patching the relationship state to transferring:
curl -k -u admin:'<password>' \
-X PATCH \
"https://cluster-dr.example.com/api/snapmirror/relationships/<relationship_uuid>" \
-H "Content-Type: application/json" \
-d '{ "state": "transferring" }'
Best Practices
- Test intercluster routing before creating relationships.
- Use named schedules and policies instead of ad hoc replication settings.
- Record source and destination paths exactly.
- Do not initialize large relationships without capacity and bandwidth approval.
- Alert on replication lag after the relationship goes live.
Comments