Windows集群添加新子网IP失败求助:SQL Server Always On灾备配置
核心问题原因
你的操作遗漏了集群所有节点必须先配置10.14.y.y子网的可用网卡这一关键前提。Windows故障转移集群仅会识别节点上已存在的子网,若节点未接入目标子网,集群无法保存对应IP资源的参数,GUI也会因未识别子网而无法操作。
针对疑问的具体解答
是否需要配置对应新子网的第二块网卡?
是,必须配置。每个集群节点都需要有能接入10.14.y.y子网的网卡(物理网卡或虚拟网卡均可),并为该网卡配置该子网的静态IP(确保子网掩码、网关正确,能正常连通子网内设备)。节点本身能识别该子网是集群感知子网的基础。能否为现有集群添加第二子网?
完全可以。Windows故障转移集群原生支持多子网配置,只要所有节点都能访问目标子网,即可添加对应子网的IP资源到集群组或AG监听器资源组。是否需要新增DR节点作为集群第三节点?
不需要。多子网集群配置无需额外节点,现有2节点只要都完成新子网的网卡配置,就能完成多子网IP资源的设置。若后续有跨站点灾备的冗余需求,可考虑新增DR节点,但当前添加子网IP的操作不依赖新增节点。
正确操作步骤
配置节点网卡
给每个集群节点添加/配置10.14.y.y子网的网卡,设置静态IP,验证该子网内的连通性。验证集群子网识别
执行PowerShell命令确认集群已识别新子网:Get-ClusterNetwork输出中应包含10.14.y.y对应的子网条目。
重新配置IP资源
先删除之前创建的错误IP资源(若存在),再重新添加并设置参数:# 删除错误IP资源 Remove-ClusterResource "IPAddress141" -Force # 重新添加IP资源,集群会自动匹配已识别的子网 Add-ClusterResource -Name "IPAddress141" -ResourceType "IP Address" -Group "Cluster Group" # 设置IP参数并启动资源 $res = Get-ClusterResource "IPAddress141" $params = @( New-Object Microsoft.FailoverClusters.PowerShell.ClusterParameter $res, "Address", "10.14.y.y" New-Object Microsoft.FailoverClusters.PowerShell.ClusterParameter $res, "SubnetMask", "255.255.252.0" ) $params | Set-ClusterParameter Start-ClusterResource "IPAddress141"为AG监听器添加新子网IP
可通过SQL Server Management Studio(SSMS)打开AG监听器属性,添加10.14.y.y子网的IP;或使用PowerShell将IP资源添加到AG监听器的资源组中。
内容的提问来源于stack exchange,提问作者yanka24

