Bug 2188613

Summary: Virt-v2v can't convert guest with disk mode 'independent' from VMware via vddk >= 7.0
Product: Red Hat Enterprise Linux 9 Reporter: mxie <mxie>
Component: virt-v2vAssignee: Virtualization Maintenance <virt-maint>
Status: CLOSED MIGRATED QA Contact: Virtualization Bugs <virt-bugs>
Severity: medium Docs Contact:
Priority: unspecified    
Version: 9.3CC: chhu, hongzliu, juzhou, lersek, rjones, tyan, tzheng, vwu, xiaodwan
Target Milestone: rcKeywords: MigratedToJIRA, Triaged
Target Release: ---Flags: pm-rhel: mirror+
Hardware: x86_64   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2023-07-10 11:22:28 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
vmware-guest-with-independent-disk-mode.png none

Description mxie@redhat.com 2023-04-21 11:51:28 UTC
Created attachment 1958796 [details]
vmware-guest-with-independent-disk-mode.png

Description of problem:
Virt-v2v can't convert guest with disk mode 'independent' from VMware via vddk >= 7.0
 
Version-Release number of selected component (if applicable):
virt-v2v-2.3.4-1.el9.x86_64
libguestfs-1.50.1-3.el9.x86_64
guestfs-tools-1.50.1-2.el9.x86_64
nbdkit-server-1.34.0-1.el9.x86_64
libnbd-1.16.0-1.el9.x86_64
libvirt-libs-9.2.0-1.el9.x86_64
qemu-img-7.2.0-14.el9_2.x86_64


How reproducible:
100%

Steps to Reproduce:
1. Prepare a guest which has disk mode 'indepentent' on VMware, pls refer to scrreenshot 'vmware-guest-with-independent-disk-mode.png'

2. Convert the guest from VMware via vddk>=7.0 by virt-v2v
2.1 with vddk8.0.0
# virt-v2v -ic vpx://root.212.149/data/10.73.212.36/?no_verify=1  -it vddk -io vddk-libdir=/home/vddk8.0.0 -io vddk-thumbprint=D1:03:96:7E:11:3D:7C:4C:B6:50:28:1B:63:74:B5:40:5F:9D:9F:94 -ip /home/passwd  esx8.0-rhel9.3-x86_64
[   0.0] Setting up the source: -i libvirt -ic vpx://root.212.149/data/10.73.212.36/?no_verify=1 -it vddk esx8.0-rhel9.3-x86_64
[   1.9] Opening the source
nbdkit: vddk[1]: error: VixDiskLib_Open: [esx8.0-matrix] esx8.0-rhel9.3-x86_64_1/esx8.0-rhel9.3-x86_64.vmdk: Unknown error
nbdkit: vddk[1]: error: Please verify whether the "thumbprint" parameter (D1:03:96:7E:11:3D:7C:4C:B6:50:28:1B:63:74:B5:40:5F:9D:9F:94) matches the SHA1 fingerprint of the remote VMware server.  Refer to nbdkit-vddk-plugin(1) section "THUMBPRINTS" for details.
nbdkit: vddk[1]: error: VixDiskLib_Open: [esx8.0-matrix] esx8.0-rhel9.3-x86_64_1/esx8.0-rhel9.3-x86_64.vmdk: Unknown error
nbdkit: vddk[1]: error: Please verify whether the "thumbprint" parameter (D1:03:96:7E:11:3D:7C:4C:B6:50:28:1B:63:74:B5:40:5F:9D:9F:94) matches the SHA1 fingerprint of the remote VMware server.  Refer to nbdkit-vddk-plugin(1) section "THUMBPRINTS" for details.
nbdkit: vddk[1]: error: VixDiskLib_Open: [esx8.0-matrix] esx8.0-rhel9.3-x86_64_1/esx8.0-rhel9.3-x86_64.vmdk: Unknown error
nbdkit: vddk[1]: error: Please verify whether the "thumbprint" parameter (D1:03:96:7E:11:3D:7C:4C:B6:50:28:1B:63:74:B5:40:5F:9D:9F:94) matches the SHA1 fingerprint of the remote VMware server.  Refer to nbdkit-vddk-plugin(1) section "THUMBPRINTS" for details.
nbdkit: vddk[1]: error: VixDiskLib_Open: [esx8.0-matrix] esx8.0-rhel9.3-x86_64_1/esx8.0-rhel9.3-x86_64.vmdk: Unknown error
nbdkit: vddk[1]: error: Please verify whether the "thumbprint" parameter (D1:03:96:7E:11:3D:7C:4C:B6:50:28:1B:63:74:B5:40:5F:9D:9F:94) matches the SHA1 fingerprint of the remote VMware server.  Refer to nbdkit-vddk-plugin(1) section "THUMBPRINTS" for details.
nbdkit: vddk[1]: error: VixDiskLib_Open: [esx8.0-matrix] esx8.0-rhel9.3-x86_64_1/esx8.0-rhel9.3-x86_64.vmdk: Unknown error
nbdkit: vddk[1]: error: Please verify whether the "thumbprint" parameter (D1:03:96:7E:11:3D:7C:4C:B6:50:28:1B:63:74:B5:40:5F:9D:9F:94) matches the SHA1 fingerprint of the remote VMware server.  Refer to nbdkit-vddk-plugin(1) section "THUMBPRINTS" for details.
nbdkit: vddk[1]: error: VixDiskLib_Open: [esx8.0-matrix] esx8.0-rhel9.3-x86_64_1/esx8.0-rhel9.3-x86_64.vmdk: Unknown error
nbdkit: vddk[1]: error: Please verify whether the "thumbprint" parameter (D1:03:96:7E:11:3D:7C:4C:B6:50:28:1B:63:74:B5:40:5F:9D:9F:94) matches the SHA1 fingerprint of the remote VMware server.  Refer to nbdkit-vddk-plugin(1) section "THUMBPRINTS" for details.
virt-v2v: error: libguestfs error: could not create appliance through 
libvirt.

