![数据库集群故障转移](https://linux22.com/image/623812/%E6%95%B0%E6%8D%AE%E5%BA%93%E9%9B%86%E7%BE%A4%E6%95%85%E9%9A%9C%E8%BD%AC%E7%A7%BB.png)
我打算为MSSQL开发一个定制的HA方案,但是在阅读一些关于集群的文章时,我遇到了一个疑问。
当主服务器宕机时,从服务器将投票选出新的主服务器,新主服务器将接管旧主服务器的虚拟 IP 地址。
这里的虚拟 IP 地址是什么?
例如:
A:主设备 192.168.1.100
B:从设备 192.168.1.101
C:从设备 192.168.1.102
是否有另一个 IP 地址分配给 A?或者 IP 192.168.1.100 是虚拟 IP?无法添加额外的网卡。
Windows 系统。
答案1
我不确定你到底在做什么,但这里有一些集群地址基础知识,它们往往最匹配,要么通过内置,要么通过依赖外部功能达到类似的效果:
除了特定于各个集群节点的 IP 地址之外,HA 集群通常还会创建一个或多个属于该集群的集群 IP 地址。
根据设置和具体技术,此集群地址通常可以
绑定到集群节点之一(即与该节点的 NIC MAC 地址关联),从而使该节点成为活动节点。在故障转移时,另一个节点会将其 MAC 地址绑定到集群 IP 地址并承担活动角色。
与所有或部分群集节点可以订阅的多播 MAC 地址相关联,这样就可以有多个活动节点。在这种情况下,群集 IP 地址可以是多播 IP 地址(这使得绑定协议兼容),或者更不常见的是(例如在 Microsoft NLB 群集中)绑定到多播 MAC 地址的 IP 单播地址(这需要网络路由器/交换机能够处理此协议不兼容的 L3/L2 映射,通常通过额外的配置指令)。
集群通常只将集群地址用于客户端到集群的流量,并将使用单个节点地址用于集群内流量(例如状态信息和心跳)。集群内流量有时会被放置在专用网络上。