问题描述
我正在尝试使用负载均衡器设置多区域部署,以将流量驱动到 Cloud Run 应用程序,该应用程序通过本教程部署在封闭区域中给访问者https://cloud.google.com/run/docs/multiple-regions
我有一个带有后端服务的 Google Cloud Platform Load Balancer 设置,该服务指向三个区域网络端点组,每个组都链接到不同区域的 Cloud Run 应用程序的单独实例。
当我直接通过 Cloud Run 应用 URL(例如 https://cms-us-east1-dpuglk7uja-ue.a.run.app)访问任何区域中的 Cloud Run 应用时,它运行良好。
当我通过欧洲的负载平衡器域访问应用时,它也能正常工作。
但是当我在任何其他地区(美国、亚洲)通过负载平衡器域访问应用程序时,我收到了 404 错误消息,消息 The requested URL was not found on this server. That’s all we kNow.
我已经完成了 this tutorial 中解释的所有内容,但不确定有什么问题。以下是我使用的区域:europe-north1
、us-east1
、asia-northeast1
。
Serverless NEG 的 Beta 版是否仍有可能存在缺陷?
解决方法
您的负载平衡器配置是正确的。您有一项后端服务,每个区域有 1 个无服务器 NEG。
使某项工作正常运行的条件是具有相同 Cloud Run 服务名称但部署在不同区域。