Thursday, May 31, 2012

Virtualization on Client OS – Part 2 – Setting up Development Environments on Win 8

In my previous post, I discussed Virtualization Options on Windows 7 Client OS. In this post, I introduce Hyper-V on Windows 8 Client OS.

We all love Microsoft Hyper-V, don’t we? It allows us to have so many different virtual setups on the same limited physical boxes that are available to us.

The big limitation so far was that Hyper-V is only available on Server OS (Win 2008 R2). Many of us have been wishing to have Hyper-V Client OS(Windows 7).

Note: I read a few blog posts that it’s possible to Hyper-V on Windows 7. However, it’s not out of box and does not seem to be straight forward.

Welcome Windows 8, the new Client OS from Microsoft. Windows 8 changes the game. Windows 8 includes the Hyper-V feature out of the box. There is no download required.
 I decided to give it a try on my mid-end Laptop(Intel i3, 4 GB). The installation was smooth sailing.

You have to first enable the Hyper-V feature under Control Panel à Programs à Turn Windows Features On or Off. Select Hyper-V and the check boxes under it and click ok.





It will prompt you to restart the machine, and after the restart, and you are up and running.


The Hyper-V manager interface is similar to the one on Windows 2008 R2. I setup a Virtual Machine using the Virtual Hard Disc (.vhd) that I had previously copied. It was smooth sailing all the way.




Hyper-V is more than software virtualization. It also includes Hardware assisted Virtualization. There are minimal hardware requirements that you need to have which are documented by MS as follows:
Hyper-V requires a 64-bit system that has Second Level Address Translation (SLAT). SLAT is a feature present in the current generation of 64-bit processors by Intel & AMD. You’ll also need a 64-bit version of Windows 8, and at least 4GB of RAM. Hyper-V does support creation of both 32-bit and 64-bit operating systems in the VMs.

So if I have a laptop running Client OS, what are the options for Virtualization????

·         Virtual Box on Windows 7 which I described in my previous post
·         Hyper-V on Windows 8
·         VMWare products (provided you or your project is willing to spend on the license fee)

The above is not all inclusive list, and there may be many other great Virtualization products out there.

My Recommendation:
Hyper-V is one big feature because of which many of our Development/Test teams might want to switch from Windows 7 to Windows 8.
For teams like SharePoint, we can set up a SharePoint Farm having different WFE/App Servers on single machine (provided you have sufficient RAM).


Demo:
Best way is to upgrade to Win 8, activate and use it. Get your hands dirty.


I will conclude the series by answering some FAQ’s related to Virtualization, 32 bit/64 bit OS, and Win 8.

Update (16/03/2013): Client Hyper-V is available only on Windows 8 Pro and Enterprise. Its not available for basic Windows 8  and Windows  RT.

Wednesday, May 16, 2012

Virtualization on Client OS – Part 1

Virtualization on Client OS – Part 1 – Setting up Development Environments using Virtual Box

Virtualization has changed the way we manage and setup our IT systems including our Development/Testing/Production environments. The benefits of Virtualization are well known and documented on the internet and outside scope of this post. I wanted to discuss the Virtualization options for Client OS.

Hyper-V from Microsoft is a great product, and often used as the Virtualization platform for projects on Microsoft stack. However, Hyper-V is not available for Microsoft Client Operating System (Windows XP, Vista and Windows 7). It is available only for server OS - Windows 2008 R2.

Note: In Part 2, I will discuss how this is changing in near future.

So if I have a laptop running Windows 7, what are the options for Virtualization????

VMWare has some good Virtualization products for Client OS like Windows 7.

They are licensed products, so you can’t just download, install and start using VMWare for your projects. There is a cost involved and you need to factor in the same in your project pricing estimation.

The Virtual Hard Disc’s for Hyper-V (with a .vhd extension) are not directly compatible with VMWare (which uses its own proprietary format). You can use VMWare converter to convert from one format to other, but it’s a time consuming process and can take ages.

The various Demo virtual hard disc’s provided by Microsoft come with a .vhd extension.

So if I have a laptop running Windows 7, what are the options for Virtualization????

Microsoft Virtual PC is what I have used in past on Win XP, but I haven’t seen any recent updates for Virtual PC. I am not sure if MS wants to continue or kill the product with the superior Hyper-V.

So if I have a laptop running Windows 7, what are the options for Virtualization????

Virtual Box (i.e. Oracle VM Virtual Box) is an alternative that I explored. It’s a free software under GNU (but please check with Legal for hidden Terms and Conditions).

The Virtual Hard Discs with .vhd extension can be used for Virtual Box.

The installation and setup was easy (Click Next, Next, Next, I Accept). The Wizard helps you setup a new virtual machine and you can choose to create a new virtual hard disc or use an existing one.

Note: You need to do the change documented here to make existing .vhd work in Virtual Box

During installation/configuration, it will ask you whether you want to install the network drivers. Select Yes and proceed. After the VM is setup, it will configure the drivers and network adapters. After logging in to VM, Internet was up and running within the VM. This is cool as we have sometimes struggled to achieve the same in Hyper-V with machines having single NIC’s.

I had previously copied a .vhd file (having Windows 2008R2 OS) to my machine and it took me less than half hour to install, setup and have an VM machine up an running.  


Performance:

I haven’t tested and benchmarked Virtual Box Performance against HyperV, VMWare or other products. Though I have limited first hand experience, I have friends who have been using Virtual Box for long time and are satisfied. It seems to be pretty decent on my laptop having low end configuration.


Sample Usage Scenarios:

I have SharePoint 2010 running on my Win7 laptop, and MOSS 2007 running on the Virtual Machine. This allows me to execute an SharePoint Upgrade project. I can use the same MOSS 2007 image (.vhd) which I had previously downloaded from Microsoft.

It is not limited to setting up SharePoint Development environments, and Virtualization can be used for projects on any technology.


In terms of Hardware Resources, you still need to have sufficient RAM/Hard Disc space and a decent CPU to meet the requirements of both your Host and Guest Operation System.


Demo:

Best way is to download, install and use it.


My Recommendations:

For all your Official project purposes, Use Hyper-V with Windows 2008 R2 on your high end servers.
For your Home PC or Low End Laptop running Windows Client OS, VirtualBox is a good product which can meet your need.


In Part 2 of the series, I will discuss how Windows 8 changes the game.