Hyper-V integration components, notes and queries

Virtual machine need resources from the host operating system/hypervisor and in the Hyper-V world this is done through integration components.  The same thing is true of Virtual PC however they the VM additions in Virtual PC are totally different from Hyper-V integration components, so although Virtual PC uses the same VHD format for virtual hard disks as Hyper-V moving a virtual machine from from Virtual PC to Hyper-V means doing a few things..

1. Uninstall the Virtual Machine Additions.

2. Insert the Hyper-V integration components from the VM console actions menu option

3. "Detect HAL" in msconfig after moving to Hyper-V

a. Open the System Configuration utility (MSConfig.exe) -- click Start > Run type msconfig, and then click OK.

b. Click the Boot tab, and then click Advanced options.

c. Select the Detect HAL check box, click OK, and then restart the virtual machine.

This will then cause at least one reboot and what has happened to this VM is that all the hardware it was running on has now changed , in the physical world this is the equivalent of me taking my hard disk out of Dell laptop and sticking in Simon’s HP laptop – it’s going to get upset, but should sort itself out.  The same sort of thing applies to moving VHDs between Citrix Xen Server and Hyper-V as Xen also uses the VHD format.

Integration components also need to be upgraded and as I have already mentioned you might already need to do this for service pack 1 of Windows Server 2008 R2 which adds dynamic memory to Hyper-V.  Question how do you know which integration components are installed in a given VM?

For people to whom hyper-V is just another way to get stuff done then my top tip is to download the new  Hyper-V Best Practices Analyser  (this is a KB) which adds functionality into server manager so that when you expand the hyper-V role it tells you what you need to do..

HYPER-V BPA

If you have SCVMM in your environment the this command (courtesy of Michael Michael) will get you the answer..

PS D:\Windows\system32> get-vm | select name, hostname, hasvmadditions, vmaddition | format-list

For the serious scripting orientated data centre admin then Christian Edwards has this blog on scripting the answer from the registry key.

So integration components need to treated with the same consideration as any drivers, keep them current or they will affect performance and reliability