设置具有外部后端的区域级内部应用负载均衡器

本指南介绍了如何配置区域级内部应用负载均衡器以将请求代理到外部后端。外部后端是 Google Cloud 外部的端点。

在按照本指南进行操作之前,请先熟悉互联网 NEG 概览文档,包括限制

以下架构图展示了具有外部后端的区域级内部应用负载均衡器前端。

具有外部后端的区域级内部应用负载均衡器。
图 1. 具有外部后端的区域级内部应用负载均衡器(点击可放大)。

权限

如需按照本指南进行操作,您需要创建互联网 NEG 并在项目中创建或修改应用负载均衡器。您应该是 Project Owner 或 Project Editorroles/ownerroles/editor),或者应同时具有下列 Compute Engine IAM 角色

任务 所需角色
创建和修改负载均衡器组件 Compute Network Admin
(roles/compute.networkAdmin)
创建和修改 NEG Compute Instance Admin
(roles/compute.instanceAdmin)

在 Google Cloud 外部设置外部后端环境

如需设置外部后端环境,请参阅以下部分。

配置网络端点

配置网络端点,以将外部后端公开给 Google Cloud。确保端点(IP:Port 组合或完全限定域名 [FQDN] 和端口)可通过互联网访问。此端点稍后可从互联网 NEG 引用。

如需详细了解互联网 NEG 端点的配置要求,请参阅互联网 NEG 概览

允许外部后端接收来自 Google Cloud 的流量

您可以在创建代理专用子网并设置 Cloud NAT 网关后完成此步骤。

如需允许来自 Google Cloud 的请求到达外部后端,您需要执行以下步骤:

  1. 为 Cloud NAT 网关配置用于来自 Google Cloud 的出站流量的 IP 地址。该网关会将代理专用子网范围映射到外部 IP 地址。如需了解相关步骤,请参阅设置 Cloud NAT 网关
  2. 确保外部后端环境配置为允许来自 Google Cloud 的流量到达外部后端。例如,如果您为 NAT 网关使用了预留的 IP 地址,则需要在外部环境中将这些 IP 地址列入许可名单。您可能需要与外部环境的网络或安全管理员一起进行此设置。

设置 Google Cloud 环境

您需要一个包含两个子网的 VPC 网络:一个用于负载均衡器组件,另一个用于区域的代理专用子网。然后,创建具有互联网 NEG 后端的负载均衡器。

创建 VPC 网络和子网

此子网用于创建负载均衡器的组件。

Cloud 控制台

  1. 在 Google Cloud 控制台中,转到 VPC 网络页面。
    进入“VPC 网络”
  2. 点击创建 VPC 网络
  3. 输入名称LB_NETWORK
  4. 子网部分中执行以下操作:
    • 子网创建模式设置为自定义
    • 新子网部分中,输入以下信息:
      • 名称LB_SUBNET_NAME
      • 区域REGION
      • IP 地址范围LB_SUBNET_RANGE
    • 点击完成
  5. 点击创建

gcloud

  1. 使用 gcloud compute networks create 命令创建自定义 VPC 网络:

    gcloud compute networks create LB_NETWORK \
      --subnet-mode=custom
    
  2. LB_NETWORK 网络中创建子网。

    gcloud compute networks subnets create LB_SUBNET_NAME \
      --network=LB_NETWORK \
      --range=LB_SUBNET_RANGE \
      --region=REGION
    

配置代理专用子网

此代理专用子网用于 REGION 区域中所有基于 Envoy 的区域级负载均衡器。

控制台

  1. 在 Google Cloud 控制台中,转到 VPC 网络页面。
    转到“VPC 网络”
  2. 从列表中选择网络
  3. 点击添加子网
  4. 输入名称PROXY_ONLY_SUBNET_NAME
  5. 选择区域REGION
  6. 用途设置为区域级代管式代理
  7. 输入 IP 地址范围PROXY_ONLY_SUBNET_RANGE
  8. 点击添加

gcloud

使用 gcloud compute networks subnets create 命令创建代理专用子网。

