Virtual Desktop - VMware Workstation
How I Use VMware Workstation to be More Effective - Personal History and Tips
Whether you are an advocate for VMware’s Workstation, Sun’s VirtualBox, Microsoft’s Virtual PC, or Microsoft’s Hyper-V technology, I think you will concede that VMware delivers a mature, top-notch product for virtualizing the desktop.
Personal Virtualization History
Many years ago, I started virtualizing my desktop using the free edition of VMware Server. I had tried Microsoft’s Virtual PC 2005, including the server edition, but felt the free VMware product was more effective. After an evangelical rant about the benefits and rather obvious ROI for virtualizing desktops to my manager, I was granted a VMware Workstation 5 license and a project to migrate the whole team to Workstation 5 as well as discuss the opportunities for VMware ESX with the infrastructure department. When I left the company, I left my license (yes, I was a good steward of legal licensing agreements). I quickly transitioned to Microsoft’s free Virtual PC 2007, which left me wanting a lot after having VMware. It got the job done, but I was not as productive without the ease of VMware’s snapshots, support for USB devices, multiple monitor support, linked and whole clones, player, etc. I also saw that Microsoft simply wasn’t investing in Virtual PC as a focus. Why not?! Ah… Microsoft Windows Server 2008 Hyper-V, that is why. Having gone through incredibly complicated installations with Microsoft’s SharePoint, Team Foundation Server, Project Portfolio Server, Outlook Exchange, and other products in the past, I hesitated and continue to hesitate to this day to replace my daily working environment (host operating system) with Hyper-V technology. Why? I don’t want to potentially lose days of productivity (blogging not included). Also, I haven’t researched my much needed support for snapshots and clones heavily enough to know that I could transition completely from VMware. I missed my VMware, so much that I bought my own personal license for Workstation 6.
The Problem
As time goes by, a computer accumulates clutter; programs, settings, files, etc. Eventually a computer will likely get “quirky” as well; things “hang” and you don’t know why, things crash horribly, random warnings may appear without any good guidance of what to do. There are tools that help: disk cleanup, disk defragmentation, anti-spyware, anti-adware, anti-virus, anti-phishing, registry cleanup, memory cleanup, system configuration backups and restores, program repair or re-installs, etc. These all help reduce the clutter and remove quirks. But they will never give you a fresh start and when you don’t have the resources to discover quirks (even with the right tools), a clean install may be what your productivity needs.
The Answer: Tips for Virtualization
You already knew virtualization was the answer. I can go to any computer you give me that supports VMware Workstation and be up-and-running with fully loaded operating systems in less than an hour! Need a developer with XP SP3 and VS2005? Need a consultant running Vista SP1 and Project 2007? Need to do a POC on both Server 2003 and 2008 R2? You could have this flexibility too, so let’s get to the tips…
- Keep your host operating system as “thin” as possible. You will probably want your favorite internet browser(s) and something like Microsoft Office and Adobe Reader installed on the host along with other utility programs. But, try to limit the changes you make to reduce the clutter.
- Backup virtual files regularly to a separate disk drive and backup your backup disk drive - storage is cheap, but productivity is not! So, backup your backup with scheduling software and unplug the backup of the backup. If needed, store your backup’s backup in a geographically different location (in case of physical hazards you might survive through)
- Take incremental snapshots - VMware supports trees of snapshots with up to 99 snapshots per branch off of a snapshot trunk.
Sample Snapshot Tree Trunk (no branches):- Base Operating System Installation with Activation (no updates or patches)
- All Current Operating System Updates and Patches
- Operating System Configuration and Base Software Installations (software you always use like text editors, internet browsers, office software, utility programs, etc.)
- All Updates and Patches (separate snapshot, because you may want to install different updates… example: you might install Microsoft Office Service Pack 1, but then want to go back to an install with just SP2 without having installed SP1)
- All Extras
With the tree trunk above, you can now branch at any of the snapshots to create a seperate line of snapshots. For example, you may want to start back at the OS with Updates to install a different configuration or different base software products.
Sample Snapshot Scenario:
- Windows Server 2008 R2 Web Edition and Activation
- Windows Updates
- Install Web Roles (e.g. ASP.NET Web Server and/or DNS) and Features (e.g. IIS 7.5 Features, .NET 3.5.1, XPS Viewer, Windows 7 Desktop Enhancements, etc.)
- Windows Updates
- SQL Server 2008 Developer Edition manually merged with SP1
- Windows Updates
- Microsoft Office 2007, Visual Studio 2008 with SP1, Expression Studio 3
- Windows Updates
This scenario is a personal preference that allows me to go back with fresh updates. For example, I have a branch at step 6 with a seperate snapshot for Microsoft Office 2010 Plus Beta, Visio 2010 Beta, SharePoint Designer 2010 Beta, Visual Studio 2010 Beta 2, and Expression Studio 3. Why not go back to step 4 SQL Server 2008 R2 CTP? Personal: I don’t install CTPs. I don’t have the time. But, that’s an important question: You can do that with virtualization!
- Always shutdown your guest operating system and remove settings for shared folders, drives, and devices before taking snapshots
- Keep all of your installation files, including FireFox installs, add-in installs, trials, etc. stored outside of your virtual and backed up with your snapshot backups, so you can go back. Again, storage is cheap!
- Use fully pre-allocated disk storage whenever possible - I like to pre-allocate 60 Gb to most of my virtuals. Perhaps excessive, but again storage is… you know.
- For laptops or limited storage scenarios: Only store primary virtuals locally, store all other virtuals on a fast USB drive and run them directly from the USB drive. I have run enterprise software demos on a virtual Windows Server 2003 with TFS 2008, MOSS 2007, and SQL 2008 off a 160 Gb USB drive with a barely acceptable delay, so it is possible (not recommended for critical demos).
- Use “Shared Folders” or network drives to store working files outside of the virtual. I prefer to store them on the host to improve file read/write performance and then run scheduled backups to a USB drive.
- Defragment both your virtual disks and your storage disks regularly. You still need to help performance by consolidating the fact that related information gets written all over your disk until you defragment.
Use the comments section to let me know how things are going and add your own tips and tricks for virtuals and feel free to comment on Sun’s VirtualBox as well as Microsoft’s Hyper-V and Virtual PC technologies… Good luck!


4 Responses to “Virtual Desktop - VMware Workstation”
December 2nd, 2009 at: 12:00 pm
Nice writing. You are on my RSS reader now so I can read more from you down the road.
Allen Taylor
December 2nd, 2009 at: 12:46 pm
[...] more here: Eric Swanson on Technology Services » Blog Archive » Virtual … No [...]
December 2nd, 2009 at: 1:57 pm
After several discussions with IT professionals, I recently picked up VMware Workstation 7. Prior to VMware, my virtualization experience had only been around Microsoft Virtual PC 2004, 2007, and Server 2005 R2. I am no expert at virtualization, but I am very pleased with VMware Workstation, especially the snapshot feature. Before using Workstation snapshots, I would save each virtual state in Virtual PC. Nothing really different, until you compare the size of a snapshot with a virtual state. Snapshots of a virtual environment running Windows Server 2008 are about 2 to 6 gigs, depending on the amount of changes made, while Virtual PC states averaged about 18 or more gigs. I know prices for terabyte drives have dropped, but that is potentially a lot of storage required in order to have on hand various environments for development and testing. Thanks for sharing your sample snapshot tree trunk build.
December 4th, 2009 at: 1:42 pm
Since I just installed Windows 7 64-bit on my laptop, I may have to use virtualization to get some older 32-bit software to work…like VPN clients.
Thanks for the interesting and useful article,
Randy
Leave a Reply