为 Amazon ECS 服务自动扩缩创建计划操作
创建计划操作,可让 Amazon ECS 根据日期和时间增加或减少服务运行的任务数。
-
在 Clusters(集群)页面上,选择集群。
-
在“集群详细信息”页面,找到服务部分,然后选择服务。
此时系统会显示服务详细信息页面。
-
选择服务自动扩缩。
此时将显示“服务自动扩缩”页面。
-
如果您尚未配置服务自动扩缩,请选择设置任务数。
此时将显示 Amazon ECS 服务任务数部分。
在 Amazon ECS 服务任务数下,选择使用服务自动扩缩来调整服务所需的任务数。
此时将显示任务计数部分。
-
对于最小任务数,输入供服务自动扩缩使用的任务数的下限。所需计数不会低于此计数。
-
对于最大值,输入供服务自动扩缩使用的任务数的上限。所需计数不会高于此计数。
-
选择选择“保存”。
此时将显示策略页面。
-
-
选择计划操作,然后选择创建。
此时将显示创建计划操作页面。
-
对于 操作名称,输入唯一的名称。
-
对于时区,请选择时区。
列出的所有时区均来自 IANA 时区数据库。有关详细信息,请参阅 List of tz database time zones
。 -
对于启动时间,输入操作启动的日期和时间。
如果您选择了循环计划,则开始时间将定义循环系列中第一个计划操作的运行时间。
-
对于 Recurrence(循环),请选择下列可用选项之一。
-
要按重复性计划进行扩展,请选择 Amazon ECS 运行计划操作的频率。
-
如果您选择以 Rate 开头的选项,则将为您创建 Cron 表达式。
-
如果您选择 Cron,请输入 Cron 表达式,此表达式指定了执行操作的时间。
-
-
如果只想扩展一次,请选择一次。
-
-
在任务调整下,执行以下操作:
-
在最小值中,输入服务应运行的最小任务数。
-
在最大值中,输入服务应运行的最大任务数。
-
-
选择创建计划操作。
按如下所示,使用 Amazon CLI 为服务配置计划扩缩策略。将每个用户输入占位符
替换为您自己的信息。
示例:仅扩展一次
使用以下 put-scheduled-action 命令和 --start-time
"YYYY-MM-DDThh:mm:ssZ"
,以及 --MinCapacity
和(或)--MaxCapacity
选项。
aws application-autoscaling put-scheduled-action --service-namespace ecs \ --resource-id service/
my-cluster
/my-service
\ --scheduled-action-namemy-one-time-schedule
\ --start-time2021-01-30T12:00:00
\ --scalable-target-action MinCapacity=3
,MaxCapacity=10
示例:根据周期性计划来计划扩缩
使用以下 put-scheduled-action 命令。将 user input
替换为您的值。
aws application-autoscaling put-scheduled-action --service-namespace ecs \ --resource-id service/
my-cluster
/my-service
\ --scheduled-action-namemy-recurring-action
\ --schedule "rate(5 hours
)" \ --start-time2021-01-30T12:00:00
\ --end-time2021-01-31T22:00:00
\ --scalable-target-action MinCapacity=3
,MaxCapacity=10
指定的周期性计划会基于 UTC 时区运行。要指定不同的时区,请包含 --time-zone
选项和 IANA 时区的名称,如下例所示。
--time-zone "
America/New_York
"
有关详细信息,请参阅 List of tz database time zones