通过账户设置访问 Amazon ECS 功能 - Amazon Elastic Container Service
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

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

通过账户设置访问 Amazon ECS 功能

您可以进入 Amazon ECS 账户设置以选择使用或选择不使用特定功能。对于每个 Amazon Web Services 区域,您可以在账户级别或为特定用户或角色选择使用或选择不使用每个账户设置。

如果以下任何一项与您相关,您可能希望选择使用或选择不使用特定功能:

  • 用户或角色可以为其个人账户选择使用或选择不使用特定账户设置。

  • 用户或角色可以为账户上的所有用户设置默认选择使用或选择不使用设置。

  • root 用户或具有管理员权限的用户可以选择加入或退出账户中的任何特定角色或用户。如果根用户的账户设置发生更改,则会为未选择个人账户设置的所有用户和角色设置默认值。

注意

联合用户采用根用户的账户设置,并且不能单独为他们设置显式账户设置。

可供使用的账户设置如下:您必须分别选择加入和选择退出每个账户设置。

Amazon Resource Names (ARN) 和 ID

资源名称:serviceLongArnFormattaskLongArnFormatcontainerInstanceLongArnFormat

Amazon ECS 正在引入针对 Amazon ECS 服务、任务和容器实例的 Amazon Resource Name (ARN) 和资源 ID 的新格式。每种资源类型的选择使用状态决定资源使用的 Amazon 资源名称 (ARN) 格式。您必须选择使用新的 ARN 格式,以对该资源类型使用资源标记等功能。有关更多信息,请参阅 Amazon Resource Names (ARN) 和 ID

默认值为 enabled

只有在选择进入后启动的资源才能接收新的 ARN 和资源 ID 格式。所有现有资源均不受影响。要使 Amazon ECS 服务和任务转换为新的 ARN 和资源 ID 格式,必须重新创建该服务或任务。要将容器实例转换为新 ARN 和资源 ID 格式,必须耗尽该容器实例,然后启动并向集群注册一个新的容器实例。

注意

对于 Amazon ECS 服务启动的任务,仅在该服务是在 2018 年 11 月 16 日或之后创建的,并且创建该服务的用户为任务选择使用新格式时,才能采用新 ARN 和资源 ID 格式。

AWSVPC 中继

资源名称:awsvpcTrunking

Amazon ECS 支持使用受支持的 Amazon EC2 实例类型来启动具有提高的弹性网络接口 (ENI) 密度的容器实例。当您使用这些实例类型并选择使用 awsvpcTrunking 账户设置时,其他 ENI 将在新启动的容器实例上可用。您可以使用此配置在每个容器实例上使用 awsvpc 网络模式放置更多任务。使用此功能,启用 awsvpcTrunkingc5.large 实例的 ENI 限额增加了 10。容器实例将具有一个主网络接口,而 Amazon ECS 将创建一个“中继”网络接口并将此接口附加到容器实例。主网络接口和中继网络接口不计入 ENI 限额。因此,您可以使用此配置在容器实例上启动 10 个任务,而不是当前的两个任务。有关更多信息,请参阅 弹性网络接口中继

默认值为 disabled

只有在选择加入后启动的资源才会收到增加的 ENI 限额。所有现有资源均不受影响。要将容器实例转换为增加的 ENI 限额,必须耗尽该容器实例,然后向集群注册一个新的容器实例。

CloudWatch 集装箱洞察

资源名称:containerInsights

CloudWatch Container Insights 收集、汇总和汇总来自容器化应用程序和微服务的指标和日志。指标包括资源的使用率,如 CPU、内存、磁盘和网络。Container Insights 还提供诊断信息(如容器重新启动失败),以帮助您查明问题并快速解决问题。您还可以设置 Container Insights 收集的指标的 CloudWatch 警报。有关更多信息,请参阅 使用容器见解监控 Amazon ECS 容器

当您选择使用 containerInsights 帐户设置时,预设情况下,所有新集群都启用了容器见解。您可以在创建特定群集时对其禁用此设置。您也可以使用 UpdateClusterSettings API 更改此设置。

