jostein.kjønigsen.net

MS Virtual Server 2005 R2 vs. VMware Server

Me

When I installed this server, VMware server still wasn't a free product, while MS Virtual Server 2005 R2 was. Since I don't feel like running pirated software on my machines, my choice of virtualilization platform was pretty obvious back then. I knew that technically VMware most likely were a better product, but just how much difference could there possibly be?

This is a long one, so if you just want to see the obvious conclusion, scroll down to the bottom already.

Why?

Unlike when I installed the server, VMware Server is now 100% free to download. At least the "simple" version is. So yesterday on Nekonet #linux. while I was bitching about how FreeBSD just works and Linux distros usually has tons of quirks that needs working around, I got yelled at for my setup.

Basicly I got told that "Microsoft Virtual Server is a piece of shit", as quite a few things often get described as there. I was told I should check out VMware Server instead. In the process I decided to check out if Debian Linux worked better under VMware than in Microsoft Virtual Server.

There's 2 reasons for not only changing virtualization platform, but also the OS running on my non-Microsoft box. One: To see if the people who said that Microsoft Virtual Server was my problem (as opposed to various Linux distros). Two: Apt-get is pretty fucking neat. It even outclasses the FreeBSD ports system, which in my opinion is pretty impressive.

What's the big deal?

Like previously mentioned, my main issue with various Linuxes is that they have quirks that constantly needs to be worked around, while FreeBSD just works.

Example: I had a machine with defective DMA modules on the motherboard and I never even knew it. It wasn't until later, when I tried to install another OS on the machine that I discovered that the hardware that had been running stable for years was indeed broken. FreeBSD is a rock solid platform that doesn't let you tickle it into kernel-panicking over something as minor as motherboard defects.

So, getting me to reconsider a different OS than FreeBSD isn't just a case of "let's try something different", it's more a case of ditching something proven to be as high-quality as Unix-type OSes get.

The quirks - VMware

After downloading VMware server and installing it on my server, first thing I did was setup a new virtual machine.

First difference I notice is that VMware recommends setting up all virtual devices as SCSI, which is fine by me. Virtual SCSI devices supposedly gives better performance regardless of the what kind of devices they happen to actually be.

Another thing that is different is how networking is setup. Without being 100% certain here, it seems you have more or less the same capabilities in MS Virtual Server and VMware. Someone correct me if I'm wrong.

After seeing that Debian installer actually doesn't fuck up in VMware, I find a few other quirks. The auto-bridged network in VMware does not automaticly resolve LAN adresses and INET adresses on my 2 NIC-setup. After messing around a little, I finally got VMware networking setup working correctly. At this point MS Virtual Server clearly did a better job.

The quirks - Debian

Now, this is my third run on the Debian net-installer and finally things are working out. I've identified most quirks in the installer and things are moving on, the components I want installed are being downloaded and I'm getting close to a working system.

After getting Debian running, booting and seemingly working fine I find a few more annoyances. Apparently Debian chooses to only use one of my configured NICs, the INET NIC, meaning it's basicly inaccesible on the LAN. While manually adding the LAN NIC to /etc/network/interfaces got the interface up and running, it pretty much fucked up routing.

This meant having to manually make a script reseting the default routing tables and setting up my own with a properly configured default GW. It's only a 3 line script, so not a major job by any means, but I shouldn't have to do this. There might be another way to do this, but seeing as I'm not that deep into Debian internals, I chose the safe way I know should work.

Now, after testing the script and seeing that it did the job, I tried adding it to the system init-process at runlevel 3 just to make sure all other networking related stuff was up and running before my modifications were applied. Which ofcourse didn't work. After consulting some fellow geeks in Nekonet #linux, I get informed that Debian runs on runlevel 2 by default. Unlike all other Linux distros. I try again and finally things are working.

Did I mention something about FreeBSD just working? At this point my old setup with FreeBSD was clearly easier to setup and get running.

The good stuff

Now... That being said getting the software I need installed on Debian is pretty much as easy as in FreeBSD. FreeBSD ports is a no-hastle system, but seeing as it is designed to be platform-independent you will need to compile stuff. You can get around this, but this is the default setup, and compiling takes time. Especially in a VM on a slow machine.

In Debian you download binaries, which happen to be fine if you run on a x86 system. That however, is not all. Apt-get also provides you with the ability to configure the software and have it running on the machine in no time. Bitlbee and GnuMP3d were up and running in less than a minute.

The debian repositories are somewhat out of date at times, and to get irssi 0.8.10 (with proper unicode and recode support) I have to manually add a unofficial reposiory, but I can live with that. Adding one entry to /etc/apt/sources.list to get things talking nicely to my package-management system is absolutely bearable.

Performance

Ease of setup may be one thing, but after all it's just something you do once. Unless setting things up are total hell, you can live with a somewhat cumbersome setup, if there are net benefits that outweigh the minor deficiencies in the setup processs.

So, Debian is a pretty decent OS, and in VMware it actually works, as opposed to in MS Virtual Server.

As for speed, all I can say is "Whoooah!". Performance in VMware server is of a different world. Seriously. This is without even running VMware tools in the VM.

Conclusion

I've now complained about VMware not working out of the box, Debian needing hacking here and there to do the job properly, not to mention the installer having bugs/lackings here and there.

Getting FreeBSD up and running in MS Virtual Server was a breeze. First attempt and everything worked, which clearly wasn't the case with VMware and Debian.

However the difference in actual performance and getting stuff up and running when you've first overcome the few quirks here and there is simply amazing. Seeing as everything in FreeBSD was compiled for my exact platform and CPU, there's no way that the speed increase can be attributed to me running Debian instead of FreeBSD.

I'd say running Microsoft Virtual Server 2005 R2 is pretty much a waste of good hardware. I'm not letting it near any of my boxes again.

Thanks to

Various reasons

Misc stuff