创建全局 HTTPS Google Cloud 负载均衡器时,位置有啥影响?

Posted

技术标签:

【中文标题】创建全局 HTTPS Google Cloud 负载均衡器时,位置有啥影响?【英文标题】:How does location matter while creating a Global HTTPS Google Cloud Load Balancer?创建全局 HTTPS Google Cloud 负载均衡器时,位置有什么影响? 【发布时间】:2020-12-20 05:05:06 【问题描述】:

我正在 Google Cloud 中创建一个全局 HTTPS 负载平衡器,并且想知道位置如何影响全局负载平衡器。

我无法在互联网上找到有关它的详细信息。

根据位置存在价格差异: https://cloud.google.com/vpc/network-pricing#lb

但不知道它如何影响 https 请求的路由: https://storage.googleapis.com/gweb-cloudblog-publish/images/global_lb.max-1800x1800.png

例如:如果我的网站的大部分流量来自美国、印度和欧洲,那么在设置全球 HTTPS 负载均衡器时我应该选择的最佳位置是什么?它将产生什么影响?

【问题讨论】:

【参考方案1】:

主要区别在于全局负载均衡针对第 7 层(高级应用层)流量,而区域负载均衡针对第 4 层(传输层)流量,并使用Maglev 进行流量路由。

假设您想要自己做 SSL 终止并操作自己的第 7 层反向代理,我相信区域是正确的选择。对于绝大多数用户,我敢打赌,全球是更好的选择。

【讨论】:

【参考方案2】:

查看文档Cloud Load Balancing overviewGlobal versus regional load balancing 部分:

在分布式后端时使用全局负载平衡 跨多个区域,您的用户需要访问相同的 应用程序和内容,并且您希望通过使用 单个任播 IP 地址。全局负载均衡也可以提供 IPv6 终止。

当您的后端位于一个区域时,使用区域负载平衡, 并且您只需要 IPv4 终止。

在External HTTP(S) Load Balancing 部分:

HTTP(S) Load Balancing 在 GFE 上实现。 GFE 是 distributed globally 并使用 Google 的全球 网络和控制平面。在高级层中,GFE 提供 cross-regional load balancing,将流量引导到最近的健康后端 具有尽可能接近的容量和终止 HTTP(S) 流量 您的用户。

您可以在this article 中找到有关网络服务层的更多信息。

要了解更多详细信息,请查看文档External HTTP(S) Load Balancing overview:

当使用 Premium Network Service Tier 时,HTTP(S) 负载平衡是一项全球服务。

    当用户请求进来时,负载平衡服务会根据源 IP 地址确定请求的大致来源。 负载均衡服务知道后端服务拥有的实例的位置、它们的整体容量以及它们的 当前的总体使用情况。 如果离用户最近的实例有可用容量,则请求将转发到最近的一组实例。 对给定区域的传入请求均匀分布在该区域中所有可用的后端服务和实例中。然而, 在非常小的负载下,分布可能看起来不均匀。 如果给定区域中没有具有可用容量的健康实例,负载均衡器会将请求发送到下一个 有可用容量的最近区域。

还有

HTTP(S) 负载平衡是标准网络时的区域服务 使用服务层。其后端实例组或 NEG 都必须是 位于负载均衡器的外部 IP 地址使用的区域 和转发规则。

同时,Maglev 是Network Load Balancing 的分布式系统。

【讨论】:

以上是关于创建全局 HTTPS Google Cloud 负载均衡器时,位置有啥影响?的主要内容,如果未能解决你的问题,请参考以下文章

如何从 google-cloud-platform vminstance 中的 pubsub 回调函数调用全局变量?

从 Google Cloud 内部 IP 调用 Google Cloud 存储桶

Google Cloud DataCatalog

Google Cloud Bigtable 协处理器支持

验证来自 Google Cloud Scheduler 的 HTTP 请求

Google Cloud Vision API PDF 文本提取