GCP 中的应用程序负载均衡器

问题描述 投票:0回答:1

在 GCP 中,我在具有三个不同端口号(3000、3001 和 3002)的单个实例中运行三个 NodeJS API,并使用 HTTPS 前端创建了一个外部应用程序负载均衡器。我还为这三个端口号创建了一个后端服务。负载均衡器附加到实例组。

如果我请求 URL“https://example.com/”到达端口 3000,这对于我的单后端服务来说效果很好。但我需要传递具有不同 HTTP 标头和值的相同 URL“https://example.com/”。例如,如果我请求 URL“https://example.com/”需要到达端口 3000,但如果我请求带有“mydealsapi”HTTP 标头的相同 URL“https://example.com/”,需要到达端口 3001,同样,如果我请求带有“appapi”HTTP 标头的相同 URL“https://example.com/”,则需要到达端口 3002。

google-cloud-platform http-headers google-cloud-load-balancer gcp-load-balancer
1个回答
0
投票

您需要使用 Google Cloud 中的转发规则。这取决于您是否拥有全球或区域负载均衡器。但您可以创建将流量路由到特定端口的转发规则。

以下是有关更多信息的文档:https://cloud.google.com/load-balancing/docs/forwarding-rule-concepts#external_fr

您可以通过 GC 控制台创建转发规则,也可以使用 gcloud cli 使用

gcloud compute forwarding-rules create

根据负载均衡器类型,您可以使用“--ports==”标志。

这是一个文档:https://cloud.google.com/sdk/gcloud/reference/compute/forwarding-rules/create

注意:端口规格要求因负载均衡方案和目标而异。有关更多信息,请参阅 https://cloud.google.com/load-balancing/docs/forwarding-rule-concepts#port_specations。

© www.soinside.com 2019 - 2024. All rights reserved.