我在同一台机器上托管了两台虚拟机,其中一台在本质上是活动的,即托管服务并连接到客户端(客户端直接在主机上运行)。我必须实现容错服务,即在主虚拟机发生故障时,客户端会自动连接到辅助虚拟机,因为两个虚拟机都托管相同的服务。
我在某处读到关于浮动 IP 的信息,但当我检查时,我发现它是一项付费服务。有什么简单的方法可以实现这一点,而且不需要花钱吗?
该机器是基于Linux的,具体来说,主机是ubuntu 20.*,VMs有ubuntu 18.*。
我在同一台机器上托管了两台虚拟机,其中一台在本质上是活动的,即托管服务并连接到客户端(客户端直接在主机上运行)。我必须实现容错服务,即在主虚拟机发生故障时,客户端会自动连接到辅助虚拟机,因为两个虚拟机都托管相同的服务。
我在某处读到关于浮动 IP 的信息,但当我检查时,我发现它是一项付费服务。有什么简单的方法可以实现这一点,而且不需要花钱吗?
该机器是基于Linux的,具体来说,主机是ubuntu 20.*,VMs有ubuntu 18.*。
您可以通过以下任一方式实现“浮动 IP”,也称为 VIP 或虚拟 IP:
仅供参考:您还可以通过让他从列表中选择健康的服务器来实现客户端的冗余。
请注意,不建议在同一主机上的虚拟机之间实现冗余。(主机是单点故障)
我建议您在应用程序/VM 前使用反向代理作为负载均衡器。您可以使用类似
nginx
或haproxy
nginx 配置将如下所示:
它会自动对上游主机进行健康检查,因此如果任何上游主机出现故障,nginx 会自动检测到它,从而停止向不健康主机发送请求。
您可以在以下位置阅读更多信息: https ://docs.nginx.com/nginx/admin-guide/load-balancer/http-load-balancer/