将 React 应用从 App Engine 迁移到 Cloud run LB 配置

将 React 应用从 App Engine 迁移到 Cloud run LB 配置

我们尝试将前端应用程序从 App Engine 迁移到 Cloud run。

我们做了以下步骤

  1. 创建了一个 LB,以便我们可以将流量引导到正确的云运行 APP。
  2. 将 App 引擎的 DNS A 记录更改为指向 LB 的外部 IP。

流量开始流入云运行,但我们开始看到部分流量仍然重定向到应用引擎并得到 404。

我们假设一些 DNS、ISP 和缓存需要几天时间才能刷新 所以我们需要找到一种方法来在同一个域下提供两个版本(AppEngine 和云运行)。

如何为一个负载均衡器设置两个不同的后端?

答案1

回答您的问题 - 可以配置一个 GCP 负载均衡器多个后端例如:

  • 实例组
  • 单个虚拟机
  • GAE 应用程序
  • Cloud Run 功能
  • 网络端点组(由外部主机组成)
  • 储物桶

例如,假设您有一个带有 dwo 后端的负载均衡器:

  • GAE 应用程序
  • Cloud Run 功能

其中一个将在下方可用yourdomain.com,而另一个必须可用yourdomain.com/somepath/- 由您决定哪一个将是“主要”的。

还可以向 LB 添加其他后端 - 所有后端都必须在不同的路径下可用。

它看起来像这样: 在此处输入图片描述

如您所见,您可以为 GAE 和 Cloud Run 设置一个前端和相同的端口 - 唯一的区别是路径。

但是,这并不能解决您的问题 - 如果某些您无法控制的 DNS 仍然重定向到旧 IP - 您唯一的“武器”就是将 DNS 服务中的 TTL 从几个小时更改为 1 分钟左右,并希望更改能够足够快地传播。

相关内容