本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
任务关键概念
以下概念提供有关Jo Amazon IoT bs,以及如何创建和部署任务以在设备上运行远程操作。
基本概念
以下是使用 Amazon IoT Jobs 时必须了解的基本概念。
- 任务
-
任务是被发送到一台或多台连接到 Amazon IoT 的设备并在这些设备上运行的远程操作。例如,您可以定义一个任务,该任务指示一组设备下载并安装应用程序或运行固件更新、重启、轮换证书或执行远程故障排除操作。
- 任务文档
-
要创建任务,您必须先创建一个任务文档,该文档是要由设备执行的远程操作的描述。
Job 文档是 UTF-8 编码的 JSON 文档,其中包含您的设备执行任务所需的信息。任务文档包含一个或多个 URL,设备可从这些 URL 下载更新或其它数据。任务文档可存储在 Amazon S3 存储桶中,或者随用于创建任务的命令内联包含。
提示
有关任务文档示例,请参阅 Amazon IoT SDK 的 jobs-agent.js
示例JavaScript。 - 目标
-
在创建任务时,您需要指定一系列目标,它们是应执行操作的设备。目标可以是事物和/或事物组。Amazon IoT Jobs 会向每个目标发送一条消息以向该目标告知任务可用。
- 部署
-
通过提供任务文档并指定目标列表创建任务之后,系统会将任务文档部署到要为其执行更新的远程目标设备上。对于快照任务,任务会在部署到目标设备后完成。对于持续任务,任务会在设备添加到组时部署到该组设备。
- 任务执行
-
任务执行是目标设备上的任务的实例。目标通过下载任务文档来开始执行任务。目标随后会执行在文档中指定的操作并将其进度报告给 Amazon IoT。执行编号是特定目标上的任务执行的唯一标识符。Amazon IoT Jobs 服务提供的命令可跟踪目标上任务执行的进度以及某个任务跨所有目标的进度。
任务类型概念
以下概念可帮助您更多地了解可以使用 Amazon IoT Jobs 创建的不同类型的任务。
- 快照任务
-
预设情况下,任务将发送到您在创建该任务时指定的所有目标。在这些目标完成任务 (或报告它们无法执行此操作) 后,任务即完成。
- 持续任务
-
持续的任务将发送到您在创建该任务时指定的所有目标。它继续运行并发送到添加到目标组的任何新设备(事物)。例如,在将设备添加到组时,可使用持续任务加入或升级设备。您可以通过在创建作业时设置可选参数,来使作业成为持续作业。
注意
当使用动态事物组确定目标 IoT 机群时,我们建议您使用连续任务而不是快照任务。通过使用连续任务,加入组的设备即使在任务创建之后也会收到任务执行。
预签名 URL
为了安全、有时间限制地访问任务文档中未包含的数据,可以使用预签名的Amazon S3 URL。将数据放置在 Amazon S3 存储桶中,并添加一个指向任务文档中的数据的占位符链接。当 Amazon IoT Jobs 收到任务文档的请求时,它会解析任务文档以查找占位符链接并将其替换为预签名 Amazon S3 URL。
占位符链接采用以下格式:
${aws:iot:s3-presigned-url:https://s3.amazonaws.com/
bucket
/key
}
其中 bucket
是您的存储桶名称,key
是您链接到的存储桶中的对象。
在北京和宁夏区域中,仅当资源拥有者具有 ICP (互联网内容提供商)许可证时,预签名 URL 才起作用。有关更多信息,请参阅在中国的Amazon服务入门文档中的 Amazon Simple Storage Service。
任务配置概念
以下概念可以帮助您了解如何配置任务。
- 推出
-
您可以指定向目标发送待处理任务执行通知的速度。这样,您就可以创建一个分段推出以更好地管理更新、重启和其它操作。您可以使用静态推出率或指数级推出率来创建部署配置。您可以使用静态推出速率来指定每分钟可通知的最大任务目标数。
有关设置推出速率的示例,以及有关配置任务推出的更多信息,请参阅任务推出、计划和中止配置。
- 计划
-
通过任务计划,您可以计划向目标组中的所有设备推出连续任务和快照任务的任务文档的时间。此外,您可以创建一个可选的维护窗口,其中包含任务组中的所有设备推出任务文档。维护时段是一种周期性实例,其频率为每日、每周、每月或自定义的日期和时间,在初始作业或作业模板创建期间选择。只能安排连续作业在维护时段内执行部署。
任务计划是特定于您的任务的。无法安排单个任务执行。有关更多信息,请参阅任务推出、计划和中止配置:
- 中止
-
您可以创建一组条件在满足您指定的特定条件时中止推出。有关更多信息,请参阅任务推出、计划和中止配置:
- 超时
-
只要任务部署卡在
IN_PROGRESS
状态的时间超出预期,您就会收到任务超时通知。有两种类型的计时器:进行中计时器和步骤计时器。当任务为IN_PROGRESS
时,您可以监控和跟踪任务部署的进度。推出和中止配置特定于您的任务,而超时配置特定于任务部署。有关更多信息,请参阅任务执行超时和重试配置:
- 重试
-
通过任务重试,可以在任务失败和/或超时时重试任务执行。您最多可以重试 10 次任务执行。您可以监控和跟踪重试的进度以及任务执行是否成功。
推出和中止配置特定于您的任务,而超时和重试配置特定于任务执行。有关更多信息,请参阅任务执行超时和重试配置: