Wednesday, May 2, 2007

Virtual Appliances

What exactly are virtual appliances? I am confronted with this question more often than not. This is how Wiki answers the question:
A virtual appliance is a minimalist virtual machine image designed to run under VMware, Xen, Microsoft Virtual PC, QEMU, Usermode Linux, CoLinux, Virtual Iron or other PC virtualization technology, providing network applications like firewalls or webservers. Virtual appliances are a subset of the broader class of software appliances. Like software appliances, virtual appliances are aimed to eliminate the installation, configuration and maintenance costs associated with running complex stacks of software. A key concept that differentiates a virtual appliance from a virtual machine is that a virtual appliance is a fully pre-installed and pre-configured application and operating system environment whereas a virtual machine is, by itself, without application software.

The VMware Technology Network (or the VMTN) draws an interesting analogy between computing appliances and virtual appliances. A computing appliance is a class of computer product which is designed with a specific function in mind and has limits on the ability to be configured beyond that specific function. Generally, the reason devices are called appliances is that they share some characteristics with more traditional household appliances. In that regard, computing appliances tend to be:
  • Designed to provide a specific set of functionality
  • Limited to specific vendor provided configurations
  • Closed and sealed devices
  • Not repairable or upgradable by the owner
  • Simple with a limited user interface
  • Intended for plug-and-play installation and setup
A virtual appliance is similar to a 'traditional' computing appliance and is designed with a specific function in mind. The major difference is that instead of being built on a physical computing device, a virtual appliance is built using virtual machine and can be run on any virtual platform. A virtual appliance starts with a pre-installed and pre-configured operating system. In addition to the base operating system, a virtual appliance contains a pre-installed and pre-configured application. The application may have multiple components and services to provide the required functionality.

The key benefit to building virtual appliances is that developers/vendors no longer need to build, test, and ship physical hardware devices while they still maintain the benefits of providing a ‘sealed’, purpose-built solution. The key benefits to users of virtual appliances focus around simplicity. Virtual appliances can be deployed in a user's environment quickly and easily with very little interaction.

1 comment:

10750GF said...

Thank you, thats very interesting information. I need to share with my friends.