网关负载均衡器入门 - Elastic Load Balancing
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

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

网关负载均衡器入门

利用网关负载均衡器,您可以轻松部署、扩展和管理第三方虚拟设备,如安全设备。

在本教程中,我们将使用网关Load Balancer和网关Load Balancer终端节点实施检查系统。

Overview

网关 Load Balancer 终端节点是一个 VPC 终端节点,可在服务提供商 VPC 中的虚拟设备与服务使用者 VPC 中的应用程序服务器之间提供私有连接。网关 Load Balancer 部署在与虚拟设备负载均衡器相同的 VPC 中。这些设备注册为网关Load Balancer的目标组。

应用程序服务器在服务使用者 VPC 中的一个子网(目标子网)中运行,而网关 Load Balancer 终端节点位于同一 VPC 的另一个子网中。通过互联网网关进入服务使用者 VPC 的所有流量首先路由到网关 Load Balancer 终端节点进行检查,然后路由到目标子网。

同样,离开应用程序服务器(目标子网)的所有流量都会路由到网关 Load Balancer 终端节点进行检查,然后再路由回 Internet。以下网络图是网关Load Balancer终端节点如何用于访问终端节点服务的可视化表示。


    使用网关负载均衡器终端节点访问终端节点服务

后面的编号项目,突出显示并说明上图中显示的元素。

从 Internet 到应用程序的流量(蓝色箭头):

  1. 流量通过 Internet 网关进入服务使用者 VPC。

  2. 由于入口路由,流量将发送到网关Load Balancer终端节点。

  3. 流量将通过安全设备发送到网关Load Balancer以进行检查。

  4. 检查后,流量将发送回网关Load Balancer终端节点。

  5. 流量将发送到应用程序服务器(目标子网)。

从应用程序到 Internet 的流量(橙色箭头):

  1. 由于在应用程序服务器子网上配置的默认路由,流量将发送到网关Load Balancer终端节点。

  2. 流量将通过安全设备发送到网关Load Balancer以进行检查。

  3. 检查后,流量将发送回网关Load Balancer终端节点。

  4. 流量将根据路由表配置发送到 Internet 网关。

  5. 流量将路由回 Internet。

Routing

Internet 网关的路由表必须有一个条目,以将目标为应用程序服务器的流量路由到网关 Load Balancer 终端节点。要指定网关 Load Balancer 终端节点,请使用 VPC 终端节点的 ID。

目的地 目标
10.0.0.0/16 本地
10.0.1.0/24 vpc-endpoint-id

具有应用程序服务器的子网的路由表必须具有一个条目,该条目将所有流量从应用程序服务器路由到网关 Load Balancer 终端节点 (0.0.0.0/0)。

目的地 目标
10.0.0.0/16 本地
0.0.0.0/0 vpc-endpoint-id

具有网关 Load Balancer 终端节点的子网的路由表必须将 从检查返回的流量路由到其最终目的地。对于源自 Internet 的流量,本地路由可确保它到达应用程序服务器。对于源自应用程序服务器的流量,请添加一个将所有流量路由到 Internet 网关的条目 (0.0.0.0/0)。

目的地 目标
10.0.0.0/16 本地
0.0.0.0/0 internet-gateway-id

Prerequisites

  • 确保服务使用者 VPC 对于每个包含应用程序服务器的可用区至少具有两个子网。一个子网用于网关Load Balancer终端节点,另一个子网用于应用程序服务器。

  • 网关Load Balancer和目标可以位于同一子网中。

  • 在服务提供商 VPC 中的每个安全设备子网中至少启动一个安全设备实例。这些实例的安全组必须允许端口 6081 上的 UDP 流量。

步骤 1:创建网关 Load Balancer 并注册目标

使用以下过程创建负载均衡器、侦听器和目标组,并将安全设备实例注册为目标。

