Nov. 15, 2006 | Virtualization has turned an important corner: it is now a productivity tool for the individual user. Over the past few years, products like VMWare have vastly simplified administration of traditional IT services. Rolling out a new machine could be done by pushing a few buttons, rather than with a trip to the machine room. In practice, this meant that system administrators can provide dedicated, special purpose systems with great ease. In the past month, I’ve been using that same technology to be more productive on a day-to-day basis.
I recently installed the “Parallels” virtualization software on my MacBook Pro. I encountered a thorny VPN client that was supported only under Windows. I had been splitting my efforts between a time-wasting fight to get the client software on OS X, and a half-hearted attempt to find myself a cheap Windows laptop. On a whim, I downloaded the free 30-day demo of Parallels, created an “image” of Windows XP, installed the OS, and the windows-only VPN client, and I was online through the “windows only” VPN that very day. The ease of installation astounded me. It was actually much simpler to create a virtual environment than it would have been to purchase and configure a physical device.
As I worked in my virtual VPN environment, I discovered another advantage: I could isolate the effects of working within a VPN (slow network connection, no access to instant messenger or email) to a single window on my desktop. Since my primary login environment was not running in the VPN cage, I was far more productive. This is true for other software as well. Since my investment in creating a new machine is relatively low, I have no problem installing buggy or potentially harmful software. I now routinely create task-specific virtual machines, and delete them once I’m done with them.
A third advantage became obvious over time: there are an increasing number of pitiful web interfaces that refuse to show content unless the viewer is using some particular browser. We’ll set aside the fact that any web designer who deliberately limits the usability of their site should be fired. My virtual Windows machine qualifies, through the network, as “real.” This lets me access such sites with whatever client the developer happened to favor.
The ability to smoothly re-map physical devices (USB ports, disk drives, network interfaces) onto the virtual machine took me by surprise. This came in handy while experimenting with a piece of pre-release hardware for accelerating BLAST. Once again, the software was “Windows only.” I was shocked at how simple it was to “plug in” a particular USB device to my virtual OS. Similarly, when I create virtual Linux machines, I don’t bother to burn the installation DVD to physical media. Instead, I just mount the ISO on the virtual machine.
Of course, there are down sides. It’s critical to have lots of RAM and hard disk space. The default VM image takes up 8GB. I’ve also grown spoiled by working exclusively with free operating systems for the past few years. Virtual hardware is free. Licensed software is not. Finally, there is the obvious fact that an emulated environment is never going to compare well with native OS performance. Virtual machines won’t be good for video games any time soon.
For development of BioTeam’s cluster products, I’ve dedicated two virtual Linux machines, a portal and a compute node. I suspect that Parallels even supports net-booting and similar protocols. I now work on software for rapid cluster deployment without needing to travel to the machine room, get test hardware, or even be connected to the internet. Testing out a cluster installer while in the internet-free zones of airplanes and trains is pretty compelling stuff.
E-mail Chris Dwan at firstname.lastname@example.org.
Subscribe to Bio-IT World magazine.