创建 Application Load Balancer - Elastic Load Balancing

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

创建 Application Load Balancer

Application Load Balancer 接受来自客户端的请求,并将其分配到目标组中的目标(例如 EC2 实例)。有关更多信息,请参阅 Elastic Load Balancing 的工作原理。Elastic Load Balancing 用户指南中。

先决条件

  • 确定您的应用程序将支持哪些可用区和 IP 地址类型。为负载均衡器 VPC 配置每个可用区中的子网。如果应用程序同时支持 IPv4 和 IPv6 流量,请确保子网同时支持 IPv4 和。 IPv6 CIDRs在每个可用区中至少部署一个目标。有关更多信息,请参阅 您的负载均衡器的子网

  • 确保目标实例的安全组允许来自客户端 IP 地址(如果目标由实例 ID 指定)或负载均衡器节点(如果目标由 IP 地址指定)通过侦听器端口进行流量。有关更多信息,请参阅 推荐的规则

  • 使用运行状况检查协议,确保目标实例的安全组允许来自负载均衡器的流量通过运行状况检查端口。

创建负载均衡器

在创建 Application Load Balancer 的过程中,您将创建负载均衡器、至少一个侦听器和至少一个目标组。当负载均衡器的每个已启用的可用区中至少有一个运行正常的注册目标时,您的负载均衡器就可以处理客户端请求了。

Console
要创建 Application Load Balancer
  1. 打开 Amazon EC2 控制台,网址为https://console.aws.amazon.com/ec2/

  2. 在导航窗格中,选择负载均衡器

  3. 选择创建负载均衡器

  4. Application Load Balancer 下,选择 Create(创建)。

  5. 基本配置

    1. 对于Load balancer name(负载均衡器名称),输入负载均衡器的名称。该名称在该区域的一组负载均衡器中必须是唯一的。名称最多可包含 32 个字符,并且只能包含字母数字字符和连字符。它们不能以连字符或 internal- 开头或结尾。Application Load Balancer 创建后,您无法更改其名称。

    2. 对于 Scheme (方案),选择互联网-facing (面向互联网) 或 Internal (内部)。面向互联网的负载均衡器将来自客户端的请求通过互联网路由到目标。内部负载均衡器使用私有 IP 地址将请求路由到目标。

    3. 对于负载均衡器 IP 地址类型,请选择IPv4您的客户端是使用 IPv4 地址与负载均衡器通信,如果您的客户端同时使用 IPv4 和 IPv6 地址与负载均衡器通信,则选择双栈地址。 IPv4如果您的客户端仅使用 IPv6 地址与负载均衡器通信,请选择不公开的 Dualstack

  6. 网络映射

    1. 对于 VPC,请选择您为负载均衡器准备的 VPC。对于面向互联网的负载均衡器,只能选择 VPCs带有互联网网关的负载均衡器。

    2. (可选)对于 IP 池,您可以选择将 IPAM 池用于公 IPv4 有地址。有关更多信息,请参阅 IPAM IP 地址池

    3. 对于可用区和子网,按如下方式为负载均衡器启用区域:

      • 从至少两个可用区中选择子网

      • 从至少一个本地区域中选择子网

      • 选择一个 Outpost 子网

      有关更多信息,请参阅 您的负载均衡器的子网

      使用 Dualstack 负载均衡器时,必须选择同时包含两者 IPv4 和 IPv6 CIDR 块的子网。

  7. 安全组

    我们为负载均衡器 VPC 预先选择默认安全组。您可以根据需要选择其他安全组。如果您没有满足您需求的安全组,请选择创建新的安全组来立即创建一个安全组。有关更多信息,请参阅《Amazon VPC 用户指南》中的创建安全组

  8. 侦听器和路由

    1. 默认监听器是接受端口 80 上的 HTTP 流量的监听器。您可保留默认侦听器设置,或者根据需要修改协议端口

    2. 对于默认操作,选择目标组以转发流量。如果您没有满足需求的目标群体,请选择创建目标群组立即创建一个目标群体。有关更多信息,请参阅 创建目标组

    3. (可选)选择 “添加监听器标签”,然后输入标签键和标签值。

    4. (可选)选择添加监听器以添加另一个监听器(例如,HTTPS 监听器)。

  9. 安全侦听器设置

    仅当您添加 HTTPS 侦听器时,才会显示此部分。

    1. 对于安全策略,请选择符合您要求的安全策略。有关更多信息,请参阅 安全策略

    2. 对于默认 SSL/TLS 证书,有以下选项可用:

      • 如果您使用创建或导入了证书 AWS Certificate Manager,请选择 From ACM,然后选择证书。

      • 如果您使用 IAM 导入了证书,请选择从 IAM,然后选择您的证书。

      • 如果您在 ACM 中没有可用的证书,但有可与负载均衡器配合使用的证书,请选择导入证书并提供所需的信息。否则,请选择申请新的 ACM 证书。有关更多信息,请参阅《AWS Certificate Manager 用户指南》中的AWS Certificate Manager 证书

    3. (可选)选择相互身份验证 (mTLS),选择要启用 ALPN 的策略。

      有关更多信息,请参阅 双向 TLS 身份验证

  10. 通过服务集成进行优化

    (可选)您可以将 other AWS 与您的负载均衡器集成。有关更多信息,请参阅 负载均衡器集成

  11. 负载均衡器标签

    (可选)展开负载均衡器标签。选择 “添加新标签”,然后输入标签密钥和标签值。有关更多信息,请参阅标签

  12. 摘要

    查看配置,然后选择创建负载均衡器。在创建过程中,一些默认属性会应用于网络负载均衡器。创建网络负载均衡器后,您可以查看和编辑它们。有关更多信息,请参阅 负载均衡器属性

