Active IQ Unified Manager Discussions

Volume Clone/Lun Map Automation?

gdekhayser
12,692 Views

Hello all-

I want to build a workflow that lets the user choose a filer->volume->snapshot, clone from that snap, and map the lun in that clone to an igroup on that filer with a pre-set LUN ID (say 15 or 16). 

I also want to build a reverse workflow that will take that flexcloned lun, UNMAP it, and then destroy the cloned volume.

Having trouble getting my head around how to do this.  BTW, this is on 7-mode.

Thanks for any advice/help.

Glenn

1 ACCEPTED SOLUTION

shailaja
11,770 Views

>>What you show is exactly what I want to accomplish, although the user inputs I want to make queries because I want the user to have drop-downs and not be able to select bad entries.

Right. User inputs based on queries will always be good for the actual execution and to make it error-free. I was just experimenting and hence did not bother on the queries.

Shailaja

View solution in original post

23 REPLIES 23

hill
12,040 Views

Hi Glenn,

I don't believe there is a workflow that's been shared that does exactly what you've requested.  That said, there are several workflows that get close, but I think those are for clustered ONTAP, not 7-mode.  I'm not sure if you've looked through all of the "Pirate Packs" that are shared on the WFA communities, but it might be worthwhile doing so.  Here is a LINK to see the available Pirate Packs.  You can also click on the 'Workflow Examples' category, and look at the documents to see the other examples of workflows that have been shared.

Hope this helps,

Kevin

gdekhayser
12,041 Views

Thanks- I got the Clone one to work (developed my own workflow), working on the Map Lun part and feel comfortable that will work as well. Found some issues with WFA2.1, installe d 2.0.1 and had greater success.

One thing that would be VERY helpful- can someone publish the database schema of objects your can SQL against when creating queries in the user inputs? I find I have to select * and test to see what fields I have available, or dig through the dictionairies. There should be a reference doc out there- is there one? Must be. Link someone?

Thanks

sinhaa
12,041 Views

Glenn,

@Found some issues with WFA2.1, installe d 2.0.1 and had greater success.

----

What issue did you run into with WFA2.1 that you had to switch to WFA2.0.1?

@One thing that would be VERY helpful- can someone publish the database schema of objects your can SQL against when creating queries in the user inputs?  I find I have to select * and test to see what fields I have available, or dig through the dictionairies.  There should be a reference doc out there- is there one?  Must be.  Link someone?

-----

There is sure an online Reference Manual located at Help -> Reference Manual where you can look at Dictionary items. But with WFA2.1 there is a very useful feature available call "SQL query auto-complete" which can help you a lot. Give it a try, you'll love it. 

If this post resolved your issue, help others by selecting ACCEPT AS SOLUTION or adding a KUDO.

gdekhayser
11,761 Views

Actually the sql autocomplete wasnt context aware, was nice but needs improvement. Also I found that if I select t1., t2. from two joined tables that both contained a "name" field, only the second one would be returned.

I will look in the ref doc under dictionary- thx. Got enough query building in where I got the hang of the fields.

---

Sent from Boxer | http://getboxer.com<http://bit.ly/1hRkK2W>

gdekhayser
12,041 Views

Also- why the downgrade. Storage.snapshot wouldn't return values even after I enabled acquisition. Worked on 2.0.1 though.

---

Sent from Boxer | http://getboxer.com<http://bit.ly/1hRkK2W>

sinhaa
11,761 Views

Glenn,

     Thanks for your feedback on SQL auto-complete feature. We well try to improve it in future..

Regarding storage.snapshot, I'm looking into this issue. I'll keep you updated about it.

warm regards,

sinhaa

If this post resolved your issue, help others by selecting ACCEPT AS SOLUTION or adding a KUDO.

sinhaa
12,041 Views

I can't reproduce the issue you are pointing about storage.snapshot table in WFA2.1. If you enable acquisition for it, the table does get populated upon the next acquisition.

You may also like to see this thread:

https://communities.netapp.com/message/116532#116532

If this post resolved your issue, help others by selecting ACCEPT AS SOLUTION or adding a KUDO.

gdekhayser
12,041 Views

How often does the acquisition run? Perhaps I was simply impatient.

adaikkap
11,123 Views

Default is 30 mins.

Btw did you confirm that you UM instance has the snapshot data?

Regards,

adai

Sent from my Droid, excuse typos.

