ONTAP Discussions
ONTAP Discussions
Hello,
I was wondering if any SMSQL gurus can help. I'm trying to figure out if this is possible: We have a host that has SQL data that we use SMSQL to transfer to both snapmirror & snapvault to two seperate locations. We do this via scripts & protection manager. The snapvault is handled via protection manager integration with DFM. Basically DFM is told to update a dataset once a SMSQL backup with the Archive flag is triggered. This works very well. We also snapmirror to another cluster through smsql and sm update via script . This doesnt work so welll as the snapshots on the destination filer often get locked (they are used in flexclone operations) and snapmirror cannot update. Netapp also now recommends against this practise as it tends to cause issues like this alot! I would love to use 2 snapvaults instead of this but I don't know how to do it - The problem I beleive is that SMSQL only can register one dataset per host and how can it update two different datasets, with snapvaults in each, on different schedules?
Thank you in advance
Dan
I can recommend you Powershell for this task. Create your second Snapvault relationship manually and update it via Powershell script by referring to the latest SMSQL snapshot for the transfer. Since the SMSQL backup is already done by Powershell it's just an additional line in the backup script. The whole Snapvault integration through DFM and datasets is a big pain in my eyes and since Powershell provides all the functionality I prefer to do it like this. You can also monitor the lag time of all the Snapvault relationships by just one line of Powershell.
Thanks Stephan. I have written a few things in powershell before around Netapp and SMSQL and I beleive you are correct, something scripted could work here. I guess I could have SMSQL call a script to take a snapvault backup to the other filer upon SQL backup. So does DFM have a powershell interface to call a dataset protection update or would I have to manage the snapvault updates through the script? I got some flow diagrams to draw, just wondering which pieces work best, assuming using DFM would be the best route if possible.
SMSQL has an "archive" switch which should trigger the vault process via DFM but I suggest to simple connect to the vaultfiler and execute the update statement for the relationship. When you use the "recent" naming convention for the SMSQL snapshots, the most recent snapshot has always the name "sqlsnap_<server-name>_recent". Therefore the update command looks like this:
Sart-NaSnapvaultSecTransfer <destination qtree> -PrimarySnapshot sqlsnap_<server-name>_recent
A new snapshot at the vault destination can be created by this command:
Start-NaSnapvaultSecSnapshot <dest_vol> <schedule>
The whole update script would look something like this. Just add this lines at the end of the SMSQL statements (new-backup....)
Import-Module DataONTAP
Connect-NaController <vaultfiler>
Sart-NaSnapvaultSecTransfer <destination qtree> -PrimarySnapshot sqlsnap_<server-name>_recent
Start-NaSnapvaultSecSnapshot <dest_vol> <schedule>