VMware OVF Tool Release Notes

Release date: 15 NOV 2016 | Build number:
Version 4.2.0. Last document update: 15 NOV 2016
Check frequently for additions and updates to these release notes.

Contents

New Features in This Release

This software supports Open Virtualization Format (OVF) packages created with previous versions of the OVF Tool, and produces files compatible with OVF specifications 1.0 and 0.9. OVF Tool 4.2 has some new features including many that emphasize security.

  • Added SHA256 and SHA512 support for both manifest validation and digital signing.
  • Improved security by disabling TLSv1.0 protocol.
  • Added --sslVersion option to specify SSL version for HTTPS connections.
  • Improved security by disabling Diffie Hellman cipher from the default cipher suite.
  • Added --sslCipherList option to override default cipher suite.
  • New NVRAM support for the EFI boot type (secure boot).

System Requirements for OVF Tool

The OVF Tools supports the following operating systems and software.

Supported Operating Systems

The OVF Tool supports the following Windows 32-bit (x86) and 64-bit (x86_64) operating systems:

  • Windows 10 32-bit (x86) and 64-bit (x86_64)
  • Windows Server 2012 and 2012 R2 64-bit
  • Windows 8.1 32-bit (x86) and 64-bit (x86_64)
  • Windows Server 2008 R2 64-bit
  • Windows 7 32-bit (x86) and 64-bit (x86_64)

The OVF Tool supports the following Linux operating systems:

  • CentOS 7.1 and earlier
  • Fedora 22 and earlier
  • Oracle Linux 7.1
  • RedHat Enterprise Linux (RHEL) 7.1 and earlier
  • SUSE Linux Enterprise Server (SLES) 12.1 and earlier
  • Ubuntu 15.04 and earlier
  • VMware Project Photon

The OVF Tool supports the following Mac OS X 64-bit operating systems:

  • Mac OS X 10.11
  • Mac OS X 10.10
  • Mac OS X 10.9

Supported VMware Products and Platforms

Version 4.2 of the OVF Tool supports the following VMware software:

  • vSphere 6.5, 6.0, and 5.5
  • vCloud Director 8.10, 8.0, 5.6, and 5.5 (source from OVF or OVA types only)
  • ESXi 6.5, 6.0, and 5.5
  • vCloud Suite 6.5, 6.0, and 5.5
  • Horizon View 5.x, 6.x, and 7.x
  • VMware Workstation 12.x
  • VMware Fusion 8.x
  • App Volumes 3.0, 2.11, 2.10, and 2.9
  • VMware Studio can generate OVF packages.

OVF support is built into the vSphere (Web) Client that installs from vCenter Server. It is compatible with vSphere and ESXi hosts. Newer versions of vSphere supply later versions of the OVF Tool. ESXi and vCenter Server versions older than 5.5 are deprecated; the next release will not support them.

Space Requirements for OVF Packages

A virtual machine is stored as a set of files on disk. In the VMware runtime format, these files have extensions .vmx, .vmdk, .vmsd, .vmxf, and .nvram. The VMware hypervisor requires these file formats, which are optimized for efficient execution. An ESXi host often uses fully allocated flat disks in a VMFS file system to optimize virtual machine performance.

The OVF standard supports efficient, secure distribution of vApps and virtual machine templates. OVF is optimized for these goals, rather than for efficient runtime execution. OVF does not include specific information on runtime disk format because such information is not required until the virtual machine is deployed. When you package appliances with OVF, you can optimize one vApp for high performance in a production environment, and optimize another for minimal storage space during evaluation.

The following table contrasts a virtual machine in VMware file format with a virtual machine in OVF format. OVF employs a compressed sparse format for VMDK files. Virtual disks in that format cannot be used directly for execution without conversion.

VMware Format OVF Format OVA Format
Files LinuxAppliance.nvram
LinuxAppliance.vmdk
LinuxAppliance-s001.vmdk
LinuxAppliance-s002.vmdk
LinuxAppliance.vmsd
LinuxAppliance.vmx
LinuxAppliance.vmxf
LinuxAppliance.ovf
LinuxAppliance-0.vmdk
LinuxAppliance-1.vmdk
LinuxAppliance-2.vmdk
LinuxAppliance.ova
Total Size 251MB using thin provisioning
4000MB using thick provisioning
132MB 132MB

Installing the OVF Tool

