本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
在 Image Builder 中使用 cron 表达式
使用 EC2 Image Builder 的 cron 表达式来设置时间窗口,使用适用于管道基础图像和组件的更新来刷新图像。管道刷新的时间窗口从您在 cron 表达式中设置的时间开始。您可以在 cron 表达式中将时间设置为分钟。您的管道构建可以在开始时间或之后运行。
有时可能需要几秒钟或长达一分钟的时间构建才能开始运行。
注意
默认情况下,Cron 表达式使用通用协调时间 (UTC) 时区,或者您可以指定时区。有关UTC时间的更多信息以及要查找您所在时区的偏移量,请参阅时区缩写-全球列表
镜像生成器中 Cron 表达式支持的值
EC2Image Builder 使用由六个必填字段组成的 cron 格式。每个字段都用一个空格与其他字段隔开,没有前导或尾随空格:
<Minute>
<Hour>
<Day>
<Month>
<Day of the week>
<Year>
下表列出了必需的 cron 条目支持的值。
字段 | 值 | 通配符 |
---|---|---|
分钟 | 0-59 |
, - * / |
小时 | 0-23 |
, - * / |
天 | 1-31 |
, - * ? / L W |
月 | 1-12 或 jan-dec |
, - * / |
一星期中的日子。 | 1-7 或 sun-sat |
, - * ? L # |
年 | 1970-2199 |
, - * / |
通配符
下表描述 Image Builder 如何在 cron 表达式中使用通配符。请记住,在您指定的构建时间之后,最多可能需要一分钟才能开始构建。
通配符 | 描述 |
---|---|
, | ,(逗号)通配符包含其他值。在字段中,jan,feb,mar 将包含 January、February 和 March。 |
- | -(破折号)通配符用于指定范围。在“日”字段中,1-15 1-15 将包含指定月份的 1 - 15 日。 |
* | *(星号)通配符包含该字段的所有有效值。 |
? | ? (问号)通配符用于指定字段值取决于其他设置。对于日期和 Day-of-week字段,当指定一个或包含所有可能的值 (* ) 时,另一个必须是 a ? 。不能同时指定两者。例如,如果您在 “日” 字段7 中输入 a(在当月的第七天运行构建),则该 Day-of-week位置必须包含? 。 |
/ | /(正斜杠)通配符用于指定增量。例如,如果您希望每隔一天运行构建,请在“日”字段中输入 */2 。 |
L | 任一“日”字段中的 L 通配符指定最后一天:“28-31” 表示月份的最后一天,具体取决于月份,或者“星期日”表示一周中的最后一天。 |
W | Day-of-month字段中的 W 通配符指定工作日。在该 Day-of-month字段中,如果您在之前输入一个数字W ,则表示您要将最接近该天的工作日作为目标。例如,如果您指定 3W ,则希望您的构建在最接近该月第三天的工作日运行。 |
# | # (hash) 仅允许用于“星期几”字段,并且后面必须有一个介于 1 到 5 之间的数字。该数字指定了给定月份中哪几周需要运行构建。例如,如果您希望在每个月的第二个星期五运行构建,请使用 fri#2 用于“星期几”字段。 |
限制
-
您不能在同一 cron 表达式中指定 Day-of-month和 Day-of-week字段。如果您在其中一个字段中指定了值
*
(或一个 *),则必须在另一个字段中使用 ??
。 -
不支持产生的速率快于一分钟的 Cron 表达式。
Image Builder 中的 cron 表达式示例
在 Image Builder 控制台中输入的 Cron 表达式与为API或CLI输入的表达式不同。要查看示例,请选择适用于您的选项卡。
Image Builder 中的评分表达式
Rate 表达式在创建计划事件规则时启动,然后按照其定义的计划运行。
Rate 表达式有两个必需字段。这些字段用空格分隔。
语法
rate(
value
unit
)
- value
-
正数。
- 单位
-
时间单位。需要不同的单位,例如,对于值 1 为
minute
;对于大于 1 的值 1 为minutes
。有效值:minute | minutes | hour | hours | day | days
限制
如果值等于 1
,则单位必须为单数。同样,对于大于 1
的值,单位必须为复数。例如,rate(1 hours)
和 rate(5 hour)
无效,但 rate(1 hour)
和 rate(5 hours)
有效。