使用应用程序负载均衡器作为网络负载均衡器的目标 - Elastic Load Balancing
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

使用应用程序负载均衡器作为网络负载均衡器的目标

您可以使用单个 Application Load Balancer 作为目标来创建目标组,然后配置 Network Load Balancer 以将流量转发到目标组。在这种情况下,Application Load Balancer 将在流量到达后立即接管负载均衡决策。此配置结合了两种负载均衡器的功能,并具有以下优点:

  • 您可以将应用程序负载均衡器基于第 7 层请求的路由功能与网络负载均衡器支持的功能结合使用,例如端点服务 (Amazon PrivateLink) 和静态 IP 地址。

  • 您可以将此配置用于需要单个端点来实现多协议的应用程序,例如HTTP用于信令和流式传输内容RTP的媒体服务。

您可以将此功能与内部或面向 Internet 的应用程序负载均衡器搭配使用,作为内部或面向 Internet 的网络负载均衡器的目标。

注意事项
  • 要将应用程序负载均衡器关联为网络负载均衡器的目标,它们必须位于同一个亚马逊VPC的同一个账户中。

  • 您可以将应用程序负载均衡器作为多个网络负载均衡器的目标。为此,使用单独的目标组为每个网络负载均衡器注册应用程序负载均衡器。

  • 您使用网络负载均衡器注册的每个应用程序负载均衡器会将每个网络负载均衡器在每个可用区的最大目标数减少 50 个(如果禁用跨区域负载均衡)或 100 个(如果启用跨区域负载均衡)。您可以在这两个负载均衡器中禁用跨区域负载均衡,以尽量减少延迟并避免区域数据传输费用。有关更多信息,请参阅 Network Load Balancer 的配额

  • 当目标组类型为 alb 时,您无法修改目标组属性。这些属性始终使用其默认值。

  • 注册应用程序负载均衡器作为目标,只有从所有目标组中取消注册此应用程序负载均衡器才能将其删除。

步骤 1:创建应用程序负载均衡器

在开始之前,请配置此应用程序负载均衡器将使用的目标组。确保您的虚拟私有云 (VPC) 中包含要向目标组注册的目标。您的目标使用的每个可用区中VPC必须至少有一个公有子网。

使用控制台创建应用程序负载均衡器
  1. 打开亚马逊EC2控制台,网址为https://console.aws.amazon.com/ec2/

  2. 在导航窗格上的 Load Balancing (负载均衡) 下,选择 Load Balancers (负载均衡器)。

  3. 选择创建负载均衡器

  4. 应用程序负载均衡器下,选择创建

  5. Create Application Load Balancer(创建应用程序负载均衡器)页面上的 Basic configuration(基本配置)下,指定 Load balancer name(负载均衡器名称)、Scheme(方案)和 IP address type(IP 地址类型)。

  6. 对于监听器,您可以在任何端口上创建HTTP或HTTPS监听器。但是,您必须确保此侦听器的端口号与 Application Load Balancer 将驻留的目标组的端口匹配。

  7. Availability Zones (可用区) 下,请执行以下操作:

    1. 对于 VPC,请选择带有实例或 IP 地址的虚拟私有云 (VPC),这些实例或 IP 地址是您的 Application Load Balancer 的目标。您必须使用与在 Network Load Balancer 中使用的相同VPC步骤 3:创建 Network Load Balancer,并将 Application Load Balancer 配置为其目标

    2. 选择两个或多个 Availability Zones (可用区) 和相应的子网。确保这些可用区与为 Network Load Balancer 启用的可用区匹配,以优化可用性、扩展性和性能。

  8. 您可以通过创建新安全组或选择现有安全组,以 Assign a security group (分配安全组) 给您的负载均衡器。

    您选择的新安全组应包含一条规则,该规则允许将流量传送到此负载均衡器的侦听器端口。使用客户端计算机的CIDR块(IP 地址范围)作为安全组入站规则中的流量来源。这可让客户端通过此 Application Load Balancer 传送流量。有关将应用程序负载均衡器的安全组配置为网络负载均衡器的目标的更多信息,请参阅《应用程序负载均衡器用户指南》中的 应用程序负载均衡器的安全组

  9. 对于 Configure Routing (配置路由),选择您为此 Application Load Balancer 配置的目标组。如果没有可用的目标组,并且想要配置新的目标组,请参阅适用于 Application Load Balancer 的用户指南中的创建目标组

  10. 查看配置,然后选择 Create load balancer (创建负载均衡器)。

使用 Application Load Balancer Amazon CLI

使用create-load-balancer命令。

步骤 2:以 Application Load Balancer 作为目标创建目标组

创建目标组可让您将新的或现有的 Application Load Balancer 注册为目标。每个目标组只能添加一个 Application Load Balancer。同一个 Application Load Balancer 也可以在单独的目标组中使用,作为最多两个 Network Load Balancer 的目标。

要使用控制台创建目标组并将应用程序负载均衡器注册为目标
  1. 打开亚马逊EC2控制台,网址为https://console.aws.amazon.com/ec2/

  2. 在导航窗格上的 Load Balancing (负载均衡) 下,选择 Target Groups (目标组)。

  3. 选择 Create target group (创建目标组)

  4. Specify group details (指定组详细信息)页面的 Basic configuration (基本配置) 下,选择 Application Load Balancer

  5. 对于 Target group name (目标组名称),输入 Application Load Balancer 目标组的名称。

  6. 对于 “协议”,TCP仅允许。为您的目标组选择 Port (端口)。此目标组端口必须与 Application Load Balancer 的侦听器端口匹配。或者,您可以在应用程序负载均衡器上添加或编辑侦听器端口以匹配此端口。

  7. 对于 VPC,选择带有 Application Load Balancer 的虚拟私有云 (VPC),向目标组注册。

  8. 对于健康检查,请选择HTTP或HTTPS作为健康检查协议。运行状况检查将发送到 Application Load Balancer 并使用指定的端口、协议和 ping 路径转发到其目标。确保应用程序负载均衡器可以通过侦听器来接收这些运行状况检查结果,该侦听器的端口和协议与运行状况检查端口和协议匹配。

  9. (可选)根据需要添加一个或多个标签。

  10. 选择下一步

  11. Register targets (注册目标) 页面中,选择要注册为目标的 Application Load Balancer。从列表中选择的 Application Load Balancer 必须具有与所创建目标组位于同一端口上的侦听器。您可以在此负载均衡器上添加或编辑侦听器以匹配目标组的端口,或返回上一步并更改为目标组指定的端口。如果您不确定要添加哪个 Application Load Balancer 作为目标,或者此时不想添加它,则可以选择稍后添加 Application Load Balancer。

  12. 选择 Create target group (创建目标组)

若要使用 Amazon CLI创建目标组并将应用程序负载均衡器注册为目标

使用create-target-group注册目标命令

步骤 3:创建 Network Load Balancer,并将 Application Load Balancer 配置为其目标

使用以下步骤创建 Network Load Balancer,然后使用控制台将 Application Load Balancer 配置为其目标。

使用控制台创建网络负载均衡器和侦听器
  1. 打开亚马逊EC2控制台,网址为https://console.aws.amazon.com/ec2/

  2. 在导航窗格上的 Load Balancing (负载均衡) 下,选择 Load Balancers (负载均衡器)。

  3. 选择创建负载均衡器

  4. 网络负载均衡器下,选择创建

  5. 基本配置

    基本配置窗格中,配置负载均衡器名称方案IP 地址类型

  6. 网络映射

    1. 对于 VPC,请选择与您用于 A VPC pplication Load Balancer 目标相同的选项。如果您在 Sch em e 中选择了面向互联网,则只有VPCs带互联网网关可供选择。

    2. 对于 Mappings (映射),选择一个或多个可用区和相应的子网。我们建议您选择与 Application Load Balancer 目标相同的可用区,以优化可用性、扩展性和性能。

      (可选)要使用静态 IP 地址,请在每个可用区的IPv4设置中选择使用弹性 IP 地址。使用静态 IP 地址,您可以将某些 IP 地址添加到防火墙允许列表中,也可以对客户端进行 IP 地址硬编码。

  7. 侦听器和路由

    1. 默认监听器接受端口 80 上的TCP流量。只有TCP侦听器才能将流量转发到 Application Load Balancer 目标组。您必须将协议保持为 TCP,但可以根据需要修改端口

      通过此配置,您可以在 Application Load Balancer 上使用HTTPS侦听器来终止TLS流量。

    2. 对于默认操作,选择向其转发流量的应用程序负载均衡器目标组。如果在列表中没有看到此目标组,或者无法选择目标组(因为它已被另一个网络负载均衡器使用),则可以创建一个应用程序负载均衡器目标组,如 步骤 2:以 Application Load Balancer 作为目标创建目标组 中所示。

  8. 标签

    (可选)添加标签以对负载均衡器进行分类。有关更多信息,请参阅标签

  9. 摘要

    查看配置,然后选择创建负载均衡器

使用创建 Network Load Balancer Amazon CLI

使用create-load-balancer命令。

要使用您在上一步中设置的网络负载均衡器作为私有连接的端点,您可以启用 Amazon PrivateLink。这将建立与负载均衡器作为终端节点服务的私有连接。

使用 Network L VPC oad Balancer 创建终端节点服务
  1. 在导航窗格中,选择负载均衡器

  2. 选择网络负载均衡器的名称以打开其详细信息页面。

  3. 在 “集成” 选项卡上,展开 “VPC端点服务” (Amazon PrivateLink)

  4. 选择创建端点服务以打开端点服务页面。有关其余步骤,请参阅《Amazon PrivateLink 指南》中的创建端点服务