我的局域网上有一个 Web 服务器。如果第一个系统发生故障,我怎样才能让第二个(备用/故障转移)系统处理对该 Web 服务器的请求?
我知道使用硬件路由器和主动监控可能可以实现这一点,但仅使用软件(没有特殊硬件)是否可行?换句话说,我是否可以在这两台机器的操作系统中配置一些东西,以便一个系统可以替代另一个系统?我不确定它们是否需要看起来具有相同的 IP(例如:客户端总是访问相同的 IP 地址,如10.0.0.123)或者如果我需要一个 mDNS 名称(例如我的服务.local) 或者是什么。
客户端只是同一局域网中第三台设备上的 Web 浏览器。如果这很重要的话,我正在运行 Ubunto 18.04。目前我甚至没有专用的 DNS 服务器或任何东西——只有一个 Wi-Fi 路由器(以及两台服务器 PC 和客户端浏览器设备)。
这可能吗?如果可能,怎么做?
答案1
这可以使用软件来实现。想法是为 Web 服务器设置一个 IP 地址,然后进行监控以查看服务器主服务器是否已关闭,如果已关闭,则选择该 IP 地址。我认为 IP 地址应该是辅助地址。
http://www.linux-ha.org/如果您不想自己操作,可以提供一些软件来执行此操作。
如果您不需要访问网络外部的服务器或拥有多个 IP 地址,则可以使用 DNS(类似于动态 DNS)而不是使用 IP 接管。
这可能不是一个好主意,但您甚至可以细分您的网络并使用动态路由来路由与 Web 服务器关联的 IP 地址(将至少一台服务器视为路由器)。
答案2
如果 Web 服务器提供静态内容,那么最简单的答案就是循环 DNS。客户端进行 DNS 查找并返回两个 IP 地址(以随机顺序),然后依次尝试。如果一台服务器宕机,您可能会收到错误,但刷新将强制客户端切换。