gdekhayser
11,124 Views

Yes, once I downgraded to 2.0.1 I’ve got all the snapshot info I need.

My workflow is to a) clone a volume that contains LUNs that also has a snapshot on the volume; b) map the lun in the new clone to an existing iGroup on the associated array to a user-inputted number with default 15.

Step A is complete. The problem I’m having is the the map lun workflow requires a volume/lun that already exists to get by the planning stage in preview/execute. How can I tell the map lun workflow to use the lun from the volume I just cloned?

shailaja
11,123 Views

Hi,

>>Yes, once I downgraded to 2.0.1 I’ve got all the snapshot info I need.

Ok. Just wanted to indicate that it did work fine in 2.1 too in our labs. You have to enable acquisition as per Jeremy's screenshot in the post https://communities.netapp.com/message/116532#116532 in 2.1 (last screenshot in that thread)

Also note, that the next answer also requires 2.1

>> How can I tell the map lun workflow to use the lun from the volume I just cloned?

There are two scenarios here:

1. Your workflow is using certified commands for "Clone Volume". In that case, this certified command has reservations enabled such that a LUN in the parent

volume will be considered and an equivalent entry will be made in the cloned volume too in WFA cache.

If your workflow is using this command, then when you search for the LUN to be mapped in the "Map LUN" command, the LUN in the cloned volume can be searched.

This works because WFA 2.1 enabled reservations to be considered between commands of the same workflow.

You can refer to this post: https://communities.netapp.com/message/114993#114993

where there is further explanation around this.

A small example screenshot of this is:

User inputs window:

Workflow design:

Map LUN command parameters:

2. The second scenario is when you are not using the certified command for "Clone Volume".

This is possible but will be tricky to define the LUN in the cloned volume. That's because the LUN gets auto-created behind the scenes as part of some other action i,.e Clone Volume. I can try explaining if you are not using the certified command only.

Thanks,

Shailaja

gdekhayser
11,123 Views

I will be using the certified commands if at all possible.  What you show is exactly what I want to accomplish, although the user inputs I want to make queries because I want the user to have drop-downs and not be able to select bad entries.

Quick question- since I now have 2.0.1, can I upgrade to 2.1 by simple install or do I need to un-install 2.0.1 first?

adaikkap
10,843 Views

The recommended way is to 1.Take a backup of 2.0.1

2. Uninstall 2.0.1

3. Install 2.1

4. Restore the backup taken in 2.0.1

Regards,

adai

Sent from my Droid, excuse typos.

shailaja
11,771 Views

>>What you show is exactly what I want to accomplish, although the user inputs I want to make queries because I want the user to have drop-downs and not be able to select bad entries.

Right. User inputs based on queries will always be good for the actual execution and to make it error-free. I was just experimenting and hence did not bother on the queries.

Shailaja

gdekhayser
9,982 Views

OK LAST question as I’ve got the workflow WORKING (thank you very much for all the help).

The Snapshot object has Name, Timestamp, and volume – but volume is a storage.volume datatype. When I try to reference it in a sql query (to create a dropdown to select the snapshot), it’s telling me that the column doesn’t exist (i.e. t1.volume.id doesn’t work).

I’m sure I’m missing something here, I’m trying to create the join from the snapshot table to the volume table, obviously.

thanks

mgoddard
9,982 Views

Have you tried something like this?

SELECT snapshot.name from storage.snapshot, storage.volume, storage.array WHERE snapshot.volume_id = volume.id AND volume.name = '${VolumeName}' AND volume.array_id = array.id AND array.ip = '${ArrayIP}'

It assumes you have two previous input variables VolumeName and ArrayIP, and lists all snapshots. Make sure you have reservations turned on at the workflow level as well.

Michael.

gdekhayser
9,982 Views

Figured that out and it works!

Thanks, that workflow is done! Will be posting to community after some more testing.

Sent from my mobile device, please excuse any typing or AutoCorrection errors.

justin_smith
8,997 Views

I know this thread is super old, but did you get your WF working? I'd like to do something very similar for cDOT.

gdekhayser
9,982 Views

Hey- just realized I don’t see a way to online the LUN after I map it. It’s offline since it’s from a clone.

??

gdekhayser
9,547 Views

Hey I figured this out.  I created a custom command to online the lun and added it to the workflow.

thanks to all for the help.

Glenn

Public