Download the Installer

  1. Download the VMware OVF Tool as an installer or an archive (zipped/compressed) file:
    Operating System Download Filename
    Linux 32-bit VMware-ovftool-4.2.0-*-lin.i386.bundle
    Linux 64-bit VMware-ovftool-4.2.0-*-lin.x86_64.bundle
    OS X 64-bit VMware-ovftool-4.2.0-*-mac.x64.dmg
    Windows 32-bit VMware-ovftool-4.2.0-*-win.i386.msi
    Windows 64-bit VMware-ovftool-4.2.0-*-win.x86_64.msi
  2. Install the downloaded file using the appropriate method for your operating system:
    Operating System Download Filename
    Linux 32 bit Run the shell script as ./VMware-ovftool-4.2.0-*-lin.i386.bundle
    Linux 64-bit Run the shell script as ./VMware-ovftool-4.2.0-*-lin.x86_64.bundle
    Mac OS X 64-bit Double-click the package installer, VMware-ovftool-4.2.0-*-mac.x64.dmg
    Windows 32 bit Double-click the installation file, VMware-ovftool-4.2.0-*-win.i386.msi
    Windows 64-bit Double-click the installation file, VMware-ovftool-4.2.0-*-win.x86_64.msi

Complete the Installation Steps

Follow this procedure for all installations:

  1. At the Welcome screen, click Next.
  2. At the license agreement, read the license agreements, select “I agree...” and click Next.
  3. Accept the path suggested or change to a path of your choice and click Next.
  4. When you finish choosing your installation options, click Install.
  5. When the installation is complete, click Next.
  6. Deselect Show the readme file if you do not want to view the readme file, and click Finish to exit.

Running the OVF Tool from a Windows Command Line

After installing the OVF Tool on Windows, you can run the OVF Tool from the Windows command line.

  1. From the Start menu, click Run.
  2. In the Run dialog, enter cmd to open the Windows command line tool.

If you have the OVF Tool folder in your Path environment variable, you can run the OVF Tool from the command line.

Adding the OVF Tool to your Path Environment Variable

The following instructions are for Windows 7, but the steps are similar on other Windows systems.

  1. Right-click My Computer.
  2. Select Properties.
  3. Select Advanced system settings.
  4. Select Environment Variables.
  5. Highlight (select) the Path variable in the System variable (lower) pane.
  6. Click the Edit button and type the path to the folder where you installed the OVF Tool (at the end of the existing path).

Specify the Inventory Path to a Virtual Machine

The OVF Tool allows you to specify an inventory path for a source or target. You can specify an inventory path to a specific virtual machine.

The following example shows an inventory path to a virtual machine without any folders:
MyDatacenter/vm/MyVM

The following example shows an inventory path with two nested folders:
MyDatacenter/vm/Folder1/Sub Folder/MyVM

The use of the VM tag after the datacenter name specifies that you are locating a virtual machine or vApp in the VM and Template view. Use the host tag after the datacenter name if you are locating a virtual machine or vApp in the Host and Clusters view.

Inventory Path to a Cluster, Host, or Resource Pool

You can specify an inventory path for a host or a resource pool. You can nest resource pools similar to folders.

To specify an inventory path for a host or a resource pool as part of target locators, use the following syntax:
<datacenter name>/host/<host or cluster name>/Resources/<resource pool>

Using the example above, the following rules apply:

  • host is a fixed part of the path
  • Resources is a fixed part of the path, but is only specified when using a resource pool
  • <resource pool> can take the value of one or more nested resource pools. If no resource pools are specified, the default resource pool for the host is used.

You must specify the /host/ section of an inventory path when using a vi destination locator. If you are specifying the destination of a resource pool, you must include the /Resources/ section of the path.

The following example is of an inventory path without a specified resource pool:
vi://username:pass@localhost/myDatacenter/host/esx01.example.com

The following example is of an inventory path with a specified resource pool:
vi://username:pass@localhost/myDatacenter/host/esx01.example.com/Resources/myResourcepool

Using Partial Locators

When using the OVF Tool, it is often not necessary to specify source and target types, provided certain filename conventions are followed. You can ignore locator type and specify the source and target explicitly using the --sourceType=... and --targetType=... arguments.

The OVF Tool assumes the locator type based on the following rules:

  1. If the name starts with vcloud://, OVF Tool assumes vCloud Director type.
  2. If the name starts with vi://, OVF Tool assumes vSphere type.
  3. If the name ends with .ovf, OVF Tool assumes OVF type.
  4. If the name ends with .vmx, OVF Tool assumes VMX type.
  5. If the name ends with .ova, the OVF tool assumes OVA type.
  6. If the locator is a file path to a directory that represents a vApprun workspace or an entity in a vApprun workspace, then OVF Tool assumes the vApprun type.

Similarly, source and target types can be inferred from folder locators. OVF Tool assumes the type according the following rules:

  1. If the source locator is a folder, the OVF Tool assumes that the source is an OVF package and that the OVF descriptor has the same name as the folder. For example, my-ovf/my-ovf.ovf.
  2. If the source is an OVF package and the target locator is a directory, such as MyVirtualMachines/, the OVF Tool assumes that the target is a VMX locator. The resulting VMX/VMDK file is added to in a directory with the target name, for example, MyVirtualMachines/MyVM/MyVM.vmx.
  3. If the source is a VMX locator and the target locator is a directory, the OVF Tool assumes that the target is an OVF package.
  4. If the source is a vSphere locator, and the target locator is a directory, the OVF Tool assumes that the target is an OVF package.

