OVF Tool User's Guide: Open Virtualization Format Tool 4.4 Update 1
OVF Tool User's Guide: Open Virtualization Format Tool 4.4 Update 1
You can find the most up-to-date technical documentation on the VMware website at:
https://docs.vmware.com/
VMware, Inc.
3401 Hillview Ave.
Palo Alto, CA 94304
www.vmware.com
©
Copyright 2009-2020 VMware, Inc. All rights reserved. Copyright and trademark information.
VMware, Inc. 2
Contents
VMware, Inc. 3
OVF Tool User’s Guide
VMware, Inc. 4
OVF Tool User’s Guide
VMware, Inc. 5
About This Book
This OVF Tool User’s Guide provides information about how to use VMware® OVF Tool to
package virtual machines and vApps into Open Virtualization Format (OVF) standard packages.
Revision History
A revision occurs with each release of the product, or as needed. A revised version can contain
minor or major changes. Table 1-1. Revision History lists the versions of this manual.
04/2020 Updated with new flags and features for vSphere 7.0 release.
05/2018 OVF Tool 4.3.0 User’s Guide. Large upload retry, SHA digest fix, NVM and PMEM, Curl update,
better logging, VBS and TPM support.
10/2016 OVF Tool 4.2.0 User’s Guide. New options for SSL version and cipher list, NVRAM support for EFI
boot.
03/2015 OVF Tool 4.1.0 User’s Guide. Added DVS port group, and --proxy option for vSphere or vCloud.
10/2014 OVF Tool 4.0.0 User’s Guide. Added --allowAllExtraConfig and --decodeBase64 command line
options.
06/2014 OVF Tool 3.5.2 User’s Guide. Increased security for Open SSL.
08/2013 OVF Tool 3.5.0 User’s Guide. Includes new command line options.
VMware, Inc. 6
OVF Tool User’s Guide
Intended Audience
This book is intended for anyone who needs to convert an OVF package to a virtual machine, or
a virtual machine to an OVF package. Users typically include: system administrators, software
developers, QA engineers, and anyone who need to package or unpackage virtual machines
using open industry standards.
Document Feedback
VMware welcomes your suggestions for improving our documentation. If you have comments,
send your feedback to [email protected].
To post questions about OVF Tool, go to the OVF Tool Forum at http://code.vmware.com/
forums/3086#.
Support Offerings
To find out how VMware support offerings can help meet your business needs, go to http://
www.vmware.com/support/services.
VMware, Inc. 7
Overview of the OVF Tool
1
Open Virtualization Format (OVF) is an industry standard to describe metadata about virtual
machine images in XML format. VMware OVF Tool is a command-line utility that helps users
import and export OVF packages to and from a wide variety of VMware products.
Version 1.1 was published in January 2010, which supersedes the 1.0 specification published April
2009, and is available on the DMTF Web site, along with a white paper.
n Specification: http://www.dmtf.org/standards/published_documents/DSP0243_1.1.0.pdf
n Whitepaper: http://www.dmtf.org/standards/published_documents/DSP2017_1.0.0.pdf
Benefits of OVF
Using OVF to distribute virtual machines has the following benefits:
n Ease of use. When users receive a package in OVF format, they do not have to unzip files,
execute binaries, or convert disk formats. Adding a vApp can be as simple as typing a URL
and clicking Install.
VMware, Inc. 8
OVF Tool User’s Guide
n Virtual hardware validation. OVF supports fast and robust hardware validation. You do not
have to install a complete virtual machine before determining whether it is compatible with an
ESXi host (for example, because it uses IDE virtual disks).
n Optimized download from the Internet. Large virtual disks are compressed for fast download
and to reduce disk space for large template libraries.
n Use the OVF Tool 3.x for vSphere 4.0 and later, vCloud Director 1.5, 5.1, and 5.5, vCloud
Director 1.0 (for OVF and OVA types only), vCenter 2.5 and later, ESX 3.5 and later, VMware
Server 2, VMware Workstation 6.0 and later, and VMware Fusion 3.0 and later.
n OVF 0.9 is supported for import and export by VirtualCenter 2.5 and later, and ESX 3.5 and
later.
OVF support is built into the vSphere Client that installs from, and is compatible with vCenter 5.0
and ESXi 5.0, vCenter 4.0 and ESX 4.0. It is also built into the vSphere Client that installs from and
is compatible with VirtualCenter 2.5 and later, and ESX 3.5 and later. The vSphere 5.1 Web Client
includes the 3.x version of the VMware OVF Tool as part of the Client Integration Plug-in.
You can find the latest information about System Requirements, supported VMware software
and platforms, installation, and known issues by reading the latest release notes located at the
following web page: www.vmware.com/support/developer/ovf.
n Supports import and generation of OVA packages (OVA is part of the OVF standard, and
contains all the files of a virtual machine or vApp in a single file.)
n Directly converts between any vSphere, vCloud Director, VMX, or OVF source format to any
vSphere, vCloud Director, VMX, or OVF target format
n Accesses OVF sources using HTTP, HTTPS, FTP, or from a local file
VMware, Inc. 9
OVF Tool User’s Guide
n Deploys and exports vApp configurations on vSphere 4.0 (and all newer) targets and on
vCloud Director 1.5 (and all newer) targets
n Provides options to power on a VM or vApp after deployment, and to power off a virtual
machine or vApp before exporting (caution advised)
n Provides context sensitive error messages for vSphere and vCloud Director sources and
targets, showing possible completions for common errors, such as an incomplete vCenter
inventory path or missing datastore and network mappings
n Provides an optional output format to support scripting when another program calls OVF
Tool
n Uses new optimized upload and download API (optimized for vSphere 4.0 and newer)
For VMware products without built-in OVF support, or when you need to accomplish specialized
OVF operations, you can download the OVF Tool over the Web.
For example, to export a vApp into an OVF package using vSphere Client 4:
Using the vSphere Client 2.5, you can import an OVF virtual machine into an ESXi host and export
a virtual machine to an OVF file (note that vSphere Client 2.5 is limited to OVF 0.9). For example,
to import an OVF vApp into an ESXi host using vSphere Client 2.5:
For example, to export a virtual machine to an OVF file using vSphere Client 2.5:
VMware, Inc. 10
OVF Tool User’s Guide
OVF packages imported or exported by OVF Tool are completely compatible with packages
imported or exported by the vSphere Client or the vSphere Client.
Delta disk compression identifies disk segments that are equal and combines these equal parts in
a parent disk. This process prevents storing the same segment twice.
As an example, consider a software solution that consists of an Apache Web server virtual
machine and a MySQL database virtual machine, both installed on top of a single-disk Ubuntu
server. The two virtual machines were created with the following process:
Using delta disk compression on the two virtual machine disks creates a parent disk containing all
of the information they share, which is essentially the entire operation system and two child disks
containing the MySQL and Apache parts.
A plain Ubuntu server can use 400–500MB of space, and two would use 800–1000MB of space.
By contrast, using delta disk compression, an OVF package with these two servers uses only
400–500MB (plus the size of the MySQL and Apache installations), which saves 400–500MB by
not duplicating the Ubuntu server.
Any number of disks can be combined creating various disk trees and saving more space.
vSphere 4 and later support the deployment of OVF packages that contain delta disk hierarchies.
n Only disks with equal capacity can be combined. If you expect to use delta disk compression,
you must keep disk capacities equal.
n Delta disk compression necessitates that segments that might be put in a parent disk are at
the same offset from the beginning of their respective files. In the Ubuntu example, if the
setup varies between the two installations, it can completely offset each segment on one of
the disks from the segments on the other disk. In this case, delta disk compression does not
produce any significant disk space savings. This is why the example specified cloning the
Ubuntu server before installing the MySQL and Apache parts, respectively.
VMware, Inc. 11
OVF Tool User’s Guide
n Delta disk compression takes OVF packages and vSphere and VMX files as input, but not
OVA packages.
n The delta disk compression algorithm needs to read the contents of each disk up to two
times. It might make sense to invoke OVF Tool on a local copy of the OVF package.
n The delta disk compression algorithm always generates an OVF package in the given output
directory. To convert this OVF package into an OVA package, reinvoke OVF Tool.
VMware, Inc. 12
Using the VMware OVF Tool
2
The VMware OVF Tool is a command-line utility that supports importing and exporting of OVF
packages, VMX files, or virtual machines from ESXi hosts and other VMware products.
n Command-Line Options
n Specifying a Locator
n Configuration Files
A target location or destination URL locator specifies either a file location, or a location within a
VMware product, such as VMware Workstation, ESXi, vCenter Server, vCloud Director or vFabric
Data Director.
Procedure
<source locator> and <target locator> are paths to the source and target for the virtual
machine, OVF package, OVA package, or vSphere location. See Command-Line Options for
options. Table 2-1. OVF Tool Definitions of Source and Target Locators describes the source
and target locators. For details, see Specifying a Locator.
VMware, Inc. 13
OVF Tool User’s Guide
If you are using an operating system where spaces are not allowed in paths on the command
line, and need the full path to run OVF Tool, enclose the path in quotes as shown below:
2 If you want to specify additional options, type them before the source and target locators.
Probe mode allows you to investigate the contents of a source. To invoke probe mode, use
the ovftool command with only a source and no target. OVF Tool prints information about
the source such as hardware, EULA, and OVF properties.
Use probe mode to examine an OVF package before deploying it. For example, you can
examine the download and deployment sizes, determine the set of networks to be mapped,
determine the OVF properties to be configured, read the EULA, and determine the virtual
hardware requirements.
The probe operation is fast, as it only needs to access the OVF descriptor. It does not need
to download the entire OVA or VMDK files. Probe mode also validates the certificate if the
source is signed. For details about Probe Mode and sample output, see Chapter 5 Using the
VMware OVF Tool Probe Mode.
If you are deploying with the ovftool command targeting an ESXi host, you must “inject” the
parameters into the resulting VM when it is powered on. This is because the ESXi host lacks a
cache to store the OVF parameters, as with vCenter Server. Therefore, you must use the --
X:injectOvfEnv debug option with the --poweron flag in the command line if you are deploying a
virtual machine targeting ESXi. Example below. (You can also do this using the Create a VM from
an OVA/OVF option in the ESXi host client, then browse to the .ova file.)
>./ovftool/ovftool\
--name="Cloudvm_2074586_with_inject"\
--X:injectOvfEnv\
--X:logFile=ovftool.log\
--X:logLevel=trivia\
--acceptAllEulas\
-ds=cl-storage-1\
-dm=thin\
--net:'Network 1=VM Network'\
--X:enableHiddenProperties\
--noSSLVerify\
--allowExtraConfig\
VMware, Inc. 14
OVF Tool User’s Guide
--machineOutput\
--prop:vami.netmask0.VMware_vCenter_Server_Appliance=255.255.255.0\
--prop:guestinfo.cis.appliance.net.prefix=24\
--prop:guestinfo.cis.appliance.net.gateway=X.X.X.123\
--prop:guestinfo.cis.appliance.time.tools-sync=True\
--prop:vami.gateway.VMware_vCenter_Server_Appliance=X.X.X.123\
--prop:guestinfo.cis.appliance.net.dns.servers=X.X.X.1,X.X.X.2\
--prop:vami.ip0.VMware_vCenter_Server_Appliance=X.X.X.145\
--prop:guestinfo.cis.appliance.root.passwd=vmware\
--prop:guestinfo.cis.appliance.net.addr=X.X.X.145\
--prop:vami.DNS.VMware_vCenter_Server_Appliance=X.X.X.1,X.X.X.2\
--prop:vami.vmname=vmc-srm-vc10\
--prop:guestinfo.cis.appliance.root.shell=/bin/bash\
--prop:guestinfo.cis.vmdir.first-instance=True\
--prop:guestinfo.cis.appliance.ssh.enabled=True\
--prop:guestinfo.cis.appliance.net.mode=static\
--prop:guestinfo.cis.appliance.net.addr.family=ipv4\
--prop:guestinfo.cis.vmdir.domain-name=vsphere.local\
--prop:guestinfo.cis.vmdir.password=vmware\
--powerOn\
--X:waitForIp\
http://<directory_w/cloudvm>/VMware-vCenter-Server-Appliance-6.0.0.XXXX-XXXXXXX_OVF10.ovf\
vi://root:pwd@vm_name
You will need to replace the variables (IP addresses, build numbers, root password, and VM
names) in the above example with values from your own system.
Procedure
Command-Line Options
For every command, you specify the source and target locators. Table 2-1. OVF Tool Definitions
of Source and Target Locators defines each locator type.
VMware, Inc. 15
OVF Tool User’s Guide
<source locator> Path to the source, which must be either a virtual machine, vApp, vApprun
workspace entity, or an OVF package.
The source locator can be one of the following:
n A path to an OVF or OVA file (a local file path, or an HTTP, HTTPS, or FTP
URL).
n A virtual machine (a local file path to a .vmx file).
n A vSphere locator identifying a virtual machine or vApp on vCenter, ESXi, or
VMware Server.
n A vCloud Director locator identifying a virtual machine or a vApp in vCloud
Director.
n A local file path to a vApprun workspace entity.
Table 2-2. OVF Tool Command-Line Options shows all the command-line options.
Options perform actions only between certain source and target types. Table 2-2. OVF Tool
Command-Line Options shows which source and target types each option works with. If you
specify an option using an irrelevant source or target type, the command does nothing.
--acceptAllEulas OVF, N/A Accepts all end-user licenses agreements (EULAs) without
OVA being prompted. Binary option.
--allowExtraConfig Lets you specify the extra config options that can be converted
to .vmx format. These options are a security risk as they control
low-level and potentially unsafe options on the VM. Each option
must be specified using a series of key value pairs (sometimes
referred to as a white list).
--annotation All Adds annotation to vi, vmx, vapprun, vCloud, OVF, and OVA
source locators.
--authdPortSource vSphere vSphere Overrides default VMware authd port (902) when using a host
as source or as target.
--authdPortTarget vSphere vSphere Overrides the default VMware authd port (902) when using a
host as target.
VMware, Inc. 16
OVF Tool User’s Guide
--chunkSize N/A OVF, OVA Specifies the chunk size to use for files in a generated OVF or
OVA package. The default is not to chunk.
If you don’t specify a unit for chunk size, the chunk size is
assumed to be in megabytes (mb). Accepted units are b, kb,
mb, gb. Example: 2gb or 100kb.
When using this option, all output files (except the OVF
descriptor, manifest and certificate files) are sliced into the
specified chunk size. This is useful if you need to transport an
OVF package on a series of 800MB CD-ROMs, or are only able
to create files up to 2GB on FAT32 file systems.
When you use chunking with the OVA package option, the
result is similar to OVF because all files are chunked, but the
OVA package is still a single file.
--compress N/A OVF, OVA Compresses the disk when given an OVF or OVA target locator.
The value must be between 1 and 9. Use 9 for the slowest
processing time, but best compression. Use 1 for the fastest
processing time, but least compression.
--computerName Sets the computer name in the guest virtual using the syntax --
computerName:<VMID>=<value>.
Only applies to vCloud targets of version 5.5 or later.
--configFile vSphere vSphere Specifies a configuration file containing long-name options and
settings. Useful for scripting, this overrides the local
ovftool.cfg in the current directory, which overrides the global
configuration file in $HOME/ovftool.cfg on Linux and OS X, or
C:\Users\%USER%\AppData\Roaming\VMware\ovftool.cfg on
Windows.
--datastore or -ds N/A vSphere Target datastore name for a vSphere locator.
--defaultStorageProfile The storage profile for all VMs in the OVF package. The value
should be an SPBM profile ID. Only applies to VI targets of
version 5.5 or later.
-- The storage profile for all VMs in the OVF package. The value
defaultStorageRawProfile should be a raw SPBM profile. The value overwrites that in --
defaultStorageProfile. Only applies to VI targets of version
5.5 or later.
--deploymentOption OVF, N/A Deployment options for a deployed OVF package, if the source
OVA OVF package supports multiple options. An OVF package can
contain several deployment configurations. This option allows
you to select which configuration to use when deploying to the
vSphere target.
VMware, Inc. 17
OVF Tool User’s Guide
--disableVerification OVF, N/A Skips validation of signature and certificate. Binary option.
OVA
--diskMode or -dm N/A VMX, Select target disk format. Supported formats are:
vApprun,vSphere monolithicSparse, monolithicFlat, twoGbMaxExtentSparse,
twoGbMaxExtentFlat, seSparse (vSphere target),
eagerZeroedThick (vSphere target), thin (vSphere target), thick
(vSphere target), sparse, and flat.
--eula N/A OVF, OVA Inserts the EULA in the first virtual system or virtual system
collection in the OVF. If the EULA is in a file, use this format: --
eula@=filename
--help or -h N/A N/A Prints the VMware OVF Tool message that lists the help
options.
--hideEula OVF,OVA N/A Does not include the EULA in the OVF probe output. Binary
option.
--I:sourceSessionTicket vSphere vSphere Integration option. Specifies the session ticket used for
authenticating the vSphere source locator.
--I:targetSessionTicket vSphere vSphere Integration option. Specifies the session ticket used for
authenticating the vSphere target locator.
--ipAllocationPolicy OVF,OVA N/A IP allocation policy for a deployed OVF package. Supported
values are: dhcpPolicy, transientPolicy, fixedPolicy, or
fixedAllocatedPolicy.
In OVF descriptors, you can specify a VMware specific IP
assignment policy that guides the deployment process by
expressing which of the policies the OVF package supports.
Only values listed in the OVF descriptor are supported when the
OVF or OVA package is deployed.
VMware, Inc. 18
OVF Tool User’s Guide
--ipProtocol OVF, N/A Specifies which IP protocol to use. For example, IPv4, IPv6. As
OVA with the ipAllocationPolicy option, you can specify which IP
version this OVF package uses when it is deployed. Use only
the values listed in the OVF descriptor.
--lax OVF, N/A Relax OVF specification conformance and virtual hardware
OVA compliance checks. (For advanced users only.)
--machineOutput N/A N/A Outputs OVF Tool messages in a machine readable format.
Binary option.
--makeDeltaDisks OVF, Must be Use delta disk compression to create an OVF package from a
vSphere, directory disk source. Binary option.
VMX,
vApprun
--multiDatastore:dsk=ds OVF, vSphere Allows multi-disk VM deployment onto separate datastores. Use
OVA this option as many times as needed The VM disk is placed on
datastore ds as follows, where vmname is the name specified by
--name option or in the OVF file, and vmdisk is specified in the
OVF disk section by ovf:diskId.
[ds] vmname/vmdisk1.vmdk
--name or -n N/A All Specifies the target name. Defaults to the source name.
--net OVF, N/A Sets a network assignment in the deployed OVF package. For
OVA example, --net:<OVFname>=<target name>. OVF packages
contain symbolic names for network names which are assigned
with this option.
For multiple network mappings, repeat the option, separating
them with a space, for example, --net:s1=t1 --net:s2=t2 --
net:s3=t3.
If the target is vCloud 5.5 or later, a fence mode can also be
specified using the syntax --
net:<OVFname>=<targetName>,<fenceMode>. Possible fence
mode values are: bridged, isolated, and natRouted.
--network or -nw OVF, N/A Target network for a vSphere deployment. Use this option in
OVA place of the --net option when only one network exists in the
OVF package. This option maps the symbolic OVF name to the
specified network name.
VMware, Inc. 19
OVF Tool User’s Guide
--noDisks N/A All Creates and uploads the virtual machine or vApps but does not
upload any disk files. Disks are created empty. (Disables disk
conversion.)
--noImageFiles N/A All Creates and uploads the virtual machine or vApps but does not
upload ISO files to a CD-ROM. That is, does not include image
files in destination.
--noNvramFile vSphere vSphere Skips the NVRAM file when exporting a VM to OVF or deploying
OVF to a VM. It does not download the NVRAM file during VM
export, nor does it upload the NVRAM file during deployment or
OVF import.
--noProxyVerify vCloud vCloud Do not check the proxy's SSL certificate, as is done by default.
--noSSLVerify vSphere vSphere Skip SSL verification for vSphere connections. As of version 4.4
you can skip source or destination with either --
noSourceSSLVerify or --noDestinationSSLVerify instead.
--packageCert OVF OVA Packages an OVF into OVA with a required signature file, as-is,
instead of generating one. This is the only way to create an
OVA with a certificate file in it, resulting in a signed package.
--parallelThreads=N vSphere vSphere Upload to the host, or from the host, in parallel using N threads.
VMX<=>OVF, OVF<=>VI, VMX<=>VI, but not OVA. N may be a
number from 1 to 100 but should approximate the number of
CPU cores minus one.
--powerOffSource vCloud, N/A Ensures that a virtual machine or vApp is powered off before
vSphere importing from a vSphere source. Binary option.
--powerOffTarget N/A vCloud, vSphere Ensures that a virtual machine or vApp is powered off before
overwriting a vSphere target. Binary option.
--powerOn N/A vCloud, vSphere Powers on a virtual machine or vApp deployed on a vSphere
target. Binary option.
--privateKey N/A OVF, OVA Signs the OVF package with the given private key (.pem file).
The file must contain a private key and a certificate.
--privateKeyPassword N/A OVF, OVA Password for the private key. Used in conjunction with --
privateKey if the private key requires password authentication.
If required but not specified, the tool prompts for the password.
VMware, Inc. 20
OVF Tool User’s Guide
--prop OVF, N/A Sets a property in the deployed OVF package. For example, --
OVA prop:<key>=<value>. Use probe mode to learn which properties
an OVF package can set. For multiple property mappings,
repeat the option, separating them with a blank, for example, --
prop:p1=v1 --prop:p2=v2 --prop:p3=v3.
--proxy OVF, OVF, OVA, Specifies and enables a proxy for HTTP, HTTPS, FTP, vSphere,
OVA, vCloud, vSphere and vCloud access. The proxy is expressed as the URL to the
vCloud, proxy. For example, for proxy.example.com, the option value is:
vSphere https://proxy.example.com:345
OVF Tool supports proxies that require authentication. If you do
not provide credentials in the URL, the OVF Tool prompts you
for them. The --proxy flag enables both vSphere (VI) and
vCloud proxies.
--proxyNTLMAuth OVF, OVF, OVA, Enables support for the NTLM authentication and security
OVA, vCloud, vSphere protocol. NT LAN Manager is the authentication protocol used
vCloud, on networks that include systems running the Windows
vSphere operating system and on stand-alone systems.
--quiet or -q N/A N/A Prints only errors. No other output is sent to the screen. Binary
option.
--requireSignature OVF, OVF, OVA A certificate file (signature) must be present for the package
OVA when reading (probing) or opening a package.
--schemaValidate OVF, N/A Validates OVF descriptor against the OVF schema. Binary
OVA option.
--shaAlgorithm sha1, Use this option to condense with Secure Hash Algorithm (SHA)
sha256, for manifest validation, digital signing, and OVF package
sha512 creation. Can be either sha1 (SHA-1), sha256 (SHA-256), or
sha512 (SHA-512). The default value is sha256.
--skipManifestCheck OVF, N/A Skips validation of the OVF package manifest. Binary option.
OVA
--skipManifestGeneration N/A OVF, OVA Skips generation of the OVF package manifest. Binary option.
--sourcePEM File path to a Privacy Enhanced Mail (.pem) file used to verify
vSphere connections.
Example: --sourcePEM:<filename>.pem
--sourceSSLThumbprint vSphere N/A SSL thumbprint of the source. OVF Tool verifies the SSL
thumbprint that it receives from the source, if this value is set.
--sourceType or -st OVF, N/A Explicitly expresses that the source is OVF, OVA, VMX, VMX,
OVA, vSphere, vCloud, ISO, FLP, or vApprun.
VMX,
VMX, VI,
vCloud,
ISO, FLP,
vApprun
VMware, Inc. 21
OVF Tool User’s Guide
--targetPEM File path to a Privacy Enhanced Mail (.pem) file used to verify
vSphere connections.
Example: --targetPEM:<filename>.pem
--targetSSLThumbprint N/A vSphere SSL thumbprint of the target. OVF Tool verifies the SSL
thumbprint that it receives from the target, if this value is set.
--targetType or -tt N/A OVF, OVA, VMX, Explicitly express that the target is OVF, OVA, VMX, VMX,
VI, vCloud, ISO, vSphere, vCloud, ISO, FLP, or vApprun.
FLP, vApprun
--vService OVF, N/A Set a dependency on a vService provider in the OVF package,
OVA using the following syntax:
--vService:<dependencyId>=<providerId>
--verifyOnly All N/A Do not upload the source; just verify it. This applies only to
vSphere 4.
--version or -v N/A N/A Shows version information for OVF Tool. Binary option.
--viCpuResource N/A vSphere Specify the CPU resource settings for VI locator targets. The
syntax is:
--viCpuResource=<shares>:<reservation>:<limit>
--viMemoryResource N/A vSphere Specify the memory resource settings for vSphere locator
targets. The syntax is:
--viMemoryResource=<shares>:<reservation>:<limit>
--vmFolder or -vf N/A vSphere The target virtual machine folder in vSphere inventory (for a
datacenter).
--X:ignoreLinkLocalIp vSphere vSphere While waiting for an IPv4 or IPv6 address,ignore a link local
address, 169.254.0.0/16 or fe80::/10.
--X:skipContentLength N/A N/A Avoids sending the Content-Length header in HTTP(S) requests.
This is the default option for vCloud targets.
--X:waitForIpv4 vSphere vSphere Have OVF Tool wait for an IPv4 address to be sure the network
is initialized.
--X:waitForIpv6 vSphere vSphere Have OVF Tool wait for an IPv6 address to be sure the network
is initialized.
VMware, Inc. 22
OVF Tool User’s Guide
<ovf:VirtualSystem ovf:id="vm1">
<ovf:Info>A virtual machine</ovf:Info>
<ovf:Name>WinServer2012</ovf:Name>
<ovf:OperatingSystemSection ovf:id="74" vmw:osType="windows8Server64Guest">
<ovf:Info>Specifies the operating system installed</ovf:Info>
<ovf:Description>Microsoft Windows Server 2012 (64-bit)</ovf:Description>
</ovf:OperatingSystemSection>
...
For example, you must use the VM ID when specifying the size of memory for a VM, as in this
option: --memorySize:vm1=1024
If you are customizing an existing VM, look at the descriptor file to get the VM ID. You can also
have the ovftool read an OVF file and extract the IDs before importing or deploying it.
<ovf:DiskSection>
<ovf:Info>Virtual disk information</ovf:Info>
<ovf:Disk ovf:capacity="4" ovf:capacityAllocationUnits="byte * 2^20"
ovf:diskId="disk1" ovf:fileRef="disk1-file"
ovf:format="http://www.vmware.com/interfaces/specifications/vmdk.html#streamOptimized"/>
</ovf:DiskSection>
<ovf:VirtualSystem ovf:id="vm1">
...
<ovf:VirtualHardwareSection>
<ovf:Info>Virtual hardware requirements</ovf:Info>
<ovf:Item>
<rasd:AddressOnParent>0</rasd:AddressOnParent>
<rasd:Description>SCSI Hard disk</rasd:Description>
<rasd:ElementName>SCSI Hard disk 1</rasd:ElementName>
<rasd:HostResource>ovf:/disk/disk1</rasd:HostResource>
<rasd:InstanceID>2000</rasd:InstanceID>
<rasd:Parent>2</rasd:Parent>
<rasd:ResourceType>17</rasd:ResourceType>
</ovf:Item>
...
VMware, Inc. 23
OVF Tool User’s Guide
In the above example specifying instance ID “2000” (without quotes) would cause the disk with
ID “disk1” (without quotes) to be resized: --diskSize:vm1,2000=256 (set the size to 256).
Note that if multiple disk devices are backed by the same disk (i.e. the OVF contains multiple disk
RASD items that refer to the same disk) you must specify the new size for all disk elements, not
just one. Sharing disks between VMs is not common, but allowed in the OVF spec.
integration : list of options primarily used when you execute the ovftool from another tool or shell script
Two of the most commonly used options are: --X:logFile and --X:logLevel.
n Use the --X:logFile=<filename> option to log the complete ovftool session to a file
For example, you can use a command like this to write the log in a file called ovftool-log.txt:
--X:logLevel=<level> Log level. Valid values are: none, quiet, panic, error, warning, info,
verbose, and trivia).
--X:logTransferHeaderData Add transfer header data to the log. Use with care. Default value is
false
VMware, Inc. 24
OVF Tool User’s Guide
The OVF Tool includes 22 other debug options, which you can set to retrieve specific data. You
can see all of the debug options and their definitions by running ovftool --help debug.
Specifying a Locator
A source or target locator points to a specific resource. Locators must specify a protocol, which
defines how to reach the resource. Supported protocols are file access, vSphere, HTTP, HTTPS,
and FTP.
File locators can point to an OVF package (.ovf or .ova), a virtual machine (.vmx). HTTP, HTTPS,
or a vApprun workspace entity. FTP locators can point to OVF and OVA files. The resource type
is determined from the filename suffix, unless one or both of the options --sourceType and --
targetType are used explicitly.
vSphere locators can point to various resource types: virtual machines, vApps, hosts, clusters, or
resource pools. For a source locator, the resource type must be a virtual machine or vApp. For a
target locator, the resource type must be a host, cluster, or a resource pool. A vSphere locator is
used for a vSphere server, vCenter Server, VMware Server, or an ESXi host.
At the command line, type --help locators to display the online help for locators.
Table 2-3. Source Locator and Table 2-4. Target Locator list the default extensions of the
different source and target types, as well as which protocols are supported.
VMware, Inc. 25
OVF Tool User’s Guide
File Locators
File locators are the same for source and target. They are specified using ordinary path syntax.
C:\folder1\folder2\package.ovf
..\folder1\package1.ovf
package1.ovf
/folder1/folder2/package.ovf
../folder1/package1.ovf
package1.ovf
VMware, Inc. 26
OVF Tool User’s Guide
When you specify a login name and password in a URL, or interactively, ovftool uses an open
source library for URL encoding, also called percent encoding, to make the result acceptable on
the web. For VI and vCloud locations, percent encoding is unnecessary and not done.
It is possible to omit the user name and password from the locator. If needed, OVF Tool prompts
you for them. If you use the standard port, it is not necessary to specify the port. Table 2-5.
Standard Ports shows the standard ports.
HTTP 80
HTTPS 443
FTP 21
vSphere Locators
vSphere source locators point to a virtual machine or vApp within the virtual infrastructure. The
vSphere target locator provides all required information for importing an OVF package or virtual
machine into a cluster, host or resource pool. Both source and target locator use the same
syntax:
vi://<username>:<password>@<host>:<port>/<search-term>
VMware, Inc. 27
OVF Tool User’s Guide
The server name and port can designate either a vCenter server, VirtualCenter server, VMware
Server, or an ESXi host. If you omit credentials, in which case OVF Tool prompts you for them.
Default installations of vCenter Server, VirtualCenter, and ESXi use port 443. If you are using the
default port, you do not need to specify it. When using OVF Tool against a VMware Server, you
must explicitly specify port 8333, which is the default port for VMware Server.
<path>[?<query>=<value>]
If a query is not given, a VC inventory path lookup is performed using the specified path.
Otherwise, the object matching the query is used. The meaning of the query depends on the
object type. Table 2-6. Source and Target Values for All Query Types shows the different values
that you can use in the query field.
Table 2-6. Source and Target Values for All Query Types
Name Query Source Target
Mo-Ref moref Managed object reference (vSphere Managed object reference (vSphere
specific identifier) of a virtual specific identifier) of a host, cluster, or
machine or vApp resource pool
Table 2-7. Examples of Query Values shows example values for each query type.
Datastore ds vi://localhost/TestDatacenter?ds=[foo]/myvm/myvm.vmx
IP Address ip vi://localhost?ip=123.231.232.232
Note: For the same VM, the Managed Object Reference (MoRef) will be different for vCenter Server than it is
for the ESXi host. For instance, the same VM can have a MoRef of ‘vm-92’ in vCenter Server and ‘118’ in the
ESXi host. Also note that the syntax contains ‘vm-’ for a vCenter Server MoRef. When the Motif is defined by
vCenter Server, you can see it in the browser address and use it directly. The OVF Tool script doesn't define
and parse the format of a MoRef.
You can enter a partial source locator if you do not know the entire inventory path. In this case,
the tool fails but suggests possible inventory path completions.
VMware, Inc. 28
OVF Tool User’s Guide
or
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.
MyDatacenter/vm/MyVM
The following example shows an inventory path with two nested folders:
n <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.
vi://username:pass@localhost/my_datacenter/host/esx01.example.com
vi://username:pass@localhost/my_datacenter/host/esx01.example.com/Resources/
my_resourcepool
Note 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.
vcloud://username:password@host:port?org=name_of_org&vapp=name_of_deployed_vapp&
catalog=name_of_catalog&vappTemplate=name_of_vapp_template_in_catalog&vdc=name_of_vdc
VMware, Inc. 29
OVF Tool User’s Guide
Some of the options are not needed if there is only one virtual datacenter to choose from. If
there are more than on datacenter, the catalog option is required. The org option is mandatory,
because it is used to log in to vCloud Director.
Note OVF Tool supports all source types for vCloud Director 1.5. For vCloud Director 1.0, OVF
Tool only supports OVF/OVA/vCloud sources. OVF Tool does not support vi, vmx, or vapprun
sources for vCloud Director 1.0.
This example exports a vCloud Director vApp to the OVF file /tmp/test1.ovf
If you use a network, you map the network in the usual way:
--net:sourceNET=targetNET
Partial Locators
When using OVF Tool, it is often not necessary to specify source and target types as long as
certain filename conventions are used. It is possible to the ignore locator type and specify the
source and target explicitly using the arguments --sourceType=... and --targetType=.
OVF Tool assumes the locator type based on the following rules:
n If the name starts with vcloud://, OVF Tool assumes vCloud Director type.
n If the name starts with vi://, OVF Tool assumes vSphere type.
n If the name ends with .ovf, OVF Tool assumes OVF type.
n If the name ends with .vmx, OVF Tool assumes VMX type.
n If the name ends with .ova, the OVF tool assumes OVA type.
n 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 vApprun type.
Similarly, source and target types can be inferred from folder locators. OVF Tool assumes the
type using the following rules:
n If the source locator is a folder, OVF Tool assumes that the source is an OVF package and
that the OVF descriptor is called the same as the folder, for example, my-ovf/my-ovf.ovf.
VMware, Inc. 30
OVF Tool User’s Guide
n If the source is an OVF package and the target locator is a directory, such as
MyVirtualMachines/, OVF Tool assumes that the target is a VMX locator. The created VMX/
VMDK file is put in a directory with the target name, for example, MyVirtualMachines/MyVM/
MyVM.vmx.
n If the source is a VMX locator and the target locator is a directory, OVF Tool assumes that
the target is an OVF package.
n If the source is a vSphere locator, and the target locator is a directory, 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. Partial vSphere Locators at the
Command Line shows the command-line dialog when partial locators are used.
OVF Tool supports partial vSphere locators when deploying or exporting. For an incomplete
locator path, the tool suggests completions at the command line. Partial vCloud DirectorLocators
at the Command Line shows the command-line dialog when partial locators are used. First, 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 OVF Tool presents.
VMware, Inc. 31
OVF Tool User’s Guide
orgVdc
orgVdc2
catalog
catalog2
"vcloud://jd:[email protected]:443/?org=myOrg&vapp=test1&vdc=orgVdc&catalog=catalog"
Opening OVF source: LAMP.ovf
Warning: No manifest
file
extNet2
VMware, Inc. 32
OVF Tool User’s Guide
extOrgNet
intNet2
intnet
Completed with errors
Configuration Files
OVF Tool has many options. Rather than repeatedly entering long commands on the command
line, you can create a configuration file. A configuration file uses the following syntax:
option1=value
...
#comment
optionN=value
proxy=http://proxy.example.com
datastore=storage-test42
# Comment on something
locale=dk
You can create local or global configuration files. The local configuration file ovftool.cfg is read
in the folder where you invoke OVF Tool. The global configuration file is per user.
On Windows (after XP), the global configuration file is in the following location:
C:\Users\%USER%\AppData\Roaming\VMware\ovftool.cfg
Linux and OS X look for the global configuration file in the following location:
VMware, Inc. 33
OVF Tool User’s Guide
When reading configuration files, globally defined options are overwritten by locally defined
options, and locally defined options are overwritten by the --configFile command-line option.
Some variables, such as proxy, do not allow you to specify the option in multiple places. If
ovftool stops running with the error “already exists“ it is likely that you specified an option on
the command line and in a configuration file.
You can use the ovftool --help config command to get information about how to use a
configuration file. In addition, the current contents of the global configuration file as well as any
local configuration file is shown.
Handling Authentication
OVF Tool generates AUTHENTICATION output messages if access to a resource requires a
username or password. For example, a proxy server, a vSphere or vCloud locator, or an
authenticated URL require usernames and passwords. OVF Tool only generates
AUTHENTICATION messages for resources where passwords are not explicitly provided as part
of the locator or as command-line arguments.
n source locators
n target locators
n proxyServer
For source and target locators, you must provide the username on the command-line. If you do
not provide a password, OVF Tool generates an AUTHENTICATION message and you must
provide the password on STDIN. If the proxy server requires authentication, you must provide
both the username and password on STDIN
PASSWORDSOURCE
password
PASSWORDTARGET
password
PASSWORDPROXY
username password
For an example of the output of running machineOutput in authentication mode, see Output from
Running machineOutput in Import Mode.
VMware, Inc. 34
OVF Tool User’s Guide
If you use the --I:morefArgs argument, the values for --vmFolder, --network, --net, and --
datastore are interpreted as MoRefs instead of names, as shown in the following example:
VMware, Inc. 35
Examples of OVF Tool Syntax
3
This chapter provides many examples of OVF Tool usage, that are divided into the following
categories:
You can see similar examples within the OVF Tool, by typing --help examples on the command
line while you are in the directory where the ovftool script is running.
n Using a Proxy
VMware, Inc. 36
OVF Tool User’s Guide
Table 3-1. Supported File and Package Types for OVF Tool Input and Output
Package Type Full Name Usage
OVF (.ovf) Open Virtualization National ANSI standard for packaging software for
Format virtual machines, originally created by an industry task
force known as the Distributed Management Task
Force (DTMF).
An OVF package includes: a descriptor file, optional
manifest and certificate files, optional disk images, and
optional resource files (such as ISOs). The disk image
files can be files in VMware’s .vmdk disk image format
or in any other supported disk image format.
OVF packages can be used by the software of any
hypervisor or processor architecture that supports this
format.
OVA (.ova) Open Virtual Appliance A TAR archive that contains an OVF package.
VMX (.vmx) Virtual Machine When you create a new virtual machine, this file is
Configuration File created to store information about the operating
system, disk sizes, networking, and virtual hardware.
Files in this format and the .vmdk format are sometimes
referred to together as, ‘VMware runtime format’.
VMDK (.vmdk) Virtual Machine Disk Files with this extension may contain disk
characteristics (,vmdk), contents (-flat.vmdk), or
snapshot files (-delta.vmdk). These files are called out
on the OVF Tool command line, but may exist within
the package.
VI (vi://) VMware Infrastructure This is an older term that originated with ESX 3, but is
still seen in the command line syntax for the OVF Tool.
As an OVF command line option, ‘vi//’ is used before
the credentials and path to a server.
vCloud vCloud Director format The vCloud Director REST API makes basic transfer
between clouds possible using OVF packages, which
preserve application properties, networking
configuration and other settings.
ISO (.iso) Optical Image File An ISO archive is a CD/DVD image. Creating a package
as an ISO image allows you to install a virtual appliance
using a CD ROM drive.
This type of archive is called an ISO because it was
created by the International Standards Organization’s
9660 standard.
FLP (.flp) Floppy Disk Image File Use this format if you need to transfer data from a
floppy drive or to the virtual machine floppy drive.
Instructions are available in Knowledge Base article
1739.
VMware, Inc. 37
OVF Tool User’s Guide
Use the OVF Tool with the Target Type option to specify the target out as OVF, OVA, VMX, VI,
vCloud, ISO, FLP, vApprun.
In this following example, the target type is set to the ‘vmx’ or VMware runtime format (.vmx
and .vmdk files)
VMware, Inc. 38
OVF Tool User’s Guide
Because the source is an OVF package, you can specify it as a URL or a local file path.
If you convert an OVF package to a VMX format without specifying the target directory, OVF
Tool creates a directory using the OVF package name and writes the .vmx and .vmdk files in it.
You can also convert from an ovf format to a vmx format using a URL, as shown:
VMware, Inc. 39
OVF Tool User’s Guide
or
--prop:<option>=<value>
This example sets two properties: the administrator’s email address and the number of
concurrent sessions.
VMware, Inc. 40
OVF Tool User’s Guide
If the OVF descriptor only specifies one network name, you can specify the target network name
of the network mapping, as in the following example:
If the source contains only a single virtual machine, the --makeDeltaDisks option does not yield
any compression boost. In this case, the --compress=9 option gives maximum compression.
VMware, Inc. 41
OVF Tool User’s Guide
maximum size. The default measurement is megabytes (keyword mb). You can specify other units
using one of the following keywords:
Unit Keyword
Bytes b
Kilobytes kb
Gigabytes gb
For example, to create an OVF package optimized for a FAT32 file system, use the following
command:
Each file chunk has a sequentially numbered suffix. For example, for a 6GB disk, the chunks have
these names:
If your host has multiple data stores, use the -ds option:
See also Run OVF Tool With ESXi and vCenter Target Locations.
VMware, Inc. 42
OVF Tool User’s Guide
To deploy an OVF package into a vApprun workspace, simply use a target locator that points to
your vApprun workspace, as shown in the following example:
A common scenario is that the current directory is the vApprun workspace (since all vApprun
commands are relative to this), so you can just use a “.” as the target locator, as shown in the
following example:
(Imports an OVF from http into a vCloud instance and names the vApp myVapp)
(This imports an OVF from http into a vCloud instance and creates a vApp template)
VMware, Inc. 43
OVF Tool User’s Guide
Note This option does not perform a shutdown of the operating system. This is only a power off
operation.
Prepend the name of the entity to export to the path. If the current directory is the vApprun
workspace, you only specify the name, as shown in the following example. This example takes
advantage of the fact that any source locator can be used with any destination locator. Thus, the
vApp transfers directly from the vApprun workspace to the vCenter installation.
VMware, Inc. 44
OVF Tool User’s Guide
Note vApprun does not keep the same level of meta-data around as vSphere. Thus, the
vApprun-created OVF packages will not contain any EULAs, description of properties, and such.
If everything is correct, OVF Tool shows the result of probing OVF. Otherwise, it shows warnings
and errors.
Important Being compliant with OVF 1.0 or 1.1 is only part of the requirements for a valid OVF
package. Schema validation does not check for all the requirements specified in the OVF 1.0 and
OVF 1.1 specifications.
VMware, Inc. 45
OVF Tool User’s Guide
Using a Proxy
You can specify a proxy for the OVF Tool. The following examples show the use of the --proxy
option:
The OVF Tool allows proxies that require authentication. Credentials are supplied in the proxy
path as shown in the following example:
If you omit the username or password for a proxy server that requires authentication, OVF Tool
prompts for them. The --proxy option enables a proxy for either vSphere (VI) or vCloud.
You can also power on the newly written virtual machine or vApp at the same time. In the
following example, the target machine is powered off and deleted, the package.ovf is imported,
and the imported virtual machine or vApp is powered on.
VMware, Inc. 46
OVF Package Signing
4
A valid OVF signature requires two special files, a manifest (.mf) file that contains the SHA hash
codes of all the files in the package (except the .mf and .cert files), and a certificate file (.cert)
that contains the signed SHA of the manifest file and the X.509 encoded certificate. This
appendix specifies how to use OpenSSL and VMware OVF Tools commands to sign and validate
OVF packages.
> openssl req -x509 -nodes -sha256 -days 365 -newkey rsa:1024 -keyout myself.pem -out myself.pem
VMware, Inc. 47
OVF Tool User’s Guide
To display the contents of a .pem file at the command line, type the following:
Certificate:
Data:
Version: 3 (0x2)
Serial Number:
....
To create a trusted certificate, use the OpenSSL command, omitting the --x509 option. This
creates a certificate request in a .pem file that you can send to any public authority, such as
Verisign.
Signing an OVF package requires a .pem file that contains a private key and a certificate, as
shown in section Creating an RSA Public/Private Key Pair and Certificate.
To sign a generated OVF package, include the --privateKey option. The option syntax is shown in
the following example:
> ovftool --privateKey=<path to .pem file> <source> <output OVF or OVA file>
When this option is used, OVF Tool uses the private key and certificate to generate a signature
based on the SHA digest of each file that is included in the OVF package, including the OVF
descriptor itself.
OVF Tool generates an additional .cert file with a signed SHA signature and the certificate used
to sign it. Certificate File Created by OVF Tool shows an example of the .cert file generated by
OVF Tool.
VMware, Inc. 48
OVF Tool User’s Guide
YXJlLCBJbmMuMQwwCgYDVQQLEwNWSU0xETAPBgNVBAMTCEtyaXN0aWFuMSEwHwYJ
KoZIhvcNAQkBFhJrbGFzc2VuQHZtd2FyZS5jb20wgZ8wDQYJKoZIhvcNAQEBBQAD
gY0AMIGJAoGBAM2xxX9a1YITiiRrxpXGg9xbEP4Oepcs71ZcNp8Z3mQIb95mpEc6
SZemmjOsqwpkvV/82RALOBgmJ/hot1noSkiAZi0liPmX1M0BU3OS/pSim7VNKBmV
SUJfOC4T6/MygVpyfkSUhB5EWx0JCUvowRex6Ytl220MOGcXnLpvdfO9AgMBAAGj
gd4wgdswHQYDVR0OBBYEFM2KkX7pWTQmMg+iD6HWMOZRLrfJMIGrBgNVHSMEgaMw
gaCAFM2KkX7pWTQmMg+iD6HWMOZRLrfJoX2kezB5MQswCQYDVQQGEwJESzEPMA0G
A1UEBxMGQWFyaHVzMRUwEwYDVQQKEwxWTXdhcmUsIEluYy4xDDAKBgNVBAsTA1ZJ
TTERMA8GA1UEAxMIS3Jpc3RpYW4xITAfBgkqhkiG9w0BCQEWEmtsYXNzZW5Adm13
YXJlLmNvbYIJAKDgFLg9WvBwMAwGA1UdEwQFMAMBAf8wDQYJKoZIhvcNAQEFBQAD
gYEANaNxv4QrN7iI0rDCordYDh1G7Z3jl28ntSoxehGmz6ghYAfBNhTVhWUZuX9X
UXKn8QltOF/Ynijuo6JTJwO/5V1o6TAaCmFahDW/Om02AXPdSbw4UQdidGmmgrAs
DYVQz2CNPk2YbkXITNeGBNHomTqsVU7MGDjReu96+V6O2zY=
-----END CERTIFICATE-----
To quickly validate the authenticity of an OVF package, use the probe mode as shown in the
following example:
VMware, Inc. 49
Using the VMware OVF Tool
Probe Mode 5
This chapter includes the following topics:
To use the probe feature, omit the target locator when invoking OVF Tool. For example, at the
command line, type: ovftool LAMP.ovf. The tool displays all available information about the
LAMP.ovf.
When probe mode is used on an OVF or OVA package, OVF Tool also validates the certificate
file, if present.
As part of the information displayed in probe mode, the EULA is displayed by default. To prevent
the EULA from displaying, use the --hideEula option.
Annotation: This vApp offers the programming environment stack: Linux, Apache,
MySQL and PHP programming environment -- LAMP. More specifically
the vApp contains a Database server running MySQL and Web server
VM running Apache2 and PHP.
VMware, Inc. 50
OVF Tool User’s Guide
Deployment Sizes:
Flat disks: 16.00 GB
Sparse disks: Unknown
Networks:
Name: VM Network
Description: The VM Network network
Virtual Hardware:
Family: vmx-04
Disk Types: SCSI-lsilogic
Properties:
Key: db_ip
Label: IP address
Type: ip:VM Network
Description: The IP address of the database server.
Key: ws_ip
Label: IP address
Type: ip:VM Network
Description: The IP address of the Web server.
IP Allocation Policy:
Schemes: ovfenv dhcp
Protocols: IPv4
VMware, Inc. 51
Using the VMware OVF Tool
Machine Mode 6
This chapter includes the following topics:
n Example Output
OVF Tool inserts a blank line to signal the end of an operation. Each response line is prefixed with
a plus (+) to avoid confusion with the terminating blank line. The last status it sends is always
RESULT. OVF Tool sends all output, including errors and warnings, to standard output (stdout) so
clients can listen on only one stream.
TARGET_ID Text, for example SugarCRM.ovf or Shows the target ID after upload and
vim.VirtualMachine:vm-415. download finishes.
VMware, Inc. 52
OVF Tool User’s Guide
To run the machineOutput option in probe mode, you run the following command.
To run the machineOutput option in validate host mode, you run the following command.
For an example, see Output from Running machineOutput in Validate Host Mode.
VMware, Inc. 53
OVF Tool User’s Guide
To use machine mode to upload an OVF to vSphere, you run the following command.
ovftool.exe --machineOutput \
--acceptAllEulas \
--I:morefArgs \
--I:targetSessionTicket=<session ticket> \
--net:<ovf netname>=vim.Network:<moref-id> \
--datastore=vim.Datastore:<moref-id> \
--vmFolder=vim.Folder:<moref-id> \
--deploymentOption=<value> \
--diskMode=<value> \
--ipAllocationPolicy=<value> \
--ipProtocol=<value> \
--name=<value> (optional) \
--overwrite (optional) \
--powerOffTarget (optional) \
--powerOn (optional) \
--prop:<key>=<value> \
<src URL or PATH> \
vi://<servername>?moref=vim.ResourcePool:<moref-id>
To use machine mode to download an OVF from vSphere, you run the following command.
ovftool.exe --machineOutput \
--I:sourceSessionTicket=<session ticket> \
-tt <OVA or OVF> \
-n=<name> \
--overwrite (optional) \
--powerOffSource (optional) \
--chunkSize=<value> (optional) \
--compress=<value> (optional) \
vi://<servername>?moref=<type>:<moref-id> \
<directory>
VMware, Inc. 54
OVF Tool User’s Guide
When you specify --machineOutput, OVF Tool monitors STDIN, and cancels the operation if it
reads the ABORT\n line in stdin.
Example Output
You can run the OVF Tool machine mode --machineOutput option in probe mode, validate host
mode, or import mode. In import and validate Host modes, --machineOutput is meant for third
party program to use silently without any interactive prompt appearing in the standalone OVF
tool command console. If your OVF file contains EULA information, you should add this option --
acceptAllEulas so that the program doesn’t pause to wait for acceptance of the license
agreement. This section contains the following topics:
VMware, Inc. 55
OVF Tool User’s Guide
+ </vendorUrl>
+ </productInfo>
+ <annotation>
+ This vApp offers the programming environment stack: Linux, Apache, MySQL and PHP programming
environment -- LAMP. More specifically the vApp contains a Database server running MySQL and Web
server VM running Apache2 and PHP.
+ </annotation>
+ <eulas>
+ <eula>
+
+ Eula for OVF
+
+ </eula>
+ </eulas>
+ <sizes>
+ <download>
+ 633412608
+ </download>
+ <flat>
+ 17179869184
+ </flat>
+ <sparse>
+ Unknown
+ </sparse>
+ </sizes>
+ <networks>
+ <network>
+ <name>
+ VM Network
+ </name>
+ <description>
+ The VM Network network
+ </description>
+ </network>
+ </networks>
+ <properties>
+ <property>
+ <classId>
+
+ </classId>
+ <key>
+ db_ip
+ </key>
+ <instanceId>
+
+ </instanceId>
+ <category>
+
+ </category>
+ <label>
+ IP address
+ </label>
+ <type>
+ ip:VM Network
+ </type>
VMware, Inc. 56
OVF Tool User’s Guide
+ <description>
+ The IP address of the database server.
+ </description>
+ <value>
+
+ </value>
+ </property>
+ <property>
+ <classId>
+
+ </classId>
+ <key>
+ ws_ip
+ </key>
+ <instanceId>
+
+ </instanceId>
+ <category>
+
+ </category>
+ <label>
+ IP address
+ </label>
+ <type>
+ ip:VM Network
+ </type>
+ <description>
+ The IP address of the Web server.
+ </description>
+ <value>
+
+ </value>
+ </property>
+ </properties>
+ <deploymentOptions>
+ </deploymentOptions>
+ <ipAllocationSchemes>
+ ovfenv,dhcp
+ </ipAllocationSchemes>
+ <ipProtocols>
+ IPv4
+ </ipProtocols>
+ </probeResult>
RESULT
+ SUCCESS
VMware, Inc. 57
OVF Tool User’s Guide
PROGRESS
+ 0
TARGET_ID
+
RESULT
+ SUCCESS
PROGRESS
+ 0
+ 1
+ 2
+ 3
....
+ 98
+ 99
VMware, Inc. 58
OVF Tool User’s Guide
+ 100
TARGET_ID
+ vim.VirtualApp:resgroup-v61
RESULT
+ SUCCESS
PROGRESS
+ 0
+ 1
+ 2
+ 3
...
+ 98
+ 99
+ 100
TARGET_ID
+ /tmp/LAMP.ovf
RESULT
+ SUCCESS
VMware, Inc. 59