Export virtual machines

The export virtual machine feature automates the Export process generating an Open Virtualization format (OVF) and then transferring the resulting files to your personal account space in VSKEY-STOR.

A virtual machine qualifies to be exported if:

  • Committed storage (not provisioned) is less than 300G.

  • Power state is Off.

  • No iso backing on CD/DVD unit

We use thin provisioning on the ITS Private Cloud to help avoid over-allocating storage space and save storage.

Thin provisioning uses just as much storage capacity as currently needed and then add the required amount of storage space at a later time. (Source: VMware).

This tutorial walks you through the process of exporting a given virtual machine.

Validate virtual machine

First, we need to double check if the committed_gb size is lower than 300GB. This can be done by executing the command vss-cli compute vm ls but modifying the output columns with the --columns option as follows:

vss-cli --columns "moref,name,folder.path,provisioned_gb,committed_gb,power_state" compute vm ls -f moref=vm-10342 moref name folder.path provisioned_gb committed_gb power_state --------- ------------------ ------------------------ ---------------- -------------- ------------- vm-123456 2210P-FrontEnd-1u0 Public > Customer 123456 60 19.67 poweredOn

In this particular case, we can proceed since the committed space is lower than 300GB.

If the virtual machine power_state is poweredOn, shut it down by sending a shutdown signal through the OS via VMware Tools or a hard power off as follows:

vss-cli compute vm set <name-or-vm-id> state shutdown Host Name: ubuntu (Ubuntu Linux (64-bit)) IP Address: 192.168.2.100, fe80::250:56ff:fe92:d463 Are you sure you want to change the state from "running to shutdown" of the above VM? [y/N]: y

Finally, verify if the VM’s CD/DVD unit is not backed by an ISO image file:

vss-cli compute vm get <name-or-vm-id> cd label backing connected -------------- --------- ------------ CD/DVD drive 1 client disconnected

Execute vss-cli compute vm set <name-or-vm-id> cd <unit> --iso client if an ISO image is shown in CD backing.

Export virtual machine

Run vss-cli compute vm set <name-or-vm-id> export to submit an export task. The command does not require any argument or options.

Once the command is executed, a VM Export Request is created and all related activity including export status is recorded in it. To check the status, execute vss-cli request export get <request-id>.

The request object holds more attributes, however the above listed are more important for this example. status=Processed tells us that the request has been completed. transferred=yes indicates that resulting files were successfully transferred to your VSKEY-STOR space. To confirm, you could either go to a web browser and open VSKEY-STOR and sign in or execute vss-cli stor ls <vm-id> and you should get something like:

Download virtual machine export

To download the files you could either go to a web browser and open VSKEY-STOR and sign in, go to the <vm_name-vm_id> folder and download the files or execute vss-cli stor dl <vm_name-vm_id>/<file> as follows:

Alternatively, you could just launch the web UI via the la command and browse the ut-vss bucket to download the files via your web browser:

That’s it, at this point the OVF and disks are ready to be imported to a desired platform.

University of Toronto - Since 1827