In this interview with SearchOpenSource.com, Frey dishes out some tips from his own hands-on experience with virtual appliances, including the perks and shortcomings, and tells us what he foresees for Linux, VMware and virtualization in 2007.
SearchOpenSource.com: You work with virtual machines as a hobby. What have you done on your own?
John Frey: I have deployed three virtual machines. All three are available from rPath as virtual appliances. [Ed. note: rPath offers virtual appliances that were created with its rBuilder packaging tool at rBuilder Online.] There's a Web server appliance, a LAMP appliance and an email appliance. The time it takes to download and install each of these is considerably less than it takes to install and configure just the base OS that I generally use, Debian.
How much faster is downloading an appliance than configuring the operating system?
Frey: Well, a net install of Debian -- just a basic system -- takes a few hours. This would go much faster from a CD, of course, but it's probably in the range of half an hour. Downloading and installing a 150 MB virtual appliance [VA] can be done in less than one hour.
Calling it 'installing' is a bit of a misnomer, though, as all you really have to do is copy the virtual appliance to the hard drive of your host machine and then power it on with the VMware management console. There are a few questions to answer regarding networking and partition setup. It takes five minutes or less to power up the virtual appliance. Of course, you still have to add content and configure. With a Web server VA all you have to do is add users and content.
If the virtual appliances are from rPath, does that mean they issue automatic updates?
Frey: The appliances I use have a nice Web-based interface for administration through which rPath issues patches and updates [Ed. note: the appliance's individual project page] so there is a small learning curve. Add that to your list of things to check regularly. The Web interface is a convenient way to check for and install updates [to the appliance] although that can be done from the command line as well. I find it easier to check a Web interface than to remember a command. It is very nice to be able to run multiple instances of a program on different VMs rather than running them all on the same server. It simplifies things a lot. Not necessarily for Apache, which is designed to run aliases, but for blogging and forum software, that comes in handy.
Why not Apache? And what is it about blogging and forum software that lends itself well to an appliance?
Frey: Apache is designed so that one may run many domains from a single installation. I don't mean to say there is no reason to use virtualization with Apache, it's just that it already allows for multiple domains. I was planning on using a blogging application for several different portions of my Web site. With Apache, I would just create an alias and link to that. With the blogging software I was using, there seemed to be no way to do that so if I wanted to create a different Web page using the blog interface, I would have to set it up on a new VM.
Have you encountered any other issues when deploying virtual machines?
Frey: The issues I have are with directing traffic and linking. When all your virtual machines are behind a firewall, how do you direct http traffic to different VMs? I did not want to link to the NAT IP address. [I] don't know if that's a security risk, but it just doesn't feel right. I decided to put the complete Web site on one virtual appliance. There might be discussion about this on forums and possibly a white paper from VMware, but I have not run across it yet.
Could you share some of your ideas on how you started to solve your traffic/linking problem?
Frey: The only way that comes to mind would be to use different ports for the different virtual machines. That works OK for Web traffic that's all for one domain or for private domains and networks. For more than one domain, this becomes a problem as you want users to just type in your domain name. I have not tried that, but I see no reason why it would not work.
What are your predictions for Linux and virtualization? How do you see VMware responding to Xen (or to a lesser extent KVM)?
Frey: Virtual appliances are definitely here to stay and anyone who does not offer nice, compact virtual appliances for users is going to lose out big time. Today the list of supported OSes from VMware is such that I can install almost any distro in VMware with no more trouble than doing a regular install. I would even venture to say that a VMware install is less troublesome given the nature of the emulated hardware. Over the years, I have seen the performance improve until there is very little difference between a VMware install and a native install.
VMware has also made its products available for free. In the past, I would use beta versions and testing versions and I even attended a seminar more than a year ago where they handed out free copies.
Compared to VMware, [open source virtualization] is still very difficult to use. The point-and-click SUSE YaST [Yet another Setup Tool] interface I used did not work. There is a lack of how-tos and easy-to-access documentation. That is quickly improving, but I'm not sure how long it will be before they are as easy to use and administer as VMware, which has quite a head start on the competition.