These are the top "gotchas" or "known issues" that folks seem to have trouble with in Hyper-V. "Gotchas" are sometimes also called "lessons learned" and "best practices." It is a best practice to avoid a known "gotcha". Please add any you have encountered.
TIP: Subscribe to the RSS feed for this wiki page to get auto-notification when it is updated! To see when this topic was last updated, and with what information, click the "History" tab.
When running a live migration using SCVMM 2008, live migration failed with Error (10698) Virtual machine [guest] could not be live migrated to virtual machine host [host] using this cluster configuration. (Unspecified error (0x80004005))
When trying the migration from the Failover Cluster Manager, the job fails with the following;
Event 1069 Cluster resource '%1' in clustered service or application '%2' failed.
Event 1205 The Cluster service failed to bring clustered service or application '%1' completely online or offline. One or more resources may be in a failed state. This may impact the availability of the clustered service or application.
I found that the clustered disk holding the server VHD and resource files was very low on space (2gb free in my case). Also note that the server I'm migrating has a dynamically expandable drive which could be relevant
I then tried to live migrate the storage using SCVMM of one of the machines and the job failed with Error (12700) VMM cannot complete the Hyper-V operation on the [host] server because of the error: [guest] failed to save RAM contents during a snapshot operation: The I/O operation has been aborted because of either a thread exit or an application request. (0x800703E3). (Virtual machine ID xxx)
When setting up your virtual machines, be aware that the virtual machine may try to cache a running copy of memory (using .bin files) to the HDD its configuration info is hosted on. Leave yourself enough HDD space for as much RAM as you wish to assign. Consider putting the main VM folder on a dedicated drive; apart from your other VHDs, if not using a RAID 5/6 array.
Hyper-V Snapshot FAQ - another reason to read it before using snapshots in production.
Hyper-V does not have a built-in method for backing up and restoring individual virtual machines. This requires the use of Windows Server Backup or an external product such as Data Protection Manager, or many of the third party backup products.
This issue is caused by a race condition in the hypervisor. For Windows Server 2008 R2 systems that have Service Pack 1 installed, install hotfix KB2263829. For Windows Server 2008 R2 systems that do not have Service Pack 1 installed, install hotfix KB974909.
Other Hyper-V networking related hotfixes to be aware of for non-SP1 systems:
This issue is actually caused by a bug (or in Intel terms “erratum”) that causes these processors to generate spurious interrupts. You can read about this in the latest Intel documentation for this process series: http://www.intel.com/assets/pdf/specupdate/321324.pdf. To fix this: Install hotfix KB975530 or install Service Pack 1 for Windows Server 2008 R2 (KB976932).
This is caused by registry bloating in the management operating system due to registry keys not being deleted after the Hyper-V virtual machines are backed up. To fix this follow the instructions in Microsoft Knowledge Base Article KB982210, "The startup time increases every time after you back up the data on all the disks of the computer in Windows Server 2008 R2 if the computer runs some virtual machines" to use the devnodeclean utility to remove the orphaned registry entries.
This is generally caused by a mismatch between the VLAN ID used by the virtual machine and the VLAD ID configured on the physical network switch. The resolution is to configure the virtual machine to use the VLAN as covered in the Hyper-V Planning and Deployment guide.
Some computer BIOS changes require that the machine is physically powered off, and then back on before the change will take effect. Just "restarting" the server is not sufficient. For more information see:
Most instructions for enabling Hyper-V assume you have not done anything else to the machine beforehand. If you are re-purposing an existing machine, you must take special steps if you are using Bitlocker Encryption or Antivirus on that machine, since both will generate errors when you enable Hyper-V. It is best to turn off both Bitlocker and AV before enabling the Hyper-V role. See also:
Windows Server 2008 Hyper-V and BitLocker Drive Encryption
This is caused by incorrect permissions on the .vhd, .avhd, or .xml file. The resolution is to perform the steps documented in KB2249906.
To address issues with exporting and importing Hyper-V virtual machines, see the following:
The cause of this is that the correct Integration Services (formerly called Integration Components, or ICs) are not installed. To fix this, install the correct integration services on the VM according to these instructions in the TechNet library.
Running Hyper-V on a laptop is unsupported. For further information on how to make it work, see http://social.technet.microsoft.com/wiki/contents/articles/hyper-v-how-to-run-hyper-v-on-a-laptop.aspx
AMD-E350 motherboards provide a very budget cost-efficient way to get a test lab with Hyper-V installed. Ensure that the SATA controller is in AHCI mode; otherwise the OS will hang on bootup once the Hyper-V role is installed.
Be sure to plan proactively for the performance you require. One guideline is to be generous with RAM - more memory means less disk access. In general, a fixed virtual hard drive is faster than a dynamic virtual drive. Ensure that correct integration services are installed in the VM.
If the only thing you are running on the virtualization server is virtual machines, why do you need to run anti-virus or other software that you normally run on a Windows Server 2008 R2 server? Review this short video showing what happens when you enable the Hyper-V role, and change your software installation so that all the VMs get the correct software installed as required by your IT policy. Review the best practice recommendations at Planning for Hyper-V Security and evaluate if they fit your environment. If your IT policy requires AV in the management operations system, see the list of Hyper-V AV exclusions in the primary AV exclusion KB for Enterprise customers (KB822158).
When you attempt to create or start a virtual machine, you receive one of the following errors:
The requested operation cannot be performed on a file with a user-mapped section open. ( 0x800704C8 )
Failed to Power On with Error 'The specified network resource or device is no longer available.' (0x80070037).
The I/O operation has been aborted because of either a thread exit or an application request. (0x800703E3)
These issues can be caused by antivirus software that is installed in the parent partition and the real-time scanning component is configured to monitor the Hyper-V virtual machine files. The resolution is to perform the steps documented in Microsoft Knowledge Base article KB961804, Virtual machines are missing in the Hyper-V Manager Console or when you create or start a virtual machine, you receive one of the following error codes: "0x800704C8", "0x80070037" or "0x800703E3".
Task Manager shows all CPU cores with high utilization. This problem seems to be related to the version of the network card driver included in Windows 7 or Windows Server 2008 R2 and affects only certain systems, as described in this article from Intel, which also describes the workaround: http://www.intel.com/support/motherboards/server/sb/CS-031086.htm. The workarounds are to:
For example, on the free Microsoft Hyper-V Server 2008 R2, which is command-line only, remember that the command to turn on BitLocker is case sensitive:
ocsetup bitlocker à fail
ocsetup BitLocker à works
In fact, OCSetup.exe (as well as ServerManagerCmd.exe) is considered deprecated in Windows Server 2008 R2 and Hyper-V Server 2008 R2. You're supposed to use new Server Manager PowerShell cmd-lets. The good thing about these cmdlets is that they are not case sensitive (as everything in PowerShell).
But there may be special considerations when Server Manager PowerShell cmdlets are not enough. Consider the following scenario. You install Microsoft System Center Data Protection Manager (SCDPM) in Virtual Machine. You need to install Hyper-V Server Role to enable Item-level recovery (ILR) from backed up virtual machines. But installation of Hyper-V role normally requires the presence of Hardware-Assisted Virtualization (HAV). This feature is not available in Virtual Machines. So you need to bypass this check. In order to do it you have to use another command-line tool that is also new to Windows 7 and Windows Server 2008 R2 and called “Deployment Image Servicing and Management (DISM)”. And this tool is a case-sensitive one. So you should type the following command exactly as shown.
dism.exe /online /enable-feature /featurename:Microsoft-Hyper-V
Other common misconfiguration issues include:
For more information and best practices for the design and operation of highly available VMs, see the following documentation:
Never save state or pause a DC. Always shut down virtual Domain Controllers properly to avoid replication errors. Pausing a Domain Controller for a long period of time before resuming it can interfere with timely replication. If you do pause the domain controller for a long time, replication may stop and cause lingering objects.
how lingering objects come to life and how the Service pack level affects the tombstone lifetime
Only use the standard way to backup and restore Active Directory Domain Controller, since the default checks of Active Directory consistency will only be performed when the Domain Controller is aware of a restore.
Using imaging solutions like Symantec Ghost and Acronis TrueImage seem like smarter backup and restore solutions, but they are imaging solutions (in contrast to proper backup and restore solutions.) Restoring an image of a Domain Controller may cause an Update Sequence Numbers (USN) rollback situation to occur, which may lead to replication problems and other undesired effects. More information here.
Like shutting down a virtual Domain Controller and start up a version of the VHD file from a while back, you want to avoid improperly using imaging solutions.
To avoid USN Rollback and Invocation ID problems but still using imaging solutions or even copying back old versions of a VHD file (big No-no), be sure to check out this post on backing up and restoring Active Directory in this unsupported manner.
When you delete a snapshot on a running virtual machine it disappears from the GUI immediately, but the snapshot is not merged into the parent VHD until the VM is powered off and remains powered off until the merge is complete. This can cause issues if the volume runs out of space as the AVHD grows and grows. Eventually the VM will pause and you will not have sufficient space to merge the snapshot even if the machine is powered off.
The solution is to monitor for pending deleted merges. This can be done by monitoring this entry in the config file of each VM:
configuration/global_settings/disk_merge_pending = true
See this article on a SCOM monitoring solution for this issue.
Click the Edit button above this article and add your issue - WITH the fix or workaround, please. Thanks in advance.