例如,有以下应用程序部署为 App Engine 和 Cloud Run 服务。
A)app-1-api
作为 Cloud Run 服务
B)app-2-api
作为 App Engine 服务
C)app-1-frontend
作为 Cloud Run 服务的 NextJS 应用
D)app-2-frontend
作为 Cloud Run 服务托管的静态网站
我发现了一个文章描述了使用 Google Cloud Balancer 的无服务器 NEG 如何将所有这些服务粘合到一个域中。我希望实现以下路由:
请求
api.example.com
应该打服务A
请求
reporting-api.example.com
应该打服务B
请求
reporting.example.com
应该打服务D
如果请求与路径匹配
*.example.com
,并且与路径 1 - 3 均不匹配,则请求应该命中服务C
。
我没有找到任何与 4 中的通配符子域名相关的内容。这一切都有可能吗?如果不行,有哪些 GCP 替代方案?
谢谢。
答案1
URL 映射可与以下 Google Cloud 产品一起使用:
外部 HTTP(S) 负载平衡(全局、区域和经典模式)
内部 HTTP(S) 负载平衡
交通主管
主机名必须是完全限定域名 (FQDN)。主机名不能是 IPv4 或 IPv6 地址。例如:
作品:example.com
作品:web.example.com
适用:*.example.com
不起作用:35.244.221.250
检查参考关于如何添加主机规则
在开始使用 URL 映射之前,请熟悉URL 映射概念。, 例如:
- URL 映射的工作原理
- 命名
- URL 映射组件
- URL 重定向
例如,使用外部 HTTP(S) 负载均衡器,您可以使用单个 URL 映射根据 URL 映射中配置的规则将请求路由到不同的目的地:
请求https://example.com/video转到一个后端服务。
请求https://example.com/audio转到不同的后端服务。
请求https://example.com/images转到 Cloud Storage 后端存储桶。
对任何其他主机和路径组合的请求都会转到默认后端服务。