Options
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page
- Bookmark
- Permalink
- Email to a Friend
- Report Inappropriate Content
I'm having trouble mapping and unmapping luns with PowerShell. When I try I get an API error. Is there a minimum version of DataONTAP that is required for these cmdlets to work with? Right now I'm on 7.3.1.1 with plans to go to 7.3.3.
View By:
6 REPLIES 6
- Bookmark
- Permalink
- Email to a Friend
- Report Inappropriate Content
Hello, lallin. The lun-map and lun-unmap APIs have been around a long time, so that shouldn't be a problem. FWIW, I have done most of my Toolkit development / testing on 7.3.3.
If you'll send along the cmdlet invocation snippet and error details, we can look more closely.
Clinton
- Bookmark
- Permalink
- Email to a Friend
- Report Inappropriate Content
Just for kicks, I upgraded my mirror target filer to 7.3.3 and tried this again and it didn't work. Below is the command and the error that I'm getting. I'm connected to the filer using RPC, and can execute other commands against the filer except the add and remove nalunmap commands. I can run a get-nalunmap command just fine, just can't manipulate the mapping.
PS C:\Windows\system32> Add-naLunMap -Path /vol/Chatesthv/Chatesthv.lun -InitiatorGroup viaRPC.iqn.1991-05.com.microsoft
:mmatlhyperv2.law.millermartin.com -Controller Filer6
Add-NaLunMap : API invoke failed.
At line:1 char:13
+ Add-naLunMap <<<< -Path /vol/Chatesthv/Chatesthv.lun -InitiatorGroup viaRPC.iqn.1991-05.com.microsoft:mmatlhyperv2.l
aw.millermartin.com -Controller Filer6
+ CategoryInfo : InvalidOperation: (NetApp.Ontapi.Filer.NaController:NaController) [Add-NaLunMap], NaExce
ption
+ FullyQualifiedErrorId : ApiException,DataONTAP.PowerShell.SDK.Cmdlets.Lun.AddNaLunMap
Add-NaLunMap : API invoke failed.
At line:1 char:13
+ Add-naLunMap <<<< -Path /vol/Chatesthv/Chatesthv.lun -InitiatorGroup viaRPC.iqn.1991-05.com.microsoft:mmatlhyperv2.l
aw.millermartin.com -Controller Filer6
+ CategoryInfo : InvalidOperation: (NetApp.Ontapi.Filer.NaController:NaController) [Add-NaLunMap], NaExce
ption
+ FullyQualifiedErrorId : LunListInfoFailed,DataONTAP.PowerShell.SDK.Cmdlets.Lun.AddNaLunMap
-Luther
- Bookmark
- Permalink
- Email to a Friend
- Report Inappropriate Content
Hi, Luther.
Add-naLunMap -Path /vol/Chatesthv/Chatesthv.lun -InitiatorGroup viaRPC.iqn.1991-05.com.microsoft:mmatlhyperv2.law.millermartin.com -Controller Filer6
If you're using RPC, then you shouldn't need to use the -Controller switch when connected to a single controller. If, however, you are connected to multiple controllers and wish to direct commands to different ones, try something like this:
$Filer6 = Connect-NaController Filer6
Add-NaLunMap ... -Controller $Filer6
(Don't forget the $ sign on the controller variable).
Clinton
- Bookmark
- Permalink
- Email to a Friend
- Report Inappropriate Content
Well, what do you know? It worked.
Question though: What if I need to address multiple filers in the same script? Can I use RPC and then call out the filer name? Or, do I need to not use RPC if I'm going to do this?
- Bookmark
- Permalink
- Email to a Friend
- Report Inappropriate Content
Yes, you may connect (via RPC or HTTP) to any number of controllers in a script, saving the result of each connection in a variable. Then just pass the variable as the argument of -Controller in any of the Toolkit's cmdlets. It's common to operate with multiple systems when dealing with clusters, SnapMirror, SnapVault, etc. Some of the example scripts posted here by others show this.
Clinton
- Bookmark
- Permalink
- Email to a Friend
- Report Inappropriate Content
Thanks Clinton. This has been very helpful. I'm sure I'll be back.