For the past six months, our offices have been part of the brave new world of virtualization. Not of servers, storage or networks, but of the next-generation desktop.
For the past six months, our offices have been part of the brave new world of virtualization. Not of servers, storage or networks but of the next-generation desktop. The rationale for the original decision to virtualize the desktop was to offer the staff operating-system and application flexibility while maintaining governance, manageability and control of the corporate environment.
In hindsight, our intent was correct, but our timing -- to say the least -- was a little off.
If one were to look up the definition of desktop virtualization in Wikipedia, one would assume I am addressing a server-centric or thin-client-computing model where we host and centrally manage desktop virtual-machines in the data center while giving users a full PC desktop experience. Wrong!
That is the classic form of desktop virtualization, with all of the issues and baggage associated with the mainframe era. While appropriate for constrained application environments, such as call centers or office or accounting administration, this virtualization approach is not viable in a creative or research environment.
Today, multiprocessor desktops are becoming the norm rather than the exception. This is the execution environment for the next-generation desktop. Numerous approaches exist today, and more will become available in the near future. After some degree of technical analysis and experimentation, we chose an Intel-based Apple Power Mac with multiple displays, and ample processors, memory and storage. This desktop hardware environment would run Apple's OS X operating system as core software and VMware Fusion as the virtualization application.
The users then could choose any other operating system executing as a virtual machine under Fusion to run their legacy or new applications. This gave users access to more than 60 PC operating systems -- including Microsoft Windows Vista/XP/2000, Linux and Sun Solaris -- that would execute as distinct virtual machines within a single hardware environment. The intent was to have the complete flexibility to share applications, files, images and video; to drag-and-drop and copy-and-paste text; and manipulate or resize desktop screens between virtual machines and OS X on the Apple Mac and other LAN-connected virtual desktops.
As with all leading edge computer or communications installations, not everything went perfectly as documented or envisioned in the planning process. The initial installations were done with Fusion 1.0 -- yes, the first public release of the product. Timing is everything. The execution environment is outstanding, with minimal problems running several virtual machines and operating systems. We decided to take on further risk by installing Windows Vista alongside OS X. To our surprise, we have had only one major crash of Windows Vista since it was first installed.
Fusion's abstraction layer seems to have given additional stability to Windows Vista. As advertised, manipulating files, desktop content and so forth from virtual machine to virtual machine is transparent and slick. Opening multiple, simultaneous Internet-browser sessions in any virtual machine desktop is possible in conjunction with multiple operating-system-specific applications.
Content can be copied and pasted, merged, edited and so forth irrespective of medium -- voice, data, image or video. The next-generation desktop will be the norm after 2010, not the exception.
If it all works so well, why in two years, not now?
The problems are all within the operating environment. In theory, a virtual-machine environment should share all physical peripherals and those peripherals should be accessible through standard operating-system driver software. This unfortunately was not the case in Fusion's initial (1.0) or current (1.1.3) version. Dedicated IP addresses are required for each virtual machine to allow bridging of network peripherals.
Peripheral devices attached to USB and FireWire ports must be switched manually and custom-configured from virtual machine to virtual machine. In certain instances, FireWire devices cannot be addressed from a virtual machine. In those instances, the virtual-machine operating system will not recognize the existence of the FireWire port.
Graphics acceleration may work, work partially or not work at all, depending on the graphics-board vendor for the Apple Mac. Even if there are graphics-accelerator drivers for all the respective virtual-machine operating systems, Fusion may not be able to present the accelerator transparently to a virtual machine.
Numerous problems exist with bridged and network-address-translation (NAT) networking between the virtual machines and OS X, including discovering whether OS X network connections are available, the subsequent automatic network-address refresh, and DNS and Windows Internet Name Service pass-through. Wireless-LAN-attached input devices, such as scanners, cannot be recognized by virtual machines, and so forth.
The Apple Mac OS X has an excellent backup-and-recovery engine called "Time Machine." This allows transparent, automatic scheduled back-ups. Unfortunately, it does not work for all virtual machines and their associated files. Although VMware presumably fixed this flaw in Version 1.1.2, Fusion still has problems backing up virtual-machine files. The only way around this inconsistency is to provide back-up software for each virtual machine.
Virtual security is another interesting problem. The Apple Mac OS X is known for its security strengths with respect to viruses, intrusion-detection and so forth. These seemingly intrinsic capabilities are not virtualized by Fusion and must be provided for within each virtual machine.
The last problem is managing the virtual environment. It was assumed incorrectly that Fusion had a single set of software tools that comprehensively provided governance, configuration, management and control of all virtual machines. Shipping complex software without detailed management tools seems out of place for 2008.
Each virtual machine and its operating environment must be managed separately, however. Fusion contains only rudimentary application tools to manage its own environment.
As stated earlier, next-generation-desktop virtualization is in its infancy, but should reach maturity in the 2010 time frame. VMware is addressing most of the above operational problems in a major release (Fusion 2.0) scheduled for later this year. Virtual printing will be enabled by detecting and mapping all default and configured OS X printers automatically. It is hoped that virtual peripherals will correct USB and FireWire discovery and allocation problems. Virtual networking has been enabled to resolve the bridged- and NAT-networking conflicts uncovered in previous releases.
Virtual management has been enhanced with new virtual-machine library and setting editor software. Fusion Release 2.0 includes new features and tools, for example: launching a default virtual machine or machines when Fusion launches; a closer link to Apple OS X utilities with their recognition of virtual-machine environments; and a single dashboard overview of all virtual-machine settings and configurations. No virtual security or complete solutions for graphics acceleration seem to be incorporated in Release 2.0, but time and greater use of next-generation desktop-virtualization will speed the delivery of additional features and bring this form of technology into the mainstream of computing and networking.
VMware seems to be on the right track with this new technology. Microsoft, Apple and open source will not be left out of the desktop virtualization marketplace in the near future. The next-generation desktop coupled with telepresence, the Internet and cloud computing will bring the power of corporate computing and networks into homes, schools, communities and small businesses. Once you have experienced the virtualization-enabled multitasking-power and application-flexibility of the next-generation desktop, you will not look back!