gcloud compute networks subnets create PROXY_ONLY_SUBNET_NAME \
  --purpose=REGIONAL_MANAGED_PROXY \
  --role=ACTIVE \
  --region=REGION \
  --network=LB_NETWORK \
  --range=PROXY_ONLY_SUBNET_RANGE

设置 Cloud NAT 网关

在配置 Cloud NAT 网关之前,请确保您已查看相关限制和价格注意事项。如需了解详情,请参阅区域级 NEG:使用 Cloud NAT 网关

以下命令描述了如何设置 Cloud NAT 网关。Cloud NAT 网关可以配置为使用自动 NAT 外部 IP 地址(基于需求分配),也可以配置为使用一组手动预留的外部 IP 地址。该网关会将代理专用子网范围映射到外部 IP 地址。

设置 NAT 自动分配的 IP 地址

在创建具有自动 NAT IP 地址分配的 Cloud NAT 网关时,您可以指定 Cloud NAT 网关用于分配 IP 地址的网络服务层级(高级层级或标准层级)。

控制台

  1. 在 Google Cloud 控制台中,转到 Cloud NAT 页面。

    进入 Cloud NAT

  2. 点击开始使用创建 Cloud NAT 网关

  3. 输入网关名称 LB_NAT_CONFIG

  4. NAT 类型列表中,选择公开

  5. 网络列表中,选择 LB_NETWORK

  6. 区域列表中,选择 REGION

  7. 在该区域中创建一个 Cloud Router 路由器。

  8. 来源端点类型列表中,选择代管式代理负载均衡器

  9. 来源列表中,选择自定义

    • 子网列表中,选择 PROXY_ONLY_SUBNET_NAME
  10. Cloud NAT IP 地址列表中,选择自动(推荐)

  11. 对于网络服务层级,选择高级标准

  12. 点击创建

gcloud

如果外部后端环境不要求您将可将流量发送到外部后端的特定 Google Cloud IP 地址列入许可名单,请使用动态分配的 IP 地址。

  1. 创建 Cloud Router 路由器:

    gcloud beta compute routers create ROUTER_NAME \
      --network=LB_NETWORK \
      --region=REGION
  2. 设置 Cloud NAT 网关。

    gcloud beta compute routers nats create LB_NAT_CONFIG \
      --router=ROUTER_NAME \
      --endpoint-types=ENDPOINT_TYPE_MANAGED_PROXY_LB \
      --nat-custom-subnet-ip-ranges=PROXY_ONLY_SUBNET_NAME \
      --auto-allocate-nat-external-ips \
      --region=REGION
    

替换以下内容:

  • LB_NAT_CONFIG:NAT 配置的名称。

  • ROUTER_NAME:您的 Cloud Router 路由器的名称。

  • REGION:要创建的 NAT 的区域。如果未指定,系统可能会提示您选择一个区域(仅限互动模式)。

  • PROXY_ONLY_SUBNET_NAME:代理专用子网的名称。

设置手动分配的 IP 地址

仅当外部后端环境要求您将特定 Google Cloud IP 地址列入许可名单时,才使用手动分配的 IP 地址。如果外部后端环境不需要许可名单,请改用动态分配,如上所示。

创建 Cloud NAT 网关时,您可以选择手动分配高级层级和/或标准层级的 NAT IP 地址,但需满足某些条件

控制台

  1. 在 Google Cloud 控制台中,转到 Cloud NAT 页面。

    进入 Cloud NAT

  2. 点击开始使用创建 Cloud NAT 网关

  3. 输入网关名称 LB_NAT_CONFIG

  4. 网络列表中,选择 LB_NETWORK

  5. 区域列表中,选择 REGION

  6. 在该区域中选择或创建 Cloud Router 路由器。

  7. 来源端点类型列表中,选择代管式代理负载均衡器

  8. 来源列表中,选择自定义

    • 子网中,选择 PROXY_ONLY_SUBNET_NAME
  9. Cloud NAT IP 地址列表中,选择手动

  10. 对于网络服务层级,选择高级标准

  11. 选择或创建用于 NAT 的静态预留外部 IP 地址。

  12. 如果要指定其他 IP 地址,请点击添加 IP 地址,然后选择或创建其他静态预留外部 IP 地址。

  13. 点击创建

gcloud

  1. 创建 IP 地址。由于网关执行一对一 NAT 转换,因此您必须确保预留的 IP 地址池足够大,可以处理预期的流量。NAT IP 地址分配不足可能会导致流量丢失。

    gcloud compute addresses create IP_ADDRESS_NAME_1 IP_ADDRESS_NAME_2 [IP_ADDRESS_NAME_3 ...] \
      --region=REGION
    
  2. 创建 Cloud Router 路由器:

    gcloud compute routers create ROUTER_NAME \
      --network=LB_NETWORK \
      --region=REGION
  3. 设置 Cloud NAT 网关。

    gcloud beta compute routers nats create LB_NAT_CONFIG \
      --router=ROUTER_NAME \
      --endpoint-types=ENDPOINT_TYPE_MANAGED_PROXY_LB \
      --nat-custom-subnet-ip-ranges=PROXY_ONLY_SUBNET_NAME \
      --nat-external-ip-pool=IP_ADDRESS_NAME_1,IP_ADDRESS_NAME_2,[IP_ADDRESS_NAME_3 ...] \
      --region=REGION
    

    替换以下内容:

  • LB_NAT_CONFIG:NAT 配置的名称。

  • ROUTER_NAME:您的 Cloud Router 路由器的名称。

  • PROXY_ONLY_SUBNET_NAME:代理专用子网的名称。

  • REGION:要创建的 NAT 的区域。如果未指定,系统可能会提示您选择一个区域(仅限互动模式)。

如需了解详情,请参阅 Cloud NAT 文档中的指定 NAT 的子网范围

请确保在外部后端环境中使用 NAT IP 地址范围的许可名单,以便您的外部后端可以接收来自 Google Cloud 的流量。

预留负载均衡器的 IP 地址

为负载均衡器预留内部 IP 地址。

控制台

您可以使用 Google Cloud 控制台预留独立内部 IP 地址。

  1. 转到 VPC 网络页面。

    转到 VPC 网络页面

  2. 点击用于配置环境之间的混合连接的网络。
  3. 点击静态内部 IP 地址,然后点击预留静态地址
  4. 输入名称LB_IP_ADDRESS
  5. 对于子网,请选择 LB_SUBNET_NAME
  6. 如果要指定要预留的 IP 地址,请在静态 IP 地址下选择让我自行选择,然后填写自定义 IP 地址。否则,系统会自动为您分配子网中的 IP 地址。
  7. 如果要将此 IP 地址与多个转发规则一起使用,请在用途下选择共享
  8. 点击保留以完成此流程。

gcloud

  1. 使用 gcloud CLI 运行 compute addresses create 命令

    gcloud compute addresses create LB_IP_ADDRESS \
      --region=REGION \
      --subnet=LB_SUBNET_NAME
    
  2. 使用 compute addresses describe 命令查看分配的 IP 地址:

    gcloud compute addresses describe LB_IP_ADDRESS \
      --region=REGION
    

设置互联网 NEG

您可以创建使用 INTERNET_FQDN_PORT 端点或 INTERNET_IP_PORT 端点的互联网 NEG。

控制台

创建具有 INTERNET_FQDN_PORT 端点的 NEG

  1. 在 Google Cloud 控制台中,前往网络端点组页面。

    前往“网络端点组”页面

  2. 点击创建网络端点组

  3. 为您的互联网 NEG 指定 INTERNET_NEG_NAME。如需了解详情,请参阅资源命名惯例

  4. 网络端点组类型列表中,选择网络端点组(互联网),然后执行以下操作:

    • 范围列表中,选择区域级
    • 可选:在区域列表中,更改此 NEG 的 REGION
    • 网络列表中,选择 LB_NETWORK
    • 默认端口框中,输入 DEFAULT_PORT_NUMBER
    • 通过以下方式添加端点列表中,选择完全限定域名和端口
  5. 选择创建

