我将使用 heartbeatd 设置 2 台物理服务器的 HA 代理。我将让客户端将域指向一个 IP 地址,该 IP 地址在执行此操作后不会更改。我的托管服务提供商为我提供了 6 个 IP 地址。我需要使用其中一个来设置 VIP 吗?总体而言,我对 VIP 和真实 IP 之间的区别感到困惑(不是关于适用性,而是关于它们的工作方式等)。
答案1
是的,您需要使用其中一个分配的地址作为虚拟 IP。
虚拟部分是指它没有专门分配给某个节点。它在设备之间共享,但其中一个设备始终拥有该地址,就像它拥有自己的真实 IP 一样。该地址的特殊之处在于,节点会进行协调以确保 IP 始终由其中一个节点拥有,这样即使其中一个节点发生故障,驻留在该 IP (HAProxy) 上的服务也始终可用。
答案2
如果您希望互联网上的人们可以访问您的集群,那么 VIP 应该是公共 IP。如果您设置了专用网络,则可以将 HA 代理盒连接到专用网络和公共网络,并将您的 Web 服务器(或任何服务器)放在专用网络上,这样当所有事情都应该通过 HA 代理进行时,它们就不会占用公共 IP。
在这个特定实例中,VIP 就是分配给 HA 代理盒的 IP,该代理盒代表您正在呈现的任何服务。如果您有集群 HA 代理,它们仍然只会为您的服务共享这一个 VIP。从 TCP/IP 的角度来看,它就像一个常规 IP,但它在代理领域所代表的含义不同。它不代表特定主机,而是代表一项服务或一组服务,并在集群中的 HA 代理盒之间共享。