Windows Server 2016双节点集群无法故障转移求助
看起来你遇到的核心问题是Server B的网络配置不规范导致集群资源无法在该节点正常上线,进而故障转移失败。咱们一步步拆解分析:
首先看Server B的IP配置:192.168.20.11,子网掩码255.255.254.0,这个子网对应的网段是192.168.20.0 - 192.168.21.255(因为子网掩码第三个字节是254,块大小为2),但你的网关却是192.168.30.1——这个网关完全不在Server B自身所在的子网里,这是致命的网络配置错误。
为什么会出现这些现象?
- 集群IP资源的分配逻辑是:必须绑定到节点某个网络适配器所在的有效子网,且该子网的网络连通性正常。当你尝试给集群资源分配
192.168.20.x的IP时,集群服务检测到Server B的网关不在这个子网,判定该网络不可用,所以IP资源无法正常注册,显示为0.0.0.0。 - 系统只允许你选择
192.168.30.x的IP,是因为它错误地识别了网关所在的网段为可用子网,但Server B自身的IP不在这个网段,就算选了也无法正常通信,资源还是无法上线。
你的猜测验证
你提到的两个可能性里,b) 网关必须和主IP在同一网络是正确的。默认网关的作用是让节点能访问其他网段,但前提是网关本身必须在节点自身的子网内——否则节点根本无法和网关建立连接,整个网络路由都是失效的。之前集群看似正常,只是因为资源一直运行在Server A上,没触发故障转移,所以这个配置隐患没暴露出来。
解决步骤
修复Server B的基础网络配置
把网关改成192.168.20.x或192.168.21.x范围内的有效地址(比如192.168.20.1,具体要根据你的实际网络拓扑确定),确保IP、子网掩码、网关三者处于同一个子网(192.168.20.0/23)。修改后用ping测试网关连通性,确认能正常ping通。检查集群网络配置
打开「故障转移集群管理器」,定位到「网络」选项,检查每个节点的网络适配器对应的集群网络是否正确配置了子网范围(应该包含192.168.20.0/23),确保集群服务能识别这个子网为可用资源部署网段。重新配置集群IP资源并测试故障转移
回到集群资源设置,重新给资源分配192.168.20.x范围内的IP,保存后尝试手动将资源故障转移到Server B,观察是否能正常上线。验证跨节点连通性
在Server B上ping Server A的IP,在Server A上ping Server B的IP,确保两个节点之间网络通信正常,这是集群故障转移的基础。
备注:内容来源于stack exchange,提问作者biocoma