INTERNET_FQDN_PORT 端点添加到 NEG

  1. 在 Google Cloud 控制台中,前往网络端点组页面。

    前往“网络端点组”页面

  2. 点击 INTERNET_NEG_NAME
  3. 输入完全限定域名,例如 myorg.example.com。您必须采用标准 FQDN 语法指定 FQDN 对象。

  4. 可选:在端口类型列表中,选择自定义。如果端口类型Default,则使用 NEG 的默认端口。

  5. 端口号框中,输入 PORT_NUMBER_1
  6. 选择创建

创建具有 INTERNET_IP_PORT 端点的 NEG

  1. 在 Google Cloud 控制台中,前往网络端点组页面。

    前往“网络端点组”页面

  2. 点击创建网络端点组

  3. 为您的互联网 NEG 指定名称 INTERNET_NEG_NAME。如需了解详情,请参阅资源命名惯例

  4. 网络端点组类型列表中,选择网络端点组(互联网),然后执行以下操作:

    • 范围列表中,选择区域级
    • 可选:在区域列表中,更改此 NEG 的 REGION
    • 网络列表中,选择 LB_NETWORK
    • 默认端口框中,输入 DEFAULT_PORT_NUMBER
    • 通过以下方式添加端点列表中,选择 IP 和端口
  5. 选择创建

INTERNET_IP_PORT 端点添加到 NEG

  1. 在 Google Cloud 控制台中,前往网络端点组页面。

    前往“网络端点组”页面

  2. 点击 INTERNET_NEG_NAME
  3. IP 地址字段中,输入 IP_ADDRESS_1
  4. 可选:在端口类型列表中,选择自定义。如果端口类型Default,则使用 NEG 的默认端口。

  5. 端口号字段中,输入 PORT_NUMBER_1
  6. 选择创建

gcloud

如需创建具有 INTERNET_FQDN_PORT 端点的 NEG,请执行以下操作:

  1. 创建 NEG 资源。

    gcloud beta compute network-endpoint-groups create INTERNET_NEG_NAME \
        --network-endpoint-type=INTERNET_FQDN_PORT \
        --default-port=DEFAULT_PORT_NUMBER \
        --network=LB_NETWORK \
        --region=REGION
    
  2. 将端点添加到 NEG。如果未指定端口,则系统会使用 NEG 的默认端口。

    gcloud beta compute network-endpoint-groups update INTERNET_NEG_NAME \
        --add-endpoint="fqdn=FULLY_QUALIFIED_DOMAIN_NAME_1,port=PORT_NUMBER_1" \
        [--add-endpoint="fqdn=FULLY_QUALIFIED_DOMAIN_NAME_2,port=PORT_NUMBER_2" \]
        --region=REGION
    

    请替换以下内容:

    • FULLY_QUALIFIED_DOMAIN_NAME:端点的完全限定域名
    • PORT_NUMBER:端点的端口号

    每个 NEG 最多可以添加 256 个端点。

如果您的网域可通过互联网解析,则无需使用其他配置来设置 DNS。但是,如果您使用的是专用 FQDN,则需要配置 Cloud DNS 以便于进行 DNS 解析。该名称必须托管在 Cloud DNS 上,或者必须可通过从 Cloud DNS 到本地 DNS 的 DNS 转发进行解析。

首先,创建一个 Cloud DNS 区域以在您的项目中托管 DNS 记录。然后向其添加 DNS 记录。如需了解具体的配置步骤,请参阅 Cloud DNS 文档

