nginx 或 haproxy 或 varnish 多个 IP 地址、反向代理和手动故障转移

nginx 或 haproxy 或 varnish 多个 IP 地址、反向代理和手动故障转移

好的,这就是我想要完成的所有事情。

背景 我有多个 IIS Web 服务器,每个服务器都运行多个网站,每个网站都有自己的 IP 地址。每个 IIS“网站”通过编程和主机标头运行数百个网站。我想为我拥有的每个 Web 服务器插入一个反向代理服务器。

这就是我想要的 反向代理接受给定 IP 地址 (1.2.3.4) 上的所有流量,并将流量传递到 IIS 站点 (1.2.3.104) -我可以在 nginx 或 varnish 中完成此操作。

反向代理将有大约 10 个定义的监听 IP 地址(1.2.3.4 - 1.2.3.14),每个地址都将流量转发到其自己对应的 IIS 站点(1.2.3.104 - 1.2.3.114)。

这不是负载平衡,我们只是将 IP 路由到特定 IP。我认为这在 nginx 或 varnish 中是可能的。

接下来是有趣的部分 我想创建一个新的备份IIS 服务器,该服务器将包含网站,在本例中 IP 地址为 1.2.3.204 - 1.2.3.214)。我希望手动将流量故障转移到此备份服务器。我最终将配置我的所有 IIS 服务器以使用这台备份服务器,我将使用它在我的 Web 服务器上运行更新,这就是我只想将其用作手动故障转移服务器的原因。

我知道我在某处看到过一个“命令行”可以故障转移到备份服务器,但我找不到它是什么产品,但我认为它是 nginx。

我不需要缓存任何东西,因为我们在 IIS 中缓存对象,这就是为什么我需要专门将流量从 1.2.3.4 发送到 1.2.3.104 以及将 1.2.3.5 发送到 1.2.3.105 等。

答案1

如果您没有缓存或执行内容切换(根据 HTTP URL 或标头做出“路由”决策),为什么您需要使用堆栈上层的东西。

只需使用 IPtables 对连接进行 NAT 即可。

相关内容