如果从自动扩缩组手动启动集群,如何增加 Amazon ECS 容器实例的可用磁盘空间?

上次更新日期:2022 年 8 月 31 日

如果从自动扩缩组手动启动 Amazon ECS 集群,如何增加 Amazon Elastic Container Service (Amazon ECS) 容器实例的可用磁盘空间?

简短描述

要增加容器实例上的存储空间,必须更新启动配置或启动模板来增加 Amazon Elastic Block Store (Amazon EBS) 卷的大小。然后,将原始实例替换为自动扩缩组中的新实例。

要通过此方法增加容器实例的存储空间,请完成以下步骤。如果您使用其他方法启动容器实例,则跳过本文并按照以下文章中介绍的步骤操作:

注意:Amazon EBS 卷的配置存在差异,具体取决于您使用的 Amazon ECS 优化的 Amazon 机器映像(AMI)。有关如何检查实例上可用空间的更多信息和命令,请参阅 AMI 存储配置

重要提示:以下步骤将会终止 Amazon ECS 集群中的原容器实例。在完成这些程序的过程中,EBS 卷上为这些实例存储的任何数据都将丢失。

解决方法

重要提示:为避免 Amazon ECS 服务停机,您必须在耗尽原容器实例之前启动替换实例。原容器实例上的所有任务停止后,确认替换实例上的任务已经启动,然后终止原容器实例。

首先,使用启动模板或启动配置创建自动扩缩组。

注意:要使用 Amazon Elastic Compute Cloud (Amazon EC2) 的最新功能,最好使用启动模板而不是配置。

(选项 1)根据启动模板创建新的自动扩缩组

1.    打开 Amazon EC2 控制台

2.    从导航窗格中选择自动扩缩组。在启动模板/配置列中,记下要增加磁盘空间的任何 ECS 容器实例的启动模板名称。

3.    从导航窗格中选择启动模板

4.    选择现有 ECS 容器实例的启动模板,选择操作,然后选择修改模板(创建新版本)

5.    在存储(卷)下,展开 EBS 卷的详细信息并输入大小 (GiB) 值。

注意:有关卷选项的更多信息,请参阅块设备映射

6.    选择创建模板版本

7.    在根据模板创建自动扩缩组下,选择创建自动扩缩组

8.    创建自动扩缩组时,请确保您使用的是新版本的模板。

9.    新实例启动后,打开 Amazon ECS 控制台,然后选择集群

10.    要验证新实例将会显示,选择您的集群,然后选择 ECS 实例选项卡。

(选项 2)利用原启动配置创建新的自动扩缩组

1.    打开 Amazon EC2 控制台

2.    从导航窗格中选择自动扩缩组。在启动模板/配置列中,记下要增加磁盘空间的任何 ECS 容器实例的启动模板/配置的名称。

3.    从导航窗格中选择启动配置

4.    选择现有 ECS 容器实例的启动配置,然后依次选择操作复制启动配置

5.    要增加卷的大小,请输入大小 (GiB) 的值。

注意:有关卷选项的更多信息,请参阅块设备映射

6.    选择创建启动配置

7.    选择新创建的启动配置,然后选择操作。然后,选择创建自动扩缩组

8.    新实例启动后,打开 Amazon ECS 控制台,然后选择集群

9.    要验证新实例将会显示,选择您的集群,然后选择 ECS 实例选项卡。

耗尽原 ECS 容器实例并将容器迁移到新实例

1.    打开 Amazon ECS 控制台

2.    选择 ECS 实例选项卡,然后选择原容器实例。

3.    选择操作,然后选择耗尽实例

注意:您可以分批耗尽实例,以免 Amazon ECS 服务停机。耗尽容器实例的服务任务时,将根据服务的部署配置参数 minimumHealthyPercentmaximumPercent 的配置,停止并替换处于“正在运行”状态的容器实例。任何处于“待处理”和“正在运行”状态但不属于该服务的任务不受影响。您必须等待这些任务完成,或手动停止它们。

4.    当“正在耗尽”(DRAINING) 的实例中正在运行的任务数量为 0 时,重复第 2 步和第 3 步,直到所有原容器实例都处于“正在耗尽”(DRAINING) 状态为止。

5.    删除原自动扩缩组以终止原实例。

6.    现在,您的任务已在具有更多可用存储空间的新实例上运行。


这篇文章对您有帮助吗?


您是否需要账单或技术支持?