This is a read-only archive. Find the latest Linux articles, documentation, and answers at the new Linux.com!

Linux.com

Feature: Desktop Software

A virtual appliance primer

By Mayank Sharma on June 16, 2008 (9:00:00 PM)

Share    Print    Comments   

Virtual machines are virtually taking over the world. By itself a virtual machine is just a container that describes various resources such as memory, disk space, processor, and network card, and allocates them from a physical machine. As with a physical machine, it's the software bits (the operating system and applications) that make a virtual machine usable. When you mix a virtual machine with real software you get a virtual appliance. Some complete Linux distributions as well as specialized apps are available as virtual appliances. Thanks to the ease in packaging one, there's no shortage of virtual appliances around, if you know where to look.

Deploying a pre-installed and pre-configured application appliance is far easier than preparing a system, installing the app, and configuring and setting it up. But the ease of use has a drawback -- virtual appliances are several times the size of the app itself, primarily because appliances also bundle an operating system to support the app. In the days when application appliances were just catching on, developers would bundle their 10MB apps with 700MB distros and offer 700MB+ appliances.

Today, virtual appliances are becoming a de-facto means of software distribution and have spawned a new type of business -- the virtual appliance vendor. Along with software vendors and virtualization software companies, appliance vendors are putting in the extra effort to streamline the distros that power the apps. So, for example, Bugzilla, the popular bug tracking app, is available as a 2.4MB download tarball from Mozilla, as well as a 150MB appliance from appliance vendor Jumpbox. Mathematically, this is 62.6 times the size of the app, but in 150MB you're also getting an operating system, stripped to the bone and optimized to run only that particular app.

Looking for virtual appliances

Several software vendors distribute their products as ready-to-roll appliances, in addition to regular tarball downloads, including TrixBox, DimDim, and Ubuntu. So the first place to look for virtual appliances for a particular app or distro is the developer itself.

Additionally there are lots of Web sites that host virtual appliances of popular apps and distros. The popular place to look for appliances is VMware's virtual marketplace. A majority of the appliances listed there are available as free downloads. The appliances you have to pay for either bundle proprietary apps or are certified by VMware as enterprise-ready. All appliances listed on VMware's marketplace make use of and run on VMware's virtualization technology, so you'll need the freely available VMware Player to run these appliances.

Since VMware is the most popular virtualization software, there are several one-man Web sites that offer virtual appliances which are generally built around a particular distro or a particular category of distros. VMwhere serves Gentoo and Slackware appliances, ThoughtPolice has CentOS, Debian, Fedora, Ubuntu, and FreeBSD appliances, Jcinacio specializes in all appliances Ubuntu, and VMachines hosts appliances for desktop, server, and firewall/security distros.

VMware might be the most popular virtualization software, but by no means is it the only one. You can also find free appliances for Xen, VirtualBox, and QEMU.

Xen is a popular open source virtual machine monitor or hypervisor. You can find a slew of Linux distributions modified to run on Xen at Jailtime.org. That site has 32-bit versions of popular distros such as Debian, CentOS, Fedora, Gentoo, Slackware, and Ubuntu, as well as 64-bit versions of some of them.

Another popular virtualization software is VirtualBox, developed by Innotek and recently acquired by Sun. VirtualBox produces one feature-restricted open source edition of its client, while all its full-featured clients are available as free downlods. You need one of these versions to run VirtualBox appliances.

Several sites offer VirtualBox appliances of various Linux distributions. On HelpdeskLive you'll find appliances of popular distros (Fedora, Ubuntu, and more) as well as some modified ones like Ubuntu Studio with Cinelerra, and GNOME CentOS 5 with GCC. veeDee-Eyes doles out modified and default versions of all kinds of distros, including their alpha and beta releases as well. You'll also find lots of distribution appliances at the VirtualBox Images project on SourceForge.net.

