A Virtual Appliance is a pre-configured software stack comprising one or more virtual machines. Each virtual machine is an independently installable run-time entity comprising an operating system, applications and other application-specific data.
Virtual Appliances are changing the software distribution paradigm because they allow application builders to optimize the software stack for their application and deliver a turnkey software service to the end user. Virtual Appliances offer an opportunity to dramatically simplify the software management lifecycle through the adoption of a standardized, automated, and efficient set of processes that replace operating system and application specific management tasks.
For example, consider a typical web application that is divided in three tiers. A web tier that implements the presentation logic, and application server tier that implements the business logic, and a back-end database tier. A straightforward implementation would divide this into 3 virtual machines, one for each tier.
In the next section, you will learn how to create a simple virtual appliance through the virtual appliance editor.

