使用 GCP HTTP(S) 或 TCP/UDP 负载均衡器对 Google Cloud 之外的端点进行负载均衡

使用 GCP HTTP(S) 或 TCP/UDP 负载均衡器对 Google Cloud 之外的端点进行负载均衡

我需要对端点进行负载平衡https://api1.app.com,并且https://api2.app.cpm这些端点目前位于 GCP 之外。

GCP 提供互联网 NEG将 GCP 外部的端点插入到 HTTP(S) 外部负载均衡器。但是,它有局限性。

主要有:

  1. 互联网端点目前不支持负载平衡 - 请求仅代理到端点。Google Edge 基础架构会终止您的用户连接,然后将连接定向到您的互联网端点。

  2. 不会对互联网 NEG 执行任何健康检查。如果您的互联网端点无法访问,或者指定为 FQDN 但无法解析,Cloud CDN 会发送 502(错误网关)消息来响应用户请求。

  3. 您只能在高级网络服务层(即默认层)上使用互联网 NEG。

参考

我无法真正使用互联网 NEG 来平衡我的端点负载。GCP 中还有其他选项可以使用 GCP 负载平衡器实现 GCP 外部端点的负载平衡吗?

我可以在 GCP 负载均衡器和后端端点之间插入 HAProxy 或任何其他第三方负载平衡解决方案吗?

https://api1.app.com如果可以,我们可以在中配置诸如和之类的域名https://api2.app.cpm作为后端haproxy.cfg吗?

答案1

您可以考虑以下选项 -

  1. 具有混合连接 NEG 的流量导向器- 它将 Traffic Director 功能与 Cloud Load Balancing 相结合,将 Google Cloud 网络服务带入多环境;与互联网 NEG 不同,它还提供私有 IP 端口的健康检查。

  2. 这也回答了您的一个问题,因为您可以使用第三方网络工具,例如HA代理Traefik 企业版等与您的用例结合使用 GCP 网络资源。检查这里了解如何使用 HAProxy 将域名映射到后端服务器池。如需通过 GCP 内部 TCP/UDP 负载平衡连接 HAProxy,请查看

相关内容