使用 cron 表达式安排重复发生的扩缩操作 - Application Auto Scaling
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

使用 cron 表达式安排重复发生的扩缩操作

重要

如需 Amazon EC2 Auto Scaling 的 cron 表达式的帮助,请参阅 Amazon EC2 Auto Scaling 用户指南中的定期计划主题。使用 Amazon EC2 Auto Scaling,您可以使用传统的 cron 语法,而不是 Application Auto Scaling 使用的自定义 cron 语法。

您可以使用 cron 表达式创建定期运行的计划操作。

若要创建重复计划,请指定 cron 表达式和时区来描述何时重复执行该计划操作。支持的时区值为 Joda-Time支持的 IANA 时区的规范名(例如 Etc/GMT+9Pacific/Tahiti)。您可以选择指定开始时间和/或结束时间的日期和时间。有关使用创建计划操作 Amazon CLI 的命令示例,请参阅创建指定时区的重复计划操作

受支持的 cron 表达式格式由用空格分隔的六个字段组成:[Minutes] [Hours] [Day_of_Month] [Month] [Day_of_Week] [Year]。例如,cron 表达式 30 6 ? * MON * 会配置一个将于每周一早上 6:30 重复执行的计划操作。星号用作通配符,以匹配字段的所有值。

有关 Application Auto Scaling 计划操作的 cron 语法的更多信息,请参阅亚马逊 EventBridge 用户指南中的 Cron 表达式参考

当您创建重复性计划时,请谨慎选择开始时间和结束时间。记住以下内容:

  • 如果您指定开始时间,则 Application Auto Scaling 将在此时间执行操作,然后根据指定的重复执行操作。

  • 如果指定结束时间,则操作在此时间之后停止重复。Application Auto Scaling 不会一直跟踪以前的值,并在结束时间后恢复为以前的值。

  • 使用或 Amazon SDK 创建 Amazon CLI 或更新计划操作时,必须以 UTC 格式设置开始时间和结束时间。

示例

为 Application Auto Scaling 可扩展目标创建重复性计划时,可您可以参考下表。以下示例展示了使用 Application Auto Scaling 创建或更新计划操作的正确语法。

分钟 小时 日期 月份 星期几 含义

0

10

*

*

?

*

每天上午的 10:00 (UTC) 运行

15

12

*

*

?

*

每天在下午 12:15 (UTC) 运行

0

18

?

*

MON-FRI

*

每星期一到星期五的下午 6:00 (UTC) 运行

0

8

1

*

?

*

每月第 1 天的上午 8:00 (UTC) 运行

0/15

*

*

*

?

*

每 15 分钟运行一次

0/10

*

?

*

MON-FRI

*

从星期一到星期五,每 10 分钟运行一次

0/5

8-17

?

*

MON-FRI

*

每星期一到星期五的上午 8:00 和下午 5:55 (UTC) 之间,每 5 分钟运行一次

例外

此外,您还可以使用包含七个字段的字符串值创建 cron 表达式。在这种情况下,您可以使用前三个字段来指定运行计划操作的时间,包括秒数。完整的 cron 表达式包含以下以空格分隔的字段:[Seconds] [Minutes] [Hours] [Day_of_Month] [Month] [Day_of_Week] [Year]。但是,这种方法不能保证计划操作会在您指定的准确秒数运行。此外,某些服务控制台可能不支持 cron 表达式中的秒数字段。