我使用的是 windows server 2012R2,最近我创建了一个有 2 个节点的 WSFC,两个节点都在同一个子网中,并为集群分配了一个静态 IP。但是我只能从当前节点ping集群的IP,即使在同一子网中的node2和其他服务器也无法ping通。
因为我需要这个集群用于 SQL 服务器,但我可以创建一个可用性组和侦听器。但是侦听器 IP也无法 ping,我尝试从辅助服务器进行 telnet 也无法正常工作。
我的问题是我想从同一子网中的任何服务器访问监听。
我使用的是 windows server 2012R2,最近我创建了一个有 2 个节点的 WSFC,两个节点都在同一个子网中,并为集群分配了一个静态 IP。但是我只能从当前节点ping集群的IP,即使在同一子网中的node2和其他服务器也无法ping通。
因为我需要这个集群用于 SQL 服务器,但我可以创建一个可用性组和侦听器。但是侦听器 IP也无法 ping,我尝试从辅助服务器进行 telnet 也无法正常工作。
我的问题是我想从同一子网中的任何服务器访问监听。
这是我解决它的方法。
注意:我使用 AWS EC2 实例来配置它,所以这个解决方案只能在 AWS 上运行。不确定 Azure 或 GCP 或本地。
我有 2 个 Windows 服务器。
配置集群后,我将集群 IP 设置为
然后配置了SQL Server Listener。它是一个子网侦听器。
现在,看看这个 Doc。
默认情况下,所有路由都将通过10.0.0.1。在尝试连接集群时,我只是打开了两个服务器安全组上10.0.0.0/16的所有流量。对于侦听器,它将尝试在 AWS 端搜索 10.0.0.4,但没有一个实例具有此 IP。
据我了解,它将尝试在 AWS 网络级别上进行查找。因此,我已将辅助 IP 添加到当前主服务器,然后它就起作用了。But during the failover again it'll fail. So I used multi subnet.
主要在子网 1 中,次要在子网 2 中。然后在创建侦听器时,它会询问 2 个 IP 地址。
例如:
然后附加 10.0.0.4 作为服务器 1 的辅助 IP,服务器 2 附加 10.0.1.4。