Friday, March 14, 2008

A Virtual World


Everything is going virtual! I'm not talking about the Lawnmower Man or Second Life here. No, I'm talking about the fairly new trend of virtualized applications, operating systems, and hardware that we're experiencing in the world of IT. Considering it's a relatively new market, the full potential and extent of virtualized services is not yet known.

You can virtualize many different things in many different ways, but the most common is operating system virtualization on top of a software layer such as VMware or Microsoft's Virtual PC. A new one I stumbled across a few months ago is VirtualBox (props to Stephen for telling me about it). It's an open source alternative geared towards ease of use and can be used on any platform. I'm not sure if it's good for the community or not yet, but they were recently bought out by Sun. I still haven't figured out exactly how you buy out an open source company, but whatever. Maybe they'll keep their mitts off of the operation as much as possible and there will be minimal impact. As it stands right now, it's my opinion that VirtualBox is the best free virtualization suite out there for the home user. I hope that doesn't change.

I'm not really going to give a review of the software itself. It works just like any other, and it pretty much has most of the same features. You install it, create a virtual drive, install the OS from disc or an image, and tada! The only thing I would mention is if you install the guest additions package you'll gain a few extra features. The manual for it on the site is very well fleshed out so I'll leave it to you to just give it a try if you have an interest in it.

This is mainly a precursor (or post cursor) to a few other projects I've been playing with. I used VirtualBox for the Ampache install I did when looking for a good mp3 streaming solution. It worked quite well, and most importantly, it kept me from worrying about dirtying up a Windows install with all of those XAMPP applications. Very easy to just install Linux as a virtual OS and use apt-get to grab Apache, PHP, Perl, MySQL, and all the dependencies I needed to support the Ampache install. All those applications would be confined to a single file containing the virtual OS and not leave files scattered across my drive. With a virutalized OS, having a good clean testing environment is easy. You just bang away at it till your heart's content, then revert to any saved state you'd like.

Besides testing new software before committing it to my workstation, I also use a virtual machine for simple web browsing. It helps me keep my workstation more secure. Instead of worrying about tracking cookies, viruses, and malware in general, I just keep a saved state of a fresh install of Windows XP on tap using VirtualBox. If ever I need to venture out onto the fringes of the internet, I do it inside the virtual machine and then revert to the pristine saved state.

One final thing I do is I use a Linux install on a virtual machine for SSH tunneling. To me it's easier to do that through Linux than to fiddle with Windows SSH server software, and with a virtual machine I don't need to have a separate PC dedicated to simple Linux functionality. I plan on writing an article on SSH tunneling in the near future (Edit: Check!), so I'll refrain from comment on how to do it or what it does, but suffice it to say it's good for bypassing internet content filters and cutting down on prying eyes at work.

Virtualization has become a very good tool for me, and an even better tool from an enterprise stand-point. I'd suggest you give VirtualBox a try if you're looking for free home use virtualization software to learn on and tinker with. You may find it quite useful.

0 comments:

Post a Comment