/var/run/log/hostd.log file of the source ESXi host corresponding to the time of the vMotion failure:YYYY-MM-DDTHH:MM:SS In(166) Hostd[2099101]: [Originator@6876 sub=Vcsvc.VMotionSrc.###############] ResolveCb: Failed with fault: (vim.fault.GenericVmConfigFault) {YYYY-MM-DDTHH:MM:SS In(166) Hostd[2099069]: --> faultMessage = (vmodl.LocalizableMessage) [YYYY-MM-DDTHH:MM:SS In(166) Hostd[2099069]: --> (vmodl.LocalizableMessage) {YYYY-MM-DDTHH:MM:SS In(166) Hostd[2099069]: --> key = "msg.svmotion.fail.internal",YYYY-MM-DDTHH:MM:SS In(166) Hostd[2099069]: --> message = "A fatal internal error occurred. See the virtual machine's log for more details.",YYYY-MM-DDTHH:MM:SS In(166) Hostd[2099069]: --> },YYYY-MM-DDTHH:MM:SS In(166) Hostd[2099069]: --> (vmodl.LocalizableMessage) {YYYY-MM-DDTHH:MM:SS In(166) Hostd[2099069]: --> key = "msg.svmotion.disk.createphase.fail",YYYY-MM-DDTHH:MM:SS In(166) Hostd[2099069]: --> message = "Failed to create one or more destination disks.",YYYY-MM-DDTHH:MM:SS In(166) Hostd[2099069]: --> },YYYY-MM-DDTHH:MM:SS In(166) Hostd[2099069]: --> (vmodl.LocalizableMessage) {YYYY-MM-DDTHH:MM:SS In(166) Hostd[2099069]: --> key = "msg.svmotion.destdisk.createfail",YYYY-MM-DDTHH:MM:SS In(166) Hostd[2099069]: --> arg = (vmodl.KeyAnyValue) [YYYY-MM-DDTHH:MM:SS In(166) Hostd[2099069]: --> (vmodl.KeyAnyValue) {YYYY-MM-DDTHH:MM:SS In(166) Hostd[2099069]: --> key = "1",YYYY-MM-DDTHH:MM:SS In(166) Hostd[2099069]: --> value = "/vmfs/volumes/########-########-####-############/testVMname/testVMname_2.vmdk"YYYY-MM-DDTHH:MM:SS In(166) Hostd[2099069]: --> },YYYY-MM-DDTHH:MM:SS In(166) Hostd[2099069]: --> (vmodl.KeyAnyValue) {YYYY-MM-DDTHH:MM:SS In(166) Hostd[2099069]: --> key = "2",YYYY-MM-DDTHH:MM:SS In(166) Hostd[2099069]: --> value = "The specified device is not a valid physical disk device"YYYY-MM-DDTHH:MM:SS In(166) Hostd[2099069]: --> }YYYY-MM-DDTHH:MM:SS In(166) Hostd[2099069]: --> ],YYYY-MM-DDTHH:MM:SS In(166) Hostd[2099069]: --> message = "Storage vMotion failed to create the destination disk /vmfs/volumes/########-########-####-############/testVMname/testVMname_2.vmdk (The specified device is not a valid physical disk device).YYYY-MM-DDTHH:MM:SS In(166) Hostd[2099069]: --> "YYYY-MM-DDTHH:MM:SS In(166) Hostd[2099069]: --> }YYYY-MM-DDTHH:MM:SS In(166) Hostd[2099069]: --> ],YYYY-MM-DDTHH:MM:SS In(166) Hostd[2099069]: --> reason = "A fatal internal error occurred. See the virtual machine's log for more details.",YYYY-MM-DDTHH:MM:SS In(166) Hostd[2099069]: --> msg = "A fatal internal error occurred. See the virtual machine's log for more details.YYYY-MM-DDTHH:MM:SS In(166) Hostd[2099069]: --> Failed to create one or more destination disks.VMware ESXi 7.0.x
VMware ESXi 8.0.x
This issue occurs because of a mismatch between the host's current VML ID and the VML ID stored in the Raw Device Mapping (RDM) LUN mapping file.
While the VML ID seen by the host can change over time, the VML ID recorded inside the RDM mapping file remains static after creation.
When a Virtual Machine migration is initiated, the system queries the disk information to update it. Because the host's current VML IDs no longer match the IDs in the mapping file, the system cannot locate the correct LUNs, triggering the migration error.
Identifying VML ID Inconsistencies:
Verify the VML ID recognized by the ESXi host
To retrieve the VML ID of a LUN as seen by the host, execute the following command using the LUN's NAA ID:esxcli storage core device list -d naa.#######################Review the output and locate the "Other UIDs" field to find the host-recognized VML ID
esxcli storage core device list -d naa.################################
naa.################################: Display Name: STORAGE-VENDOR iSCSI Disk (naa.################################) Has Settable Display Name: true Size: ######### Device Type: Direct-Access Multipath Plugin: NMP Devfs Path: /vmfs/devices/disks/naa.################################ Vendor: STORAGE-VENDOR Model: STORAGE-MODEL Revision: #### SCSI Level: # Is Pseudo: false Status: on Is RDM Capable: true Is Local: false Is Removable: false Is SSD: true Is VVOL PE: false Is Offline: false Is Perennially Reserved: false Queue Full Sample Size: 0 Queue Full Threshold: 0 Thin Provisioning Status: yes Attached Filters: VAAI_FILTER VAAI Status: supported
Other UIDs: vml.020069################################################# Is Shared Clusterwide: true Is SAS: false Is USB: false Is Boot Device: false Device Max Queue Depth: ### No of outstanding IOs with competing worlds: ## Drive Type: unknown RAID Level: unknown Number of Physical Drives: unknown Protection Enabled: false PI Activated: false PI Type: 0 PI Protection Mask: NO PROTECTION Supported Guard Types: NO GUARD SUPPORT DIX Enabled: false DIX Guard Type: NO GUARD SUPPORT Emulated DIX/DIF Enabled: false
Verify the VML ID referenced by the virtual machine
vmkfstools command:vmkfstools -q /vmfs/volumes/DATASTORE_NAME/VM_NAME/VM_NAME.vmdkExample:
Executing this command against a disk named testVMname_2.vmdk yields the following output:
vmkfstools -q /vmfs/volumes/########-########-####-############/testVMname/testVMname_2.vmdk
Disk /vmfs/volumes/########-########-####-############/testVMname/testVMname_2.vmdk is a Passthrough Raw Device Mapping
Maps to: vml.02007e##############################################
Host (Step 1): Other UIDs: vml.020069################################################
VM (Step 2): Maps to: vml.02007e################################################
To correct the VML ID inconsistency:
NOTE: Always back up the VMs before making any storage level changes
Shut down the virtual machine where the RDM disk is incorrectly appearing.
Remove the RDM(s) from the virtual machine:
The VML ID in the RDM descriptor file will now match the VML ID seen currently by the host.
Related information: