Creating a VDDK image

Forklift uses the VMware Virtual Disk Development Kit (VDDK) SDK to transfer virtual disks.

You must download VDDK, build a VDDK image, push it to a private image registry, and then add the image to the v2v-vmware config map.

Note

Storing the VDDK image in a public registry might violate the VMware license terms.

Prerequisites
Procedure
  1. Create and navigate to a temporary directory:

    $ mkdir /tmp/<dir_name> && cd /tmp/<dir_name>
  2. In a browser, navigate to the VMware code site and click SDKs.

  3. In the Hyperconverged Infrastructure section, click Virtual Disk Development Kit (VDDK).

  4. Select the latest VDDK version.

  5. Click Download and save the VDDK archive file in the temporary directory.

  6. Extract the VDDK archive:

    $ tar -xzf VMware-vix-disklib-<version>.x86_64.tar.gz
  7. Create a Dockerfile:

    $ cat > Dockerfile <<EOF
    FROM registry.access.redhat.com/ubi8/ubi-minimal
    COPY vmware-vix-disklib-distrib /vmware-vix-disklib-distrib
    RUN mkdir -p /opt
    ENTRYPOINT ["cp", "-r", "/vmware-vix-disklib-distrib", "/opt"]
    EOF
  8. Build the VDDK image:

    $ podman build . -t <image> (1)
    1. Specify the image, for example, image-registry.openshift-image-registry.svc:5000/openshift/vddk:latest or registry.example.com:5000/vddk:latest.

  9. Push the VDDK image to the registry:

    $ podman push <image>
  10. Patch the v2v-vmware config map to add the vddk-init-image field:

    $ oc patch configmap/v2v-vmware -n openshift-cnv \
        -p '{"data": {"vddk-init-image": "<image>"}}'