Elastic Load Balancing
应用程序负载均衡器
AWS 服务或AWS文档中描述的功能,可能因地区/位置而异。请点击 Amazon AWS 入门,可查看中国地区的具体差异

教程:对您的应用程序负载均衡器使用基于路径的路由

您可以创建一个侦听器,其中包含根据 URL 路径转发请求的规则。这称为基于路径的路由。如果您运行的是微服务,可以使用基于路径的路由将流量路由给多个后端服务。例如,您可以将一般请求路由到一个目标组,并将图像呈现请求路由到另一个目标组。

在您开始之前

  • 启动 Virtual Private Cloud (VPC) 中您的 EC2 实例。确保这些实例的安全组允许访问侦听器端口和运行状况检查端口。有关更多信息,请参阅 目标安全组

  • 验证您的微服务是否部署在您计划注册的 EC2 实例。

创建负载均衡器

创建使用基于路径的路由的负载均衡器

  1. 打开 Amazon EC2 控制台 https://console.amazonaws.cn/ec2/

  2. 在导航栏上,选择您为 EC2 实例选择的同一个区域。

  3. 在导航窗格上的 LOAD BALANCING 下,选择 Target Groups

  4. 为第一组目标创建目标组,如下所示:

    1. 选择 Create target group

    2. 为目标组指定名称、协议、端口和 VPC,然后选择 Create

    3. 选择新目标组。

    4. Targets 选项卡上,选择 Edit

    5. 对于 Instances,选择一个或多个实例。指定实例的端口,选择 Add to registered,然后选择 Save

      请注意,实例的状态为 initial,直至实例注册并通过运行状况检查,然后,实例的状态将成为 unused,直至您配置目标组从负载均衡器接收流量。

  5. 为第二组目标创建目标组,如下所示:

    1. 选择 Create target group

    2. 为目标组指定名称、协议、端口和 VPC,然后选择 Create

    3. Targets 选项卡上,选择 Edit

    4. 对于 Instances,选择一个或多个实例。指定实例的端口,选择 Add to registered,然后选择 Save

      请注意,实例的状态为 initial,直至实例注册并通过运行状况检查,然后,实例的状态将成为 unused,直至您配置目标组从负载均衡器接收流量。

  6. 在导航窗格上的 LOAD BALANCING 下,选择 Load Balancers

  7. 选择 Create Load Balancer

  8. 对于 Select load balancer type,选择 Application Load Balancer

  9. 选择 Continue

  10. 完成 Configure Load Balancer 页面,如下所示:

    1. 对于 Name,键入负载均衡器的名称。

      在当前区域的应用程序负载均衡器和网络负载均衡器集内,应用程序负载均衡器的名称必须唯一,最多可以有 32 个字符,只能包含字母数字字符和连字符,不能以连字符开头或结尾。

    2. 对于 Scheme,面向 Internet 的负载均衡器将来自客户端的请求通过 Internet 路由到目标。内部负载均衡器使用私有 IP 地址将请求路由到目标。

    3. 对于 Listeners,默认值是负责接收端口 80 上的 HTTP 流量的侦听器。您可以保留默认侦听器设置,修改侦听器的协议或端口,或者选择 Add 以添加另一个侦听器。

    4. 对于 Availability Zones,选择用于 EC2 实例的 VPC。选择至少两个可用区。如果可用区有一个子网,则将选择此子网。如果可用区有多个子网,请选择子网之一。请注意,您只能为每个可用区选择一个子网。

    5. 选择 Next: Configure Security Settings

  11. (可选) 如果在上一步中创建了一个安全侦听器,请完成 Configure Security Settings 页面,如下所示:

    1. 如果使用 AWS Certificate Manager 创建或导入了证书,请选择 Choose an existing certificate from AWS Certificate Manager (ACM),然后从 Certificate name 中选择证书。

    2. 如果使用 IAM 上传了证书,请选择 Choose an existing certificate from AWS Identity and Access Management (IAM),然后从 Certificate name 中选择证书。

    3. 如果要上传证书,但您所在区域不支持 ACM,请选择 Upload a new SSL Certificate to AWS Identity and Access Management (IAM)。对于 Certificate name,键入证书的名称。对于 Private Key,复制并粘贴私钥文件 (PEM 编码的文件) 的内容。在 Public Key Certificate 中,复制并粘贴公钥证书文件 (PEM 编码的文件) 的内容。在 Certificate Chain 中,复制并粘贴证书链文件 (PEM 编码的文件) 的内容,除非您使用的是自签名证书并且浏览器是否隐式接受证书并不重要。

    4. 对于 Select policy,请保持默认的安全策略。

  12. 选择 Next: Configure Security Groups

  13. 完成 Configure Security Groups 页面,如下所示:

    1. 选择 Create a new security group

    2. 为安全组键入名称和描述,或者保留默认名称和描述。此新安全组包含一条规则,该规则允许将流量传送到在 Configure Load Balancer 页面上为负载均衡器选择的端口。

    3. 选择 Next: Configure Routing

  14. 完成 Configure Routing 页面,如下所示:

    1. 对于 Target group,选择 Existing target group

    2. 对于 Name,选择您创建的第一个目标组。

    3. 选择 Next: Register Targets

  15. Register Targets 页面上,在 Registered instances 下会显示向目标组注册的实例。在完成向导之前,您无法修改向目标组注册的目标。选择 Next: Review

  16. Review 页面上,选择 Create

  17. 在您收到已成功创建负载均衡器的通知后,选择 Close

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

  19. Listeners 选项卡中,使用箭头查看侦听器的规则,然后选择 Add rule。按如下所示指定规则:

    1. 对于 Target group name,选择您创建的第二个目标组。

    2. 对于 Path pattern,指定针对基于路径的路由使用的准确模式 (例如,/img/*)。有关更多信息,请参阅 侦听器规则

    3. 选择 Save