A virtual appliance is a pre-configured virtual machine image, ready to run on a hypervisor; virtual appliances are a subset of the broader class of software appliances. Installation of a software appliance on a virtual machine and packaging that into an image creates a virtual appliance. Like software appliances, virtual appliances are intended to eliminate the installation, configuration and maintenance costs associated with running complex stacks of software.
A virtual appliance is not a complete virtual machine platform, but rather a software image containing a software stack designed to run on a virtual machine platform which may be a Type 1 or Type 2 hypervisor. Like a physical computer, a hypervisor is merely a platform for running an operating system environment and does not provide application software itself.
Many virtual appliances provide a Web page user interface to permit their configuration. A virtual appliance is usually built to host a single application; it therefore represents a new way to deploy applications on a network.
Virtual appliances are provided to the user or customer as files, via either electronic downloads or physical distribution. The file format most commonly used is the Open Virtualization Format (OVF). The Distributed Management Task Force (DMTF) publishes the OVF specification documentation. Most virtualization vendors, including VMware, Microsoft, Oracle, and Citrix, support OVF for virtual appliances.
Virtualization solves a key problem in the grid computing arena – namely, the reality that any sufficiently large grid will inevitably consist of a wide variety of heterogeneous hardware and operating system configurations. Adding virtual appliances into the picture allows for extremely rapid provisioning of grid nodes and importantly, cleanly decouples the grid operator from the grid consumer by encapsulating all knowledge of the application within the virtual appliance.
Virtual appliances are critical resources in infrastructure as a service cloud computing. The file format of the virtual appliance is the concern of the cloud provider and usually not relevant to the cloud user even though the cloud user may be the owner of the virtual appliance. However, challenges may arise with the transfer of virtual appliance ownership or transfer of virtual appliances between cloud data centers. In this case, virtual appliance copy or export/import features can be used to overcome this problem.