4.6 What Virtual Machine Resources are in a Repository?

Virtual machine resources can be categorized as follows:

  • Virtual appliances: A package that contains one or more preconfigured virtual machines and includes the virtual disks and inter-connectivity between the virtual machines.

  • Virtual machine templates: A package that contains a virtual machine configuration file and at least one bootable virtual disk. Virtual machine templates are reusable and allow you to to create multiple virtual machines.

  • ISO files: DVD/CD image files used to create virtual machines from scratch using the installation media.

  • Virtual disks: Virtual disks used by virtual machines to perform boot operations, to run the operating system, and to extend the storage capability of virtual machines.

  • Virtual machine files: Configuration files of your virtual machines.

Virtual Appliances and Templates

In an Oracle VM context, the term "template" is often used loosely and can refer to either a virtual appliance or a virtual machine template.

The primary distinction between a virtual appliance and a virtual machine template is the file format. Virtual appliances use the .ova format and, in some cases, the .ovf format. Templates use the .tgz format.

Virtual appliances can contain multiple virtual machines in a single package while templates contain only a single virtual machine. If you browse the package contents, you can see that an .ova file contains one or more OVF descriptor files and virtual disks whereas a .tgz file contains a virtual machine configuration (vm.cfg) files and one or more virtual disks.

You can use virtual appliances and templates to create multiple, pre-configured virtual machines. However, you can deploy virtual machine templates in .tgz format only in an Oracle VM environment. You can create, import, and export virtual appliances in .ovf or .ova format between an Oracle VM environment and another virtualization platform.

Note

In previous releases of Oracle VM, virtual appliances were referred to as assemblies. The method for creating virtual machines from an assembly was to import the assembly and then create a template from the assembly. You could then create virtual machines from the template. As of this release, the ability to import and create virtual machines directly from virtual appliances simplifies this process.