Step 1: Use Virtual Machine Manager Configuration Analyzer
The Virtual Machine Manager Configuration Analyzer is a diagnostic tool that you can use to evaluate important configuration settings for computers that either are serving or might serve VMM roles or other VMM functions. The Virtual Machine Manager Configuration Analyzer does the following:
- Scans the hardware and software configurations of the computers that you specify
- Evaluates these configurations against a set of predefined rules
- Displays error messages and warnings for any configurations that are not optimal for the VMM role or for other VMM functions that you specified for the computer
System requirements:
Before you install the Virtual Machine Manager Configuration Analyzer, you must download and install the 64-bit version of Microsoft Baseline Configuration Analyzer. To download the MBCASetup64.msi file, visit the following Microsoft website:
Note The system requirements for Microsoft Baseline Configuration Analyzer indicate that only Windows Server 2003 is supported. However, the Virtual Machine Manager Configuration Analyzer and the Microsoft Baseline Configuration Analyzer were tested and are supported on 64-bit versions of Windows Server 2008 and of Windows Server 2008 R2.
You must install and run the Virtual Machine Manager Configuration Analyzer on the computer that either currently is or will become your VMM server. To review the system requirements for the VMM server, visit the following Microsoft website:
Step 2: Check recommended hotfixes
On all servers that host a VMM or Hyper-V role, verify that the recommended hotfixes are installed. For more information about these hotfixes, click the following article numbers to view the articles in the Microsoft Knowledge Base:
2397711 Recommended hotfixes for System Center Virtual Machine Manager 2008 R2
962941 Recommended hotfixes for System Center Virtual Machine Manager 2008
Step 3: Check for corrupted performance counters
Check the Application event log on the host to see if the following event is logged:
Log Name: Application
Source: Microsoft-Windows-LoadPerf
Event ID: 3012
Description:
The performance strings in the Performance registry value is corrupted when process Performance extension counter provider. The BaseIndex value from the Performance registry is the first DWORD in the Data section, LastCounter value is the second DWORD in the Data section, and LastHelp value is the third DWORD in the Data section.
If the Event ID 3012 is logged on the host machine, perform the steps documented in the following knowledge base article to rebuild the performance counters:
2554336 - How to manually rebuild Performance Counters for Windows Server 2008 64bit or Windows Server 2008 R2 systems
Step 4: Check the Svchost.exe process of the Windows Remote Management service
Virtual Machine Manager depends very much on the Windows Remote Management service for underlying communication. Therefore, the "Not Responding" status is very likely to occur because of an error in the underlying Windows Remote Management communication between the VMM server and the host computer. In this case, the status is "OK" shortly after you restart the host computer. However, the status changes to "Not Responding" after three to four hours, and jobs on the VMM server fail and return an error that resembles the following:
Error (2927)
A Hardware Management error has occurred trying to contact server server.contoso.com.
(Unknown error (0x803381a6))
Recommended Action
Check that WinRM is installed and running on server server.contoso.com. For more information use the command "winrm helpmsg hresult".
Additionally, if you stop the Windows Remote Management service at a command prompt, this process takes much longer than usual to be completed. Sometimes, it can take up to five minutes to stop.
This problem can occur if the shared Svchost.exe process that hosts the Windows Remote Management service is backed up.
To resolve this problem, configure the Windows Remote Management service to run in a separate Svchost.exe process. To do this, open an elevated command prompt, type the following command, and then press ENTER.
c:\>sc config winrm type= own
Note Make sure that you type the command exactly as it appears here. Notice the space after the equal sign (=) symbol.
If the command is completed successfully, you see the following output:
Step 5: Increase the default value for the WinRM time-out
On each server, open an elevated command prompt, and then follow these steps:
- For Windows 2008 R2 and Windows 2008 SP2 computers, use the following command to increase the default value for WinRM time-out:
winrm set winrm/config @{MaxTimeoutms = "1800000"}
- For Windows 2008R2 and Windows 2008 SP2 computers, use the following command. (Be aware that Windows 2008 R2 servers may report that this step is not required.)
winrm set winrm/config/Service @{MaxConcurrentOperations="200"}
- For Windows 2008R2 and Windows 2008 SP2 computers, use the following command. (Be aware that Windows 2008 R2 servers may report that this step is not required.)
winrm set winrm/config/Service @{MaxConcurrentOperationsPerUser="400"}
- For Windows 2008R2 and Windows 2008 SP2 computers, use the following commands:
net stop winrm
net start winrm
net start vmmagent
Step 6: Check the VMM server computer account
This problem also occurs because the VMM server computer account is removed from the local Administrators group on the host computer. This setting may be caused by the "Restrictive Groups" Group Policy setting.
For more information about this cause, click the following article number to view the article in the Microsoft Knowledge Base:
969164 Virtual Server or Hyper-V host may have a status of "Not Responding" or "Needs Attention" due to Restricted Groups group policy setting
To resolve this problem, move the VMM server and host computers to a new organizational unit (OU) that blocks inheritance of all Group Policy objects.
Step 7: Disable TCP Offloading
You must disable TCP Offloading in Windows in the registry and in any network adapter teaming management software that is being used. You must check all these locations to make sure that TCP Offloading is completely disabled. This operation must be performed on both the VMM server and on the host computer.
Locate all network adapters in the registry under the following subkey:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Class\{4D36E972-E325-11CE-BFC1-08002BE10318}
There are additional subkeys under this subkey that are named with four digits, starting with "0000." Locate the subkeys that show the physical network adapter names on the details pane. Find the "DriverDesc" value on the details pane. This value should contain the name of a network adapter, such as "HP NC360T PCIe Gigabit Server Adapter." For each of these subkeys, make the following changes:
Disable all vendor-specific offloading. Set values for any entries that include the word "Offload" to zero (0). This value disables vendor-specific offloading. For example, these entries include the following.
Entry |
Description |
*FlowControl |
No description available |
*IPChecksumOffloadIPv4 |
Describes whether the device enabled or disabled the calculation of IPv4 checksums |
*TCPChecksumOffloadIPv4 |
Describes whether the device enabled or disabled the calculation of TCP Checksum over IPv4 packets |
*TCPChecksumOffloadIPv6 |
Describes whether the device enabled or disabled the calculation of TCP Checksum over IPv6 packets |
*UDPChecksumOffloadIPv4 |
Describes whether the device enabled or disabled the calculation of UDP Checksum over IPv4 packets |
*UDPChecksumOffloadIPv6 |
Describes whether the device enabled or disabled the calculation of UDP Checksum over IPv6 packets |
*LsoV1IPv4 |
Describes whether the device enabled or disabled the segmentation of large TCP packets over IPv4 for large send offload |
*LsoV2IPv4 |
Describes whether the device enabled or disabled the segmentation of large TCP packets over IPv4 for large send offload |
*LsoV2IPv6 |
Describes whether the device enabled or disabled the segmentation of large TCP packets over IPv6 for large send offload |
*IPsecOffloadV1IPv4 |
Describes whether the device enabled or disabled the calculation of IPsec headers over IPv4. |
*IPsecOffloadV2 |
Describes whether the device enabled or disabled IPsec offload version 2 (IPsecOV2). |
*IPsecOffloadV2IPv4 |
Describes whether the device enabled or disabled IPsecOV2 for IPv4 only. |
*RSS |
Receive side scaling |
*TCPUDPChecksumOffloadIPv4 |
Describes whether the device enabled or disabled the calculation of TCP or UDP Checksum over IPv4 |
*TCPUDPChecksumOffloadIPv6 |
Describes whether the device enabled or disabled the calculation of TCP or UDP Checksum over IPv6 |
To disable TCP Offloading in Windows, use the following registry entry for task offloading for the TCP/IP protocol:
Subkey: HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\TCPIP\ParametersEntry:
DisableTaskOffload
Type:
REG_DWORD
You can set this registry entry to 1 to disable all task-offloading from the TCP/IP transport.
Many vendors have some form of offloading capabilities built into their teaming management software. Such offloading can appear in many forms and is usually vendor-specific.
For more information about task offload, visit the following Microsoft Developer Network website:
Step 8: Check for other causes
Some other potential causes of this problem include the following:
- The VMM agent is not running.
- Some antivirus software is scanning ports or protocols.
VMM accounts membership
You can put the VMM accounts into the appropriate groups according to the following:
VMM server machine account:
- The Administrators group on the VMM server and on all host computers
- The Virtual Machine Manager Servers local group on the VMM server
The account for actions in VMM:
- The Local Administrators group on the VMM server and on all host computers