如果从自动扩缩组手动启动 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 服务停机。耗尽容器实例的服务任务时,将根据服务的部署配置参数 minimumHealthyPercent 和 maximumPercent 的配置,停止并替换处于“正在运行”状态的容器实例。任何处于“待处理”和“正在运行”状态但不属于该服务的任务不受影响。您必须等待这些任务完成,或手动停止它们。
4. 当“正在耗尽”(DRAINING) 的实例中正在运行的任务数量为 0 时,重复第 2 步和第 3 步,直到所有原容器实例都处于“正在耗尽”(DRAINING) 状态为止。
5. 删除原自动扩缩组以终止原实例。
6. 现在,您的任务已在具有更多可用存储空间的新实例上运行。
相关信息
容器实例耗尽
在任务中使用数据卷