Try running qemu directly without libvirt using this environment variable:
export LIBGUESTFS_BACKEND=direct

Original error from libvirt: internal error: process exited while 
connecting to monitor: 2023-04-21T10:07:03.922622Z qemu-kvm: -blockdev 
{"driver":"nbd","server":{"type":"unix","path":"/tmp/v2v.zxZ5Sg/in0"},"node-name":"libvirt-2-storage","cache":{"direct":false,"no-flush":true},"auto-read-only":true,"discard":"unmap"}: 
Requested export not available [code=1 int1=-1]

If reporting bugs, run virt-v2v with debugging enabled and include the 
complete output:

  virt-v2v -v -x [...]

2.2  with vddk7.0
# virt-v2v -ic vpx://root.212.149/data/10.73.212.36/?no_verify=1  -it vddk -io vddk-libdir=/home/vddk7.0 -io vddk-thumbprint=D1:03:96:7E:11:3D:7C:4C:B6:50:28:1B:63:74:B5:40:5F:9D:9F:94 -ip /home/passwd  esx8.0-rhel9.3-x86_64
[   0.0] Setting up the source: -i libvirt -ic vpx://root.212.149/data/10.73.212.36/?no_verify=1 -it vddk esx8.0-rhel9.3-x86_64
[   1.9] Opening the source
nbdkit: vddk[1]: error: VixDiskLib_Open: [esx8.0-matrix] esx8.0-rhel9.3-x86_64_1/esx8.0-rhel9.3-x86_64.vmdk: Unknown error
nbdkit: vddk[1]: error: Please verify whether the "thumbprint" parameter (D1:03:96:7E:11:3D:7C:4C:B6:50:28:1B:63:74:B5:40:5F:9D:9F:94) matches the SHA1 fingerprint of the remote VMware server.  Refer to nbdkit-vddk-plugin(1) section "THUMBPRINTS" for details.
nbdkit: vddk[1]: error: VixDiskLib_Open: [esx8.0-matrix] esx8.0-rhel9.3-x86_64_1/esx8.0-rhel9.3-x86_64.vmdk: Unknown error
nbdkit: vddk[1]: error: Please verify whether the "thumbprint" parameter (D1:03:96:7E:11:3D:7C:4C:B6:50:28:1B:63:74:B5:40:5F:9D:9F:94) matches the SHA1 fingerprint of the remote VMware server.  Refer to nbdkit-vddk-plugin(1) section "THUMBPRINTS" for details.
nbdkit: vddk[1]: error: VixDiskLib_Open: [esx8.0-matrix] esx8.0-rhel9.3-x86_64_1/esx8.0-rhel9.3-x86_64.vmdk: Unknown error
nbdkit: vddk[1]: error: Please verify whether the "thumbprint" parameter (D1:03:96:7E:11:3D:7C:4C:B6:50:28:1B:63:74:B5:40:5F:9D:9F:94) matches the SHA1 fingerprint of the remote VMware server.  Refer to nbdkit-vddk-plugin(1) section "THUMBPRINTS" for details.
nbdkit: vddk[1]: error: VixDiskLib_Open: [esx8.0-matrix] esx8.0-rhel9.3-x86_64_1/esx8.0-rhel9.3-x86_64.vmdk: Unknown error
nbdkit: vddk[1]: error: Please verify whether the "thumbprint" parameter (D1:03:96:7E:11:3D:7C:4C:B6:50:28:1B:63:74:B5:40:5F:9D:9F:94) matches the SHA1 fingerprint of the remote VMware server.  Refer to nbdkit-vddk-plugin(1) section "THUMBPRINTS" for details.
nbdkit: vddk[1]: error: VixDiskLib_Open: [esx8.0-matrix] esx8.0-rhel9.3-x86_64_1/esx8.0-rhel9.3-x86_64.vmdk: Unknown error
nbdkit: vddk[1]: error: Please verify whether the "thumbprint" parameter (D1:03:96:7E:11:3D:7C:4C:B6:50:28:1B:63:74:B5:40:5F:9D:9F:94) matches the SHA1 fingerprint of the remote VMware server.  Refer to nbdkit-vddk-plugin(1) section "THUMBPRINTS" for details.
nbdkit: vddk[1]: error: VixDiskLib_Open: [esx8.0-matrix] esx8.0-rhel9.3-x86_64_1/esx8.0-rhel9.3-x86_64.vmdk: Unknown error
nbdkit: vddk[1]: error: Please verify whether the "thumbprint" parameter (D1:03:96:7E:11:3D:7C:4C:B6:50:28:1B:63:74:B5:40:5F:9D:9F:94) matches the SHA1 fingerprint of the remote VMware server.  Refer to nbdkit-vddk-plugin(1) section "THUMBPRINTS" for details.
virt-v2v: error: libguestfs error: could not create appliance through 
libvirt.

