为什么我的HyperV VM随机丢失连接?


10

我有一个奇怪的间歇性连接问题,大约每两周发生一次。

首先,我的配置是:我正在运行具有两个物理主机(node01和node02)的HyperV故障转移群集。主机都运行带有SP1的Windows Server 2008 R2 HyperV服务器(免费)。在这些主机上,我正在运行两个VM,每个VM都运行Windows Server 2008 R2 Web版SP1。我的存储服务器是通过iSCSI连接的Windows Storage Server 2008。主机和存储服务器都运行直接从英特尔网站下载的最新网络驱动程序。

这是问题所在:99.99%的时间中,一切正常。大约每两到三周一次,虚拟机将同时丢失传入和传出的网络连接。当这个情况发生时,

  1. 我无法将RDP导入任何一个VM。
  2. 我可以将RDP放入任一主机。
  3. 我可以通过右键单击节点并选择“连接到虚拟机”,从故障转移群集管理器连接到任一VM
  4. 一旦按照上述#3中的说明连接到VM,就无法访​​问LAN上的任何网站或计算机。在虚拟机内部禁用和重新启用虚拟网络连接并不能解决问题。
  5. 如果将VM移至其他节点,则可以解决此问题(在接下来的两周内)。
  6. 如果我重新启动主机,然后将虚拟机移回主机,则可以解决此问题(在接下来的两周内)。
  7. 发生这种情况时,故障转移群集不会自动对VM进行故障转移。
  8. 在任何主机或VM上都没有异常事件日志条目。

与上述相同的症状已经发生了大约5次。我怀疑网络驱动程序或网络硬件有问题,但是由于我已经在运行最新的驱动程序,所以我不确定该怎么办。

这是一个真正的抓头人……有什么想法吗?

更新资料

我在这里发现了一个非常相似的案例:Virutal Machine在Hyper V Cluster上失去了网络连接

更新7/29/2011

安装修补程序并更新网络驱动程序后,我仍然遇到相同的问题。根据要求提供硬件详细信息的评论,该服务器是Intel SR1670HV,这是一个1U机箱,其中包含两个独立的S5500HV主板。通过主板的集成网卡(Intel 82574L)进行通信。网络驱动程序是16.2.49.0版。


您可以添加detials有关硬件(NIC的数量)
吉姆乙

您在服务器中拥有什么品牌/型号的NIC?
克里斯·S

上面添加了有关硬件和NIC的信息。
迈克,

您通过什么品牌/型号的交换机连接?
ErnieTheGeek 2011年

我在MS hyperV服务器上的CentOS映像有一个类似的问题。您是否有每台计算机专用的NIC或共享的NIC?一旦我们切换到专用的nics,这个问题就消失了……虽然这不是一个真正的解决办法……
n8whnp 2011年

Answers:


7

我曾经遇到过这样的问题。我不记得确切的细节,但是最终的解决方案与动态分配给虚拟网络适配器的有冲突的mac地址有关。将那些固定为没有动态会很有帮助。您通常不希望这样做,因为这样可能会使将虚拟机移至其他主机变得更加困难,但是在这种情况下它对我们有所帮助。

另一部分是物理网卡是由Broadcom制造的,并且那里也存在配置错误,以前的管理员错误地尝试使用Broadcom实用程序在主机上将两个网卡中继在一起,以提高带宽/吞吐量。我们删除了该设置,并配置了一个网卡,使其在主机上完全没有IP,但仍可用于传递给虚拟来宾。然后,我们将每个虚拟机设置为仅使用一个网卡或另一个网卡,并根据历史流量平衡负载。当然,这意味着如果适配器或连接断开,就不会进行故障转移,而且我们还没有很好地了解流量是否一直保持平衡,但是从那以后一直保持稳定。


5

我知道这是一个古老的问题,但是我遇到了同样的问题,并且浪费了很多时间来解决它,所以我想我会分享对我有用的解决方案。我在这里找到了解决问题的方法:

http://invendows.wordpress.com/2008/03/06/network-issue-with-hyper-v/

我的情况下的解决方案是在VM上禁用TCP卸载。我将从链接中引用相关部分:

为了禁用TCP卸载,我必须在连接到Broadcom 8507 Nextreme II NIC的每个VM中创建并设置一个新的注册表值。

我使用以下注册表更改来禁用TCP卸载:

密钥:HKLM \ SYSTEM \ CurrentControlSet \ Services \ Tcpip \ Parameters

值(DWORD):DisableTaskOffload = 1

在以这种方式在每个VM上禁用TCP卸载后,所有麻烦都结束了,我能够将多个VM连接到Broadcom 5708 Nextreme II NIC的一个NIC端口。

我的服务器有Broadcom NetExtremeNIC,所以对我来说,这个问题的原因肯定与驱动程序有关,但设置DisableTaskOffload= 1可以完全解决我的问题。希望此信息可以节省其他人的搜索时间!


1
+1,感谢您的技巧,我已经运行了几天没有任何问题。
m0dest0

1
没问题,m0dest0。很高兴得知它对您有所帮助。:)
BruceHill 2013年

3

我在更简单的Hyper-V环境中遇到了类似的情况,并且在Microsoft上浏览了这篇文章。如果大量使用Web服务器,则似乎适合您的情况。

http://support.microsoft.com/kb/974909-在基于Windows Server 2008 R2的计算机上大量传出网络流量下,正在运行的Hyper-V虚拟机的网络连接丢失


您引用的KB文章是SP1之前的版本,但我做了类似的SP1之后的版本,看起来很有希望:support.microsoft.com/kb/2263829
Mike

1
我删除了此问题作为答案,因为我安装了此修复程序,但问题仍然存在。因此,这个问题仍未得到解决……
Mike

2

我们遇到了同样的问题,尽管在我们的情况下是每24-48小时一次。我将再次检查您的防病毒/防火墙产品是否特别支持带有Hyper-V的Server 2008,如果不是,请尝试使用其他(或在可行时暂时删除)防病毒/防火墙产品作为测试,以查看问题是否消失了。

在致电Microsoft并随后上传了多个转储/日志文件后,他们确定TrendMicro OfficeScan是我们的罪魁祸首。我们使用的版本原来并未得到Hyper-V的明确支持,一旦升级到最新版本,问题就消失了。


2

原来这是一个硬件问题-我将问题隔离到Netgear GSM7224v2网管型交换机,用D-Link DGS-1024D替换了它,此后一切运行正常。

作为“经验教训”,在这种情况下,我可能花费了99%的诊断精力来对软件设置进行故障排除,以解决原来是硬件问题的问题。我什至支付了Microsoft支持259美元(并花了很多时间在电话上与他们联系)来帮助我通过在软件设置中四处摸索来解决问题。我想这个故事的寓意在于怀疑您的硬件和软件一样多。


1

在VM guest虚拟机的网络适配器属性上,您是否禁用了“巨型数据包”和“大型发送卸载”?根据我对这些设置的经验,我一定会尝试一下。


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.