![使用 GCP HTTP(S) 或 TCP/UDP 负载均衡器对 Google Cloud 之外的端点进行负载均衡](https://linux22.com/image/768493/%E4%BD%BF%E7%94%A8%20GCP%20HTTP(S)%20%E6%88%96%20TCP%2FUDP%20%E8%B4%9F%E8%BD%BD%E5%9D%87%E8%A1%A1%E5%99%A8%E5%AF%B9%20Google%20Cloud%20%E4%B9%8B%E5%A4%96%E7%9A%84%E7%AB%AF%E7%82%B9%E8%BF%9B%E8%A1%8C%E8%B4%9F%E8%BD%BD%E5%9D%87%E8%A1%A1.png)
我需要对端点进行负载平衡https://api1.app.com
,并且https://api2.app.cpm
这些端点目前位于 GCP 之外。
GCP 提供互联网 NEG将 GCP 外部的端点插入到 HTTP(S) 外部负载均衡器。但是,它有局限性。
主要有:
互联网端点目前不支持负载平衡 - 请求仅代理到端点。Google Edge 基础架构会终止您的用户连接,然后将连接定向到您的互联网端点。
不会对互联网 NEG 执行任何健康检查。如果您的互联网端点无法访问,或者指定为 FQDN 但无法解析,Cloud CDN 会发送 502(错误网关)消息来响应用户请求。
您只能在高级网络服务层(即默认层)上使用互联网 NEG。
我无法真正使用互联网 NEG 来平衡我的端点负载。GCP 中还有其他选项可以使用 GCP 负载平衡器实现 GCP 外部端点的负载平衡吗?
我可以在 GCP 负载均衡器和后端端点之间插入 HAProxy 或任何其他第三方负载平衡解决方案吗?
https://api1.app.com
如果可以,我们可以在中配置诸如和之类的域名https://api2.app.cpm
作为后端haproxy.cfg
吗?
答案1
您可以考虑以下选项 -
具有混合连接 NEG 的流量导向器- 它将 Traffic Director 功能与 Cloud Load Balancing 相结合,将 Google Cloud 网络服务带入多环境;与互联网 NEG 不同,它还提供私有 IP 端口的健康检查。
这也回答了您的一个问题,因为您可以使用第三方网络工具,例如HA代理,Traefik 企业版等与您的用例结合使用 GCP 网络资源。检查这里了解如何使用 HAProxy 将域名映射到后端服务器池。如需通过 GCP 内部 TCP/UDP 负载平衡连接 HAProxy,请查看这。