Amazon Elastic Container Service
开发人员指南 (API Version 2014-11-13)
AWS 服务或AWS文档中描述的功能,可能因地区/位置而异。请点击 Amazon AWS 入门,可查看中国地区的具体差异

创建 应用程序负载均衡器

此部分将指导您完成在 AWS 管理控制台中创建 应用程序负载均衡器 的过程。

定义您的负载均衡器

首先,为负载均衡器提供一些基本配置信息(如名称、网络和侦听器)。

侦听器是用于检查连接请求的进程。使用前端(客户端到负载均衡器)连接的协议和端口与后端(负载均衡器到后端实例)连接的协议和端口配置侦听器。在此示例中,您将配置一个侦听器,该侦听器接受端口 80 上的 HTTP 请求并使用 HTTP 将它们发送至端口 80 上的任务中的容器。

定义您的负载均衡器

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

  2. 从导航栏中选择您的负载均衡器的区域。请确保选择您为 Amazon ECS 容器实例选择的同一个区域。

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

  4. 选择 Create Load Balancer

  5. Select load balancer type 页面上,选择 应用程序负载均衡器,然后选择 Continue

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

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

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

    3. 对于 IP address type,选择 ipv4 可仅支持 IPv4 地址,选择 dualstack 可同时支持 IPv4 和 IPv6 地址。

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

      注意

      如果您计划将流量路由至多个目标组,请参阅 ListenerRules 以获取有关如何添加基于主机或路径的规则的详细信息。

    5. 对于 VPC,选择您用于要在其上运行服务的容器实例的相同 VPC。

    6. 对于 Availability Zones,选中要为负载均衡器启用的可用区的复选框。如果该可用区有一个子网,则将选择此子网。如果该可用区有多个子网,请选择其中一个子网。请注意,您只能为每个可用区选择一个子网。您的负载均衡器子网配置必须包含容器实例所在的所有可用区。

    7. 选择 Next: Configure Security Settings

(可选)配置安全设置

如果您在上一步骤中创建了安全侦听器,请按完成 Configure Security Settings 页面(如下所示);否则,请选择 Next: Configure Security Groups

配置安全设置

  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. 如果您有准备好的证书可以上传,则选择 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,选择一个预定义的安全策略。有关安全策略的详细信息,请参阅安全策略

  5. 选择 Next: Configure Security Groups

配置安全组

您必须为负载均衡器分配一个安全组,该安全组允许流量进入您为侦听器指定的端口。Amazon ECS 不会自动更新与 Elastic Load Balancing 负载均衡器或 Amazon ECS 容器实例关联的安全组。

为您的负载均衡器指定安全组

  1. Assign Security Groups 页面上,选择 Create a new security group

  2. 为您的安全组输入名称和描述,或保留默认名称和描述。此新安全组包含一个规则,该规则允许流量进入为要使用的侦听器配置的端口。

    注意

    在本主题的后面部分,您将为容器实例创建一个安全组规则,该规则允许来自此处创建的安全组的流量进入所有端口,以便 应用程序负载均衡器 将流量路由到容器实例上的动态分配的主机端口。

    选择安全组
  3. 选择 Next: Configure Routing 转到向导中的下一页。

配置路由

在此部分中,您将为负载均衡器创建一个目标组,并为已注册到该组的目标创建运行状况检查标准。

创建目标组和配置运行状况检查

  1. 对于 Target group,保留默认值 New target group

  2. 对于 Name,键入新目标组的名称。

  3. 根据需要设置 ProtocolPort

  4. 对于 Health checks,保留默认运行状况检查设置。

  5. 选择 Next: Register Targets

注册目标

您的负载均衡器会在已注册到其目标组的目标之间分配流量。当您将一个目标组关联到 Amazon ECS 服务时,Amazon ECS 会自动向您的目标组注册和取消注册容器。由于 Amazon ECS 会处理目标注册,因此您此时不要将目标添加到目标组。

跳过目标注册

  1. Registered instances 部分,确保没有选择要注册的示例。

  2. 选择 Next: Review 转到向导中的下一页。

审核和创建

审核您的负载均衡器和目标组配置,并选择 Create 以创建负载均衡器。

为您的容器实例创建安全组规则

创建 应用程序负载均衡器 后,您必须向容器实例安全组添加一个入站规则,该规则允许来自负载均衡器的流量到达容器。

允许来自负载均衡器的入站流量进入容器实例

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

  2. 在左侧导航窗格中,选择 Security Groups

  3. 选择您的容器实例使用的安全组。如果已使用 Amazon ECS 首次运行向导创建容器实例,则此安全组可能具有说明 ECS Allowed Ports

  4. 选择 Inbound 选项卡,然后选择 Edit

  5. 对于 Type,选择 All traffic

  6. 对于 Source,选择 Custom,然后键入您在配置安全组中创建的 应用程序负载均衡器 安全组的名称。此规则允许来自 应用程序负载均衡器 的所有流量到达您向负载均衡器注册的任务中的容器。

     编辑入站规则
  7. 选择 Save 以完成操作。

创建 Amazon ECS 服务

创建负载均衡器和目标组后,您可在创建服务时在服务定义中指定目标组。在启动服务的每个任务时,服务定义中指定的容器和端口组合将注册到目标组,并且负载均衡器中的流量将路由到该容器。有关更多信息,请参阅 创建服务