设置以使用 Amazon ECS - Amazon Elastic Container Service

设置以使用 Amazon ECS

如果您已经注册了Amazon Web Services (AWS),并且一直在使用Amazon Elastic Compute Cloud (Amazon EC2),那么您就接近能够使用 Amazon ECS 了。这两个服务的设置过程相似。以下指南为启动您的第一个 Amazon ECS 集群做好准备。

要开始设置 Amazon ECS,请完成以下任务。

AWS Management Console

AWS Management Console 是用于管理 Amazon ECS 资源的基于浏览器的界面。该控制台提供了服务的直观概述,无需使用其他工具,您可以轻松地探索 Amazon ECS 的特性和功能。提供了许多相关教程和演练,可以指导您使用控制台。

有关指导您使用控制台的教程,请参阅 了解如何创建和使用 Amazon ECS 资源

在开始时,许多客户更喜欢使用控制台,因为它提供了关于他们采取的行动是否成功的即时视觉反馈。熟悉 AWS Management Console 的 AWS 客户可以轻松管理相关资源,如负载平衡器和 Amazon EC2 实例。

从 AWS Management Console 开始

注册 AWS 账户

如果您还没有 AWS 账户,请完成以下步骤来创建一个。

注册 AWS 账户
  1. 打开 https://portal.aws.amazon.com/billing/signup

  2. 按照屏幕上的说明进行操作。

    在注册时,将接到一通电话,要求使用电话键盘输入一个验证码。

    当您注册 AWS 账户时,系统将会创建一个 AWS 账户根用户。根用户有权访问该账户中的所有 AWS 服务 和资源。作为安全最佳实践,请为用户分配管理访问权限,并且只使用根用户来执行需要根用户访问权限的任务

注册过程完成后,AWS 会向您发送一封确认电子邮件。在任何时候,您都可以通过转至 https://aws.amazon.com/ 并选择我的账户来查看当前的账户活动并管理您的账户。

创建具有管理访问权限的用户

注册 AWS 账户 后,请保护好您的 AWS 账户根用户,启用 AWS IAM Identity Center,并创建一个管理用户,以避免使用根用户执行日常任务。

保护您的 AWS 账户根用户
  1. 选择根用户并输入您的 AWS 账户电子邮件地址,以账户拥有者身份登录 AWS Management Console。在下一页上,输入您的密码。

    要获取使用根用户登录方面的帮助,请参阅《AWS 登录 用户指南》中的以根用户身份登录

  2. 为您的根用户启用多重身份验证 (MFA)。

    有关说明,请参阅《IAM 用户指南》中的为 AWS 账户 根用户启用虚拟 MFA 设备(控制台)

创建具有管理访问权限的用户
  1. 启用 IAM Identity Center。

    有关说明,请参阅《AWS IAM Identity Center 用户指南》中的启用 AWS IAM Identity Center

  2. 在 IAM Identity Center 中,为用户授予管理访问权限。

    有关如何使用 IAM Identity Center 目录 作为身份源的教程,请参阅《AWS IAM Identity Center 用户指南》中的使用默认的 IAM Identity Center 目录 配置用户访问权限

以具有管理访问权限的用户身份登录
  • 要使用您的 IAM Identity Center 用户身份登录,请使用您在创建 IAM Identity Center 用户时发送到您的电子邮件地址的登录网址。

    要获取使用 IAM Identity Center 用户登录方面的帮助,请参阅《AWS 登录 用户指南》中的登录 AWS 访问门户

将访问权限分配给其他用户
  1. 在 IAM Identity Center 中,创建一个权限集,该权限集遵循应用最低权限的最佳做法。

    有关说明,请参阅《AWS IAM Identity Center 用户指南》中的创建权限集

  2. 将用户分配到一个组,然后为该组分配单点登录访问权限。

    有关说明,请参阅《AWS IAM Identity Center 用户指南》中的添加组

创建 Virtual Private Cloud

您可以使用 Amazon Virtual Private Cloud(Amazon VPC)将AWS资源启动到您定义的虚拟网络中。强烈建议您在 VPC 中启动您的容器实例。

如果您有默认 VPC,则可以跳过此部分并进入下一个任务,即 创建安全组。要确定您是否具有默认 VPC,请参阅《Amazon EC2 用户指南》中的 Amazon EC2 控制台中支持的平台。否则,您可以使用以下步骤在账户中创建非默认 VPC。

有关如何创建 VPC 的信息,请参阅《Amazon VPC 用户指南》中的创建 VPC 并使用下表确定要选择的选项。

选项

要创建的资源

仅限 VPC
名称

可以选择为您的 VPC 提供名称。

IPv4 CIDR 块

IPv4 CIDR 手动输入

CIDR 块大小必须在 /16 和 /28 之间。

IPv6 CIDR 块

无 IPv6 CIDR 块

租赁

默认

有关 Amazon VPC 的更多信息,请参阅 Amazon VPC 用户指南中的什么是Amazon VPC?

创建安全组

安全组用作相关容器实例的防火墙,可在容器实例级别控制入站和出站流量。您可以向安全组添加规则,以便使用 SSH 从您的 IP 地址连接到容器实例。您还可以添加允许来自任意位置的入站和出站 HTTP 和 HTTPS 访问的规则。向任务所需的开放端口添加任意规则。容器实例需要外部网络访问来与 Amazon ECS 服务终端节点通信。

如果您计划在多个区域中启动容器实例,则需要在每个区域中创建安全组。有关更多信息,请参阅《Amazon EC2 用户指南》中的区域和可用区

提示