如需创建具有 INTERNET_IP_PORT 端点的 NEG,请执行以下操作:

  1. 创建 NEG 资源。

    gcloud beta compute network-endpoint-groups create INTERNET_NEG_NAME \
        --network-endpoint-type=INTERNET_IP_PORT \
        --default-port=DEFAULT_PORT_NUMBER \
        --network=LB_NETWORK \
        --region=REGION
    
  2. 将端点添加到 NEG。如果未指定端口,则系统会使用 NEG 的默认端口。

    gcloud beta compute network-endpoint-groups update INTERNET_NEG_NAME \
        --add-endpoint="ip=IP_ADDRESS_1,port=PORT_NUMBER_1" \
        [--add-endpoint="ip=IP_ADDRESS_2,port=PORT_NUMBER_2" \]
        --region=REGION
    

    请替换以下内容:

    • IP_ADDRESS:端点的 IP 地址
    • PORT_NUMBER:端点的端口号

    您可以重复执行此步骤,为每个 NEG 最多添加 256 个端点。

创建负载均衡器

控制台

开始配置

  1. 在 Google Cloud 控制台中,转到负载均衡页面。

    转到“负载均衡”

  2. 点击创建负载均衡器
  3. 负载均衡器的类型字段中,选择应用负载均衡器 (HTTP/HTTPS),然后点击下一步
  4. 公共或内部字段中,选择内部,然后点击下一步
  5. 跨区域或单区域部署字段中,选择最适合区域级工作负载,然后点击下一步
  6. 点击配置

基本配置

  1. 输入负载均衡器名称
  2. 对于区域,请选择 REGION
  3. 对于网络,请选择 LB_NETWORK

预留代理专用子网

如需预留代理专用子网,请执行以下操作:

  1. 点击预留子网
  2. 对于名称,输入 PROXY_ONLY_SUBNET_NAME
  3. 对于 IP 地址范围,输入 PROXY_ONLY_SUBNET_RANGE
  4. 点击添加

前端配置

  1. 点击前端配置
  2. 输入名称
  3. 对于子网,选择 LB_SUBNET_NAME
  4. 如需创建 HTTPS 负载均衡器,您必须有一个 SSL 证书。我们建议您使用 Google 管理的证书。

    属性 值(按照说明输入值或选择选项)
    协议 HTTPS
    IP 版本 IPv4
    IP 地址 选择之前预留的 IP 地址: LB_IP_ADDRESS
    端口 443
    证书

    选择现有的 SSL 证书或创建新证书。

    如需创建 HTTPS 负载均衡器,您必须拥有要在 HTTPS 代理中使用的 SSL 证书资源。

    如果您想在不设置 SSL 证书资源(或 Google 管理的证书所需要的网域)的情况下测试此过程,则可以设置 HTTP 负载均衡器。

    如需创建 HTTP 负载均衡器,请验证以下选项已使用这些值进行配置:

    属性 值(按照说明输入值或选择选项)
    协议 HTTP
    IP 版本 IPv4
    IP 地址 选择之前预留的 IP 地址: LB_IP_ADDRESS
    端口 80
  5. 点击完成

后端配置

  1. 点击后端配置
  2. 点击后端服务和后端存储桶
  3. 点击创建后端服务
  4. 输入名称。
  5. 对于后端类型,选择互联网网络端点组
  6. 协议部分中,选择将负载均衡器连接到互联网 NEG 时想要使用的协议。
  7. 后端部分的新建后端窗口中,选择上一步中创建的区域级互联网网络端点组
  8. 点击完成
  9. 配置健康检查:
    1. 健康检查字段中,选择创建健康检查
    2. 将健康检查名称设置为 HTTP_HEALTH_CHECK_NAME
    3. 对于协议,选择 HTTP
    4. 端口设置为 80
  10. 点击创建

检查并最终确定

  1. 点击检查并最终确定
  2. 如果看起来都正确,请点击创建