OVF Tool supports partial vSphere locators when deploying or exporting. For an incomplete locator path, the tool suggests completions at the command line. The following example shows the command-line dialog when partial locators are used.

Example 1 - Partial VMware Locators on the Command Line

> ovftool LAMP.ovf vi://localhost/
Opening source: LAMP.ovf
Opening target: vi://user@localhost/
Error: Found wrong kind of object (Folder)
Possible completions are:
  Datacenter/
  Remote Datacenter/
  Secondary Datacenter/

> ovftool LAMP.ovf vi://localhost/Datacenter
Opening source: LAMP.ovf
Opening target: vi://user@localhost/Datacenter
Error: Found wrong kind of object (Datacenter)
Possible completions are:
  vm/
  host/

> ovftool LAMP.ovf vi://localhost/Datacenter/host
Opening source: LAMP.ovf
Opening target: vi://user@localhost/Datacenter/host
Error: Found wrong kind of object (Folder)
Possible completions are:
  host1.foo.com/
  host2.foo.com/

> ovftool LAMP.ovf vi://localhost/Datacenter/vm/host1.foo.com

The OVF Tool supports partial vSphere locators when deploying or exporting. For an incomplete locator path, the tool suggests completions at the command line. Example 2 shows the command-line dialog when partial locators are used. First, the OVF Tool signals that there is more than one virtual datacenter present, then multiple catalogs, then multiple networks. At each attempt, you must select one of the options that the OVF Tool presents.

Example 2 - Partial vCloud Director Locators on the Command Line

ovftool LAMP.ovf vcloud://jd:PASSWD@example.com:443/?org=myOrg&vapp=test1
Opening OVF source: LAMP.ovf
Warning: No manifest file
Opening vCloud target: vcloud://js:PASSWD@example.com:443/
Error: Multiple VDCs found. Possible VDC completions are:
  orgVdc
  orgVdc2
Completed with errors

ovftool LAMP.ovf "vcloud://jd:PASSWD@example.com:443/?org=myOrg&vapp=test1&vdc=orgVdc"
Opening OVF source: LAMP.ovf
Warning: No manifest file
Opening vCloud target: vcloud://js:PASSWD@example.com:443/
Error: Multiple catalogs found. Possible catalog completions are:
  catalog
  catalog2
Completed with errors

ovftool LAMP.ovf "vcloud://jd:PASSWD@example.com:443/?org=myOrg&vapp=test1&vdc=orgVdc&catalog=catalog"
Opening OVF source: LAMP.ovf
Warning: No manifest file
Opening vCloud target: vcloud://js:PASSWD@example.com:443/
Error: Multiple networks found on target. Possible completions are:
  extNet2
  extOrgNet
  intNet2
 intnet
Completed with errors

ovftool --net:"VM Network=intnet" LAMP.ovf \
 "vcloud://jd:PASSWD@example.com:443/?org=myOrg&vapp=test1&vdc=orgVdc&catalog=catalog"
Opening OVF source: LAMP.ovf
Warning: No manifest file
Opening vCloud target: vcloud://js:PASSWD@example.com:443/
Deploying to vCloud: vcloud://js:PASSWD@example.com:443/
Disk Transfer Complete
Completed successfully

For more information and examples about partial locators, see the “Partial Locators” section of the OVF Tool User's Guide.

Using Configuration Files

The OVF Tool has many configuration options. You can create a configuration file, so that you don't have to type long configuration entries on the command line. A configuration file uses the following syntax:

option1=value
...
#comment
optionN=value

The following is an example of a configuration file:

proxy=http://proxy.example.com
datastore=storage-test42
# Comment on something
locale=dk

You can create local or global configuration files. A local configuration file has the .ovftool suffix and is read in the folder from which you invoke the OVF Tool. A global configuration file is per user.

On Windows, the global configuration file is read from the following location:
C:\Documents and Settings\$USERNAME\VMware\ovftool.cfg

On Linux, the global configuration file is read from the following location:
$HOME/.ovftool

When using configuration files, globally defined options are overwritten by locally defined and command-line options. Locally defined options are overwritten by command-line options.

You can also use the ovftool --help config command to get help about using a configuration file, or refer to the OVF Tool User's Guide for more information about OVF Tool.

Known Issues in This Version

You can not use the OVF Tool to deploy a VM to static DVS port group. To work around this issue:

  1. Use vCenter Server to create an ephemeral port on the desired network.
  2. Deploy the appliance to that port group on an ESXi host.
  3. Switch the appliance over to that static port group.
  4. Use vCenter Server to delete the ephemeral port group.

Deprecated Features

There are no deprecated features in version 4.2 of the OVF Tool, but support for Windows XP and Windows Server 2003 has been discontinued.