Viridian (version 0) is here!

A few days ago Microsoft released Release Candidate 0 for Windows Server 2008. Apparently, in a last minute rush before the final RC0 build was "cooked", they wanted to give the industry a taste of how Windows Server Virtualization (aka Viridian) will look like. I took the opportunity to get the build and give it a try in my lab. This is not going to be a detailed step-by-step guide on how to install Viridian nor a complete analysis of its functionalities (it's still in pre-beta so it wouldn't even make much sense). It's really a "log" of what I have been playing with for about 4 hours and I wanted to share it...

The setup

While setting this up is not rocket science I found useful following a few hints that a good friend of mine (that is by chance) working at MS posted on his blog a few days ago (thanks Giorgio).

First and most important Viridian will not run on any computer out there. In order to enable it you do need to enable two technologies in the server BIOS to make it run:

  • Intel-VT or AMD-V depending on the processor you are using
  • No Execute (NX) or Execute Disabled (XD) bit again depending on the processor you are using.

In my test I have used an IBM HS21 blade with 2 x dual-core Intel processors and 16GB of memory so this is what my BIOS had to look like (this is a remote kvm session of the server through the Bladecenter Management Module):

You need to make sure your hardware supports this features before boiling the ocean with Viridian.

At that point you would just install Windows Server 2008 RC0 following the typical Microsoft next-next-next-done procedures. One important thing to notice is that the setup program will offer you a choice of installing Windows in a standard manner or in the so called "Core" mode (Core mode is a stripped-down install with limited services installed and no GUI). Do NOT choose this if you want to use Viridian afterwards because Viridian will apparently not work at this pre-beta stage in Core mode). By the way it saved me some time having worked with Vista for quite a while. The Win2008 GUI is very Vista-like so... if you are not familiar with that it might take you a little more to get around in the GUI.

Once you are done with that... you haven't really done much in terms of virtualization. MS has officially stated that, once Windows Server 2008 officially hits the street at GA, they will ship the virtualization component within 180 days. There have been lots of discussions about "how" MS will decide to distribute that piece of technology later on: through a Service Pack, through Windows Update, as a "hotfix"? I haven't heard a final word on this but we know HOW they are distributing this pre-beta version. If you navigate in your file system you should find two files that are:

%systemroot%\WSV\Windows6.0-KB939853-X64.msu

%systemroot%\WSV\Windows6.0-KB939854-X64.msu

In order to install Viridian you have to install first the package #54 (i.e. the Virtualization Manager MMC snap-in) and the package #53 which is the Viridian binaries. I am not sure whether or not you really need to reboot at this point (Giorgio's notes say so) but I thought that rebooting Windows never hurts so I went for a quick reboot.

Once you are back you have to enable the hypervisor. In order to do that you have to add the "Virtualization" role through the Server Manager management interface. This is what I did:

Basically what happens is that if you don't install Windows6.0-KB939853-X64.msu you won't see the "Windows Server Virtualization" role since it's not shipping with the RC0 out of the box. Once selected the system will enable this feature:

At this point you are requested to reboot your system. Oh yes you have to reboot it now because what it is going to happen is that the hypervisor will basically take control of the hardware and the Win2008 install you see in front of you is going into a sort of "privileged virtual machine mode" that Microsoft calls Parent Partition. From an architecture stand-point it is similar to what the Console OS is for VMware. You can read more on the architecture differences between Viridian and ESX in my other post here.

Now in the Administrative Tools menu you have a new snap-in that is the Windows Virtualization Management with which you would manage either the local Viridian instance or a remote Viridian instance:

Notice that the name VIRIDIAN you see in the picture above is the NetBIOS network name that I gave to the Windows Server 2008 server. Don't get confused it could be whatever you want (I named it Viridian so that I know what the purpose of that Windows install is in my lab). At that point I have downloaded a virtual appliance from the MS web site in order to enable a virtual environment without having to install a brand new OS from scratch (apparently importing an existing virtual machine into Viridian is not currently supported in this technology preview but I managed anyway to get it to power on. My choice was for an appliance that contains the MS product that is basically the counterpart to VMware Virtual Center and that is called Microsoft Virtual Machine Manager. This was just out of curiosity also because the currently available Virtual Machine Manager (VMM) product is not able to manage Viridian host but only MS Virtual Server 2005 instances (similarly to Virtual Center 1.x not being able to manage ESX 3.x if you will). One thing to notice is that, for some reasons, I've had to join the viridian host to my local lab AD domain in order to connect to my newly created virtual machine: I could power-on, power-off but as soon as I tried to take remote RDP control of it through the Virtualization Management interface I received a credential error even logging in as a local administrator; once connected to the domain and logging in as a domain administrator the problem disappeared. I have no idea if that is a bug, a limitation or a known setting that I am missing.

