We have our product vmdk file (monolithic sparse format) which works fine in ESXi 5.5 and 6.0. Recently we have installed ESXi 6.5 afresh and tried deploying VM with our exisiting VMDK file. But in ESXi 6.5, we get the below error in VM's log file vmware.log in host machine,
2019-01-02T10:51:17.977Z| vmx| I125: DumpDiskInfo: ide0:0 createType=2, capacity = 524288000, numLinks = 1, allocationType = 4294967295
2019-01-02T10:51:17.977Z| vmx| I125: Virtual Device for ide0:0 was already successfully destroyed
2019-01-02T10:51:17.977Z| vmx| I125: Msg_Reset:
2019-01-02T10:51:17.978Z| vmx| I125: [msg.scsi.esx.unsupportedDiskType2] Unsupported or invalid disk type 2 for 'ide0:0'. Ensure that the disk has been impor
2019-01-02T10:51:17.978Z| vmx| I125: [msg.scsi.esx.virtualDevFailed] Unable to create virtual SCSI device for 'ide0:0' (/vmfs/volumes/5c0f9295-b139f418-b471-
2019-01-02T10:51:17.978Z| vmx| I125: ----------------------------------------
We tried to convert the existing VMDK file using the vmkfstool in new ESXi 6.5 box as below,
vmkfstools -i "our_existing_vmdk.vmdk" "our_new_vmdk.vmdk" -d thin
We tried launching a VM with this converted file (our_new_vmdk.vmdk) and its works fine in ESXi 6.5. The above command internally created a flat file as well.
We cannot ship have two different VMDK files (one for ESXi 5.5 & 6 and other for ESXi 6.5). We trying to check if we can use the same VMDK across ESXi versions 5.5, 6, 6.5. Or should we ask customers to convert the file if they use ESXi 6.5. Any suggestions on this would be helpful?
FYR: We are creating VMDK from qcow2 image using the below command,
qemu-img convert -f qcow2 our_qcow2_file.qcow2 -O vmdk our_vmdk_file.vmdk
We tried using compat6 in the above command (qemu-img convert -f qcow2 our_qcow2_file.qcow2 -O vmdk our_vmdk_file.vmdk compat6) but still it didn't help.
Thanks in advance.
Please check this blog which explains why you get this error and how to resolve this.
Please consider marking this answer as correct and helpful if this helps you.
The conversion of the file format was already tried and it worked fine. Also, our existing VMDK is not meant for other Vmware hosted products and still it works in ESXi 5.5 & 6 but not in ESXi 6.5.
Our concern is to have single vmdk file which should work in ESXi 5.5, 6 and 6.5.
From what I recall, you cannot use integers any longer for the createType parameter. It needs to be a string type of one of the following values:
custom – descriptor file with arbitrary extents.
monolithicSparse – single sparse extent with embedded descriptor file.
monolithicFlat – single flat extent with separate descriptor file.
2GbMaxExtentSparse – sparse extents 2GB or smaller to account for file system limits.
2GbMaxExtentFlat – flat extents 2GB or smaller to account for file system limits.
fullDevice – disk that takes the properties of, and is backed by, physical disk on the host.
VMware, Inc. 4
Virtual Disk Format 5.0
partitionedDevice – disk backed by some partitions of physical disk, with other partitions hidden.
vmfsPreallocated – thick (flat) disk on VMFS, with blocks zeroed on first use.
vmfsEagerZeroedThick – pre‐allocated (flat) disk on VMFS, with all blocks zeroed when created.
vmfsThin – thin‐provisioned VMFS disks that consume only as much space as needed.
vmfsSparse – sparse disk on VMFS, often a redo log, not to be confused with thin‐provisioned disk.
vmfsRDM – virtual compatibility raw device map (RDM) acts like a symbolic link to physical disk.
vmfsRDMP – physical compabibility RDM, similar but sends SCSI commands to underlying hardware.
vmfsRaw – special raw disk for ESXi hosts, passthrough only mode.
streamOptimized – compressed sparse extents with embedded LBA, useful for OVF streaming
Thanks for the reply daphnisso.
I just checked the createType in the VMDK file.
Here is the createType in my existing VMDK file which sounds to be a string type.
# Disk DescriptorFile
The default format for all ESXi versions is the "VMFS" format which consists of two files, i.e. a small descriptor "<vmname>.vmdk" file, with a data "<vmname>-flat.vmdk" file.
Sparse files as used by VMware Workstation, Player, or Fusion are not supported anymore with ESXi.
Sample: Descriptor file name "VirtualDiskName.vmdk"
# Disk DescriptorFile
# Extent description
RW 146800640 VMFS "VirtualDiskName-flat.vmdk"
# The Disk Data Base
Do you have any idea on how to create "sparse" file from qcow2?
I tried -S <sparse size> in qemu-img command while converting qcow2 to vmdk but still could see the createType as monolithicsparse.