您需要本地计算机的公有 IP 地址,可以使用服务获得该地址。例如,我们提供以下服务:http://checkip.amazonaws.com/https://checkip.amazonaws.com/。要查找另一项可提供您的 IP 地址的服务,请使用搜索短语“what is my IP address”。如果您通过互联网服务提供商 (ISP) 连接或者在不使用静态 IP 地址的情况下从防火墙后面连接,则必须找出客户端计算机使用的 IP 地址范围。

有关如何创建安全组的信息,请参阅《Amazon EC2 用户指南》中的为 Amazon EC2 实例创建安全组并使用下表确定要选择的选项。

选项

区域

您在其中创建密钥对的相同区域。
名称 一个您容易记住的名称,例如 ecs-instances-default-cluster
VPC 默认 VPC(标有“(默认)”)。
注意

如果您的账户支持 Amazon EC2 Classic,请选择您在上一个任务中创建的 VPC。

有关要为您的应用场景添加的出站规则的信息,请参阅《Amazon EC2 用户指南》中的针对不同应用场景的安全组规则

Amazon ECS 容器实例不需要打开任何入站端口。但您可能需要添加 SSH 规则,以便登录容器实例并使用 Docker 命令检查任务。如果您希望容器实例托管运行 Web 服务器的任务,也可以添加适用于 HTTP 和 HTTPS 的规则。容器实例需要外部网络访问来与 Amazon ECS 服务终端节点通信。完成以下步骤可添加这些可选的安全组规则。

向您的安全组添加以下三条入站规则。有关如何创建安全组的信息,请参阅《Amazon EC2 用户指南》中的配置安全组

选项

HTTP 规则

类型:HTTP

来源:Anywhere(任何位置)(0.0.0.0/0

此选项将自动添加 0.0.0.0/0 IPv4 CIDR 块作为源。这在测试环境中可以接受一小段时间,但是在生产环境中并不安全。在生产中,请仅授权特定 IP 地址或地址范围访问您的实例。

HTTPS 规则

类型:HTTPS

来源:Anywhere(任何位置)(0.0.0.0/0

这在测试环境中可以接受一小段时间,但是在生产环境中并不安全。在生产中,请仅授权特定 IP 地址或地址范围访问您的实例。

SSH 规则

类型:SSH

来源:Custom(自定义),使用 CIDR 表示法指定计算机的公有 IP 地址或网络。要采用 CIDR 表示法指定单个 IP 地址,请添加路由前缀 /32。例如,如果您的 IP 地址是 203.0.113.25,请指定 203.0.113.25/32。如果您的公司要分配同一范围内的地址,请指定整个范围,例如 203.0.113.0/24

重要

出于安全原因,我们不建议您允许从所有 IP 地址 (0.0.0.0/0) 对您的实例进行 SSH 访问(以测试为目的的短暂访问除外)。

创建凭证以连接到 EC2 实例

对于 Amazon ECS,密钥对只有在您打算使用 EC2 启动类型时才需要。

AWS 使用公有密钥密码术来保护实例的登录信息。Linux 实例(例如 Amazon ECS 容器实例)没有用于 SSH 访问的密码。您使用密钥对安全地登录到实例。您可以在启动容器实例时指定密钥对的名称,然后提供私有密钥(使用 SSH 登录时)。

如果您尚未创建密钥对,则可以通过 Amazon EC2 控制台自行创建。如果您计划在多个区域启动实例,则需要在每个区域中创建密钥对。有关区域的更多信息,请参阅《Amazon EC2 用户指南》中的区域和可用区

创建密钥对
  • 使用 Amazon EC2 控制台创建密钥对。有关创建密钥对的更多信息,请参阅《Amazon EC2 用户指南》中的创建密钥对

有关如何连接到实例的信息,请参阅《Amazon EC2 用户指南》中的连接到 Linux 实例

安装 AWS CLI

AWS Management Console 可以用来手动管理 Amazon ECS 的所有操作。但是,您可以在本地桌面或开发人员工具包上安装 AWS CLI,以便构建可在 Amazon ECS 中自动执行常见管理任务的脚本。

要对 Amazon ECS 使用 AWS CLI,请安装最新版本的 AWS CLI。有关安装 AWS CLI 或将其升级到最新版本的信息,请参阅《AWS Command Line Interface 用户指南》中的 Installing or updating to the latest version of the AWS CLI

AWS Command Line Interface (AWS CLI) 是用于管理 AWS 服务的统一工具。单独使用这个工具,您可以控制多个 AWS 服务,并通过脚本自动执行这些服务。AWS CLI 中的 Amazon ECS 命令是 Amazon ECS API 的反映。

AWS CLI 适用于喜欢并习惯于使用命令行工具编写脚本并与之交互的客户,他们确切知道希望在其 Amazon ECS资源 上执行哪些操作。AWS CLI 对于希望熟悉Amazon ECS API的客户也很有帮助。客户可以使用 AWS CLI 直接从命令行界面对 Amazon ECS 资源执行多项操作,包括创建、读取、更新和删除操作。

如果您熟悉或希望熟悉 Amazon ECS API 和相应的 CLI 命令,并希望编写自动脚本并在 Amazon ECS 资源上执行特定操作,使用 AWS CLI。

AWS 还提供了命令行工具 AWS Tools for Windows PowerShell。有关更多信息,请参阅 《AWS Tools for Windows PowerShell 用户指南》

使用 Amazon ECS 的后续步骤

安装好 AWS CLI 后,在继续使用 Amazon ECS 过程中可以利用多种不同的工具。以下链接介绍了其中的部分工具,并举例说明了如何将这些工具用于 Amazon ECS。