本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
Amazon ECS 容量提供程序
Amazon ECS 容量提供程序为集群中的任务管理基础设施的扩缩。每个集群可以有一个或多个容量提供程序和一个可选的容量提供程序策略。容量提供程序策略确定任务在集群的容量提供程序之间的分布方式。运行独立任务或创建服务时,您可以使用集群的默认容量提供程序策略,也可以使用覆盖默认策略的容量提供程序策略。
容量提供程序可用于在 Fargate 或 Amazon EC2 实例上运行的任务。您不能将容量提供程序用于在外部容器实例(Amazon ECS Anywhere)上运行的任务。
容量提供程序类型
对于 Fargate 上托管的 Amazon ECS 工作负载,可以使用以下预定义容量提供程序:
-
Fargate
-
Fargate Spot
对于托管在 Amazon EC2 实例上的 Amazon ECS 工作负载,您必须创建并维护包含以下组件的容量提供程序:
-
名称
-
自动扩缩组
-
托管扩缩和托管终止保护的设置。
容量提供程序注意事项
使用容量提供程序时,请考虑以下因素:
-
在容量提供程序策略中指定之前,容量提供程序必须与集群关联。
-
指定容量提供程序策略时,可指定的容量提供程序数限制为六个。
-
使用自动扩缩组容量提供程序的服务无法更新为使用 Fargate 容量提供程序,反之亦然。
-
在容量提供程序策略中,如果未在控制台中为容量提供程序指定
weight
值,则使用原定设置值1
。如果使用 API或 Amazon CLI,则使用原定设置值0
。 -
如果在容量提供程序策略中指定了多个容量提供程序,则至少有一个容量提供程序的权重值必须大于零。此外,任何权重为 0 的容量提供程序都不能用于放置任务。如果您在策略中指定的多个容量提供程序的权重全部为 0,则使用该容量提供程序策略的任何
RunTask
或CreateService
操作都将失败。 -
在容量提供程序策略中,只能有一个容量提供程序定义了基准值。如果未指定基准值,则使用默认设置值零。
-
集群可能同时包含自动扩缩组容量提供程序和 Fargate 容量提供程序。但是,容量提供程序策略只能包含自动扩缩组容量提供程序或 Fargate 容量提供程序,而不能同时包含两者。
-
集群可能包含使用两个容量提供程序和两种启动类型的服务和独立任务的组合。服务可以更新为使用容量提供程序策略而不是启动类型。但是在执行此操作时必须强制实施新部署。
-
使用托管式终止保护时,还必须启用托管式扩缩。否则,托管式终止保护将无法工作。