Try running qemu directly without libvirt using this environment variable:
export LIBGUESTFS_BACKEND=direct

Original error from libvirt: internal error: process exited while 
connecting to monitor: 2023-04-21T11:36:37.840542Z qemu-kvm: -blockdev 
{"driver":"nbd","server":{"type":"unix","path":"/tmp/v2v.WwjOCy/in0"},"node-name":"libvirt-2-storage","cache":{"direct":false,"no-flush":true},"auto-read-only":true,"discard":"unmap"}: 
Requested export not available [code=1 int1=-1]

If reporting bugs, run virt-v2v with debugging enabled and include the 
complete output:

  virt-v2v -v -x [...]


Actual results:
As above description

Expected results:
Maybe the bug is caused by vddk library, v2v can improve the error or something

Additional info:
1. Can Convert the guest from VMware via vddk<7.0 by virt-v2v
1.1 # virt-v2v -ic vpx://root.212.149/data/10.73.212.36/?no_verify=1  -it vddk -io vddk-libdir=/home/vddk6.7 -io vddk-thumbprint=D1:03:96:7E:11:3D:7C:4C:B6:50:28:1B:63:74:B5:40:5F:9D:9F:94 -ip /home/passwd  esx8.0-rhel9.3-x86_64
[   0.0] Setting up the source: -i libvirt -ic vpx://root.212.149/data/10.73.212.36/?no_verify=1 -it vddk esx8.0-rhel9.3-x86_64
[   1.8] Opening the source
[  10.1] Inspecting the source
[  22.7] Checking for sufficient free disk space in the guest
[  22.7] Converting Red Hat Enterprise Linux 9.3 Beta (Plow) to run on KVM
^Cvirt-v2v: Exiting on signal SIGINT

