Bug 1605242

Summary: Update nbdkit info for vddk in v2v man page
Product: Red Hat Enterprise Linux 7 Reporter: mxie <mxie>
Component: libguestfsAssignee: Richard W.M. Jones <rjones>
Status: CLOSED ERRATA QA Contact: Virtualization Bugs <virt-bugs>
Severity: high Docs Contact:
Priority: high    
Version: 7.6CC: juzhou, mzhan, pasik, ptoscano, tgolembi, tzheng, xiaodwan, zili
Target Milestone: rc   
Target Release: ---   
Hardware: x86_64   
OS: Unspecified   
Whiteboard: V2V
Fixed In Version: libguestfs-1.40.2-3.el7 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of:
: 1651115 (view as bug list) Environment:
Last Closed: 2019-08-06 12:44:27 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:
Bug Depends On:    
Bug Blocks: 1651115, 1703403    

Description mxie@redhat.com 2018-07-20 14:20:57 UTC
Description of problem:
Update nbdkit info for vddk in v2v man page

Version-Release number of selected component (if applicable):
virt-v2v-1.38.2-8.el7.x86_64
libguestfs-1.38.2-8.el7.x86_64


How reproducible:
100%

Steps to Reproduce:
1.Check nbdkit info of vddk in v2v man page, it said you must compile nbdkit to enable the VDDK plugin

#man virt-v2v
....
INPUT FROM VDDK
       Virt-v2v is able to import guests using VMware’s proprietary VDDK
       library (a.k.a. VixDiskLib).

   VDDK: PREREQUISITES
....
       2.  You must also compile nbdkit, enabling the VDDK plugin.  nbdkit ≥
           1.1.25 is recommended, but it is usually best to compile from the
           git tree.

           ·   https://github.com/libguestfs/nbdkit

           ·   https://github.com/libguestfs/nbdkit/tree/master/plugins/vddk

           Compile nbdkit as described in the sources (see link above).

           You do not need to run "make install" because you can run nbdkit
           from its source directory.  The source directory has a shell script
           called nbdkit which runs the locally built copy of nbdkit and its
           plugins.  So set $PATH to point to the nbdkit top build directory
           (that is, the directory containing the shell script called nbdkit),
           eg:

            export PATH=/path/to/nbdkit-1.1.x:$PATH

    .....

Actual results:
Should update nbdkit info for vddk in downstream v2v man page because customers should use nbdkit-plugin-vddk rpm package directly rather than self-compiled 

Expected results:
Update nbdkit info for vddk in v2v man page


Additional info:

Comment 2 Pino Toscano 2018-07-23 15:50:02 UTC
(In reply to mxie from comment #0)
> Actual results:
> Should update nbdkit info for vddk in downstream v2v man page because
> customers should use nbdkit-plugin-vddk rpm package directly rather than
> self-compiled 

There is no nbdkit-plugin-vddk RPM, and it cannot exist.

Comment 3 Tomáš Golembiovský 2018-07-23 20:58:33 UTC
(In reply to Pino Toscano from comment #2)
> (In reply to mxie from comment #0)
> > Actual results:
> > Should update nbdkit info for vddk in downstream v2v man page because
> > customers should use nbdkit-plugin-vddk rpm package directly rather than
> > self-compiled 
> 
> There is no nbdkit-plugin-vddk RPM, and it cannot exist.

I believe he's talking about the self-build RPM from the spec file that exists.

Also, it is not necessary to build your own nbdkit as it will be available in RHEL 7.6.

Comment 7 Richard W.M. Jones 2018-09-11 09:15:48 UTC
This still needs to be done, but we've missed 7.6 at this point,
so moving to 7.7.

Comment 8 mxie@redhat.com 2018-11-19 09:12:40 UTC
Found another mistake in virt-v2v man page for VDDK,I think should correct " nbdkit-vddk-plugin" as nbdkit-plugin-vddk"

#man virt-v2v
....
 -io vddk-vimapiver=APIVER
           When using VDDK mode, these options are passed unmodified to the
           nbdkit(1) VDDK plugin.  Please refer to nbdkit-vddk-plugin(1).
           These are all optional.
....
  3.  You must find the SSL "thumbprint" of your VMware server.  How to
           do this is explained in nbdkit-vddk-plugin(1), also available at
           the link above.
...

Comment 9 Pino Toscano 2018-11-19 12:30:09 UTC
(In reply to mxie from comment #8)
> Found another mistake in virt-v2v man page for VDDK,I think should correct "
> nbdkit-vddk-plugin" as nbdkit-plugin-vddk"
> 
> #man virt-v2v
> ....
>  -io vddk-vimapiver=APIVER
>            When using VDDK mode, these options are passed unmodified to the
>            nbdkit(1) VDDK plugin.  Please refer to nbdkit-vddk-plugin(1).
>            These are all optional.
> ....
>   3.  You must find the SSL "thumbprint" of your VMware server.  How to
>            do this is explained in nbdkit-vddk-plugin(1), also available at
>            the link above.
> ...

The package nbdkit-plugin-vddk installs a man page called nbdkit-vddk-plugin, so the references are correct.

Comment 10 mxie@redhat.com 2019-03-27 09:28:34 UTC
As the link of nbdkit-vddk-plugin(1) can't be found in virt-v2v upstream page, I think this link "https://github.com/libguestfs/nbdkit/blob/master/plugins/vddk/nbdkit-vddk-plugin.pod" can be used to open nbdkit-vddk-plugin(1)

Comment 11 Richard W.M. Jones 2019-03-27 10:29:41 UTC
Yes the upstream website man pages are incomplete and need attention.  The important thing
is that nbdkit-vddk-plugin is being shipped with the package however.  People should use
that instead of relying on upstream documentation which would likely refer to a different
version of the plugin with different features.

Comment 12 mxie@redhat.com 2019-03-27 11:02:21 UTC
(In reply to Richard W.M. Jones from comment #11)
> Yes the upstream website man pages are incomplete and need attention.  The
> important thing
> is that nbdkit-vddk-plugin is being shipped with the package however. 
> People should use
> that instead of relying on upstream documentation which would likely refer
> to a different
> version of the plugin with different features.

Yes,but it will be convenient for customers to know how to get thumbprint of the remote VMware server if the link of nbdkit-vddk-plugin(1) is correct

Comment 13 Pino Toscano 2019-04-12 14:22:44 UTC
Simple patch posted upstream:
https://www.redhat.com/archives/libguestfs/2019-April/msg00102.html

Comment 14 Pino Toscano 2019-04-12 14:53:11 UTC
Fixed upstream with
https://github.com/libguestfs/libguestfs/commit/0704d8eb0bcc8139886eb4291f75a3ca49a91e58
which is in libguestfs >= 1.41.1.

Comment 16 liuzi 2019-04-28 08:38:00 UTC
Verify bug with builds:
virt-v2v-1.40.2-3.el7.x86_64
libguestfs-1.40.2-3.el7.x86_64

Steps:
1.Install the latest virt-v2v package and check the manual page about nbdkit info for vddk
2.Check the nbdkit-vddk-plugin manual page
# man nbdkit-vddk-plugin
...
DESCRIPTION
       "nbdkit-vddk-plugin" is an nbdkit(1) plugin that serves files from local VMware VMDK files,
       VMware ESXi servers, VMware VCenter servers, and other sources.  It requires VMware's
       proprietary VDDK library that you must download yourself separately.

       The plugin can serve read-only (if the -r option is used) or read/write.
...

3. Check the virt-v2v-input-vmware manual page
# man virt-v2v-input-vmware
...
       Virt-v2v is able to import guests using VMware’s proprietary VDDK library (a.k.a. VixDiskLib).

   VDDK: Prerequisites
       1.  As the VDDK library is not open source, and the license of this library does not permit
           redistribution or commercial use, you must obtain VDDK yourself and satisfy yourself that
           your usage of the library is permitted by the license.

       2.  nbdkit ≥ 1.6 is recommended, as it ships with the VDDK plugin enabled unconditionally.

       3.  You must find the SSL "thumbprint" of your VMware server.  How to do this is explained in
           nbdkit-vddk-plugin(1), also available at the link above.

       4.  VDDK imports require a feature added in libvirt ≥ 3.7.

...

Result:Virt-v2v updated nbdkit info for vddk in downstream manual pages,so change bug from ON_QA to VERIFIED.

Comment 18 errata-xmlrpc 2019-08-06 12:44:27 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHEA-2019:2096