创建网关Load Balancer并注册目标

  1. 通过以下网址打开 Amazon EC2 控制台:https://console.aws.amazon.com/ec2/

  2. 在导航窗格中的 LOAD BALANCING 下,选择 Load Balancers

  3. 选择 Create Load Balancer

  4. 对于 Gateway Load Balancer (网关负载均衡器),选择 Create (创建)。

  5. 对于名称,输入负载均衡器的名称。例如,my-load-balancer

  6. 对于 Availability Zones (可用区),选择服务提供商 VPC。对于您在其中启动安全设备实例的每个可用区,请选择该可用区,然后选择一个公有子网。

  7. (可选)展开 Tags (标签) 并添加标签。

  8. 选择 Next: Configure Routing

  9. 对于 Name (名称),输入目标组的名称。例如,my-targets

  10. 对于 Target type,选择 instance 通过实例 ID 指定目标,或选择 ip 通过 IP 地址指定目标。

  11. 协议必须为 GENEVE端口必须为 6081

  12. (可选)对于 Health checks (运行状况检查),根据需要修改运行状况检查设置。

  13. 选择 Next: Register Targets

  14. 将您的实例或 IP 地址添加到列表中,然后选择 Next: Review (下一步: 审核)。

  15. 选择创建

步骤 2:创建网关 Load Balancer 终端节点

要创建网关Load Balancer终端节点,请按照以下过程操作。Gateway Load Balancer 终端节点为可用区。我们建议您为每个区域创建一个网关Load Balancer终端节点。有关更多信息,请参阅网关 Load Balancer 终端节点 (AWS PrivateLink

要创建网关负载均衡器终端节点

  1. 通过以下网址打开 Amazon VPC 控制台:https://console.aws.amazon.com/vpc/

  2. 在导航窗格中,选择终端节点服务

  3. 选择 Create Endpoint Service (创建终端节点服务),然后执行以下操作:

    1. 对于 Associate Load Balancer (关联负载均衡器),选择您的网关 Load Balancer 。

    2. 对于 Require acceptance for endpoint (需要接受终端节点),选择 Acceptance required to accepting connection requests to your service manually (需要接受以手动接受您的服务的连接请求)。否则,将自动接受终端节点连接。

    3. (可选)要添加标签,请选择 Add tag (添加标签),然后指定标签的键和值。

    4. 选择 Create service。选择服务 ID。从 Details (详细信息) 选项卡中保存服务名称;您在创建终端节点时需要使用该名称。

    5. 选择 ActionsAdd principals to whitelist。输入允许为您的服务创建终端节点的服务使用者的 ARNs。服务使用者可以是 IAM 用户、IAM 角色或 AWS 账户。

  4. 在导航窗格中,选择终端节点

  5. 选择 Create Endpoint (创建终端节点),然后执行以下操作:

    1. 对于 Service category,选择 Find service by name

    2. 对于 Service name (服务名称),输入您之前保存的服务名称,然后选择 Verify (验证)。如果找到该名称,请继续下一步。否则,请确保您使用了正确的服务名称。

    3. 对于 VPC,选择服务使用者 VPC。

    4. 对于 Subnets (子网),选择网关 Load Balancer 终端节点的子网。

    5. (可选)要添加标签,请选择 Add tag(添加标签),然后为标签指定键和值。

    6. 选择Create endpoint。初始状态为 pending acceptance

步骤 3:配置路由

按如下所示为服务使用者 VPC 配置路由表。这允许安全设备对发往应用程序服务器的入站流量执行安全检查。

配置路由

  1. 通过以下网址打开 Amazon VPC 控制台:https://console.aws.amazon.com/vpc/

  2. 在导航窗格中,选择 Route Tables

  3. 选择 Internet 网关的路由表,然后执行以下操作:

    1. 依次选择 Actions (操作)Edit routes (编辑路由)

    2. 选择 Add route (添加路由)。对于 Destination (目标),输入应用程序服务器子网的 CIDR 块(例如 10.0.1.0/24)。对于 Target (目标),选择 VPC 终端节点。

    3. 选择 Save routes (保存路由)

  4. 选择具有应用程序服务器的子网的路由表,然后执行以下操作:

    1. 依次选择 Actions (操作)Edit routes (编辑路由)

    2. 选择 Add route (添加路由)。对于 Destination,输入 0.0.0.0/0。对于 Target (目标),选择 VPC 终端节点。

    3. 选择 Save routes (保存路由)

  5. 选择具有网关Load Balancer终端节点的子网的路由表,然后执行以下操作:

    1. 依次选择 Actions (操作)Edit routes (编辑路由)

    2. 选择 Add route (添加路由)。对于 Destination,输入 0.0.0.0/0。对于 Target (目标),选择 Internet 网关。

    3. 选择 Save routes (保存路由)