1.2 # virt-v2v -ic vpx://root.212.149/data/10.73.212.36/?no_verify=1  -it vddk -io vddk-libdir=/home/vddk6.5 -io vddk-thumbprint=D1:03:96:7E:11:3D:7C:4C:B6:50:28:1B:63:74:B5:40:5F:9D:9F:94 -ip /home/passwd  esx8.0-rhel9.3-x86_64
[   0.9] Setting up the source: -i libvirt -ic vpx://root.212.149/data/10.73.212.36/?no_verify=1 -it vddk esx8.0-rhel9.3-x86_64
[   2.7] Opening the source
[  13.9] Inspecting the source
[  26.6] Checking for sufficient free disk space in the guest
[  26.6] Converting Red Hat Enterprise Linux 9.3 Beta (Plow) to run on KVM
^Cvirt-v2v: Exiting on signal SIGINT

2. Can convert the guest from VMware without vddk by virt-v2v
# virt-v2v -ic vpx://root.212.149/data/10.73.212.36/?no_verify=1  -ip /home/passwd  esx8.0-rhel9.3-x86_64[   0.0] Setting up the source: -i libvirt -ic vpx://root.212.149/data/10.73.212.36/?no_verify=1 esx8.0-rhel9.3-x86_64
[   2.5] Opening the source
[  37.5] Inspecting the source
[ 795.6] Checking for sufficient free disk space in the guest
[ 795.6] Converting Red Hat Enterprise Linux 9.3 Beta (Plow) to run on KVM
^Cvirt-v2v: Exiting on signal SIGINT

3. Can convert the guest from VMware via vmx+ssh by virt-v2v
# virt-v2v -i vmx -it ssh ssh://root.212.36/vmfs/volumes/esx8.0-matrix/esx8.0-rhel9.3-x86_64_1/esx8.0-rhel9.3-x86_64.vmx -ip /home/esxpwd
[   0.0] Setting up the source: -i vmx ssh://root.212.36/vmfs/volumes/esx8.0-matrix/esx8.0-rhel9.3-x86_64_1/esx8.0-rhel9.3-x86_64.vmx
The authenticity of host '10.73.212.36 (10.73.212.36)' can't be established.
ECDSA key fingerprint is SHA256:kV9S4wQ7Amf6K+Gfkl8MeLKsPZ2OyS/3dfQq0TEMONc.
This key is not known by any other names
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
(root.212.36) Password: 
(root.212.36) Password: 
(root.212.36) Password: 
(root.212.36) Password: 
[  41.1] Opening the source
[  46.4] Inspecting the source
[  57.5] Checking for sufficient free disk space in the guest
[  57.5] Converting Red Hat Enterprise Linux 9.3 Beta (Plow) to run on KVM
^Cvirt-v2v: Exiting on signal SIGINT

Comment 6 Richard W.M. Jones 2023-05-05 11:55:09 UTC
Moving to the backlog as I don't really know what to do with this bug,
but I don't want to keep getting emails about it.