我使用 ldirectord 设置来平衡几个真实服务器的负载,对于 HTTPS 连接,我正在考虑在 LB 上使用一些卸载机制 - ldirectord 中是否已经实现了一些功能,或者我应该寻找其他必须与 ldirectord 配对的解决方案?
提前致谢!
答案1
首先要说的是,我已经有好几年没有配置 LVS 了,现在它可能已经过时了。
话虽如此,我上次使用时,它主要是在第 3 层而不是第 4 层工作的软件。如果您想要某种软件将传入的 TCP/443 连接重定向到后端服务器池之一,LVS 就是您的最佳选择。如果您想要某种软件接收传入的 HTTPS 连接、解密它们,并将解密后的请求分发到后端服务器池,那么它就不适合您。
编辑:是的,我会考虑使用 apache 进行解密和重定向到池。此外,您可以使用 Linux-HA 来控制两个前端 apache 盒(一个实时,一个热备用),这样重定向器仍然始终处于运行状态,IP 地址在 HA 的控制下在两者之间浮动。
答案2
当使用带有 SSL 的 lvs 时,请将 SSL 服务服务器(我的情况是 ldap)上的证书设置为与负载均衡器 VIP 匹配,而不是与托管服务器 DNS 名称匹配。这意味着当您点击 lvs 服务器 VIP:ssl 端口时,证书协商将与发起服务器所需的反向 DNS 名称匹配。
测试 SSL 握手 ->openssl s_client -connect hostname:port
问题不在于配置。标准 lvs 配置工作正常。问题在于 SSL 证书协商。“客户端”需要一个与其连接的 IP 的反向 DNS 匹配的证书。(即负载平衡器虚拟 IP 接口 IP)。如果主机场响应器使用“其”证书进行响应,它将看起来像一个伪造的证书,因为它与连接 IP 不匹配。因此,“修复”是使用 LB virt IP 证书加载所有场响应器
安德鲁。