If you're anything like me; you happen to be European, in IT, and you have installed loads and loads of Windows 2003 servers for several purposes. Chances are that you are, like me, used to installing your servers in US English. There are many good reasons to do this, let's face it; I've encountered more than one bug due to localization. But even more importantly; don't you just hate seeing the Windows environment in your native language? In my case it's Dutch, and there's nothing wrong with Dutch. (I know…. Some people don't like the "G-" sounds we make ;-) But it confuses the hell out of me when I'm confronted with a Dutch version of Windows or even XP or Vista.
So I typically (unless requested otherwise) install my systems in the language they were developed…: US English. To make sure we get all those nice European characters like the Euro (€) when pressing the appropriate button I tend to choose "US international" for my keyboard settings (yes, that lines up quite nicely with the Dutch keyboard layout; we don't use funny characters like umlauts, accent grave, so we decided to nationally use the standard qwerty layout. Suites me just fine)
There you have it… Two paragraphs explaining why, when I decided to install Hyper-V, I chose "US International" when installing Windows 2008, instead of plain US English.
Now before we go any further I want to point out that as of this writing (jan. 2008) the Windows 2008 (Release Candidate 1) and Hyper-V are still very much in beta (well… at least Hyper V is, as W2K8 is supposed to be released soon).
Note (added March 2008): With the RTM version of Server 2008 now available it seems the issue still remains. Keep in mind though that although Windows 2008 Server is RTM, Hyper-V is still considered 'in beta' for a few more months.
Note 2: (added Sept 2008): The RTM version of Hyper-V is available for a while now and seems to fix the problem. Either get it here, or through Windows Update. Keep in mind that you'll still have the problem when you install a 'vanilla' W2K8 server, until you apply the patches!
Anyways… why the whole rant about localization you ask? Because it has cost me many hours today to figure out that it was this that kept me from successfully installing Hyper-V!
So what's this Hyper-V anyway? It's short for Hypervisor and it's the successor of Microsoft Virtual server 2005 R2, the software uses the Intel VT or AMD V Technology directly to create a hypervisor-based virtualisation environment, as opposed to Virtual server which is based on a hosted virtualisation platform. If all this tech-talk made you curious, you don't want to miss the Hyper-V FAQ. And here you can find some detailed technical info on Hyper-V on Wikipedia..
Since Windows 2008 RC1 comes with the latest version of Hyper-V, I decided to take this route. One might say that it would be tempting the gods to combine two very new products and hope for a successful deployment. To start just a tip that you may have read on the Hyper-V installation pages already: do not add any other roles to you server. Stick with Hyper-V for now and keep things simple.
Keeping the above in mind, my installation went very smooth. I had reserved a test system (MSI P35 NEO2 FIR Motherboard with dual core Intel E6750 CPU), put Windows 2008 on it without much hassle. It was very nice to see that Win2008 natively supported the ICH9R Raid controller Windows 2003 had given me so much problems with (the system doesn't have a floppy drive, and there's a bug in W2K3 when installing using a thumb-drive). I was a happy camper: in no time my brand new (evaluation) Windows 2008 server was running. Ready to start assigning some server- roles. I wanted to stick with the basics, so I only assigned the Hyper-V role. This is where the trouble started. W2K8 wanted me to reboot, I know I know… we still need a reboot ever now and then, even in 2008. Once restarted I quickly checked the Hyper-V manager to start creating my new virtual servers…. This is where things started going wrong.
"The Hyper-V service is not available"
Is what it said….:
I could have guessed, as the server manager already gave me some indication something was wrong:
Those little red crosses just don't look very nice…
Maybe Microsoft should not have rushed this product out the door, chasing VMWare? So far Windows 2008 had been behaving admirably, but now this bug threw me off.
Attempting to start the service manually only resulted in an error message that the service was in an uncertain state… as was I! At this point in time you start to think about the warnings you have read in the internet; do I have a BIOS that supports VT? (VT (Virtual Technology) is how Intel now calls it, I used to like the name VanderPool better, as it has a nice Dutch ring to it) And if I do, did I get all the settings right?.. .So off we go flashing a new Bios. I downloaded the latest version1.7 and yes.. it was a floppy image.. When do these people learn floppies really are ancient! You may recall my system doesn't have a floppy drive, so it's off struggling with the thumb-drive again. (in case you wondered; no BartPE didn't work for this Bios upgrade)
Well, that was another hour lost. It's miraculous, how much time little things like this can take. But now at least I would hopefully see the system up & running? This is what the Eventlog had to say about it:
Log Name: System
Source: Service Control Manager
Date: 1/24/2008 10:56:15 PM
Event ID: 7023
Task Category: None
Level: Error
Keywords: Classic
User: N/A
Computer: WIN2008SRV
Description:
The Virtual Machine Management service terminated with the following error:
The parameter is incorrect.
Log Name: System
Source: Service Control Manager
Date: 1/24/2008 10:49:08 PM
Event ID: 7022
Task Category: None
Level: Error
Keywords: Classic
User: N/A
Computer: WIN2008SRV
Description:
The SAN/LAN Transfer Virtualization Accelerator service hung on starting.
That's a big fat NO, in case you wondered.
I recalled there's a line on the Hyper-V Web pages somewhere under the requirements that advises US settings.. I looked it up, it's on this page.
Note that this is 4 or 5 pages of technical text, and here's the snippet that mentions the locale
Configuration requirements
Configure the physical server as follows:
- An installation of Windows Server® 2008 Standard, Windows Server® 2008 Enterprise, or Windows Server® 2008 Datacenter, en-us Locale only. You can install Hyper-V on either a full installation or a Server Core installation. To install Hyper-V on a Server Core installation, run the following command:
Start /w ocsetup Microsoft-Hyper-V
I made it italic, you might have missed it ;-)
surely US International is US Locale too … right?
Wrong!
Once I removed every trace of the US International settings, Hyper-V was operational. Mind you: putting locale to US only is more than simply selecting the right keyboard.. You really have to remove it all. Here's the procedure:
Making your Windows 2008 installation Language neutral.
First remove Hyper-V, if you have it still installed, and reboot.
Now go to the Regional and Language options in the control panel. And follow the settings as shown below.
Go to the next tab: "Keyboards and Languages" and select "Change keyboards"
Make sure this only shows the US keyboard. Note that you can't remove a keyboard when it is selected as Default input language, which of course makes sense.
Change the system locale:
And then –make sure not to forget this-! Click the button "Copy to reserved accounts…". This effectively wipes out the old settings (otherwise you have only changed it for only the account you were working under, and Hyper-V does not like that).
Now start the Server manager and add the Hyper-V role, reboot… And with a little luck you have resolved the issue. As you can see from the below picture; everything is running fine now!