如何将子域名映射到 GCP https 负载均衡器

How to map subdomain name to GCP https load balancer

我在 GCP 上创建了一个包含 6 个实例的组并使用 GCP 负载平衡器 (LB)。我使用nginx 和Let's encrypt,所有网站都必须使用https。

我的情况如下图

服务器 1 : x11.abc.com(LB dns: x1.abc.com), x31.abc.net(LB dns: x3.abc.net)
服务器 2 : x12.abc.com(LB dns: x1.abc.com), x32.abc.net(LB dns: x3.abc.net)
服务器 3 : x13.abc.com(LB dns: x1.abc.com), x33.abc.net(LB dns: x3.abc.net)
服务器 4 : x21.abc.com(LB dns: x2.abc.com), x34.abc.net(LB dns: x3.abc.net)
服务器 5 : x22.abc.com(LB dns: x2.abc.com), x35.abc.net(LB dns: x3.abc.net)
服务器 6 : x23.abc.com(LB dns: x2.abc.com), x36.abc.net(LB dns: x3.abc.net)

但是我测试的时候,x1.abc.com显示的是x11~x13和x21~x23的内容,x3.abc.net显示的是x31~x36的内容,BUT x2.abc.com 显示 未找到请求 url

我要x1.abc.com显示x11~x13的内容,x2.abc.com显示x21~x23的内容,x3.abc.net显示x31~x36的内容

如何设置 GCP 负载平衡器?

您可以按照以下建议设置负载均衡器:

  • 您可以根据每种流量类型对实例进行分组,而不是只有一个后端服务,只有一个实例组包含所有后端实例。每个实例组将包含托管相同内容的实例。接下来,您必须相应地配置主机和路径规则。

这是 create an HTTP(S) load balancer 的一种方法,它根据请求中的路径将流量分配到不同的实例 URL(检查配置主机和路径规则部分)。

  • 当您使用相同的负载均衡器 IP 地址和端口从多个域提供服务时,您还可以想到 using multiple SSL certificates,在这里您可以为每个域使用不同的 SSL 证书。您必须为这些资源中的每一个指定至少一个 SSL 证书,最多可以指定十个。