An introduction to OVA
To move virtual machines between platforms it is common to create an OVA. An OVA (open virtualization appliance) is a compressed package that contains a VM disk and its descriptor in OVF (open virtualization format). As of version 6.5, vSphere no longer provides an easy way for users to export OVA files.
When you connect with the vSphere 6.7 Web Client, a VM has an OVF export option but there is no OVA option.
If you would like to directly export a VM as an OVA file, you can use OVF tool on the command line. To export many VMs, you could use the commands in a script. Or if you are working with a large VM, you could export an OVF and then compress it to create the OVA.
Download OVF tool
When you go to the VMware website downloads menu and select OVF tool, the Windows version displays for you to download.
To use another version (for example, Mac or Linux), go to the main Downloads page and search for “ovf tool”.
Install OVF tool
The Windows and Mac versions are standard installer packages.
The Linux version is a bundle package, and you can easily install it from the command line by executing the bundle with a shell command. Replace ovftool.bundle with the name of the bundle file.
sh ovftool.bundle
Discover the VM on vCenter
To work with OVF tool, you will need your vCenter URL and credentials, and you will also need the path to your VM.
If you don’t know the VM path, you can discover it. For example, enter the vCenter URL and credentials.
ovftool vi://administrator@vsphere.local:password@nsxqa-vc.example.com
This is not a VM, so the tool will return an error message for the “wrong kind of object”, for example, a folder or a datacenter.
It will suggest possible completions, which are the objects under the path you have entered. Keep adding completions until you get to the “vm” folder and select a VM.
For example, a VM could have this path.
vi://administrator@vsphere.local:password@nsxqa-vc.example.com/DcNSX-qa/vm/windowstest
Save time and money with Abiquo by reducing management complexity, offer different network SLAs to your customers and improve usability.
Display the VM OVF details
With OVF tool, the default vi command displays a friendly version of the OVF details.
ovftool vi://administrator@vsphere.local:password@nsxqa-vc.example.com/DcNSX-qa/vm/windowstest
In this example, the user entered the administrator and password interactively
user@user:~/Downloads $ ovftool vi://nsxqa-vc.example.com/DcNSX-qa/vm/windowstest Enter login information for source vi://nsxqa-vc.example.com/ Username: administrator@vsphere.local Password: ********** OVF version: 1.0 VirtualApp: false Name: windowstest Download Size: Unknown Deployment Sizes: Flat disks: 20.00 MB Sparse disks: Unknown Networks: Name: default_private_network_57 Description: The default_private_network_57 network Virtual Machines: Name: windowstest Operating System: windows9server64guest Virtual Hardware: Families: vmx-14 Number of CPUs: 1 Cores per socket: 1 Memory: 16.00 MB Disks: Index: 0 Instance ID: 11 Capacity: 20.00 MB Disk Types: SCSI-lsilogicsas NICs: Adapter Type: E1000e Connection: default_private_network_57
Download an OVA file directly
To download the OVA file, enter “vi://” with the VM path and with a local file with an “.ova” suffix at the end.
ovftool vi://administrator@vsphere.local:password@nsxqa-vc.example.com/DcNSX-qa/vm/windowstest ./windowstest.ova
You should now be able to upload the OVA file into a VM template in the cloud platform’s catalog so users can create VMs from the template and deploy them.
Or export an OVF folder and convert it to an OVA file
An alternative method is to export the OVF package and convert it to an OVA file. This method is recommended by VMware and it may provide better performance for large VMs.
First export the OVF package to your local file system and ensure it is in a separate folder.
Then convert it to an OVA file using OVF tool.
For example:
cd windowstest-folder
ovftool windowstest.ovf windowstest.ova
Troubleshooting
On Linux, remember to escape any special characters in your password that may be interpreted by the shell.
After you upload the VM template, remember to select the option to generate conversions to other hypervisor formats as required.
References
For more details, see the VMware release notes for vSphere 6.5 (https://docs.vmware.com/en/VMware-vSphere/6.5/rn/vsphere-esxi-vcenter-server-65-release-notes.html) in the section with the title: “vSphere Web Client does not support exporting virtual machines or vApps as OVA templates”.