我们有几十个Win2008和2008R2企业集群,用于sql Server 2008和2008 R2企业/数据中心.在过去,我们在全球另一端的几个服务器上遇到了许多随机故障转移和“网络已分区”错误的问题.这主要是在更新NIC驱动程序和卸载Forefront Endpoint Protection时解决的(不知道除了它有帮助之外,它是如何发挥作用的).
快进6个月到11月,我们从SCOM和事件日志中得到持续警报,表示集群(特别是两个)每周多次失败并出现“网络已分区”错误,但实际上没有发生故障. sql Server仍然正常运行,在Web前端没有注意到服务中断.错误似乎来自“被动”节点并通过网络进行复制(我们从Passive接收第一个警报,然后是活动,然后是Web前端),但所有节点/网络适配器/磁盘/应用程序/ IP /网站仍然可用.当集群,网络或其他任何东西出现问题时,我们无法找到这些错误不断出现的原因.关于我们可以去调查的原因或可能的方向的任何想法都会很棒.
当您获得网络分区错误时,这意味着当前运行您的群集应用程序的服务器以某种方式与其他节点隔离.假设没有其他错误,您的服务将完全可能(并且可能)继续运行.该警告告诉您,如果需要进行故障转移,则可能会失败(通常是由于节点没有切换磁盘/ CSV的路径).
请务必仔细检查相关服务器之间的网络拓扑和群集网络设置.我们遇到了一个令人讨厌的经历,其中故障转移群集使用多路径NIC进行节点间通信,这些通信与sql服务器使用的不同(即单独的VLAN).因为主要和备份群集连接都以这样的方式进行路径,即如果只有一个交换机关闭,仲裁可能会丢失,sql服务器仍然会显示为联机,但群集显示已分区,这意味着如果服务器(或交换机)失败了,它会严重降低集群.