如何查看和管理 Amazon ECS 服务的计划扩展操作?

2 分钟阅读
0

我想查看和管理我的 Amazon Elastic Container Service (Amazon ECS) 服务的计划扩展操作。

解决方案

**注意:**如果您在运行 AWS 命令行界面 (AWS CLI) 命令时收到错误,请参阅 AWS CLI 错误故障排除。此外,请确保您使用的是最新版本的 AWS CLI

使用服务自动扩缩来计划 Amazon ECS 服务在特定时间的最小任务数和最大任务数。要配置服务自动扩缩,您可以使用 Amazon ECS 控制台或 AWS CLI。

请注意,要使用 AWS CLI 配置计划扩展操作,必须先将 Amazon ECS 服务注册为可扩展目标。要检查 Amazon ECS 服务是否存在可扩展目标,请运行以下 describe-scalable-targets 命令:

aws application-autoscaling describe-scalable-targets \
  --service-namespace ecs \
  --resource-id service/ecs-cluster/service-name

**注意:**请将 ecs-cluster 替换为您的集群名称,将 service-name 替换为您的服务名称。

如果 Amazon ECS 服务没有可扩展目标,请运行以下 register-scalable-target 命令添加一个可扩展目标:

aws application-autoscaling register-scalable-target \
  --service-namespace ecs \
  --scalable-dimension ecs:service:DesiredCount \
  --resource-id service/ecs-cluster/service-name \
  --min-capacity 0 \
  --max-capacity 0

**注意:**请将 ecs-cluster 替换为您的集群名称,将 service-name 替换为您的服务名称。

要在 Amazon ECS 控制台中查看和修改所有计划扩展操作,请完成以下步骤:

  1. 打开 Amazon ECS 控制台
  2. 选择 Service auto scaling(服务自动扩缩)选项卡。
  3. Scheduled actions(计划操作)下的 Actions(操作)下拉列表中,选择 View(查看)、Edit(编辑)或 Delete(删除)。

要使用 AWS CLI 创建新的计划扩展操作或修改现有的计划扩展操作,请运行以下 put-scheduled-action 命令:

aws application-autoscaling put-scheduled-action \
  --service-namespace ecs \
  --scalable-dimension ecs:service:DesiredCount \
  --resource-id service/ecs-cluster/service-name \
  --scheduled-action-name action-name \
  --scalable-target-action MinCapacity=minimum-count,MaxCapacity=maximum-count \
  --schedule "schedule"

**注意:**请将 ecs-cluster 替换为您的集群名称,将 service-name 替换为您的服务名称,将 action-name 替换为计划操作名称。此外,请将 minimum-count 替换为最小任务数,将 maximum-count 替换为最大任务数,将 schedule 替换为 ratecronat expression

要使用 AWS CLI 查看计划操作,请运行以下 describe-scheduled-actions 命令:

aws application-autoscaling describe-scheduled-actions \
  --service-namespace ecs \
  --resource-id service/ecs-cluster/service-name

**注意:**请将 ecs-cluster 替换为您的集群名称,将 service-name 替换为您的服务名称。

要使用 AWS CLI 删除计划操作,请运行以下 delete-scheduled-action 命令:

aws application-autoscaling delete-scheduled-action \
  --service-namespace ecs \
  --scalable-dimension ecs:service:DesiredCount \
  --resource-id service/ecs-cluster/service-name \
  --scheduled-action-name action-name

**注意:**请将 ecs-cluster 替换为您的集群名称,将 service-name 替换为您的服务名称,将 action-name 替换为计划操作名称。

如果您删除了 Amazon ECS 服务的所有计划操作,则可以将该服务取消注册为可扩展目标。运行以下 deregister-scalable-target 命令:

aws application-autoscaling deregister-scalable-target \
  --service-namespace ecs \
  --resource-id service/ecs-cluster/service-name \
  --scalable-dimension ecs:service:DesiredCount

**注意:**请将 ecs-cluster 替换为您的集群名称,将 service-name 替换为您的服务名称。

AWS 官方
AWS 官方已更新 2 个月前