对于包含使用 EC2 启动类型的任务或服务的集群,容器实例必须运行 1.29.0 或更高版本的 Amazon ECS 代理才能使用 Container Insights。有关更多信息,请参阅 Linux 容器实例管理

默认值为 disabled

双堆栈 VPC IPv6

资源名称:dualStackIPv6

Amazon ECS 支持使用 IPv4 地址以外的 IPv6 地址提供任务。

要接收 IPv6 地址的任务,任务必须使用 awsvpc 网络模式,必须在配置为双堆栈模式的 VPC 中启动,dualStackIPv6 账户设置必须已启用。有关其他要求的更多信息,在双堆栈模式下使用 VPC请参阅 EC2 启动类型和 在双堆栈模式下使用 VPC Fargate 启动类型。

重要

dualStackIPv6 账户设置只能使用 Amazon ECS API 或 Amazon CLI进行更改。有关更多信息,请参阅 修改账户设置

如果您在 2020 年 10 月 1 日至 2020 年 11 月 2 日期间在启用 IPv6 的子网中使用 awsvpc 网络模式运行任务,则运行该任务的区域中的默认 dualStackIPv6 账户设置为 disabled。如果不满足该条件,则区域中的默认 dualStackIPv6 设置为 enabled

默认值为 disabled

Fargate FIPS-140 合规性

资源名称:fargateFIPSMode

Fargate 支持美国联邦信息处理标准(FIPS-140),其中规定了对保护敏感信息的加密模块的安全要求。它是美国和加拿大政府的现行标准,适用于需要符合《联邦信息安全管理法》(FISMA)或联邦风险和授权管理计划(FedRAMP)的系统。

默认值为 disabled

您必须开启 FIPS-140 合规性。有关更多信息,请参阅 Amazon Fargate 联邦信息处理标准 (FIPS-140)

重要

fargateFIPSMode 账户设置只能使用 Amazon ECS API 或 Amazon CLI进行更改。有关更多信息,请参阅 修改账户设置

标记资源授权

资源名称:tagResourceAuthorization

某些 Amazon ECS API 操作允许您在创建资源时指定标签。

Amazon ECS 正在为资源创建引入标记授权。用户必须拥有创建资源的操作的权限,例如ecsCreateCluster。如果在资源创建操作中指定了标签,则会对该操作 Amazon 执行额外授权,以验证用户或角色是否有权创建标签。ecs:TagResource因此,您必须授予使用 ecs:TagResource 操作的显式权限。有关更多信息,请参阅 在创建时授予标记资源的权限

Fargate 任务停用等待期

资源名称:fargateTaskRetirementWaitPeriod

Amazon 负责修补和维护 Far Amazon gate 的底层基础架构。当 Amazon 确定在 Fargate 上托管的 Amazon ECS 任务需要进行安全或基础设施更新时,需要停止这些任务并启动新的任务来替换它们。您可以对停用任务进行修补之前的等待时间进行配置。您可以选择立即停用任务、等待 7 个日历日或等待 14 个日历日。

此设置于账户级别进行。

运行时监控激活

资源名称:guardDutyActivate

guardDutyActivate参数在 Amazon ECS 中是只读的,表示您的安全管理员在您的 Amazon ECS 账户中开启还是关闭运行时监控。 GuardDuty 代表您控制此账户设置。有关更多信息,请参阅使用运行时监控保护 Amazon ECS 工作负载

Amazon Resource Names (ARN) 和 ID

在创建 Amazon ECS 资源时,将为每个资源分配一个唯一的 Amazon Resource Name (ARN) 和资源标识符 (ID)。如果通过命令行工具或 Amazon ECS API 使用 Amazon EC2,则某些命令需要资源 ARN 或 ID。例如,如果您使用 stop- Amazon CLI task 命令停止任务,则必须在命令中指定任务 ARN 或 ID。

您可以按区域选择使用和选择不使用新的 Amazon 资源名称 (ARN) 和资源 ID 格式。目前,预设情况下,所有创建的新账户都选择使用。