Before there were VMware, VirtualBox, Xen, and the likes, there was QEMU, the open source processor emulator. Combined with its accelerator component, KQEMU, it's popular with people who prefer to use a 100% free and open source virtualization software. If you want to test Linux and *BSD distributions using QEMU, head over to FreeOsZoo. The site provides 70 ready-to-run appliances of various new, old, full-featured, and live distributions. You'll need QEMU to run these appliances, and the best place to get it is from your distrbution's software repository.

If you're using Microsoft Windows at school or work but want to run Linux, take a look at Bagvapp's virtualized Linux distributions optimized for Windows hosts. The site lists dozens of virtual appliances built around Linux distributions big and small, such as Fedora, Ubuntu, Debian, Slackware, openSUSE, Mandriva, CentOS, Pardus, Vector Linux, and Xubuntu. All Bagvapp appliances are available for free but only run on VMware Player.

If you use a Mac, Parallels hosts tons of appliances, including various Linux distributions, development suites, servers, and communication software for its virtualization products. But Parallels virtualization software is proprietary and commercial, though there is a trial version available for Parallels Workstation for Linux.

As you can see, there aren't many application-specific appliances available for virtualization products, apart from ones for VMware. But there are a couple of appliance vendors that provide virtual appliances that run across a variety of virtualization software. One such vendor is Virtual Appliances, which has four freely available streamlined stacks that deploy popular development environments including Tomcat, Linux-Apache-MySQL-PHP, Linux-Apache-PostegreSQL-PHP, and Cacti to build or host software. The stacks are built around Ubuntu's JeOS (Just enough Operating System) release and are available for VMware, Xen, Virtual Iron, and Microsoft's Virtual PC.

Also available, and in fact gaining popularity as the best way to deploy open source content management systems, is Jumpbox. Its Web site has virtual appliances built around almost every type of open source software, including WordPress, Joomla!, Bugzilla, Mantis, Drupal, Alfresco, SugarCRM, OTRS, Redmine, and others. The best part is that the same Jumpbox appliance will run on various virtualization platforms; versions for VMWare, Parallels, Microsoft Virtual PC/Server, Virtual Iron, and Xen and are offered as free downloads.

Converting appliances

Suppose you've downloaded one of the appliances listed above for your favorite virtualization software and are using it build and test network software or deploying network services. What if you then have to switch to another virtualization software? You may or may not find that appliance for your new virtualization software, but what about the configuration and the customization you've made to that appliance?

Migrating appliances is tricky business. In fact, apart from VMware, no virtualization software has released easy-to-use tools that help you migrate appliances created or deployed on one virtualization platform to another. VMware Converter is a free tool that helps you convert physical Windows-based machines into virtual ones, as well as migrate complete virtual machines created with third-party software such as Microsoft Virtual Server, Microsoft Virtual PC, Symantec Backup Exec System Recovery, Norton Ghost 10, and Norton Save & Restore.

Although there are no official conversion tools, with some command-line sorcery and thanks to QEMU, you can also convert VMware and QEMU appliances into VirtualBox, VMware appliances to Xen, and VMware appliances to Parallels.

Once you've tried converting a couple of appliances, you'll notice that the process is a pain-filled process with no guarantees. But things are looking up. The Distributed Management Task Force (DMTF), jointly created by Dell, Hewlett-Packard, IBM, Microsoft, VMware, and XenSource, is working to release the final specification of the Open Virtual Machine Format. Among other benefits, appliances created in OVF will run across any virtualization software that supports OVF. VMware has already created an OVF tool to help import appliances created with OVF. But I haven't yet seen any OVF appliances available for download, nor have I seen any tools from other virtualization software vendors that will export existing appliances to or from OVF apart from the VMware tool.

In summary

Once you are sold on the idea of running virtual appliances, you'll find virtual appliances for almost any open source application, as well as several Linux and *BSD distributions. The range and number of appliances you'll find depends on the virtualization software you choose to run them on. VMware is by far the most popular but it is closely followed by VirtualBox and Xen. QEMU seem to be distant fourth, popular mainly with developers who care more for its processor emulation skills.

