Recently I had to set up a virtual Windows Server 2003 R2 32-bit OS virtual machine on my XP laptop so downloaded Windows Virtual Server 2005 R2 from MSDN and tried installing it. As virtualization solutions go I'm fairly new to Virtual Server, having more familiarity with CoLinux, so this is very much a first impressions review.
Once configured and working, the Virtual Server guest operating systems that I have used have proven to be reliable. The installation and configuration parts however were less than pleasant. Since I'm willing to believe I made various mistakes (like not reading the documentation) I'll be happy to provide space to any Microsoft engineer who'd care to respond to this litany of misinformed rambling and correct errors. I've not tried setting up Vmware and would also be interested in comments on how that compares.
The Virtual Server installation proceeded smoothly until it warned me that Internet Information Services (IIS) was not present on the machine and hence it wouldn't be able to install the web administration component. I didn't really want to install IIS since Apache was running so continued with the installation. Once installed I couldn't find any way to administer Virtual Server without the web interface. I tried connecting from another Virtual Server machine which did have IIS installed but to no avail - possibly due to firewall or default IE security issues.
After this failure I uninstalled Virtual Server and installed IIS. Ever since this first installation my laptop starts an msiexec process and displays these Virtual Server install messages when I log in:
The startup messages continued after uninstalling Virtual Server, and reinstalling, and appear after booting to this day, whether I follow the instructions in the messages, cancel or just kill msiexec. I haven't been able to find where it is launched in the usual registry "Run" locations or Startup group as yet so for now I'm stuck with it.
Trying to ignore the annoying pop-up, I installed Virtual Server complete with web interface.
I hoped adding a guest operating system would be intuitive but had to resort to the Help screens. I needed to:
- Create a Virtual Machine
- Assign the new VM a CD-ROM drive, pointing to either the host machine's CD drive or an ISO image of the operating system media on the host machine
- Start the new OS and control it remotely via the browser, following the OS install prompts to complete installation.
Not too bad once you get the hang of it, but there are some frustrating aspects to the process and the subsequent remote control of guest operating systems..
1. IE is the only browser which can access the administration interface. If the machine's default browser is not IE, the Virtual Server Administration Website link in the Startup menu will fail and you have to copy the URL into IE.
2. If the IE browser is running via a Remote Desktop, the mouse cursor mysteriously disappears during OS installation, making installation more challenging. Having got as far as creating and installing a virtual machine successfully the mouse behaviour continued to be erratic via Remote Desktop.
3. If you've downloaded operating system install images from MSDN, it makes sense to choose an ISO image as the virtual CD drive for the new machine. I tried installing Windows Vista, which requires 5 CD's, by defining the first CD ISO file as the CD drive. When it asked for the second CD, there was no browse button to get to the next ISO file, and the first file was open so couldn't be overwritten. Installation abandoned, I'll try the Vista DVD next time.
4. Perhaps due to the security restrictions in IE, there was no browse option when defining an ISO image as a CD drive, not even copy/paste worked (at least not via Remote Desktop), I had to type the path of the ISO in manually.
5. Toggling between remotely controlling a guest operating system in the browser and the rest of the machine is done by hitting the right ALT key. Determining this required searching the help pages. It would be good if there was a button or menu option for switching (preferably one which works via Remote Desktop as well) or perhaps it should just switch when the mouse is moved away from the remote control screen like VNC and Remote Desktop do.
6. By default there is no networking enabled when a new virtual machine is created and installed. With some searching I found some fairly brief instructions on setting up a Loopback adapter which explains the host OS part of the set-up but not the Virtual Server DHCP set-up. A bit of trial and error got the networking operational. It would be nice if there was a checkbox that could set up this basic level of host-guest interoperability, but I assume security restrictions in the IE interface would prevent the browser from being able to learn too much about the host operating system, let alone make changes to it.
7. Without networking, the only way to share information between the host and guest OS appears to be via the CD drive. I was unable to find any way to set up a shared disk drive.
8. When remotely controlling a Virtual Machine in the browser, it sometimes times out. Strangely this has happened while actively using the connection.
9. Deleting a virtual machine and its resources is hard work. There is no remove option to go with the Create/Add/Configure options for machines, networks, disks. I found a remove option under Configure if I switch the virtual machine off, but even then it tells me it will not remove the resources associated with it. How does one delete a virtual hard disk? Go and find the file and manually remove it?
Virtual Server has some powerful features and requires little maintenance once operational, but in its current version it appears to be hampered by its dependency on IIS/IE administration. Browser based administration does offer some distinct advantages, perhaps this concept would have worked better before all the security fixes in IE prevented it from being able to take too much control of a machine. It would also be nice to see it work with other browsers and web servers. An optional alternative administration method, such as a dedicated control program which could access the host's networking and hardware configuration and use it to make virtual machine configuration easier would be very welcome. Being able to create a virtual machine and have say a virtual network and Remote Desktop from the host working out of the box if you check the appropriate options would also be a nice to have.