您可以随时选择使用或选择不使用新的 Amazon Resource Name (ARN) 和资源 ID 格式。选择加入后,您创建的任何新资源都将使用新格式。

注意

资源 ID 在创建后不会更改。因此,选择使用或选择不使用新格式不会影响现有的资源 ID。

以下各部分介绍 ARN 和资源 ID 格式如何变化。有关转换为新格式的详细信息,请参阅 Amazon Elastic Container Service 常见问题

Amazon Resource Name (ARN) 格式

一些资源具有用户友好的名称,例如名为 production 的服务。在其他情况下,您必须使用 Amazon Resource Name (ARN) 格式指定资源。Amazon ECS 任务、服务和容器实例的新 ARN 格式包括集群名称。有关选择使用新 ARN 格式的信息,请参阅 修改账户设置

下表显示了每个资源类型的当前格式和新格式。

资源类型

ARN

容器实例

当前:arn:aws:ecs:region:aws_account_id:container-instance/container-instance-id

新:arn:aws:ecs:region:aws_account_id:container-instance/cluster-name/container-instance-id

Amazon ECS 服务

当前:arn:aws:ecs:region:aws_account_id:service/service-name

新:arn:aws:ecs:region:aws_account_id:service/cluster-name/service-name

Amazon ECS 任务

当前:arn:aws:ecs:region:aws_account_id:task/task-id

新:arn:aws:ecs:region:aws_account_id:task/cluster-name/task-id

资源 ID 长度

资源 ID 采用字母和数字的唯一组合形式。新资源 ID 格式包括 Amazon ECS 任务和容器实例的更短 ID。当前资源 ID 格式的长度为 36 个字符。新 ID 采用 32 个字符的格式,不包含任何连字符。有关选择使用新资源 ID 格式的信息,请参阅 修改账户设置

ARN 和资源 ID 格式时间表

Amazon ECS 资源的新 Amazon 资源名称(ARN)和资源 ID 格式的选择使用和选择不使用周期的时间表于 2021 年 4 月 1 日结束。默认情况下,所有账户都选择使用新格式。所有新创建的资源都会采用新格式,您无法再选择不使用。

Amazon Fargate 符合联邦信息处理标准 (FIPS-140)

您必须在 Fargate 上开启美国联邦信息处理标准(FIPS-140)合规性。有关更多信息,请参阅 Amazon Fargate 联邦信息处理标准 (FIPS-140)

fargateFIPSMode 选项设置为 enabled 的情况下运行 put-account-setting-default。有关更多信息,请参阅《亚马逊弹性容器服务 API 参考put-account-setting-default中的。

  • 您可以使用以下命令开启 FIPS-140 合规性。

    aws ecs put-account-setting-default --name fargateFIPSMode --value enabled

    示例输出

    { "setting": { "name": "fargateFIPSMode", "value": "enabled", "principalArn": "arn:aws:iam::123456789012:root", "type": user } }

您可以运行 list-account-settings 以查看当前的 FIPS-140 合规性状态。使用 effective-settings 选项以查看账户级别设置。

aws ecs list-account-settings --effective-settings

标记授权

Amazon ECS 正在为资源创建引入标记授权。用户必须具有标记权限才能执行创建资源的操作,例如ecsCreateCluster。当您创建资源并为该资源指定标签时, Amazon 会执行额外授权以验证是否有创建标签的权限。因此,您必须授予使用 ecs:TagResource 操作的显式权限。有关更多信息,请参阅 在创建时授予标记资源的权限

要选择加入标记授权,请在 tagResourceAuthorization 选项设置为 enable 的情况下运行 put-account-setting-default。有关更多信息,请参阅《亚马逊弹性容器服务 API 参考put-account-setting-default中的。您可以运行 list-account-settings 以查看当前的标记授权状态。

  • 您可以使用以下命令来启用标记授权。

    aws ecs put-account-setting-default --name tagResourceAuthorization --value on --region region

    示例输出

    { "setting": { "name": "tagResourceAuthorization", "value": "on", "principalArn": "arn:aws:iam::123456789012:root", "type": user } }

