If you've worked in IT for a while, then the following scenario, related to me by a friend who manages a small network, might sound familiar to you. In my friend's office, the color printer is located near Debbie's desk. Frank yells across the office, "Debbie, is anyone using the color printer?" Debbie responds, "No," and Frank yells back, "Don't print anything until I'm done!" Debbie agrees, and everyone goes on with their day except my friend, who's too busy pulling his hair out.

What these users don't realize is that a physical printing device exists only to put ink on paper—the preparation of the file to be printed is virtualized in the printer server's software. The printer server software renders a file into a format the printing device understands, then places the rendered file in the print queue. This virtualization process has made printing more reliable by ensuring that a non-mechanical error won't prevent documents from printing, by lowering the cost and increasing the speed to market of printing devices by freeing manufacturers from having to write file-rendering software for each printing device they make, and by reducing total cost of ownership (TCO) by enabling the interchangeability of printing devices without requiring users to resubmit print jobs. Virtualization is now an inescapable part of the printing landscape, and soon virtualized computers will be an integral part of IT. Is your IT department's understanding of virtual computers any better than Frank's? Do you have a strategy for virtualization?

This Technology Packs a Punch
Virtual computers are fully functioning guest OSs that run as applications on a host OS. Virtual computing software, such as Microsoft Virtual PC and EMC's VMware, abstracts hardware on a physical computer into virtualization software. A guest OS runs on the abstracted hardware as if it were installed on a physical hardware platform. Because the actual hardware is abstracted, a host OS can run more than one virtual computer. A virtual computer's virtual hard disk can be saved to the disk of the host OS as a file. The virtual computer can be started from the file when needed and is fully portable to other host computers with the same virtual computer software installed. Virtual computers can be transparent to the user or can run, as other applications do, in a dedicated window.

Virtual computing can provide significant cost savings and reliability improvements and can improve the speed of deployment. If your IT strategy doesn't include virtual computing, you're missing some big opportunities. Virtual computing can have an immediate and measurable impact on IT costs in the following three areas.

Redeployment speed. Where do you need to rapidly redeploy OSs and applications? Because virtual computers are portable and can be saved to disk (either on a server or DVD), you can build them ahead of time and deploy them (via copy-and-paste) on demand. Taking advantage of virtual computing can significantly reduce the operational costs of test environments, of kiosks and other shared computers, and of training environments. Rather than reinstalling an OS and applications each time you need them, you can simply revert to the base virtual computer. Even the fastest hard disk imaging technology can't come close to the speed of deployment that virtual computers make possible, and unlike imaging, because hardware is abstracted in virtual computing, virtual computers are completely portable.

Hardware cost reduction. Virtual computing can positively affect hardware costs in several areas. For example, think about legacy systems that run line of business (LOB) applications on a single legacy platform—call center applications running on OS/2 Warp, for instance. The cost of supporting the legacy hardware that OS/2 runs on is much greater than that of supporting newer hardware. These costs occur mainly in reliability improvements and server consolidation. You could create virtual computers for a legacy OS/2 system on a single computer running Windows Server 2003 on highly reliable and fault-tolerant hardware.

Let's look at an example on the user side. It's not unheard of for some users to maintain two computers because they need applications that run only on a certain platform. For example, a graphic designer might use an Apple Macintosh as her primary workstation and also maintain a computer running Windows XP Professional for some critical applications. Virtual computing would allow this user to maintain only the Mac and run a virtual instance of XP on it.

Additionally, training labs often require multiple computers. Virtual computing lets you run multiple guest OSs (even of different platforms) on one machine, thereby getting the most out of your hardware training resources.

User isolation. Shared-use computers, such as those maintained for rotating staff, can be support nightmares. For example, one user might install software that's really spyware, which renders the computer inoperable, or might change the mouse pointer to a piece of cheese, which confuses the computer's other users. Virtual computing lets you assign each user his own virtual computer, thereby isolating any damage the user might do to the computer. If problems do occur, you can get the affected user up and running again quickly simply by reloading the base virtual computer.

You can also use virtual computers to isolate a single user session. Doing so is helpful when you want to protect kiosk users' confidentiality and privacy, as well as the reliability of the kiosk itself. Each time a user uses the kiosk, a new virtual computer starts. When the user session ends, the computer reverts back to its base state.

Don't Miss Out
Don't miss the opportunities that virtualization can provide to improve system reliability and decrease support and hardware costs in your organization. A simple four-step plan will help put you on the road toward realizing the incredible potential of virtualization technology.

  1. Determine your opportunities for virtual computing. Use the three areas of opportunity in this article to find places in your organization that might benefit from virtual computing, and define the actual benefits.
  2. Calculate potential reliability gains and cost reductions. Determine the current costs associated with the targets you've identified for virtualization. (Support databases are particularly useful in determining reliability and maintenance costs.) Calculate how much virtualization will help you save on those costs.
  3. Obtain and assess virtual computing software with the target opportunities in mind. Test the virtual computing software and virtual environment to ensure that the potential reliability gains and cost reductions you've estimated are technically and financially feasible.
  4. Start planning your first virtualization project. Use the IT Project Proposal Worksheet to create a proposal for your organization's first virtualization project. (To download a free copy of this Interact! worksheet, go to http://www.windowsitpro.com and enter 47637 in the InstantDoc ID text box.)