There are a couple of virtualization software-neutral sources as well that offer appliances that run on a variety of virtualization platforms, either as individual releases for each virtualization software or all-in-ones that run across platforms.

Converting virtual appliances from one platform to another still remains a gray area, although some virtualization software vendors are working on finalizing an open format that'll help create vendor-neutral appliances. Until that happens, you'll have to prowl through the Internet looking for appliances for your virtualization software. Happy hunting!

Share    Print    Comments   

Comments

on A virtual appliance primer

Note: Comments are owned by the poster. We are not responsible for their content.

A virtual appliance primer

Posted by: Anonymous [ip: 196.13.225.150] on June 17, 2008 10:15 AM
VMWare Server deserves a mention. It's free (when I last checked), multiple instances can run in the background on Linux and Windows, serving "services" or even front-ends to local or remote users. So it's all that the VMWare Player is, and so much more. DK.

#

A virtual appliance primer

Posted by: Anonymous [ip: 80.132.152.202] on June 17, 2008 07:37 PM
@Anonymous :

No, we are here on a Linux site and we should at least prefer Open Source/Free Software.

What makes me sad is the fact that the development of Qemu is not supported over the various Free operating systems more strongly.
Qemu with its Kqemu extension is super fast. Unfortunately there are many distributions who don't support Qemu to the point that it runs
reliably on a given release.
Qemu runs not only on - as a host - many operating systems from GNU/Linux over FreeBSD to OpenBSD it also runs on many hardware platforms
as the mentioned OSes compile it for their various platform releases. No, it even let the guests run on many platforms. What Qemu makes is unbelievable.

You can setup whole virtual networks with for example Slackware as a host then a virtual OpenBSD as a gateway then a virtual FreeBSD for graphical workstation and a virtual NetBSD for the network services like mail fetching and delivering and NFS server for the virtual FreeBSD workstation.

We should go into the communication channels of various distributions - Linuxes and also BSDs - and get them to better support Qemu.
Ubuntu for example has kqemu not in their repos - kqemu is only supported with kvm which is something for that you need the newer types of processors -.

And if I read comments like yours it makes me sad that users are also not pushing a Free Software "solution" but always point to this closed up thing which is _not_
the solution to all problems regarding the virtualisation.
Qemu would be waayyy more better than VMware _if_ the distors would be support it better.

#

A virtual appliance primer

Posted by: Anonymous [ip: 85.56.25.210] on June 18, 2008 05:31 PM
In many cases, the issue that the vendors are trying to solve with Virtual Appliances is that of ease of installation. For that, things like BitNami (http://Bitnami.org), which runs natively and does not have the virtual appliance overhead, may be a better choice. Example apps include Drupal, Joomla and Dokuwiki. You certainly do not want to run a full VM just to run an instance of Dokuwiki!

#

A virtual appliance primer

Posted by: Anonymous [ip: 156.65.14.146] on June 18, 2008 07:00 PM
VMWare also make VMWare Fusion for OS X, so even if you have a Mac (as I do at home), VMWare virtual machines are available.

Also, Parallels (I have both) can import VMWare VMs.

#

A virtual appliance primer

Posted by: Anonymous [ip: 85.110.110.172] on June 22, 2008 02:58 PM
You just right click the search bar on any website and click "create search"! BTW I love the new theme! To the person who mentioned they didn't like it?!
http://lefthandnetwork.blogspot.com
http://alp-tr.blogspot.com
http://oktayustadanyemektarifleri.blogspot.com
http://driftube.blogspot.com
http://seologtr.blogspot.com
http://malatya-spor.blogspot.com
http://astim.blogspot.com
http://etki-alani.blogspot.com
VMWare also make VMWare Fusion for OS X, so even if you have a Mac (as I do at home), VMWare virtual machines are available.

Also, Parallels (I have both) can import VMWare VMs.

#

This story has been archived. Comments can no longer be posted.



 
Tableless layout Validate XHTML 1.0 Strict Validate CSS Powered by Xaraya