启用标记授权后,必须配置适当的权限以允许用户在创建资源时标记资源。有关更多信息,请参阅 在创建时授予标记资源的权限

您可以运行 list-account-settings 以查看当前的标记授权状态。使用 effective-settings 选项以查看账户级别设置。

aws ecs list-account-settings --effective-settings

标记授权时间表

您可以通过运行 list-account-settings 以查看 tagResourceAuthorization 值来确认标记授权是否处于活动状态。当值为 on 时,意味着标记授权在使用中。有关更多信息,请参阅《亚马逊弹性容器服务 API 参考list-account-settings中的。

以下是与标记授权相关的重要日期。

  • 2023 年 4 月 18 日 – 引入标记授权。所有新账户和现有账户都必须选择使用该功能。您可以选择开始使用标签授权。选择加入后,您必须授予相应的权限。

  • 2024 年 2 月 9 日-2024 年 3 月 6 日 — 所有新账户和未受影响的现有账户都将标签授权设置为默认。您可以启用或禁用tagResourceAuthorization账户设置来验证您的 IAM 策略。

    Amazon 已通知受影响的账户。

    要禁用该功能,请在tagResourceAuthorization选项设置为的情况下运行put-account-setting-defaultoff

  • 2024 年 3 月 7 日 — 如果您启用了标记授权,则无法再禁用该账户设置。

    我们建议您在此日期之前完成 IAM 策略测试。

  • 2024 年 3 月 29 日 — 所有账户都使用标签授权。账户级别设置将不再在 Amazon ECS 控制台中可用,或者 Amazon CLI

Amazon Fargate 任务退休等待时间

Amazon 当您在标记为停用的平台版本修订版上运行 Fargate 任务时,会发出通知。有关更多信息,请参阅 Amazon Fargate 任务维护常见问题解答

您可以对 Fargate 开始停用任务的时间进行配置。对于需要立即应用更新的工作负载,请选择即时设置(0)。当您需要更多控制时,例如,当任务只能在特定时间段内停止时,请配置 7 天(7)或 14 天(14)选项。

建议您选择较短的等待时间,以便更快获得较新的平台版本修订版。

通过运行、以 root 用户put-account-setting-defaultput-account-setting管理用户身份配置等待时间。将 fargateTaskRetirementWaitPeriod 选项用于设置为以下值之一的 namevalue 选项:

  • 0- Amazon 发送通知,并立即开始停用受影响的任务。

  • 7- Amazon 发送通知,等待 7 个日历日后才开始停用受影响的任务。

  • 14 - Amazon 发送通知,等待 14 个日历日后才开始停用受影响的任务。

默认值为 7 天。

有关更多信息,put-account-setting-default请参阅《亚马逊弹性容器服务 API 参考put-account-setting中的、。

您可以运行以下命令将等待时间设置为 14 天。

aws ecs put-account-setting-default --name fargateTaskRetirementWaitPeriod --value 14

示例输出

{ "setting": { "name": "fargateTaskRetirementWaitPeriod", "value": "14", "principalArn": "arn:aws:iam::123456789012:root", "type: user" } }

您可以运行 list-account-settings 以查看当前 Fargate 任务停用等待时间。使用 effective-settings 选项。

aws ecs list-account-settings --effective-settings

运行时监控(Amazon GuardDuty 集成)

Runtime Monitoring 是一项智能威胁检测服务,它通过持续监控 Amazon 日志和联网活动来识别恶意或未经授权的行为,从而保护在 Fargate 和 EC2 容器实例上运行的工作负载。

guardDutyActivate参数在 Amazon ECS 中是只读的,表示您的安全管理员在您的 Amazon ECS 账户中开启还是关闭运行时监控。 GuardDuty 代表您控制此账户设置。有关更多信息,请参阅使用运行时监控保护 Amazon ECS 工作负载

您可以运行list-account-settings查看当前的 GuardDuty 集成设置。

aws ecs list-account-settings

示例输出

{ "setting": { "name": "guardDutyActivate", "value": "on", "principalArn": "arn:aws:iam::123456789012:doej", "type": aws-managed" } }