gcloud

  1. 可选:创建健康检查。外部后端的健康检查探测使用分布式 Envoy 健康检查,并在以后进行 NAT 转换。
    gcloud compute health-checks create http HTTP_HEALTH_CHECK_NAME \
        --region=REGION \
        --use-serving-port
    
  2. 创建后端服务:
    gcloud compute backend-services create BACKEND_SERVICE \
        --load-balancing-scheme=INTERNAL_MANAGED \
        --protocol=HTTP \
        --health-checks=HTTP_HEALTH_CHECK_NAME \
        --health-checks-region=REGION \
        --region=REGION
    
  3. 将互联网 NEG 添加到后端服务:
    gcloud compute backend-services add-backend BACKEND_SERVICE \
        --network-endpoint-group=INTERNET_NEG_NAME \
        --network-endpoint-group-region=REGION \
        --region=REGION
    
  4. 创建网址映射以将传入的请求路由到此后端服务:
    gcloud compute url-maps create URL_MAP_NAME \
        --default-service=BACKEND_SERVICE \
        --region=REGION
    
  5. 可选:如果您在客户端和负载均衡器之间使用 HTTPS,请执行此步骤。HTTP 负载均衡器不需要执行此步骤。

    您可以创建 Compute Engine 证书或 Certificate Manager 证书。使用以下任一方法通过 Certificate Manager 创建证书:

    • 自行管理的区域级证书。如需了解如何创建和使用自行管理的区域级证书,请参阅部署自行管理的区域级证书。不支持证书映射。

    • Google 管理的区域级证书。不支持证书映射。

      Certificate Manager 支持以下类型的 Google 管理的区域级证书:

    • 创建证书后,将证书直接附加到目标代理。

      如需创建 Compute Engine 自行管理的 SSL 证书资源,请运行以下命令:
      gcloud compute ssl-certificates create SSL_CERTIFICATE_NAME \
          --certificate CRT_FILE_PATH \
          --private-key KEY_FILE_PATH
      
    • 创建目标 HTTPS 代理以将请求路由到您的网址映射:

      对于 HTTP 负载均衡器,请创建 HTTP 目标代理:

      gcloud compute target-http-proxies create TARGET_HTTP_PROXY_NAME \
          --url-map=URL_MAP_NAME \
          --region=REGION
      

      对于 HTTPS 负载均衡器,请创建 HTTPS 目标代理。该代理属于负载均衡器,保存用于 HTTPS 负载均衡的 SSL 证书,因此您还需要在此步骤中加载证书。

      gcloud compute target-https-proxies create TARGET_HTTPS_PROXY_NAME \
          --ssl-certificates=SSL_CERTIFICATE_NAME \
          --url-map=URL_MAP_NAME \
          --region=REGION
      
    • 创建转发规则以将传入请求路由到代理。

      对于 HTTP 负载均衡器:

      gcloud compute forwarding-rules create HTTP_FORWARDING_RULE_NAME \
          --load-balancing-scheme=INTERNAL_MANAGED \
          --network-tier=PREMIUM \
          --network=LB_NETWORK \
          --subnet=LB_SUBNET_NAME \
          --address=LB_IP_ADDRESS \
          --target-http-proxy=TARGET_HTTP_PROXY_NAME \
          --target-http-proxy-region=REGION \
          --region=REGION \
          --ports=80
      

      对于 HTTPS 负载均衡器:

      gcloud compute forwarding-rules create HTTPS_FORWARDING_RULE_NAME \
          --load-balancing-scheme=INTERNAL_MANAGED \
          --network-tier=PREMIUM \
          --network=LB_NETWORK \
          --subnet=LB_SUBNET_NAME \
          --address=LB_IP_ADDRESS \
          --target-https-proxy=TARGET_HTTPS_PROXY_NAME \
          --target-http-proxy-region=REGION \
          --region=REGION \
          --ports=443
      

将您的网域连接到负载均衡器

创建负载均衡器后,请记好与负载均衡器关联的 IP 地址,例如 30.90.80.100。如需将您的网域指向负载均衡器,请使用您的网域注册服务创建 A 记录。如果您向 SSL 证书添加了多个网域,则必须为每个网域添加一条 A 记录,所有网域均指向负载均衡器的 IP 地址。例如,如需为 www.example.comexample.com 创建 A 记录,请使用以下命令:

NAME                  TYPE     DATA
www                   A        30.90.80.100
@                     A        30.90.80.100

如果您使用 Cloud DNS 作为 DNS 提供商,请参阅添加、修改和删除记录

