Microsoft Virtualization Discussions

ConvertTo-NcVmdk inside LUN Errors

skuebart
5,020 Views

Hi Team,

 

I am trying to convert a Microsoft Hyper-V VHDX file residing inside a NetApp LUN to a VMWare vSphere VMDK file which should reside inside the same lun. I am connected directly to the SVM which owns the respective volumes/luns.

ONTAP Toolkit Version is 4.4.0.0 and ONTAP Version is 9.4 GA.

 

Regarding the official POSH Toolkit Help it should be possible to convert VHDX files directly inside a LUN:

 

"The source and destination files must reside inside of a Data ONTAP volume
(accessed using a path starting with /vol/<volname>), a Data ONTAP attached
LUN, or a Data ONTAP CIFS share (accessed using a mapped network drive or a
UNC path starting with \\hostname\<share>). The source and destination
files must reside on the same controller and volume."

 

I am using the following commands and get the error messages "Failed to get file info" or "SCSI command failed: Illegal request, ASC = 21, ASCQ = 0" depending which path I choose:

 

PS C:\> ConvertTo-NcVmdk -SourceVhdx '/vol/cbc_hyperv_cl03_csv04/cbc_hyperv_cl03_csv04.lun/CBC_SK_NANO_01/Virtual Hard Disks/CBC-SK-NANO-01.VHDX' -DestinationVmdk '/vol/cbc_hyperv_cl03_csv04/cbc_hyperv_cl03_csv04.lun/Conversion/CBC-SK-NANO-01.VMDK' -SnapshotName PROD_cbc-hyperv-cl03_07-23-2018_04.30.00


ConvertTo-NcVmdk : Failed to get file info
At line:1 char:1
+ ConvertTo-NcVmdk -SourceVhdx '/vol/cbc_hyperv_cl03_csv04/cbc_hyperv_c ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : NotSpecified: (:) [ConvertTo-NaVmdk], IOException
+ FullyQualifiedErrorId : System.IO.IOException,DataONTAP.PowerShell.SDK.Cmdlets.HyperV.ConvertToNaVmdk

 

PS C:\> ConvertTo-NcVmdk -SourceVhdx 'C:\ClusterStorage\SVM_CUBA_SAN_CSV04\CBC_SK_NANO_01\Virtual Hard Disks\CBC-SK-NANO-01.VHDX' -DestinationVmdk 'C:\ClusterStorage\SVM_CUBA_SAN_CSV04\Conversion\CBC-SK-NANO-01.VMDK' -SnapshotName PROD_cbc-hyperv-cl03_07-23-2018_04.30.00

 

Mode LastWriteTime Length Name
---- ------------- ------ ----
-a---- 9/11/2018 8:58 AM 341 CBC-SK-NANO-01.VMDK


ConvertTo-NcVmdk : SCSI command failed: Illegal request, ASC = 21, ASCQ = 0
At line:1 char:1
+ ConvertTo-NcVmdk -SourceVhdx 'C:\ClusterStorage\SVM_CUBA_SAN_CSV04\CB ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : NotSpecified: (:) [ConvertTo-NaVmdk], Exception
+ FullyQualifiedErrorId : System.Exception,DataONTAP.PowerShell.SDK.Cmdlets.HyperV.ConvertToNaVmdk

 

Any help finding the problem is appreciated!

 

Kind regards,

Sascha

 

2 REPLIES 2

mbeattie
4,992 Views

Hi Sascha,

 

Is your LUN a CSV volume for you Hyper-V cluster? If so have you tried flex cloning the volume\lun and mounting it to a single host (just for testing). Also what OS are you running the CmdLet from? Have you tried the same command from different (older) operating systems? Reason i mention it is because i've encountered the error "SCSI command failed: Illegal request, ASC = 21, ASCQ = 0" before. It is a SCSI error and the cmdlet "ConvertTo-NcVmdk" doesn't invoke any NetApp ZAPI's from the NMSK. I've read through the CmdLet source code and it's using win32 and SCSI methods. I suspect that over time as Microsoft have updated their operating systems and API's that this cmdlet stopped working due to changes at an Windows OS layer.

 

/Matt

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

skuebart
4,983 Views

Hi Matt,

 

thanks for your input! Sounds like the ConvertTo-CMDLETs are a bit outdated Smiley Sad

 

  • Yes, my LUN is a CSV attached to three Windows Server 2016 Hyper-V Hosts
  • Windows Build is Version 10.0.14393
  • No, I haven't tried FlexCloning and Re-Attaching the LUN
  • No, I haven't tried the command from an older OS (e.g. Windows 2012 or 2012 R2)

Regards,

Sascha

Public