AWS CLI
要创建 Application Load Balancer

使用 create-load-balancer 命令。

以下示例创建了一个面向 Internet 的负载均衡器,该负载均衡器具有两个已启用的可用区和一个安全组。

aws elbv2 create-load-balancer \ --name my-load-balancer \ --type application \ --subnets subnet-1234567890abcdef0 subnet-0abcdef1234567890 \ --security-groups sg-1111222233334444
创建内部 Application Load Balancer

包括以下示例所示的--scheme选项。

aws elbv2 create-load-balancer \ --name my-load-balancer \ --type application \ --scheme internal \ --subnets subnet-1234567890abcdef0 subnet-0abcdef1234567890 \ --security-groups sg-1111222233334444
创建双堆栈 Application Load Balancer

包括以下示例所示的--ip-address-type选项。

aws elbv2 create-load-balancer \ --name my-load-balancer \ --type application \ --ip-address-type dualstack \ --subnets subnet-1234567890abcdef0 subnet-0abcdef1234567890 \ --security-groups sg-1111222233334444
添加侦听器

使用 create-listener 命令。有关示例,请参阅 创建 HTTP 侦听器创建 HTTPS 侦听器

CloudFormation
要创建 Application Load Balancer

定义类型为的资源AWS::ElasticLoadBalancingV2::LoadBalancer

Resources: myLoadBalancer: Type: 'AWS::ElasticLoadBalancingV2::LoadBalancer' Properties: Name: my-alb Type: application Scheme: internal IpAddressType: dualstack Subnets: - !Ref subnet-AZ1 - !Ref subnet-AZ2 SecurityGroups: - !Ref mySecurityGroup Tags: - Key: "department" Value: "123"
添加侦听器

定义类型为的资源AWS::ElasticLoadBalancingV2::Listener。有关示例,请参阅 创建 HTTP 侦听器创建 HTTPS 侦听器

测试负载均衡器

创建负载均衡器后,您可以验证您的 EC2 实例是否通过了初始运行状况检查。然后,您可以检查负载均衡器是否正在向您的 EC2 实例发送流量。要删除负载均衡器,请参阅 删除 Application Load Balancer

要测试负载均衡器
  1. 创建负载均衡器之后,选择关闭

  2. 在导航窗格中,选择目标组

  3. 选择新创建的目标组。

  4. 选择 Targets (目标) 并验证您的实例是否已就绪。如果实例的状态为 initial,通常是因为该实例仍在注册过程中。此状态还可以表示实例未通过被视为正常运行所需的最少次数的运行状况检查。在至少一个实例的状态为正常后,便可测试负载均衡器。有关更多信息,请参阅 目标运行状况

  5. 在导航窗格中,选择负载均衡器

  6. 选择新创建的负载均衡器。

  7. 选择描述并复制面向互联网的负载均衡器或内部负载均衡器的 DNS 名称(例如, my-load-balancer-1234567890abcdef. elb.us-east-2.amazonaws.com)。

    • 对于面向互联网的负载均衡器,请将 DNS 名称粘贴到连接互联网的 Web 浏览器的地址字段中。

    • 对于内部负载均衡器,请将 DNS 名称粘贴到与 VPC 具有私有连接的 Web 浏览器的地址字段中。

    如果所有内容的配置都正确,浏览器会显示您服务器的默认页面。

  8. 如果网页未显示,请参阅以下文档以获取其他配置帮助和故障排除步骤。

后续步骤

创建负载均衡器后,您可能需要执行以下操作: