我正在尝试在 Hyper V R2 上运行的几个 Windows 2008 R2 虚拟服务器上设置 NLB。
每台服务器都有一个用于 LAN 访问的 vNIC(以及用于 SAN 访问的第二个 vNIC)。我正在设置集群以使用多播模式。每个 vNIC 都设置为允许 MAC 欺骗。
本质上,我发现我可以将 SERVER1 添加为主机,它将从远程子网获取并响应群集 IP。如果我随后在 NLB 管理器中“停止”该节点,它仍会响应,而我预计它会停止响应该 IP。
如果我重新创建集群并添加 SERVER2 作为第一个主机,则向导将正确完成,并且服务器上的 IPCONFIG 显示它现在具有集群 IP,但我无法从远程子网 ping 集群 IP,但我可以从同一子网上的另一台机器 ping 集群 IP。
作为最后的测试 - 当集群中的两台服务器都根据 NLB 管理器停止时,从同一子网上的另一台机器 ping 时,我仍然会收到来自集群 IP 的响应。
两台虚拟机位于同一物理刀片上,其构建方式完全相同,因为它们将用作 SharePoint Web 前端服务器。我不知道第二台虚拟机可能出了什么问题,导致它无法像集群中的唯一节点一样使用该地址,更不用说当我停止/启动节点时集群的奇怪行为了。
答案1
通常,此类跨子网问题与网络设备有关,不一定与 NLB 有关。请查看此博客文章来自 Microsoft Enterprise Networking 团队,它深入探讨问题和可能的解决方案。