测试负载均衡器

现在您已经配置了负载均衡器,接下来可以开始向负载均衡器的 IP 地址发送流量了。

创建客户端虚拟机

此示例在与负载均衡器相同的区域内创建一个客户端虚拟机 (vm-client)。该客户端用于验证负载均衡器的配置,并演示预期的行为。

gcloud

客户端虚拟机可以位于负载均衡器所在的 REGION 的任何可用区中,并且可以使用同一 VPC 网络中的任何子网。

gcloud compute instances create vm-client \
    --image-family=debian-10 \
    --image-project=debian-cloud \
    --tags=allow-ssh \
    --network=LB_NETWORK \
    --subnet=LB_SUBNET_NAME \
    --zone=ZONE

将流量发送到负载均衡器

负载均衡器配置在首次部署后可能需要几分钟时间才能全球传播。

  • 使用 SSH 连接到客户端实例。

    gcloud compute ssh vm-client \
      --zone=ZONE
    
  • 验证负载均衡器是否按预期连接到您在外部后端上运行的应用。

    对于 HTTP 测试,请运行以下命令:

    curl IP_ADDRESS
    

    对于 HTTPS 测试,请运行以下命令:

    curl -k -s 'https://TEST_DOMAIN_URL:443' --connect-to TEST_DOMAIN_URL:443:IP_ADDRESS:443
    

    TEST_DOMAIN_URL 替换为与您的应用关联的网域。例如 test.example.com

    -k 标志会导致 curl 跳过证书验证。

其他配置

本部分对配置示例进行了扩展,以提供一些额外的替代配置选项。所有任务均为可选任务。您可以按任意顺序执行这些任务。

如需为区域级内部应用负载均衡器启用更多功能,例如全球访问权限(如果您的客户端位于不同区域),请参阅设置具有虚拟机实例组后端的内部应用负载均衡器:其他配置

使用自定义标头对请求进行身份验证

如需对发送到外部后端的请求进行身份验证,您可以设置自定义标头来指明请求来自 Google Cloud 负载均衡器。您还需要配置外部后端,以对来自 Google Cloud 的流量使用此自定义标头。

如需了解如何设置自定义标头,请参阅设置高级流量管理

如需了解其他身份验证方法,请参阅对发送到外部后端的请求进行身份验证

更新客户端 HTTP keepalive 超时

前面步骤中创建的负载均衡器已配置客户端 HTTP keepalive 超时的默认值。

如需更新客户端 HTTP keepalive 超时,请按照以下说明操作。

控制台

  1. 在 Google Cloud 控制台中,转到负载均衡页面。

    转到“负载均衡”

  2. 点击要修改的负载均衡器的名称。
  3. 点击修改
  4. 点击前端配置
  5. 展开高级功能。对于 HTTP keepalive 超时,请输入超时值。
  6. 点击更新
  7. 如需查看更改,请点击查看并最终确定,然后点击更新

gcloud

对于 HTTP 负载均衡器,请使用 gcloud compute target-http-proxies update 命令更新目标 HTTP 代理。

      gcloud compute target-http-proxies update TARGET_HTTP_PROXY_NAME \
         --http-keep-alive-timeout-sec=HTTP_KEEP_ALIVE_TIMEOUT_SEC \
         --region=REGION
      

对于 HTTPS 负载均衡器,请使用 gcloud compute target-https-proxies update 命令更新目标 HTTPS 代理。

      gcloud compute target-https-proxies update TARGET_HTTP_PROXY_NAME \
         --http-keep-alive-timeout-sec=HTTP_KEEP_ALIVE_TIMEOUT_SEC \
         --region REGION
      

替换以下内容:

  • TARGET_HTTP_PROXY_NAME:目标 HTTP 代理的名称。
  • TARGET_HTTPS_PROXY_NAME:目标 HTTPS 代理的名称。
  • HTTP_KEEP_ALIVE_TIMEOUT_SEC:HTTP keepalive 超时值(5 到 600 秒)。

后续步骤