Amazon ECS 接口 VPC 端点 (Amazon PrivateLink) - Amazon Elastic Container Service
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

Amazon ECS 接口 VPC 端点 (Amazon PrivateLink)

您可以将 Amazon ECS 配置为使用接口 VPC 端点以改善 VPC 的安全状况。接口端点由 Amazon PrivateLink 提供支持,您可以使用该技术通过私有 IP 地址私密访问 Amazon ECS API。Amazon PrivateLink 限制您的 VPC 和 Amazon ECS 之间的所有网络流量到达 Amazon 网络。您无需互联网网关、NAT 设备或虚拟私有网关。

有关 Amazon PrivateLink 和 VPC 端点的更多信息,请参阅 Amazon VPC 用户指南中的 VPC 端点

Amazon ECS VPC 端点注意事项

在为 Amazon ECS 设置接口 VPC 端点之前,请注意以下事项:

  • 使用 Fargate 启动类型的任务不需要 Amazon ECS 的接口 VPC 端点,但您可能需要 Amazon ECR、Secrets Manager 或 Amazon CloudWatch Logs 的接口 VPC 端点,如以下几点所述。

  • 使用 EC2 启动类型的任务要求启动它们的容器实例运行 1.25.1 或更高版本的 Amazon ECS 容器代理。有关更多信息,请参阅Amazon ECS Linux 容器代理版本

  • VPC 终端节点当前不支持跨区域请求。确保在计划向 Amazon ECS 发出 API 调用的同一区域中创建端点。

  • VPC 终端节点仅通过 Amazon Route 53 支持 Amazon 提供的 DNS。如果您希望使用自己的 DNS,可以使用条件 DNS 转发。有关更多信息,请参阅 Amazon VPC 用户指南中的 DHCP 选项集

  • 附加到 VPC 端点的安全组必须允许端口 443 上来自 VPC 的私有子网的传入连接。

为 Amazon ECS 创建 VPC 端点

要为 Amazon ECS 服务创建VPC端点,请使用 Amazon VPC 用户指南中的创建接口端点过程创建以下端点。如果您的 VPC 中当前有容器实例,则应按其列出的顺序创建终端节点。如果您计划在创建 VPC 终端节点后创建容器实例,则顺序无关紧要。

  • com.amazonaws.region.ecs-agent

  • com.amazonaws.region.ecs-telemetry

  • com.amazonaws.region.ecs

注意

区域 表示 Amazon ECS 支持的 Amazon 区域的区域标识符,例如美国东部(俄亥俄)区域的 us-east-2

如果您当前有使用 EC2 启动类型的任务,则在创建 VPC 端点后,每个容器实例都需要采用新的配置。为实现此目的,您必须重新启动每个容器实例或重新启动每个容器实例上的 Amazon ECS 容器代理。要重新启动容器代理,请执行以下操作。

重启 Amazon ECS 容器代理

  1. 通过 SSH 登录到容器实例。有关更多信息,请参阅使用经典控制台连接到您的容器实例

  2. 停止 容器代理。

    sudo docker stop ecs-agent
  3. 启动容器代理。

    sudo docker start ecs-agent

在创建 VPC 端点并在每个容器实例上重新启动 Amazon ECS 容器代理后,所有新启动的任务都将采用新配置。

创建 Secrets Manager 和 Systems Manager 端点

如果在任务定义中引用 Secrets Manager 密钥或 Systems Manager Parameter Store 参数将敏感数据注入容器,则需要为 Secrets Manager 或 Systems Manager 创建接口 VPC 端点,让这些任务可以访问这些服务。您只需通过托管敏感数据的特定服务创建终端节点。有关更多信息,请参阅将敏感数据传递给容器

有关 Secrets Manager VPC端点的详细信息,请参阅用户指南Amazon Secrets Manager用户指南 中的使用 Secrets Manager 和 VPC 端点

有关 Systems Manager VPC 端点的更多信息,请参阅 Amazon Systems Manager 用户指南中的使用 Systems Manager 与 VPC 端点

使用 ECS 执行功能时,创建 Systems Manager Session Manager VPC 终端节点

如果使用ECS 执行功能,则需要为 Systems Manager Session Manager 创建接口 VPC 端点。有关更多信息,请参阅使用 Amazon ECS Exec进行调试

有关 Systems Manager Session Manager VPC 端点的更多信息,请参阅 Amazon Systems Manager 用户指南中的使用 Amazon PrivateLink 用于为 Session Manager 设置 VPC 端点

为 Amazon ECS 创建 VPC 端点策略

您可以为 VPC 端点附加控制对 Amazon ECS 的访问的端点策略。该策略指定以下信息:

  • 可执行操作的委托人。

  • 可执行的操作。

  • 可对其执行操作的资源。

有关更多信息,请参阅 Amazon VPC 用户指南中的使用 VPC 端点控制对服务的访问

示例:Amazon ECS 操作的 VPC 端点策略

下面是用于 Amazon ECS 的端点策略示例。当附加到终端节点时,此策略会向您授予创建和列出集群的访问权限。CreateClusterListClusters 操作不接受任何资源,因此,所有资源的资源定义将设置为 *。

{ "Statement":[ { "Effect": "Allow", "Action": [ "ecs:CreateCluster", "ecs:ListClusters" ], "Resource": [ "*" ] } ] }