Other than that... from here it's pretty much business as usual for many virtualization users and IT professional. I guess many of you that have been working with VMware could get around in interfaces like this:

Impressions?

Good and bad. I am certainly not going to blame MS for "this or that is not working" because this is a technical preview and the final product won't ship before the second half of 2008 (most likely)... and yes we have already blamed them for this...

On the good side....

Viridian is certainly going to be a problem for VMware (at least in the SMB pervasive market). It's easy to use and it ships with the OS free of charge. Sure I have pointed out in another post that ESX 3i could be VMware response to "get there" before MS gets there... but the problem is that while Viridian will ship with every Windows instance being installed 3i will be only available through selected systems that might or might not be a good fit for the SMB market. "Easy to get/install/use" is certainly one of the driving factors for the Small Business space (and here MS has a lead over VMware). Another important factor for the Small (and Medium) Business is costs and certainly here Microsoft is going to have a lead again because, even though at day 0 the MS virtualization framework (Viridian and Virtual Machine Manager) is not going to match all the functionalities that VMware has (or is going to have), the MS price policy will be very attractive. On the other hand the (current) VMware price policy is very much SMB un-friendly.

Another very interesting (and positive) perspective around Viridian and the MS virtualization strategy is that VMware has started from the bottom (i.e. the hypervisor) and it's building add-on features on top of it (systems management, DR, life-cycle etc etc). If you think about it for a moment, MS has already had for years products and solutions (along with third parties) that are addressing this problem of adding value to the hypervisor. As an example (the most stupid if you will) MS was able to provide a high-availability solution for the virtual machines as soon as they shipped the very first release of MS Virtual Server... simply because they could leverage other technologies such as Microsoft Cluster Server. Similarly they could leverage MOM (Microsoft Operation Manager), BizTalk etc etc to add those high-level functionalities that VMware is still working on. So perhaps it might take (potentially) less time for MS to get up to speed with VMware once they have managed to ship the very bottom part of the equation (i.e. the hypervisor). Of course it remains to be seen if these general purpose technologies that MS already has and could leverage can really compete with laser focused technologies geared at the virtual infrastructure that VMware is building up. In my opinion this is one of the big strengths that MS has at this point.

On the bad side....

I think Microsoft is going to have a bit of a problem to have the Enterprise Business buying into their philosophy. This is partially due to perception and partially due to limitations in their technical offering. In terms of perception... you are led to think that Viridian is just a "patch" of the OS, yet another role (like DNS or a Print Server). It's not built from the ground up with Virtualization in mind to innovate the way we deploy workloads: it's just yet another possibility to configure Windows. Don't get me wrong I know very well that from an architecture and performance perspective Viridian is going to be as good as ESX is (or at least in the same ball-park) but the taste it leaves in your mouth is "ah ok ... it's a super MS Virtual Server".

In terms of technical limitations there is obviously going to be a gap between what VI3 offers and what MS is going to have. The lack of a Clustering File System such as VMFS does not guarantee the flexibility that VMware can provide. Missing a live migration feature "a la" VMotion is another thing that will hurt MS (at least with the initial Viridian release). There are other areas where ESX is going to be superior for example around networking: I didn't really like the way the administrator has to configure networking with Viridian but perhaps I just need to get into the philosophy a bit more. These problems are certainly not going to be show stoppers for the small and medium business space where the acquisition price plays a very important role but might be a problem for the enterprise space where, although not keen at wasting money, people tend to look more at the added-value features available.

Conclusion

I am very excited about this: I think MS is going to play a key role in this space (even though with a few challenges). This is very beneficial for end-users adopting virtualization and it's a very virtuous circle where VMware keeps MS on the right track to do things that really matter for the x86 datacenters and on the other side MS is going to keep VMware on the right track in terms of pricing not allowing VMware to be the only game in town. This simply means more features at lower prices.

It will be difficult to speculate on who will win. Perhaps nobody will win in the sense that this market is so big that there is space for two or more players. One of the options is that VMware will dominate in the enterprise space and will be challenged by MS to get into the pervasive SMB space while Microsoft will be dominating the SMB space and will be challenged by VMware to get into the Enterprise space. This is one of the potential scenarios one might think of but either way having alternatives in the market has always proven to be very beneficial for the end-users.

Long live VMware. Long live Microsoft.

Massimo.