Microsoft Virtualization Discussions
Microsoft Virtualization Discussions
Hi PoSH community. I'm a bit stuck with this cmdlet using Toolkit Version 3.0.1:
Get-NaFcAdapter | ?{$_.AdapterType -match "initiator"} | Get-NaStorageAdapterInfo | fc
^^ this usually gives exactly the info I need (FC disk/tape adapter- and SFP-Info).
However, the same cmdlet throws ugly errors when the connected NaController has one or more FC adapter(s) connected to a FC switch (e.g. a Fabric MetroCluster node or just a single FC link into a tape SAN):
Get-NaFcAdapter -Controller $Controller | ?{$_.AdapterType -match "initiator"} | Get-NaStorageAdapterInfo
Get-NaStorageAdapterInfo : Fehler im XML-Dokument (1,543).
Bei Zeile:1 Zeichen:106
+ Get-NaFcAdapter -Controller $Controller | ?{$_.AdapterType -match "initiator"} | Get-NaStorageAdapterInfo <<<<
+ CategoryInfo : InvalidOperation: (filer2:NaController) [Get-NaStorageAdapterInfo], InvalidOperationException
+ FullyQualifiedErrorId : ApiException,DataONTAP.PowerShell.SDK.Cmdlets.StorageAdapter.GetNaStorageAdapterInfo
Is this a known bug?
Solved! See The Solution
Hi Mark,
Have you tried this with the latest version of the Toolkit (version 3.1, http://support.netapp.com/NOW/download/tools/powershell_toolkit/)?
-Steven
Mark,
I was trying to look into this in my lab, but i'm unable to see what your seeing.. Are you saying that if you run the same cmdlet with -controller $controller it throws an error ?
Can you show me what normal output looks like?
So, i was having more issues with this cmdlet.
All the properties are embedded it looks like
So, for example, I was only able to get certain properties doing this
get-nafcadapter | ? {$_.adapterstatus -eq "online"} | Select @{E={(get-nastorageadapterinfo $_.adaptername).adapterdetailinfo.adapterfc.adapterfcinfo.fclinkrate};N="link rate"}
If I do it any other way, I get
AdapterDetailInfo
-----------------
DataONTAP.Types.StorageAdapter.AdapterDetailInfo
PS H:\Powershell-Scripts> Connect-NaController ucnlabfiler01
Name Address Ontapi Version
---- ------- ------ -------
ucnlabfiler01 10.230.1.1 1.19 NetApp Release 8.1.4 7-Mode: Wed Nov 20 16:16:17 PST 2013
PS H:\Powershell-Scripts> Get-NaStorageAdapter
AdapterName
-----------
0b # on-board FC initiator port
0d
2a
2b
2c
2d
3a
3b
3c
3d
PS H:\Powershell-Scripts> Get-NaStorageAdapterInfo -Name 0b
AdapterDetailInfo
-----------------
DataONTAP.Types.StorageAdapter.AdapterDetailInfo
^^ THAT WORKS FINE and returns the expected object ^^
Now I do the same thing against a different filer (which has an FC switch connected to 0a – for tape access):
PS H:\Powershell-Scripts> Connect-NaController ucnfiler02
Name Address Ontapi Version
---- ------- ------ -------
ucnfiler02 10.200.1.6 1.19 NetApp Release 8.1.4 7-Mode: Wed Nov 20 16:14:39 PST 2013
PS H:\Powershell-Scripts> Get-NaStorageAdapter
AdapterName
-----------
0a # <- this is FC initiator connected to switch
0c # <- this is SAS
0d # <- this is SAS
PS H:\Powershell-Scripts> Get-NaStorageAdapterInfo -Name 0a
Get-NaStorageAdapterInfo : Fehler im XML-Dokument (1,545).
In Zeile:1 Zeichen:1
+ Get-NaStorageAdapterInfo -Name 0a
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidOperation: (ucnfiler02:NaController) [Get-NaStorageAdapterInfo], InvalidOperation
Exception
+ FullyQualifiedErrorId : ApiException,DataONTAP.PowerShell.SDK.Cmdlets.StorageAdapter.GetNaStorageAdapterInfo
PS H:\Powershell-Scripts> Get-NaStorageAdapterInfo -Name 0c
AdapterDetailInfo
-----------------
DataONTAP.Types.StorageAdapter.AdapterDetailInfo
So essentially the cmdlet (or the API) throws an unexpected error „InvalidOperation“…
To make it a bit easier, the SYSCONFIG-A for the second system shows:
slot 0: FC Host Adapter 0a (QLogic 2432 rev. 2, N-port, <UP>)
Firmware rev: 5.4.100
Host Port Id: 0x150200
FC Node Name: 5:00a:098000:278fef
FC Port Name: 5:00a:098000:278fef
SFP Vendor: FINISAR CORP.
SFP Part Number: FTLF8524P2BNV
SFP Serial Number: PH869T8
SFP Capabilities: 1, 2 or 4 Gbit
Link Data Rate: 4 Gbit
Switch Port: ucnsansw01:2
ucnsansw01:0.126L1 Medium Changer: FSC FibreCAT-TX24 S24.63 (LTDE65405435_LL0)
ucnsansw01:0.126 Tape: Hewlett-Packard LTO-4 V62B (HU19306ABY)
I/O base 0x00009400, size 0x100
memory mapped I/O base 0xfe0f8000, size 0x4000
slot 0: Fibre Channel Target Host Adapter 0b
(QLogic 2432 (2462) rev. 2, <ONLINE>)
Firmware rev: 5.5.2
Host Port Addr: 160400
FC Nodename: 50:0a:09:80:88:8d:a8:52 (500a0980888da852)
FC Portname: 50:0a:09:81:98:8d:a8:52 (500a0981988da852)
Connection: PTP, Fabric
Switch Port: ucnsansw02:4
SFP Vendor Name: FINISAR CORP.
SFP Vendor P/N: FTLF8524P2BNV
SFP Vendor Rev: A
SFP Serial No.: PH77FQE
SFP Connector: LC
SFP Capabilities: 1, 2, 4 Gbit/Sec
I/O base 0x00009800, size 0x100
memory mapped I/O base 0xfe0fc000, size 0x4000
slot 0: SAS Host Adapter 0c (LSI Logic 1068E rev. B3, SAS, <UP>)
Firmware rev: 1.31.02.00
Base WWN: 5:00a098:00026f2:50
Phy State: [0] Enabled, 3.0 Gb/s
[1] Enabled, 3.0 Gb/s
[2] Enabled, 3.0 Gb/s
[3] Enabled, 3.0 Gb/s
00.0 : NETAPP X287_HVPBP288A15 NA00 272.0GB 520B/sect (JLVTJBYC)
00.1 : NETAPP X287_HVPBP288A15 NA00 272.0GB 520B/sect (JLVT34EC)
00.2 : NETAPP X287_S15K5288A15 NA01 272.0GB 520B/sect (3LM18T6L00009750FCSH)
00.3 : NETAPP X287_S15K5288A15 NA01 272.0GB 520B/sect (3LM14YW900009750M49T)
00.4 : NETAPP X287_HVPBP288A15 NA00 272.0GB 520B/sect (JLVSXBTC)
00.5 : NETAPP X287_S15K5288A15 NA01 272.0GB 520B/sect (3LM14YPP00009750MUDT)
00.6 : NETAPP X287_HVPBP288A15 NA00 272.0GB 520B/sect (JLVT2MJC)
00.7 : NETAPP X287_S15K5288A15 NA01 272.0GB 520B/sect (3LM14Y4L00009747QEFV)
00.8 : NETAPP X287_HVPBP288A15 NA00 272.0GB 520B/sect (JLVT3HSC)
00.9 : NETAPP X287_S15K5288A15 NA01 272.0GB 520B/sect (3LM18CE000009750FA4Q)
00.10: NETAPP X287_HVPBP288A15 NA00 272.0GB 520B/sect (JLVS9B4C)
00.11: NETAPP X287_S15K5288A15 NA01 272.0GB 520B/sect (3LM14YHS00009750N4HL)
Shelf 0: ESAS Firmware rev. SAS A: 05 SAS B: 05
slot 0: SAS Host Adapter 0d (LSI Logic 1068E rev. B3, SAS, <UP>)
Firmware rev: 1.31.02.00
Base WWN: 5:00a098:00026f2:54
Phy State: [4] Enabled, 3.0 Gb/s
[5] Enabled, 3.0 Gb/s
[6] Enabled, 3.0 Gb/s
[7] Enabled, 3.0 Gb/s
QSFP Vendor: Molex Inc.
QSFP Part Number: 112-00176+A0
QSFP Type: Copper 0.5m ID:00
QSFP Serial Number: 006120393
01.0 : NETAPP X306_WMANT02TSSM NA08 1695.4GB 512B/sect (WD-WMAUR0527094)
01.1 : NETAPP X306_WMANT02TSSM NA08 1695.4GB 512B/sect (WD-WMAUR0524329)
01.2 : NETAPP X306_WMANT02TSSM NA08 1695.4GB 512B/sect (WD-WMAUR0529216)
01.3 : NETAPP X306_WMANT02TSSM NA08 1695.4GB 512B/sect (WD-WMAUR0526272)
01.4 : NETAPP X306_WMANT02TSSM NA08 1695.4GB 512B/sect (WD-WMAUR0529257)
01.5 : NETAPP X306_WMANT02TSSM NA08 1695.4GB 512B/sect (WD-WMAUR0525404)
01.6 : NETAPP X306_WMANT02TSSM NA08 1695.4GB 512B/sect (WD-WMAUR0504812)
01.7 : NETAPP X306_WMANT02TSSM NA08 1695.4GB 512B/sect (WD-WMAUR0526067)
01.8 : NETAPP X306_WMANT02TSSM NA08 1695.4GB 512B/sect (WD-WMAUR0526765)
01.9 : NETAPP X306_WMANT02TSSM NA08 1695.4GB 512B/sect (WD-WMAUR0529224)
01.10: NETAPP X306_WMANT02TSSM NA08 1695.4GB 512B/sect (WD-WMAUR0510060)
01.11: NETAPP X306_WMANT02TSSM NA08 1695.4GB 512B/sect (WD-WMAUR0523968)
Shelf 1: IOM3 Firmware rev. IOM3 A: 0172 IOM3 B: 0172
I/O base 0x0000c800, size 0x100
memory mapped I/O base 0xfe9fc000, size 0x4000
memory mapped I/O base 0xfe9e0000, size 0x10000
Ever seen this before? Is this an ONTAP (API) problem, or a bug in the PS Toolkit?
Nachricht edited by: Mark Schuren Previous post was incomplete, sorry!
Ha - Mark, I'm even more confused now.. 🙂
So, are you not having an issue with the fcadapter cmdlet? Let's get that out of the way..
I'm not sure what i'm looking at now 😞
Just take a normal Netapp filer (ONTAP 8.1.x), which has at least one FC storage HBA. Let’s say adapter name is 0a.
FIRST:
Do a
Get-NaStorageAdapterInfo -Name 0a
This returns the object you mention (a single line of output - which IS GOOD!).
( To see the whole object use Get-NaStorageAdapterInfo -Name 0a | fc )
THEN:
plug a cable the same FC adapter and connect it to a brocade fibrechannel switch.
Repeat the above command – and bam you get the error…
Mark
Hi Mark,
Have you tried this with the latest version of the Toolkit (version 3.1, http://support.netapp.com/NOW/download/tools/powershell_toolkit/)?
-Steven
Yes, update from Toolkit from 3.0.1 to 3.1.0 fixes the issue.
Thanks for the hint!