Data Backup and Recovery

Cloning secondary volumes

bholzmarsh
2,821 Views

I have several volumes in a Profile/Config that I want to mount clone volumes from an existing snapshot.

The documentation on the parameters/GUI for  NTAP_CLONE_SECONDARY_VOLUMES is confusing since its an Optional parameter but it doesn't work unless values are supplied.  I don't really understand the need for having to specify every controller pairing and volume - SnapCreator already knows what they are.  I could only see, in the case of there being multiple Snapmirror relationships, a need to just specify which target controller.  If every volume has to be specified with its primary and secondary controller pairing, it makes for a very long parameter list subject to many errors (typos).  Am I missing something ?

 

Also the description of NTAP_CLONE_FOR_BACKUP - is confusing.  Does it even apply to the "mount" action ?  It is described as: "Setting which determines when the clone is deleted. "Y" will delete clone after it is created, "N" will delete clone before Snapshot copy occurs so during the next run of Snap Creator for the given policy and config".   Why would anyone want to delete a clone after its created ?  Does "N" mean it deletes at the start of next the Backup and/or Clone and/or Mount action ?

 

 Thanks

1 REPLY 1

sivar
2,794 Views

#######

I have several volumes in a Profile/Config that I want to mount clone volumes from an existing snapshot.

The documentation on the parameters/GUI for  NTAP_CLONE_SECONDARY_VOLUMES is confusing since its an Optional parameter but it doesn't work unless values are supplied.  I don't really understand the need for having to specify every controller pairing and volume - SnapCreator already knows what they are.  I could only see, in the case of there being multiple Snapmirror relationships, a need to just specify which target controller.  If every volume has to be specified with its primary and secondary controller pairing, it makes for a very long parameter list subject to many errors (typos).  Am I missing something ?

#######

 

i am sorry for the confusion there.

Unfortunately, SnapCreator does not remember the volumes and their snapmirror relationships. It fetches the details every time by referring the config file and talking to the controller.

(By leveraging NTAP_CLONE_SECONDARY_VOLUMES syntax below)

NTAP_CLONE_SECONDARY_VOLUMES=controller1:controller1-sec/vol1;controller1:controller1-sec/vol2

SnapCreator by default clones the primary volumes.

if you want to specifically instruct snapcreator, then you rely on two variables

NTAP_CLONE_SECONDARY and NTAP_CLONE_SECONDARY_VOLUMES

 

You are correct, that the above very long parameter list is subject to many errors (typos).

I shall request our TME and PM to track this for future enhancements.

 

Also a word of caustion is that SnapCreator code is not optimized for multiple snpamirror relationships as your assumption above (like filer1:vol1 mirroring to filer2:vol1 and filer3:vol1) SnapCreator can only work with the first displayed relationship of a snapmirror status output.

 

 

#######

Also the description of NTAP_CLONE_FOR_BACKUP - is confusing.  Does it even apply to the "mount" action ?  It is described as: "Setting which determines when the clone is deleted. "Y" will delete clone after it is created, "N" will delete clone before Snapshot copy occurs so during the next run of Snap Creator for the given policy and config".   Why would anyone want to delete a clone after its created ?  Does "N" mean it deletes at the start of next the Backup and/or Clone and/or Mount action ?

 ######

 

To begin with "mount" in snapcreator refers to cloning of a pre-existing backup.

"clone" in snapcreator refers to take an on-demand backup and and cloning it.

You are correct. mount action does not really care about the NTAP_CLONE_FOR_BACKUP variable.

All mount does is, if you give a set of volumes and a specific snapshot, it will spin a clone based on the pre-existing snapshot, and map the luns to a pre-existing igroup and run mount commands specified on the client host.

 

On the contrary, a "clone" action takes a snpshot, and always, spins up a clone immediately based on the snapshot it took.

A clone is typically spin on the production host.

If you want to spin it on the snapmirror destination, then NTAP_CLONE_SECONDARY is used.

 

By default the entry point of a clone workflow is to clean up the previously taken clones as per the customer specification. (via NTAP_NUM_VOL_CLONES. Please note SnapCreator does not support multiple lun clones and lun clones are supported only on the primary storage and not on the secondary).

 

Imagine that the customer uses volume clone feature...

If the customer chose to keep only one clone, the "clone" workflow will first get rid of the previous clone, and then proceeds with taking a snapshot, and spinning a new clone etc process.

If the customer chose to keep 3 clones, the "clone" workflow will delete clones older than the last 3, and then proceeds with taking a snapshot, and spinning a new clone etc process.

 

On the contrary there are situations where the customer really does not need the clones other than specific reasons.

Basically, the customer would spin a clone do some task and delete the clone right after the task is completed.

SnapCreator offers an ability to achieve the same via NTAP_CLONE_FOR_BACKUP parameter.

 

Imagine these two scenarios below (mount refers to mounting the LUNs from the UNIX/Windows, not the snapcreator "mount" action)

snapshot->lun clone->mount->backup to tape->clone delete

snapshot->vol clone->mount->perform DR test->clone delete

The NTAP_CLONE_FOR_BACKUP variable can be used in these scenarios to tell SnapCreator to delete the clones after the post clone workflow is completed.

This way you don't have the clones hanging around until the next clone job kicks in. (which infact has the pruning action of older clones)

 

Hope this helps.

Please feel free to let us know if you have further questions.

Public